Merge pull request #293 from Kitzanos/update-status-to-appointment
Enable APPOINTMENT status in update application status API
This commit is contained in:
@@ -208,6 +208,7 @@ public class ApplicationDao {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private ApplicationEvaluationDao applicationEvaluationDao;
|
private ApplicationEvaluationDao applicationEvaluationDao;
|
||||||
|
|
||||||
|
public final Random random = new Random();
|
||||||
|
|
||||||
public ApplicationResponseBean createApplication(HttpServletRequest request, ApplicationRequestBean applicationRequestBean, Long formId, Long applicationId) {
|
public ApplicationResponseBean createApplication(HttpServletRequest request, ApplicationRequestBean applicationRequestBean, Long formId, Long applicationId) {
|
||||||
FormEntity formEntity = formService.validateForm(formId);
|
FormEntity formEntity = formService.validateForm(formId);
|
||||||
@@ -934,12 +935,16 @@ public class ApplicationDao {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String generateRandomFiveDigitNumber() {
|
||||||
|
int number = 10000 + random.nextInt(90000); // Generates a number from 10000 to 99999
|
||||||
|
return String.valueOf(number);
|
||||||
|
}
|
||||||
|
|
||||||
public ApplicationResponse updateApplicationStatus(HttpServletRequest request, Long applicationId, ApplicationStatusTypeEnum status) {
|
public ApplicationResponse updateApplicationStatus(HttpServletRequest request, Long applicationId, ApplicationStatusTypeEnum status) {
|
||||||
|
|
||||||
log.info("Updating status for Application id : " + applicationId);
|
log.info("Updating status for Application id : " + applicationId);
|
||||||
ApplicationEntity applicationEntity = validateApplication(applicationId);
|
ApplicationEntity applicationEntity = validateApplication(applicationId);
|
||||||
checkCallEndDate(applicationEntity.getCall());
|
|
||||||
log.info("Call end date verified successfully | callId: {}", applicationEntity.getCall().getId());
|
log.info("Call end date verified successfully | callId: {}", applicationEntity.getCall().getId());
|
||||||
//cloned entity for old application data
|
//cloned entity for old application data
|
||||||
ApplicationEntity oldApplicationEntity = Utils.getClonedEntityForData(applicationEntity);
|
ApplicationEntity oldApplicationEntity = Utils.getClonedEntityForData(applicationEntity);
|
||||||
@@ -953,8 +958,16 @@ public class ApplicationDao {
|
|||||||
if (Boolean.TRUE.equals(applicationEntity.getStatus().equals(status.getValue()))) {
|
if (Boolean.TRUE.equals(applicationEntity.getStatus().equals(status.getValue()))) {
|
||||||
throw new CustomValidationException(Status.BAD_REQUEST, Translator.toLocale(GepafinConstant.APPLICATION_ALREADY_IN_PREVIOUS_STATUS));
|
throw new CustomValidationException(Status.BAD_REQUEST, Translator.toLocale(GepafinConstant.APPLICATION_ALREADY_IN_PREVIOUS_STATUS));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (status.equals(ApplicationStatusTypeEnum.APPOINTMENT) && Boolean.TRUE.equals(applicationEntity.getStatus().equals(ApplicationStatusTypeEnum.NDG.getValue()))){
|
||||||
|
String appointmentId = generateRandomFiveDigitNumber();
|
||||||
|
applicationEntity.setAppointmentId(appointmentId);
|
||||||
|
applicationEntity.setStatus(ApplicationStatusTypeEnum.APPOINTMENT.getValue());
|
||||||
|
}
|
||||||
|
|
||||||
if (status.equals(ApplicationStatusTypeEnum.SUBMIT) && Boolean.TRUE.equals(applicationEntity.getStatus().equals(ApplicationStatusTypeEnum.READY.getValue()))) {
|
if (status.equals(ApplicationStatusTypeEnum.SUBMIT) && Boolean.TRUE.equals(applicationEntity.getStatus().equals(ApplicationStatusTypeEnum.READY.getValue()))) {
|
||||||
// callService.validatePublishedCall(applicationEntity.getCall().getId(), userEntity.getHub().getId());
|
// callService.validatePublishedCall(applicationEntity.getCall().getId(), userEntity.getHub().getId());
|
||||||
|
checkCallEndDate(applicationEntity.getCall());
|
||||||
Long protocolNumber = protocolDao.getProtocolNumber(userEntity.getHub());
|
Long protocolNumber = protocolDao.getProtocolNumber(userEntity.getHub());
|
||||||
ProtocolEntity protocolEntity = protocolDao.createProtocolEntity(applicationEntity, protocolNumber, userEntity.getHub().getId(),true);
|
ProtocolEntity protocolEntity = protocolDao.createProtocolEntity(applicationEntity, protocolNumber, userEntity.getHub().getId(),true);
|
||||||
applicationEntity.setProtocol(protocolEntity);
|
applicationEntity.setProtocol(protocolEntity);
|
||||||
@@ -974,10 +987,12 @@ public class ApplicationDao {
|
|||||||
log.info("Status updated to SUBMIT for applicationId: " + applicationId);
|
log.info("Status updated to SUBMIT for applicationId: " + applicationId);
|
||||||
}
|
}
|
||||||
if (status.equals(ApplicationStatusTypeEnum.DRAFT) && Boolean.TRUE.equals(applicationEntity.getStatus().equals(ApplicationStatusTypeEnum.AWAITING.getValue()))) {
|
if (status.equals(ApplicationStatusTypeEnum.DRAFT) && Boolean.TRUE.equals(applicationEntity.getStatus().equals(ApplicationStatusTypeEnum.AWAITING.getValue()))) {
|
||||||
|
checkCallEndDate(applicationEntity.getCall());
|
||||||
applicationEntity.setStatus(status.getValue());
|
applicationEntity.setStatus(status.getValue());
|
||||||
log.info("Status updated to DRAFT for applicationId: " + applicationId);
|
log.info("Status updated to DRAFT for applicationId: " + applicationId);
|
||||||
}
|
}
|
||||||
if (status.equals(ApplicationStatusTypeEnum.AWAITING) && Boolean.TRUE.equals(applicationEntity.getStatus().equals(ApplicationStatusTypeEnum.READY.getValue()))) {
|
if (status.equals(ApplicationStatusTypeEnum.AWAITING) && Boolean.TRUE.equals(applicationEntity.getStatus().equals(ApplicationStatusTypeEnum.READY.getValue()))) {
|
||||||
|
checkCallEndDate(applicationEntity.getCall());
|
||||||
ApplicationSignedDocumentEntity applicationSignedDocument = applicationSignedDocumentRepository.findByApplicationIdAndStatus(applicationId,
|
ApplicationSignedDocumentEntity applicationSignedDocument = applicationSignedDocumentRepository.findByApplicationIdAndStatus(applicationId,
|
||||||
ApplicationSignedDocumentStatusEnum.ACTIVE.getValue());
|
ApplicationSignedDocumentStatusEnum.ACTIVE.getValue());
|
||||||
deleteSignedDocumentFromS3(applicationSignedDocument);
|
deleteSignedDocumentFromS3(applicationSignedDocument);
|
||||||
|
|||||||
Reference in New Issue
Block a user