diff --git a/clearing-parent/securities-service/pom.xml b/clearing-parent/securities-service/pom.xml
index ae27be76c..e838f0eec 100644
--- a/clearing-parent/securities-service/pom.xml
+++ b/clearing-parent/securities-service/pom.xml
@@ -50,6 +50,10 @@
spring-boot-starter-test
test
+
+ ru.spcex.clearing
+ security-util
+
diff --git a/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/config/ValidationConfig.java b/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/config/ValidationConfig.java
index 6fcd1fcf6..4d1263bc2 100644
--- a/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/config/ValidationConfig.java
+++ b/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/config/ValidationConfig.java
@@ -1,11 +1,16 @@
package ru.spcex.clearing.securities.config;
+import org.springframework.beans.factory.config.ConfigurableBeanFactory;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Scope;
import ru.clearing.platform.dictionary.CountryCodeDictionary;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
+import ru.spcex.clearing.securities.errors.SecuritiesError;
+import ru.spcex.clearing.util.security.UserRoleVerification;
import ru.spcex.clearing.validation.common.ValidationHelper;
import ru.spcex.platform.classes.base.SpcexObjectBase;
+import ru.spcex.platform.enumeration.UserRole;
import ru.spcex.platform.imdg.api.Imdg;
import ru.spcex.platform.imdg.api.ImdgProvider;
import ru.spcex.platform.utils.enumeration.IMessageResolver;
@@ -29,8 +34,14 @@ public class ValidationConfig {
}
@Bean("validationHelper")
+ @Scope(value = ConfigurableBeanFactory.SCOPE_PROTOTYPE)
public ValidationHelper validationHelper(IMessageResolver messageResolver) {
return new ValidationHelper(messageResolver);
}
+ @Bean
+ @Scope(value = ConfigurableBeanFactory.SCOPE_PROTOTYPE)
+ public UserRoleVerification userRoleVerification(ImdgProvider imdgProvider, IMessageResolver messageResolver) {
+ return new UserRoleVerification(imdgProvider, messageResolver, UserRole.Admin, SecuritiesError.UserVerifyDenial);
+ }
}
diff --git a/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/errors/SecuritiesError.java b/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/errors/SecuritiesError.java
index 5a64dc08e..40d4e0641 100644
--- a/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/errors/SecuritiesError.java
+++ b/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/errors/SecuritiesError.java
@@ -3,6 +3,7 @@ package ru.spcex.clearing.securities.errors;
import ru.spcex.platform.utils.enumeration.IErrorEnumId;
public enum SecuritiesError implements IErrorEnumId {
+ UserVerifyDenial(1001L), // 'Нет прав на проведение данной операции
RequiredFieldIsEmpty(1002L),
WrongFieldValue(1004L),
InstrumentAlreadyExists(1010L),
diff --git a/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/CouponPeriodService.java b/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/CouponPeriodService.java
index e6bf52ebe..d99d1e678 100644
--- a/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/CouponPeriodService.java
+++ b/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/CouponPeriodService.java
@@ -16,7 +16,9 @@ import ru.spcex.clearing.platform.messaging.domain.cud.securitites.CouponPeriodU
import ru.spcex.clearing.platform.messaging.service.QueueConsumer;
import ru.spcex.clearing.platform.messaging.service.RequestInfoUpdate;
import ru.spcex.clearing.securities.validation.ValidationProvider;
+import ru.spcex.clearing.util.security.UserRoleVerification;
import ru.spcex.clearing.validation.common.ValidationHelper;
+import ru.spcex.platform.enumeration.UserRole;
import ru.spcex.platform.imdg.api.Imdg;
import ru.spcex.platform.imdg.api.ImdgId;
import ru.spcex.platform.imdg.api.ImdgProvider;
@@ -29,18 +31,21 @@ public class CouponPeriodService extends QueueConsumer implements InitializingBe
private final ImdgId idGenerator;
private final ValidationProvider validation;
private final ValidationHelper validationHelper;
+ private final UserRoleVerification userRoleVerification;
@Autowired
public CouponPeriodService(Consumer kafkaQueue,
Producer kafkaProducer,
ImdgProvider imdgProvider,
ValidationProvider validation,
+ UserRoleVerification userRoleVerification,
ValidationHelper validationHelper) {
super(kafkaQueue, kafkaProducer);
this.validation = validation;
this.couponPeriodImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_CouponPeriod, CouponPeriod.class);
this.imdgProvider = imdgProvider;
this.idGenerator = imdgProvider.getImdgIdGenerator();
+ this.userRoleVerification = userRoleVerification.setRoleForVerification(UserRole.Admin);
this.validationHelper = validationHelper;
}
@@ -79,7 +84,10 @@ public class CouponPeriodService extends QueueConsumer implements InitializingBe
CouponPeriodUpdateRequest req = userRequest.getRequestPayload();
log.debug("updateCurrency received id = {}", req.getId());
- RequestInfoUpdate requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, validation.couponPeriodUpdateValidator());
+ RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(userRequest);
+ if (requestInfoUpdate != null) return requestInfoUpdate;
+
+ requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, validation.couponPeriodUpdateValidator());
if (requestInfoUpdate != null) return requestInfoUpdate;
CouponPeriod couponPeriod = couponPeriodImdg.getSingleObjectByID(req.getId());
diff --git a/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/CurrencyService.java b/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/CurrencyService.java
index 8796e8e76..9ad133b26 100644
--- a/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/CurrencyService.java
+++ b/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/CurrencyService.java
@@ -16,7 +16,9 @@ import ru.spcex.clearing.platform.messaging.domain.cud.securitites.CurrencyUpdat
import ru.spcex.clearing.platform.messaging.service.QueueConsumer;
import ru.spcex.clearing.platform.messaging.service.RequestInfoUpdate;
import ru.spcex.clearing.securities.validation.ValidationProvider;
+import ru.spcex.clearing.util.security.UserRoleVerification;
import ru.spcex.clearing.validation.common.ValidationHelper;
+import ru.spcex.platform.enumeration.UserRole;
import ru.spcex.platform.imdg.api.Imdg;
import ru.spcex.platform.imdg.api.ImdgId;
import ru.spcex.platform.imdg.api.ImdgProvider;
@@ -28,6 +30,7 @@ public class CurrencyService extends QueueConsumer implements InitializingBean {
private final ImdgProvider imdgProvider;
private final ImdgId idGenerator;
private final ValidationProvider validation;
+ private final UserRoleVerification userRoleVerification;
private final ValidationHelper validationHelper;
@Autowired
@@ -35,12 +38,14 @@ public class CurrencyService extends QueueConsumer implements InitializingBean {
Producer kafkaProducer,
ImdgProvider imdgProvider,
ValidationProvider validation,
+ UserRoleVerification userRoleVerification,
ValidationHelper validationHelper) {
super(kafkaQueue, kafkaProducer);
this.validation = validation;
this.currencyImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Currency, Currency.class);
this.imdgProvider = imdgProvider;
this.idGenerator = imdgProvider.getImdgIdGenerator();
+ this.userRoleVerification = userRoleVerification.setRoleForVerification(UserRole.Admin);
this.validationHelper = validationHelper;
}
@@ -76,7 +81,10 @@ public class CurrencyService extends QueueConsumer implements InitializingBean {
CurrencyUpdateRequest req = userRequest.getRequestPayload();
log.debug("updateCurrency received id = {}", req.getId());
- RequestInfoUpdate requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, validation.currencyUpdateValidator());
+ RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(userRequest);
+ if (requestInfoUpdate != null) return requestInfoUpdate;
+
+ requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, validation.currencyUpdateValidator());
if (requestInfoUpdate != null) return requestInfoUpdate;
Currency currency = currencyImdg.getSingleObjectByID(req.getId());
diff --git a/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/EquitySecurityService.java b/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/EquitySecurityService.java
index 5a3585bb8..c19885ee4 100644
--- a/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/EquitySecurityService.java
+++ b/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/EquitySecurityService.java
@@ -19,7 +19,9 @@ import ru.spcex.clearing.platform.messaging.service.QueueConsumer;
import ru.spcex.clearing.platform.messaging.service.RequestInfoUpdate;
import ru.spcex.clearing.securities.component.ListingBuilder;
import ru.spcex.clearing.securities.validation.ValidationProvider;
+import ru.spcex.clearing.util.security.UserRoleVerification;
import ru.spcex.clearing.validation.common.ValidationHelper;
+import ru.spcex.platform.enumeration.UserRole;
import ru.spcex.platform.imdg.api.Imdg;
import ru.spcex.platform.imdg.api.ImdgId;
import ru.spcex.platform.imdg.api.ImdgProvider;
@@ -36,6 +38,7 @@ public class EquitySecurityService extends QueueConsumer implements Initializing
private final ImdgProvider imdgProvider;
private final ImdgId idGenerator;
private final ValidationProvider validation;
+ private final UserRoleVerification userRoleVerification;
private final ValidationHelper validationHelper;
private final ListingBuilder listingBuilder = new ListingBuilder();
@@ -43,6 +46,7 @@ public class EquitySecurityService extends QueueConsumer implements Initializing
public EquitySecurityService(Consumer kafkaQueue,
Producer kafkaProducer,
ImdgProvider imdgProvider,
+ UserRoleVerification userRoleVerification,
ValidationProvider validation,
ValidationHelper validationHelper) {
super(kafkaQueue, kafkaProducer);
@@ -51,6 +55,7 @@ public class EquitySecurityService extends QueueConsumer implements Initializing
this.listingImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Listing, Listing.class);
this.imdgProvider = imdgProvider;
this.idGenerator = imdgProvider.getImdgIdGenerator();
+ this.userRoleVerification = userRoleVerification.setRoleForVerification(UserRole.Admin);
this.validationHelper = validationHelper;
}
@@ -116,7 +121,10 @@ public class EquitySecurityService extends QueueConsumer implements Initializing
EquitySecurityUpdateRequest req = userRequest.getRequestPayload();
log.debug("MoneyMarketSecurityUpdateRequest received id = {}", req.getId());
- RequestInfoUpdate requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, validation.equityUpdateValidator());
+ RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(userRequest);
+ if (requestInfoUpdate != null) return requestInfoUpdate;
+
+ requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, validation.equityUpdateValidator());
if (requestInfoUpdate != null) return requestInfoUpdate;
EquitySecurity equity = equitySecurityImdg.getSingleObjectByID(req.getId());
@@ -149,7 +157,10 @@ public class EquitySecurityService extends QueueConsumer implements Initializing
CommonDeleteRequest req = userRequest.getRequestPayload();
log.debug("CommonDeleteRequest received id = {}", req.getId());
- RequestInfoUpdate requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, validation.equityDeleteValidator());
+ RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(userRequest);
+ if (requestInfoUpdate != null) return requestInfoUpdate;
+
+ requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, validation.equityDeleteValidator());
if (requestInfoUpdate != null) return requestInfoUpdate;
Instant updateTime = Instant.now();
diff --git a/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/FixedIncomeCashFlowService.java b/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/FixedIncomeCashFlowService.java
index ab17cf7ed..6b99a0c32 100644
--- a/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/FixedIncomeCashFlowService.java
+++ b/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/FixedIncomeCashFlowService.java
@@ -15,7 +15,9 @@ import ru.spcex.clearing.platform.messaging.domain.cud.securitites.FixedIncomeCa
import ru.spcex.clearing.platform.messaging.domain.cud.securitites.FixedIncomeCashFlowUpdateRequest;
import ru.spcex.clearing.platform.messaging.service.QueueConsumer;
import ru.spcex.clearing.platform.messaging.service.RequestInfoUpdate;
+import ru.spcex.clearing.util.security.UserRoleVerification;
import ru.spcex.clearing.validation.common.ValidationHelper;
+import ru.spcex.platform.enumeration.UserRole;
import ru.spcex.platform.imdg.api.Imdg;
import ru.spcex.platform.imdg.api.ImdgProvider;
import ru.spcex.platform.utils.validation.IValidator;
@@ -27,6 +29,7 @@ public class FixedIncomeCashFlowService extends QueueConsumer implements Initial
private final Logger log = LoggerFactory.getLogger(getClass());
private final Imdg fixedIncomeCashFlowImdg;
private final ImdgProvider imdgProvider;
+ private final UserRoleVerification userRoleVerification;
private final ValidationHelper validationHelper;
private final Function fixedIncomeCashFlowNewRequestValidator;
@@ -35,11 +38,13 @@ public class FixedIncomeCashFlowService extends QueueConsumer implements Initial
public FixedIncomeCashFlowService(Consumer kafkaQueue,
Producer kafkaResponseQueue,
ImdgProvider imdgProvider,
+ UserRoleVerification userRoleVerification,
ValidationHelper validationHelper,
@Qualifier("fixedIncomeCashFlowNewRequestValidator") Function fixedIncomeCashFlowNewRequestValidator,
@Qualifier("fixedIncomeCashFlowUpdateRequestValidator") Function fixedIncomeCashFlowUpdateRequestValidator) {
super(kafkaQueue, kafkaResponseQueue);
this.imdgProvider = imdgProvider;
+ this.userRoleVerification = userRoleVerification.setRoleForVerification(UserRole.Admin);
this.validationHelper = validationHelper;
this.fixedIncomeCashFlowNewRequestValidator = fixedIncomeCashFlowNewRequestValidator;
this.fixedIncomeCashFlowUpdateRequestValidator = fixedIncomeCashFlowUpdateRequestValidator;
@@ -83,7 +88,10 @@ public class FixedIncomeCashFlowService extends QueueConsumer implements Initial
public RequestInfoUpdate fixedIncomeCashFlowUpdate(BaseRequest userRequest) {
log.debug("FixedIncomeCashFlowUpdateRequest received {}", userRequest.getId());
- RequestInfoUpdate requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, fixedIncomeCashFlowUpdateRequestValidator);
+ RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(userRequest);
+ if (requestInfoUpdate != null) return requestInfoUpdate;
+
+ requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, fixedIncomeCashFlowUpdateRequestValidator);
if (requestInfoUpdate != null) return requestInfoUpdate;
FixedIncomeCashFlowUpdateRequest req = userRequest.getRequestPayload();
diff --git a/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/FixedIncomeSecurityService.java b/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/FixedIncomeSecurityService.java
index aa618aefa..d571ed199 100644
--- a/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/FixedIncomeSecurityService.java
+++ b/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/FixedIncomeSecurityService.java
@@ -19,7 +19,9 @@ import ru.spcex.clearing.platform.messaging.service.QueueConsumer;
import ru.spcex.clearing.platform.messaging.service.RequestInfoUpdate;
import ru.spcex.clearing.securities.component.ListingBuilder;
import ru.spcex.clearing.securities.validation.ValidationProvider;
+import ru.spcex.clearing.util.security.UserRoleVerification;
import ru.spcex.clearing.validation.common.ValidationHelper;
+import ru.spcex.platform.enumeration.UserRole;
import ru.spcex.platform.imdg.api.Imdg;
import ru.spcex.platform.imdg.api.ImdgId;
import ru.spcex.platform.imdg.api.ImdgProvider;
@@ -36,6 +38,7 @@ public class FixedIncomeSecurityService extends QueueConsumer implements Initial
private final ImdgProvider imdgProvider;
private final ImdgId idGenerator;
private final ValidationProvider validation;
+ private final UserRoleVerification userRoleVerification;
private final ValidationHelper validationHelper;
private final ListingBuilder listingBuilder = new ListingBuilder();
@@ -44,6 +47,7 @@ public class FixedIncomeSecurityService extends QueueConsumer implements Initial
Producer kafkaProducer,
ImdgProvider imdgProvider,
ValidationProvider validation,
+ UserRoleVerification userRoleVerification,
ValidationHelper validationHelper) {
super(kafkaQueue, kafkaProducer);
this.validation = validation;
@@ -51,6 +55,7 @@ public class FixedIncomeSecurityService extends QueueConsumer implements Initial
this.listingImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Listing, Listing.class);
this.imdgProvider = imdgProvider;
this.idGenerator = imdgProvider.getImdgIdGenerator();
+ this.userRoleVerification = userRoleVerification.setRoleForVerification(UserRole.Admin);
this.validationHelper = validationHelper;
}
@@ -121,7 +126,10 @@ public class FixedIncomeSecurityService extends QueueConsumer implements Initial
FixedIncomeSecurityUpdateRequest req = userRequest.getRequestPayload();
log.debug("updateFixedIncome received id = {}", req.getId());
- RequestInfoUpdate requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, validation.fixedIncomeUpdateValidator());
+ RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(userRequest);
+ if (requestInfoUpdate != null) return requestInfoUpdate;
+
+ requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, validation.fixedIncomeUpdateValidator());
if (requestInfoUpdate != null) return requestInfoUpdate;
FixedIncomeSecurity fixedIncome = fixedIncomeSecurityImdg.getSingleObjectByID(req.getId());
@@ -160,7 +168,10 @@ public class FixedIncomeSecurityService extends QueueConsumer implements Initial
CommonDeleteRequest req = userRequest.getRequestPayload();
log.debug("CommonDeleteRequest received id = {}", req.getId());
- RequestInfoUpdate requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, validation.fixedIncomeDeleteValidator());
+ RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(userRequest);
+ if (requestInfoUpdate != null) return requestInfoUpdate;
+
+ requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, validation.fixedIncomeDeleteValidator());
if (requestInfoUpdate != null) return requestInfoUpdate;
Instant updateTime = Instant.now();
diff --git a/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/MoneyMarketSecurityService.java b/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/MoneyMarketSecurityService.java
index c96cb0e94..55c1c14b5 100644
--- a/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/MoneyMarketSecurityService.java
+++ b/clearing-parent/securities-service/src/main/java/ru/spcex/clearing/securities/service/cud/MoneyMarketSecurityService.java
@@ -21,7 +21,9 @@ import ru.spcex.clearing.platform.messaging.service.RequestInfoUpdate;
import ru.spcex.clearing.platform.messaging.service.Status;
import ru.spcex.clearing.securities.component.ListingBuilder;
import ru.spcex.clearing.securities.validation.ValidationProvider;
+import ru.spcex.clearing.util.security.UserRoleVerification;
import ru.spcex.clearing.validation.common.ValidationHelper;
+import ru.spcex.platform.enumeration.UserRole;
import ru.spcex.platform.imdg.api.Imdg;
import ru.spcex.platform.imdg.api.ImdgId;
import ru.spcex.platform.imdg.api.ImdgProvider;
@@ -43,6 +45,7 @@ public class MoneyMarketSecurityService extends QueueConsumer implements Initial
private final ImdgProvider imdgProvider;
private final ImdgId idGenerator;
private final ValidationProvider validation;
+ private final UserRoleVerification userRoleVerification;
private final ValidationHelper validationHelper;
private final IMessageResolver messageResolver;
private final ListingBuilder listingBuilder = new ListingBuilder();
@@ -52,9 +55,11 @@ public class MoneyMarketSecurityService extends QueueConsumer implements Initial
Producer kafkaProducer,
ImdgProvider imdgProvider,
ValidationProvider validation,
+ UserRoleVerification userRoleVerification,
ValidationHelper validationHelper,
IMessageResolver messageResolver) {
super(kafkaQueue, kafkaProducer);
+ this.userRoleVerification = userRoleVerification.setRoleForVerification(UserRole.Admin);
this.validationHelper = validationHelper;
this.validation = validation;
this.moneyMarketSecurityMap = imdgProvider.getImdg(IMDGDistributedNames.Map_MoneyMarketSecurity, MoneyMarketSecurity.class);
@@ -145,6 +150,10 @@ public class MoneyMarketSecurityService extends QueueConsumer implements Initial
private RequestInfoUpdate updateMoneyMarket(BaseRequest userRequest) {
MoneyMarketSecurityUpdateRequest req = userRequest.getRequestPayload();
log.debug("MoneyMarketSecurityUpdateRequest received id = {}", req.getId());
+
+ RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(userRequest);
+ if (requestInfoUpdate != null) return requestInfoUpdate;
+
IValidator validator = validation.mmsUpdateValidator().apply(req);
Optional validationError = validator.tillFirstError();
if (validationError.isPresent()) {
@@ -190,6 +199,11 @@ public class MoneyMarketSecurityService extends QueueConsumer implements Initial
private RequestInfoUpdate deleteMoneyMarket(BaseRequest userRequest) {
CommonDeleteRequest req = userRequest.getRequestPayload();
log.debug("CommonDeleteRequest received id = {}", req.getId());
+
+ RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(userRequest);
+ if (requestInfoUpdate != null) return requestInfoUpdate;
+
+
IValidator validator = validation.mmsDeleteValidator().apply(req);
Optional validationError = validator.tillFirstError();
if (validationError.isPresent()) {