UserRoleVerification for company-service
This commit is contained in:
parent
2269f2c10e
commit
cb3b251ee5
9 changed files with 83 additions and 32 deletions
|
|
@ -9,6 +9,7 @@ import ru.spcex.platform.utils.enumeration.EnumMessage;
|
|||
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
||||
import ru.spcex.platform.utils.validation.IValidator;
|
||||
|
||||
import java.util.Objects;
|
||||
import java.util.Optional;
|
||||
import java.util.function.Function;
|
||||
|
||||
|
|
@ -18,6 +19,7 @@ public class ValidationHelper {
|
|||
private IMessageResolver messageResolver;
|
||||
|
||||
public ValidationHelper(IMessageResolver messageResolver) {
|
||||
Objects.requireNonNull(messageResolver);
|
||||
this.messageResolver = messageResolver;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ import org.springframework.context.annotation.Scope;
|
|||
import ru.spcex.clearing.company.error.CompanyErrors;
|
||||
import ru.spcex.clearing.company.util.RequestHelper;
|
||||
import ru.spcex.clearing.util.security.UserRoleVerification;
|
||||
import ru.spcex.platform.enumeration.UserRole;
|
||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
||||
import ru.spcex.platform.utils.enumeration.SimpleMessageResolver;
|
||||
|
|
@ -27,6 +28,6 @@ public class BeanConfiguration {
|
|||
@Bean
|
||||
@Scope(value = ConfigurableBeanFactory.SCOPE_PROTOTYPE)
|
||||
public UserRoleVerification userRoleVerification(ImdgProvider imdgProvider, IMessageResolver messageResolver) {
|
||||
return new UserRoleVerification(imdgProvider, messageResolver, CompanyErrors.UserVerifyDenial);
|
||||
return new UserRoleVerification(imdgProvider, messageResolver, UserRole.Admin, CompanyErrors.UserVerifyDenial);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@ import ru.spcex.clearing.platform.messaging.domain.cud.company.ClearingMemberCat
|
|||
import ru.spcex.clearing.platform.messaging.domain.cud.company.ClearingMemberCategoryUpdateRequest;
|
||||
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.imdg.api.Imdg;
|
||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||
|
|
@ -33,12 +34,14 @@ public class ClearingMemberCategoryService extends QueueConsumer implements Init
|
|||
private final Function<ClearingMemberCategoryUpdateRequest, IValidator> clearingMemberCategoryUpdateRequestValidator;
|
||||
private final Function<CommonDeleteRequest, IValidator> clearingMemberCategoryDeleteRequestValidator;
|
||||
private final ValidationHelper validationHelper;
|
||||
private final UserRoleVerification userRoleVerification;
|
||||
|
||||
@Autowired
|
||||
public ClearingMemberCategoryService(Consumer<String, Object> kafkaQueue,
|
||||
Producer<String, Object> kafkaProducer,
|
||||
ImdgProvider imdgProvider,
|
||||
ValidationHelper validationHelper,
|
||||
UserRoleVerification userRoleVerification,
|
||||
@Qualifier("clearingMemberCategoryNewRequestValidator") Function<ClearingMemberCategoryNewRequest, IValidator> clearingMemberCategoryNewRequestValidator,
|
||||
@Qualifier("clearingMemberCategoryUpdateRequestValidator") Function<ClearingMemberCategoryUpdateRequest, IValidator> clearingMemberCategoryUpdateRequestValidator,
|
||||
@Qualifier("clearingMemberCategoryDeleteRequestValidator") Function<CommonDeleteRequest, IValidator> clearingMemberCategoryDeleteRequestValidator) {
|
||||
|
|
@ -48,6 +51,7 @@ public class ClearingMemberCategoryService extends QueueConsumer implements Init
|
|||
this.clearingMemberCategoryUpdateRequestValidator = clearingMemberCategoryUpdateRequestValidator;
|
||||
this.clearingMemberCategoryDeleteRequestValidator = clearingMemberCategoryDeleteRequestValidator;
|
||||
this.validationHelper = validationHelper;
|
||||
this.userRoleVerification = userRoleVerification;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -67,7 +71,10 @@ public class ClearingMemberCategoryService extends QueueConsumer implements Init
|
|||
private RequestInfoUpdate clearingMemberCategoryNew(BaseRequest<ClearingMemberCategoryNewRequest> userRequest) {
|
||||
log.debug("ClearingMemberCategoryNewRequest received {}", userRequest.getId());
|
||||
|
||||
RequestInfoUpdate requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, clearingMemberCategoryNewRequestValidator);
|
||||
RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(userRequest);
|
||||
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||
|
||||
requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, clearingMemberCategoryNewRequestValidator);
|
||||
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||
|
||||
ClearingMemberCategoryNewRequest req = userRequest.getRequestPayload();
|
||||
|
|
@ -84,7 +91,10 @@ public class ClearingMemberCategoryService extends QueueConsumer implements Init
|
|||
public RequestInfoUpdate clearingMemberCategoryUpdate(BaseRequest<ClearingMemberCategoryUpdateRequest> userRequest) {
|
||||
ClearingMemberCategoryUpdateRequest req = userRequest.getRequestPayload();
|
||||
|
||||
RequestInfoUpdate requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, clearingMemberCategoryUpdateRequestValidator);
|
||||
RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(userRequest);
|
||||
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||
|
||||
requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, clearingMemberCategoryUpdateRequestValidator);
|
||||
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||
|
||||
log.debug("ClearingMemberCategoryUpdateRequest received");
|
||||
|
|
@ -100,7 +110,10 @@ public class ClearingMemberCategoryService extends QueueConsumer implements Init
|
|||
private RequestInfoUpdate clearingMemberCategoryDelete(BaseRequest<CommonDeleteRequest> userRequest) {
|
||||
CommonDeleteRequest req = userRequest.getRequestPayload();
|
||||
|
||||
RequestInfoUpdate requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, clearingMemberCategoryDeleteRequestValidator);
|
||||
RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(userRequest);
|
||||
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||
|
||||
requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, clearingMemberCategoryDeleteRequestValidator);
|
||||
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||
|
||||
log.debug("CommonDeleteRequest received id = {}", req.getId());
|
||||
|
|
|
|||
|
|
@ -20,7 +20,6 @@ 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;
|
||||
|
|
@ -49,7 +48,7 @@ public class CompanyInfoService extends QueueConsumer implements InitializingBea
|
|||
this.companyService = companyService;
|
||||
this.companyMap = imdgProvider.getImdg(IMDGDistributedNames.Map_Company, Company.class);
|
||||
this.validationHelper = validationHelper;
|
||||
this.userRoleVerification = userRoleVerification.setRoleForVerification(UserRole.Admin);
|
||||
this.userRoleVerification = userRoleVerification;
|
||||
this.companyInfoUpdateRequestValidator = companyInfoUpdateRequestValidator;
|
||||
this.requestHelper = requestHelper.setLogger(log);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -19,7 +19,6 @@ 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.ImdgId;
|
||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||
|
|
@ -57,7 +56,7 @@ public class CompanyRoleSetService extends QueueConsumer implements Initializing
|
|||
this.imdgProvider = imdgProvider;
|
||||
this.companyRoleSetMap = imdgProvider.getImdg(IMDGDistributedNames.Map_CompanyRoleSet, CompanyRoleSet.class);
|
||||
this.idSequence = imdgProvider.getImdgIdGenerator();
|
||||
this.userRoleVerification = userRoleVerification.setRoleForVerification(UserRole.Admin);
|
||||
this.userRoleVerification = userRoleVerification;
|
||||
this.validationHelper = validationHelper;
|
||||
// this.companyDeleteRequestValidator = companyDeleteRequestValidator;
|
||||
this.requestHelper = requestHelper.setLogger(log);
|
||||
|
|
@ -82,7 +81,8 @@ public class CompanyRoleSetService extends QueueConsumer implements Initializing
|
|||
CompanyRoleSetNewRequest req = companyRoleNewRequestBaseRequest.getRequestPayload();
|
||||
log.debug("companyroleset-new request received, BaseRequest.id = {}", companyRoleNewRequestBaseRequest.getId());
|
||||
{ // Валидация, ValidationException
|
||||
userRoleVerification.validateRoleAndThrow(companyRoleNewRequestBaseRequest);
|
||||
RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(companyRoleNewRequestBaseRequest);
|
||||
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||
// RequestInfoUpdate requestInfoUpdate = validationHelper.validateTillFirstError(companyRoleNewRequestBaseRequest, companyNewRequestValidator);
|
||||
// if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||
}
|
||||
|
|
@ -118,7 +118,8 @@ public class CompanyRoleSetService extends QueueConsumer implements Initializing
|
|||
CommonDeleteRequest request = companyRoleSetDeleteRequest.getRequestPayload();
|
||||
log.debug("companyRoleSetDeleteRequest received id = {}", request.getId());
|
||||
{ // Валидация, ValidationException
|
||||
userRoleVerification.validateRoleAndThrow(companyRoleSetDeleteRequest);
|
||||
RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(companyRoleSetDeleteRequest);
|
||||
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||
if (request.getId() == null) {
|
||||
return requestHelper.makeErrorResponse(companyRoleSetDeleteRequest, CompanyErrors.RequiredFieldEmpty, "id");
|
||||
}
|
||||
|
|
|
|||
|
|
@ -22,7 +22,6 @@ 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.CompanySymbol;
|
||||
import ru.spcex.platform.enumeration.UserRole;
|
||||
import ru.spcex.platform.enumeration.WorkflowStatus;
|
||||
import ru.spcex.platform.imdg.api.Imdg;
|
||||
import ru.spcex.platform.imdg.api.ImdgId;
|
||||
|
|
@ -80,7 +79,7 @@ public class CompanyService extends QueueConsumer implements InitializingBean {
|
|||
|
||||
this.companySymbolsMap = imdgProvider.getImdg(IMDGDistributedNames.Map_CompanySymbols, CompanySymbols.class);
|
||||
this.idSequence = imdgProvider.getImdgIdGenerator();
|
||||
this.userRoleVerification = userRoleVerification.setRoleForVerification(UserRole.Admin);
|
||||
this.userRoleVerification = userRoleVerification;
|
||||
this.validationHelper = validationHelper;
|
||||
this.companyNewRequestValidator = companyNewRequestValidator;
|
||||
this.companyUpdateRequestValidator = companyUpdateRequestValidator;
|
||||
|
|
@ -107,9 +106,11 @@ public class CompanyService extends QueueConsumer implements InitializingBean {
|
|||
private synchronized RequestInfoUpdate createCompany(BaseRequest<CompanyNewRequest> companyNewRequestBaseRequest) throws ValidationException {
|
||||
CompanyNewRequest req = companyNewRequestBaseRequest.getRequestPayload();
|
||||
log.debug("company-new request received, BaseRequest.id = {}", companyNewRequestBaseRequest.getId());
|
||||
{ // Валидация, ValidationException
|
||||
userRoleVerification.validateRoleAndThrow(companyNewRequestBaseRequest);
|
||||
RequestInfoUpdate requestInfoUpdate = validationHelper.validateTillFirstError(companyNewRequestBaseRequest, companyNewRequestValidator);
|
||||
{ // Валидация
|
||||
RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(companyNewRequestBaseRequest);
|
||||
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||
|
||||
requestInfoUpdate = validationHelper.validateTillFirstError(companyNewRequestBaseRequest, companyNewRequestValidator);
|
||||
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||
}
|
||||
Company company = new Company();
|
||||
|
|
@ -153,9 +154,11 @@ public class CompanyService extends QueueConsumer implements InitializingBean {
|
|||
|
||||
private synchronized RequestInfoUpdate updateCompany(BaseRequest<CompanyNewRequest> companyUpdateRequestBaseRequest) throws ValidationException {
|
||||
CompanyNewRequest updateRequest = companyUpdateRequestBaseRequest.getRequestPayload();
|
||||
{ // Валидация, ValidationException
|
||||
userRoleVerification.validateRoleAndThrow(companyUpdateRequestBaseRequest);
|
||||
RequestInfoUpdate requestInfoUpdate = validationHelper.validateTillFirstError(companyUpdateRequestBaseRequest, companyUpdateRequestValidator);
|
||||
{ // Валидация,
|
||||
RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(companyUpdateRequestBaseRequest);
|
||||
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||
|
||||
requestInfoUpdate = validationHelper.validateTillFirstError(companyUpdateRequestBaseRequest, companyUpdateRequestValidator);
|
||||
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||
}
|
||||
ImdgTransaction transaction = imdgProvider.newTransaction();
|
||||
|
|
@ -234,9 +237,11 @@ public class CompanyService extends QueueConsumer implements InitializingBean {
|
|||
private synchronized RequestInfoUpdate deleteCompany(BaseRequest<CommonDeleteRequest> companyBlockRequestBaseRequest) throws ValidationException {
|
||||
CommonDeleteRequest request = companyBlockRequestBaseRequest.getRequestPayload();
|
||||
log.debug("CommonDeleteRequest (block request) received id = {}", request.getId());
|
||||
{ // Валидация, ValidationException
|
||||
userRoleVerification.validateRoleAndThrow(companyBlockRequestBaseRequest);
|
||||
RequestInfoUpdate requestInfoUpdate = validationHelper.validateTillFirstError(companyBlockRequestBaseRequest, companyDeleteRequestValidator);
|
||||
{ // Валидация
|
||||
RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(companyBlockRequestBaseRequest);
|
||||
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||
|
||||
requestInfoUpdate = validationHelper.validateTillFirstError(companyBlockRequestBaseRequest, companyDeleteRequestValidator);
|
||||
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||
}
|
||||
ImdgTransaction transaction = imdgProvider.newTransaction();
|
||||
|
|
|
|||
|
|
@ -16,6 +16,7 @@ import ru.spcex.clearing.platform.messaging.domain.cud.company.ContactNewRequest
|
|||
import ru.spcex.clearing.platform.messaging.domain.cud.company.ContactUpdateRequest;
|
||||
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.imdg.api.Imdg;
|
||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||
|
|
@ -30,17 +31,20 @@ public class ContactService extends QueueConsumer implements InitializingBean {
|
|||
private final ValidationHelper validationHelper;
|
||||
private final Function<ContactNewRequest, IValidator> contactNewRequestValidator;
|
||||
private final Function<ContactUpdateRequest, IValidator> contactUpdateRequestValidator;
|
||||
private final UserRoleVerification userRoleVerification;
|
||||
|
||||
@Autowired
|
||||
public ContactService(Consumer<String, Object> kafkaQueue,
|
||||
Producer<String, Object> kafkaProducer,
|
||||
ImdgProvider imdgProvider,
|
||||
ValidationHelper validationHelper,
|
||||
UserRoleVerification userRoleVerification,
|
||||
@Qualifier("contactNewRequestValidator") Function<ContactNewRequest, IValidator> contactNewRequestValidator,
|
||||
@Qualifier("contactUpdateRequestValidator") Function<ContactUpdateRequest, IValidator> contactUpdateRequestValidator) {
|
||||
super(kafkaQueue, kafkaProducer);
|
||||
this.contactMap = imdgProvider.getImdg(IMDGDistributedNames.Map_Contact, Contact.class);
|
||||
this.validationHelper = validationHelper;
|
||||
this.userRoleVerification = userRoleVerification;
|
||||
this.contactNewRequestValidator = contactNewRequestValidator;
|
||||
this.contactUpdateRequestValidator = contactUpdateRequestValidator;
|
||||
}
|
||||
|
|
@ -59,9 +63,10 @@ public class ContactService extends QueueConsumer implements InitializingBean {
|
|||
public RequestInfoUpdate contactNew(BaseRequest<ContactNewRequest> userRequest) {
|
||||
log.debug("ContactNewRequest received");
|
||||
|
||||
RequestInfoUpdate requestInfoUpdate = validationHelper.validateTillFirstError(
|
||||
userRequest, contactNewRequestValidator
|
||||
);
|
||||
RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(userRequest);
|
||||
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||
|
||||
requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, contactNewRequestValidator);
|
||||
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||
|
||||
ContactNewRequest contactNewRequest = userRequest.getRequestPayload();
|
||||
|
|
@ -78,9 +83,10 @@ public class ContactService extends QueueConsumer implements InitializingBean {
|
|||
public RequestInfoUpdate contactUpdate(BaseRequest<ContactUpdateRequest> userRequest) {
|
||||
log.debug("ContactUpdateRequest received");
|
||||
|
||||
RequestInfoUpdate requestInfoUpdate = validationHelper.validateTillFirstError(
|
||||
userRequest, contactUpdateRequestValidator
|
||||
);
|
||||
RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(userRequest);
|
||||
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||
|
||||
requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, contactUpdateRequestValidator);
|
||||
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||
|
||||
// Тип контакта не меняем, при валидации кидаем ошибку.
|
||||
|
|
|
|||
|
|
@ -19,6 +19,7 @@ import ru.spcex.clearing.platform.messaging.domain.cud.company.ProfileDocumentUp
|
|||
import ru.spcex.clearing.platform.messaging.service.QueueConsumer;
|
||||
import ru.spcex.clearing.platform.messaging.service.RequestInfoUpdate;
|
||||
import ru.spcex.clearing.platform.messaging.service.sender.KafkaSender;
|
||||
import ru.spcex.clearing.util.security.UserRoleVerification;
|
||||
import ru.spcex.clearing.validation.common.ValidationHelper;
|
||||
import ru.spcex.platform.imdg.api.Imdg;
|
||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||
|
|
@ -37,12 +38,14 @@ public class ProfileDocumentService extends QueueConsumer implements Initializin
|
|||
private final Function<ProfileDocumentNewRequest, IValidator> profileDocumentNewRequestValidator;
|
||||
private final Function<ProfileDocumentUpdateRequest, IValidator> profileDocumentUpdateRequestValidator;
|
||||
private final ValidationHelper validationHelper;
|
||||
private final UserRoleVerification userRoleVerification;
|
||||
|
||||
@Autowired
|
||||
public ProfileDocumentService(Consumer<String, Object> kafkaQueue,
|
||||
Producer<String, Object> kafkaProducer,
|
||||
KafkaSender kafkaReqProducer,
|
||||
ImdgProvider imdgProvider,
|
||||
UserRoleVerification userRoleVerification,
|
||||
@Qualifier("profileDocumentNewRequestValidation") Function<ProfileDocumentNewRequest, IValidator> profileDocumentNewRequestValidator,
|
||||
@Qualifier("profileDocumentUpdateRequestValidation") Function<ProfileDocumentUpdateRequest, IValidator> profileDocumentUpdateRequestValidator,
|
||||
ValidationHelper validationHelper) {
|
||||
|
|
@ -52,6 +55,7 @@ public class ProfileDocumentService extends QueueConsumer implements Initializin
|
|||
this.profileDocumentNewRequestValidator = profileDocumentNewRequestValidator;
|
||||
this.profileDocumentUpdateRequestValidator = profileDocumentUpdateRequestValidator;
|
||||
this.validationHelper = validationHelper;
|
||||
this.userRoleVerification = userRoleVerification;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -72,9 +76,11 @@ public class ProfileDocumentService extends QueueConsumer implements Initializin
|
|||
private RequestInfoUpdate profileDocumentNew(BaseRequest<ProfileDocumentNewRequest> profileDocumentNewRequestBaseRequest) {
|
||||
log.trace("Start processing ProfileDocumentNewRequest!");
|
||||
|
||||
RequestInfoUpdate requestInfoUpdate = validationHelper.validateTillFirstError(
|
||||
profileDocumentNewRequestBaseRequest,
|
||||
profileDocumentNewRequestValidator
|
||||
RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(profileDocumentNewRequestBaseRequest);
|
||||
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||
|
||||
requestInfoUpdate = validationHelper.validateTillFirstError(
|
||||
profileDocumentNewRequestBaseRequest, profileDocumentNewRequestValidator
|
||||
);
|
||||
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||
|
||||
|
|
@ -106,7 +112,10 @@ public class ProfileDocumentService extends QueueConsumer implements Initializin
|
|||
private RequestInfoUpdate profileDocumentUpdate(BaseRequest<ProfileDocumentUpdateRequest> profileDocumentUpdateRequestBaseRequest) {
|
||||
log.trace("Start processing ProfileDocumentUpdateRequest!");
|
||||
|
||||
RequestInfoUpdate requestInfoUpdate = validationHelper.validateTillFirstError(
|
||||
RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(profileDocumentUpdateRequestBaseRequest);
|
||||
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||
|
||||
requestInfoUpdate = validationHelper.validateTillFirstError(
|
||||
profileDocumentUpdateRequestBaseRequest,
|
||||
profileDocumentUpdateRequestValidator
|
||||
);
|
||||
|
|
|
|||
|
|
@ -24,7 +24,8 @@ import java.util.Objects;
|
|||
* <p/>
|
||||
* Основная проверка прав осуществляется на frontend-api, и использовать этот компонент дополнительно не требуется.
|
||||
* <p/>
|
||||
* Использовать @Scope(value = ConfigurableBeanFactory.SCOPE_PROTOTYPE), требует задание роли через setRoleForVerification(role)
|
||||
* Использовать @Scope(value = ConfigurableBeanFactory.SCOPE_PROTOTYPE), требует задание роли через setRoleForVerification(role).
|
||||
* Либо роль можно задать во втором конструкторе, переопределив её где требуется (если используется scope prototype)
|
||||
*/
|
||||
public class UserRoleVerification {
|
||||
protected Logger log = LoggerFactory.getLogger(getClass());
|
||||
|
|
@ -45,6 +46,20 @@ public class UserRoleVerification {
|
|||
this.roleVerificationError = roleVerificationError;
|
||||
}
|
||||
|
||||
public UserRoleVerification(ImdgProvider imdg,
|
||||
IMessageResolver messageResolver,
|
||||
UserRole roleForVerification,
|
||||
IErrorEnumId roleVerificationError) {
|
||||
Objects.requireNonNull(roleForVerification);
|
||||
Objects.requireNonNull(roleVerificationError);
|
||||
Objects.requireNonNull(messageResolver);
|
||||
Objects.requireNonNull(roleForVerification);
|
||||
userRoleSessions = imdg.getImdg(IMDGDistributedNames.Map_UserRoleSession, UserRoleSession.class);
|
||||
this.messageResolver = messageResolver;
|
||||
this.roleVerificationError = roleVerificationError;
|
||||
this.roleForVerification = roleForVerification;
|
||||
}
|
||||
|
||||
protected boolean userHasRole(Long userId, IEnumKey role) {
|
||||
return userHasRole(userId, role == null ? null : role.getKey());
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue