PEC success emails not saved or included in response
This commit is contained in:
@@ -308,8 +308,14 @@ public class ApplicationAmendmentRequestDao {
|
||||
if (Boolean.TRUE.equals(applicationAmendmentRequestResponse.getIsSendEmail())) {
|
||||
emailNotificationDao.sendMailToNotifyBeneficiaryRegardingNewAmendment(applicationAmendmentRequestEntity);
|
||||
EmailSendResponse emailSendResponse = emailDao.buildEmailSendResponseFromRequest(request);
|
||||
applicationAmendmentRequestResponse.setEmailSendResponse(emailSendResponse);
|
||||
saveEmailSendResponse(emailSendResponse, applicationAmendmentRequestEntity);
|
||||
List<EmailSendResponse> responses = List.of(emailSendResponse);
|
||||
if (!Boolean.TRUE.equals(emailSendResponse.getIsEmailSend())){
|
||||
saveEmailSendResponse(emailSendResponse, applicationAmendmentRequestEntity);
|
||||
applicationAmendmentRequestResponse.setEmailSendResponse(responses);
|
||||
}
|
||||
else{
|
||||
applicationAmendmentRequestResponse.setEmailSendResponse(Collections.emptyList());
|
||||
}
|
||||
}
|
||||
return applicationAmendmentRequestResponse;
|
||||
}
|
||||
@@ -516,6 +522,7 @@ public class ApplicationAmendmentRequestDao {
|
||||
Long hubId = applicationEntity.getHubId();
|
||||
HubEntity hubEntity = hubService.valdateHub(hubId);
|
||||
|
||||
response.setEmailSendResponse(entity.getEmailSendResponse());
|
||||
response.setId(entity.getId());
|
||||
response.setApplicationId(entity.getApplicationId());
|
||||
response.setApplicationEvaluationId(entity.getApplicationEvaluationEntity().getId());
|
||||
@@ -654,19 +661,12 @@ public class ApplicationAmendmentRequestDao {
|
||||
log.info(" Application amendment deleted with ID: {}", id);
|
||||
}
|
||||
|
||||
public ApplicationAmendmentRequestResponseBean getApplicationAmendmentRequestById(Long id) {
|
||||
public ApplicationAmendmentRequestResponse getApplicationAmendmentRequestById(Long id) {
|
||||
log.info("Fetching application amendment with ID: {}", id);
|
||||
ApplicationAmendmentRequestEntity applicationAmendmentRequestEntity = validateApplicationAmendmentRequest(id);
|
||||
ApplicationAmendmentRequestResponse sourceResponse = convertEntityToResponse(applicationAmendmentRequestEntity,true);
|
||||
ApplicationAmendmentRequestResponseBean targetResponse = Utils.convertSourceObjectToDestinationObject(
|
||||
sourceResponse, ApplicationAmendmentRequestResponseBean.class
|
||||
);
|
||||
|
||||
if (targetResponse != null) {
|
||||
targetResponse.setEmailSendResponse(applicationAmendmentRequestEntity.getEmailSendResponse());
|
||||
}
|
||||
log.info("Application Amendment fetched successfully by ID: {}", targetResponse);
|
||||
return targetResponse;
|
||||
ApplicationAmendmentRequestResponse response = convertEntityToResponse(applicationAmendmentRequestEntity,true);
|
||||
response.setEmailSendResponse(applicationAmendmentRequestEntity.getEmailSendResponse());
|
||||
return response;
|
||||
}
|
||||
|
||||
public List<GetAllAmendmentResponseBean> getAllApplicationAmendmentRequest(HttpServletRequest request, Long userId) {
|
||||
@@ -1205,8 +1205,14 @@ public class ApplicationAmendmentRequestDao {
|
||||
beneficiaryUser.getId(), applicationEntity.getId(), amendment.getId(), applicationEntity.getCall().getId());
|
||||
emailNotificationDao.sendMail(hub.getId(), subject, body, List.of(email), emailLogRequest);
|
||||
EmailSendResponse emailSendResponse = emailDao.buildEmailSendResponseFromRequest(request);
|
||||
emailReminderResponse.setEmailSendResponse(emailSendResponse);
|
||||
saveEmailSendResponse(emailSendResponse, amendment);
|
||||
List<EmailSendResponse> responses = List.of(emailSendResponse);
|
||||
if (!Boolean.TRUE.equals(emailSendResponse.getIsEmailSend())){
|
||||
emailReminderResponse.setEmailSendResponse(responses);
|
||||
saveEmailSendResponse(emailSendResponse, amendment);
|
||||
}
|
||||
else{
|
||||
emailReminderResponse.setEmailSendResponse(Collections.emptyList());
|
||||
}
|
||||
} else {
|
||||
throw new CustomValidationException(Status.BAD_REQUEST, Translator.toLocale(GepafinConstant.BENEFICIARY_EMAIL_NOT_FOUND_MSG));
|
||||
}
|
||||
|
||||
@@ -1092,7 +1092,7 @@ public class ApplicationEvaluationDao {
|
||||
}
|
||||
validator.validatePreInstructor(request, assignedApplications.getUserId());
|
||||
}
|
||||
public ApplicationEvaluationResponseBean getApplicationEvaluationByApplicationId(HttpServletRequest request, UserEntity user, Long applicationID, Long assignedApplicationID) {
|
||||
public ApplicationEvaluationResponse getApplicationEvaluationByApplicationId(HttpServletRequest request, UserEntity user, Long applicationID, Long assignedApplicationID) {
|
||||
Long applicationId;
|
||||
Long assignedApplicationId;
|
||||
validatePreinstructor(request, applicationID, assignedApplicationID);
|
||||
@@ -1131,12 +1131,9 @@ public class ApplicationEvaluationDao {
|
||||
return null;
|
||||
}
|
||||
ApplicationEvaluationEntity entity = entityOptional.get();
|
||||
ApplicationEvaluationResponse response = convertToResponse(entity);
|
||||
ApplicationEvaluationResponseBean targetResponse = Utils.convertSourceObjectToDestinationObject(response, ApplicationEvaluationResponseBean.class);
|
||||
if (targetResponse != null && entity.getEmailSendResponse() != null) {
|
||||
targetResponse.setEmailSendResponse(entity.getEmailSendResponse());
|
||||
}
|
||||
return targetResponse;
|
||||
ApplicationEvaluationResponse applicationEvaluationResponse = convertToResponse(entity);
|
||||
applicationEvaluationResponse.setEmailSendResponse(entity.getEmailSendResponse());
|
||||
return applicationEvaluationResponse;
|
||||
}
|
||||
private List<EvaluationDocumentRequest> prepareEvaluationDocumentBeanList(ApplicationEvaluationEntity entity) {
|
||||
List<EvaluationDocumentRequest> docRequest = new ArrayList<>();
|
||||
@@ -1893,12 +1890,16 @@ public class ApplicationEvaluationDao {
|
||||
ApplicationEntity oldApplicationEntity = Utils.getClonedEntityForData(application);
|
||||
|
||||
|
||||
List<EmailSendResponse> responses = new ArrayList<>();
|
||||
if(newStatus.equals(ApplicationStatusForEvaluation.ADMISSIBLE) && Boolean.TRUE.equals(application.getStatus().equals(ApplicationStatusTypeEnum.APPOINTMENT.getValue()))){
|
||||
application.setStatus(newStatus.getValue());
|
||||
log.info("Status updated to ADMISSIBLE for applicationId: " + application.getId());
|
||||
emailNotificationDao.sendAdmissibilityNotificationEmailForAdmissibleApplication(application);
|
||||
emailSendResponse = emailDao.buildEmailSendResponseFromRequest(request);
|
||||
saveEmailSendResponseToEvaluation(emailSendResponse,existingEntity);
|
||||
responses = List.of(emailSendResponse);
|
||||
if (!Boolean.TRUE.equals(emailSendResponse.getIsEmailSend())) {
|
||||
saveEmailSendResponseToEvaluation(emailSendResponse, existingEntity);
|
||||
}
|
||||
}
|
||||
|
||||
if(newStatus.equals(ApplicationStatusForEvaluation.TECHNICAL_EVALUATION) && Boolean.TRUE.equals(application.getStatus().equals(ApplicationStatusTypeEnum.ADMISSIBLE.getValue()))){
|
||||
@@ -1945,8 +1946,8 @@ public class ApplicationEvaluationDao {
|
||||
|
||||
|
||||
if (Boolean.TRUE.equals(statusType.equals((ApplicationStatusTypeEnum.APPROVED.getValue())))) {
|
||||
application.setDateAccepted(DateTimeUtil.DateServerToUTC(LocalDateTime.now()));
|
||||
application.setUpdatedDate(DateTimeUtil.DateServerToUTC(LocalDateTime.now()));
|
||||
application.setDateAccepted(DateTimeUtil.DateServerToUTC(LocalDateTime.now()));
|
||||
application.setUpdatedDate(DateTimeUtil.DateServerToUTC(LocalDateTime.now()));
|
||||
application = applicationRepository.save(application);
|
||||
// emailNotificationDao.sendAdmissibilityNotificationEmailForApprovedApplication(application);
|
||||
}
|
||||
@@ -1956,7 +1957,10 @@ public class ApplicationEvaluationDao {
|
||||
application = applicationRepository.save(application);
|
||||
emailNotificationDao.sendInadmissibilityEmailForRejectedApplication(application,existingEntity);
|
||||
emailSendResponse = emailDao.buildEmailSendResponseFromRequest(request);
|
||||
saveEmailSendResponseToEvaluation(emailSendResponse,existingEntity);
|
||||
responses = List.of(emailSendResponse);
|
||||
if (!Boolean.TRUE.equals(emailSendResponse.getIsEmailSend())) {
|
||||
saveEmailSendResponseToEvaluation(emailSendResponse, existingEntity);
|
||||
}
|
||||
}
|
||||
|
||||
Map<String, String> placeHolders = notificationDao.sendNotificationToBeneficiary(application, NotificationTypeEnum.EVALUATION_RESULT);
|
||||
@@ -1964,7 +1968,9 @@ public class ApplicationEvaluationDao {
|
||||
notificationDao.sendNotificationToInstructor(placeHolders,existingEntity,NotificationTypeEnum.EVALUATION_RESULT);
|
||||
|
||||
ApplicationEvaluationResponse response = convertToResponse(entity);
|
||||
response.setEmailSendResponse(emailSendResponse);
|
||||
if (!Boolean.TRUE.equals(emailSendResponse.getIsEmailSend())) {
|
||||
response.setEmailSendResponse(responses);
|
||||
}
|
||||
return response;
|
||||
}
|
||||
return null;
|
||||
@@ -2029,6 +2035,7 @@ public class ApplicationEvaluationDao {
|
||||
|
||||
ApplicationEvaluationEntity entity = applicationEvaluationService.validateApplicationEvaluation(evaluationResponse.getId());
|
||||
|
||||
|
||||
//Handling Application Evaluation form
|
||||
EvaluationFormEntity evaluationFormEntity = evaluationFormService.validateEvaluationForm(evaluationFormId);
|
||||
validateFormFields(applicationEvaluationFormRequestBean,evaluationFormEntity);
|
||||
@@ -2037,7 +2044,9 @@ public class ApplicationEvaluationDao {
|
||||
validateFormFieldCustom(applicationEvaluationFormRequestBean.getFormFields(),entity,evaluationFormEntity);
|
||||
ApplicationEvaluationFormEntity applicationEvaluationFormEntity = getApplicationEvaluationFormOrCreate(evaluationFormEntity,entity);
|
||||
createOrUpdateMultipleFormFields(applicationEvaluationFormRequestBean.getFormFields(), applicationEvaluationFormEntity, evaluationFormEntity);
|
||||
return processEvaluationForm(entity);
|
||||
ApplicationEvaluationFormResponse response = processEvaluationForm(entity);
|
||||
response.setEmailSendResponse(evaluationResponse.getEmailSendResponse());
|
||||
return response;
|
||||
}
|
||||
|
||||
private ApplicationEvaluationFormEntity getApplicationEvaluationFormOrCreate(EvaluationFormEntity evaluationFormEntity, ApplicationEvaluationEntity applicationEvaluationEntity) {
|
||||
@@ -2282,6 +2291,7 @@ public class ApplicationEvaluationDao {
|
||||
}
|
||||
response.setCompanyVatNumber(company.getVatNumber());
|
||||
response.setCompanyCodiceAteco(company.getCodiceAteco());
|
||||
response.setEmailSendResponse(evaluationEntity.getEmailSendResponse());
|
||||
return response;
|
||||
}
|
||||
|
||||
|
||||
@@ -161,9 +161,10 @@ public class EmailDao {
|
||||
private boolean updateEmailSendResponse(List<EmailSendResponse> responses, String scenario) {
|
||||
if (responses == null || responses.isEmpty()) return false;
|
||||
|
||||
for (EmailSendResponse response : responses) {
|
||||
for (Iterator<EmailSendResponse> iterator = responses.iterator(); iterator.hasNext(); ) {
|
||||
EmailSendResponse response = iterator.next();
|
||||
if (scenario.equals(response.getEmailScenario().getValue())) {
|
||||
response.setIsEmailSend(true);
|
||||
iterator.remove(); // remove only the first match
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -172,6 +173,7 @@ public class EmailDao {
|
||||
|
||||
|
||||
|
||||
|
||||
public EmailSendResponse buildEmailSendResponseFromRequest(HttpServletRequest request) {
|
||||
Long userActionId = (Long) request.getAttribute(GepafinConstant.USER_ACTION_ID);
|
||||
List<EmailLogEntity> emailLogs = emailLogRepository.findByUserActionIdAndEmailServiceType(userActionId,EmailServiceTypeEnum.PEC_SERVICE.getValue());
|
||||
|
||||
@@ -149,17 +149,25 @@ public class UserDao {
|
||||
/** This code is responsible for adding a version history log for the "Create user" operation. **/
|
||||
loggingUtil.addVersionHistory(VersionHistoryRequest.builder().request(request).actionType(VersionActionTypeEnum.INSERT).newData(userEntity).build());
|
||||
|
||||
EmailSendResponse emailSendResponse = new EmailSendResponse();
|
||||
List<EmailSendResponse> responses = new ArrayList<>();
|
||||
if(Boolean.FALSE.equals(roleEntity.getRoleType().equals(RoleStatusEnum.ROLE_BENEFICIARY.getValue()))){
|
||||
sendEmailToOnboardingUser(userEntity, userReq );
|
||||
boolean isEmailSendSuccess = isEmailSentSuccessfully(userEntity.getId());
|
||||
emailSendResponse.setIsEmailSend(isEmailSendSuccess);
|
||||
Long userActionId =(Long)request.getAttribute(GepafinConstant.USER_ACTION_ID);
|
||||
emailSendResponse.setUserActionId(userActionId);
|
||||
emailSendResponse.setEmailScenario(EmailScenarioTypeEnum.USER_CREATION);
|
||||
saveEmailSendResponseToUser(emailSendResponse,userEntity);
|
||||
EmailSendResponse emailSendResponse = new EmailSendResponse();
|
||||
if (Boolean.FALSE.equals(isEmailSendSuccess)){
|
||||
emailSendResponse.setIsEmailSend(false);
|
||||
Long userActionId =(Long)request.getAttribute(GepafinConstant.USER_ACTION_ID);
|
||||
emailSendResponse.setUserActionId(userActionId);
|
||||
emailSendResponse.setEmailScenario(EmailScenarioTypeEnum.USER_CREATION);
|
||||
|
||||
saveEmailSendResponseToUser(emailSendResponse,userEntity);
|
||||
responses = List.of(emailSendResponse);
|
||||
}
|
||||
else{
|
||||
responses = Collections.emptyList();
|
||||
}
|
||||
}
|
||||
JWTToken token = authService.getJWTTokenBean(userEntity, Boolean.TRUE, loginAttemptEntity.getId(),emailSendResponse);
|
||||
JWTToken token = authService.getJWTTokenBean(userEntity, Boolean.TRUE, loginAttemptEntity.getId(),responses);
|
||||
return token;
|
||||
}
|
||||
|
||||
@@ -509,8 +517,14 @@ public class UserDao {
|
||||
sendResetPasswordTokenEmail(user, token);
|
||||
InitiatePasswordResetResponse initiatePasswordResetResponse = new InitiatePasswordResetResponse();
|
||||
EmailSendResponse emailSendResponse = emailDao.buildEmailSendResponseFromRequest(request);
|
||||
initiatePasswordResetResponse.setEmailSendResponse(emailSendResponse);
|
||||
saveEmailSendResponseToUser(emailSendResponse,user);
|
||||
List<EmailSendResponse> responses = List.of(emailSendResponse);
|
||||
if (!Boolean.TRUE.equals(emailSendResponse.getIsEmailSend())){
|
||||
initiatePasswordResetResponse.setEmailSendResponse(responses);
|
||||
saveEmailSendResponseToUser(emailSendResponse,user);
|
||||
}
|
||||
else{
|
||||
initiatePasswordResetResponse.setEmailSendResponse(Collections.emptyList());
|
||||
}
|
||||
return initiatePasswordResetResponse;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user