From e8a59ce277e3ff2336c5aa957cf53c638709cba7 Mon Sep 17 00:00:00 2001 From: rajesh Date: Tue, 18 Nov 2025 15:01:45 +0530 Subject: [PATCH 1/5] Resolved conflicts --- .../constants/GepafinConstant.java | 4 +- .../tendermanagement/dao/ApplicationDao.java | 61 +++++++++++++++++++ .../dao/ApplicationEvaluationDao.java | 10 +++ .../tendermanagement/dao/AppointmentDao.java | 4 +- .../dao/CompanyDocumentDao.java | 2 +- .../entities/ApplicationEntity.java | 3 + .../enums/UserActionContextEnum.java | 3 +- .../CompanyDocumentRepository.java | 2 +- .../service/ApplicationService.java | 2 +- .../service/impl/ApplicationServiceImpl.java | 6 ++ .../web/rest/api/ApplicationApi.java | 13 ++++ .../api/impl/ApplicationApiController.java | 11 ++++ .../db/changelog/db.changelog-1.0.0.xml | 6 ++ src/main/resources/message_en.properties | 3 + src/main/resources/message_it.properties | 2 + 15 files changed, 124 insertions(+), 8 deletions(-) diff --git a/src/main/java/net/gepafin/tendermanagement/constants/GepafinConstant.java b/src/main/java/net/gepafin/tendermanagement/constants/GepafinConstant.java index 4a887ac0..8ff0c836 100644 --- a/src/main/java/net/gepafin/tendermanagement/constants/GepafinConstant.java +++ b/src/main/java/net/gepafin/tendermanagement/constants/GepafinConstant.java @@ -634,8 +634,8 @@ public class GepafinConstant { public static final String MAIL_SENT_SUCCESSFULLY="mail.send.successfully"; public static final String EMAIL_LOG_FETCHED="email.log.fetched"; public static final String APPLICATION_AMENDMENT_APPROPIATE_STATUS="amendment.appropiate.status"; - - + public static final String UPLOAD_COMPANY_DOCUMENT_TO_APPLICATION_MSG="upload.company.document.to.application"; + public static final String COMPANY_DOCUMENT_NOT_FOUND_WITH_IDS="company.document.not.found.with.ids"; } diff --git a/src/main/java/net/gepafin/tendermanagement/dao/ApplicationDao.java b/src/main/java/net/gepafin/tendermanagement/dao/ApplicationDao.java index d193c953..aa65357a 100644 --- a/src/main/java/net/gepafin/tendermanagement/dao/ApplicationDao.java +++ b/src/main/java/net/gepafin/tendermanagement/dao/ApplicationDao.java @@ -232,6 +232,15 @@ public class ApplicationDao { @Autowired private ApplicationContractRepository applicationContractRepository; + @Autowired + private CompanyDocumentRepository companyDocumentRepository; + + @Autowired + private AppointmentDao appointmentDao; + + @Autowired + private DocumentDao documentDao; + public final Random random = new Random(); public ApplicationResponseBean createApplication(HttpServletRequest request, ApplicationRequestBean applicationRequestBean, Long formId, Long applicationId) { @@ -2630,4 +2639,56 @@ public class ApplicationDao { } return Collections.emptyList(); } + public void uploadCompanyDocumentsToApplication( Long applicationId,List companyDocumentIds,UserEntity user) { + ApplicationEntity applicationEntity=validateApplication(applicationId); + ApplicationEntity oldApplication = Utils.getClonedEntityForData(applicationEntity); + List companyDocumentEntities=validateCompanyDocuments(companyDocumentIds); + List multipartFiles=new ArrayList<>(); + for(CompanyDocumentEntity companyDocumentEntity:companyDocumentEntities) { + try { + File localFile = appointmentDao.downloadFileFromS3(companyDocumentEntity.getFilePath()); + MultipartFile multipartFile = appointmentDao.convertFileToMultipartFile(localFile); + multipartFiles.add(multipartFile); + } catch (Exception e) { + throw new RuntimeException(e); + } + List documentResponseBeans=documentDao.uploadFiles(user.getId(),multipartFiles,applicationId,DocumentSourceTypeEnum.APPLICATION,DocumentTypeEnum.DOCUMENT); + List initialDocumentIds = documentResponseBeans.stream() + .map(DocumentResponseBean::getId) + .collect(Collectors.toList()); + String initialDocumentId = initialDocumentIds.stream() + .map(String::valueOf) + .collect(Collectors.joining(",")); + applicationEntity.setCompanyDocument(initialDocumentId); + applicationRepository.save(applicationEntity); + loggingUtil.addVersionHistory(VersionHistoryRequest.builder().request(request).actionType(VersionActionTypeEnum.UPDATE).oldData(oldApplication).newData(applicationEntity).build()); + } + } + + public List validateCompanyDocuments(List ids) { + + List documents = + companyDocumentRepository.findByIdInAndIsDeletedFalseAndStatus(ids,CompanyDocumentStatusEnum.VALID.getValue()); + + Set foundIds = documents.stream() + .map(CompanyDocumentEntity::getId) + .collect(Collectors.toSet()); + + List missingIds = ids.stream() + .filter(id -> !foundIds.contains(id)) + .toList(); + + if (!missingIds.isEmpty()) { + log.warn("Company Document(s) not found with IDs {}", missingIds); + throw new ResourceNotFoundException( + Status.NOT_FOUND, + MessageFormat.format( + Translator.toLocale(GepafinConstant.COMPANY_DOCUMENT_NOT_FOUND_WITH_IDS), + missingIds + )); + } + + return documents; + } + } diff --git a/src/main/java/net/gepafin/tendermanagement/dao/ApplicationEvaluationDao.java b/src/main/java/net/gepafin/tendermanagement/dao/ApplicationEvaluationDao.java index 121cd15e..a07cb582 100644 --- a/src/main/java/net/gepafin/tendermanagement/dao/ApplicationEvaluationDao.java +++ b/src/main/java/net/gepafin/tendermanagement/dao/ApplicationEvaluationDao.java @@ -630,6 +630,16 @@ public class ApplicationEvaluationDao { processedFieldIds.add(fieldResponse.getId()); }); + List companyDocuments=applicationAmendmentRequestDao.getDocumentResponseBean(applicationFormEntities.get(0).getApplication().getCompanyDocument()); + + for(DocumentResponseBean documentResponseBean:companyDocuments) { + FieldResponse companyFieldResponse = new FieldResponse(); + companyFieldResponse.setId("COMPANY"); + companyFieldResponse.setValid(Boolean.TRUE); + companyFieldResponse.setLabel(documentResponseBean.getName()); + companyFieldResponse.setFileDetail(List.of(documentResponseBean)); + validFieldResponses.add(companyFieldResponse); + } response.setFiles(validFieldResponses); } diff --git a/src/main/java/net/gepafin/tendermanagement/dao/AppointmentDao.java b/src/main/java/net/gepafin/tendermanagement/dao/AppointmentDao.java index 5b6bf8c1..aa81aab5 100644 --- a/src/main/java/net/gepafin/tendermanagement/dao/AppointmentDao.java +++ b/src/main/java/net/gepafin/tendermanagement/dao/AppointmentDao.java @@ -1355,13 +1355,13 @@ public class AppointmentDao { return input; } - public static MultipartFile convertFileToMultipartFile(File file) throws IOException { + public MultipartFile convertFileToMultipartFile(File file) throws IOException { FileInputStream input = new FileInputStream(file); return new MockMultipartFile(file.getName(), file.getName(), MediaType.APPLICATION_OCTET_STREAM_VALUE, input); } - private File downloadFileFromS3(String fileUrl) throws Exception { + public File downloadFileFromS3(String fileUrl) throws Exception { String key = amazonS3Service.extractS3KeyFromUrl(fileUrl); String fileName = extractFileName(key); String folderPath = key.substring(0, key.lastIndexOf("/")); diff --git a/src/main/java/net/gepafin/tendermanagement/dao/CompanyDocumentDao.java b/src/main/java/net/gepafin/tendermanagement/dao/CompanyDocumentDao.java index c034a985..687917df 100644 --- a/src/main/java/net/gepafin/tendermanagement/dao/CompanyDocumentDao.java +++ b/src/main/java/net/gepafin/tendermanagement/dao/CompanyDocumentDao.java @@ -354,7 +354,7 @@ public class CompanyDocumentDao { builder.equal(root.get("userWithCompany").get("userId"), userId) ); predicate = builder.and(predicate, builder.or(companyPredicate, personalPredicate)); - + predicate = builder.equal(root.get("status"), CompanyDocumentStatusEnum.VALID.getValue()); return predicate; }; } diff --git a/src/main/java/net/gepafin/tendermanagement/entities/ApplicationEntity.java b/src/main/java/net/gepafin/tendermanagement/entities/ApplicationEntity.java index 8b8c64d7..7670d520 100644 --- a/src/main/java/net/gepafin/tendermanagement/entities/ApplicationEntity.java +++ b/src/main/java/net/gepafin/tendermanagement/entities/ApplicationEntity.java @@ -87,4 +87,7 @@ public class ApplicationEntity extends BaseEntity { @Column(name = "REJECTED_DOCUMENT") private String rejectedDocument; + + @Column(name = "COMPANY_DOCUMENT") + private String companyDocument; } \ No newline at end of file diff --git a/src/main/java/net/gepafin/tendermanagement/enums/UserActionContextEnum.java b/src/main/java/net/gepafin/tendermanagement/enums/UserActionContextEnum.java index 9401834e..9092c769 100644 --- a/src/main/java/net/gepafin/tendermanagement/enums/UserActionContextEnum.java +++ b/src/main/java/net/gepafin/tendermanagement/enums/UserActionContextEnum.java @@ -232,7 +232,8 @@ public enum UserActionContextEnum { FETCH_APPLICATION_CONTRACT_BY_BENEFICIARY_USER_ID("FETCH_APPLICATION_CONTRACT_BY_BENEFICIARY_USER_ID"), SEND_PEC_MAIL("SEND_PEC_MAIL"), FETCH_EMAIL_LOG("FETCH_EMAIL_LOG"), - FETCH_ALL_EMAIL_LOG("FETCH_ALL_EMAIL_LOG"); + FETCH_ALL_EMAIL_LOG("FETCH_ALL_EMAIL_LOG"), + UPLOAD_COMPANY_DOCUMENT_TO_APPLICATION("UPLOAD_COMPANY_DOCUMENT_TO_APPLICATION"); private final String value; diff --git a/src/main/java/net/gepafin/tendermanagement/repositories/CompanyDocumentRepository.java b/src/main/java/net/gepafin/tendermanagement/repositories/CompanyDocumentRepository.java index 30a49410..47e0a14f 100644 --- a/src/main/java/net/gepafin/tendermanagement/repositories/CompanyDocumentRepository.java +++ b/src/main/java/net/gepafin/tendermanagement/repositories/CompanyDocumentRepository.java @@ -35,7 +35,7 @@ public interface CompanyDocumentRepository extends JpaRepository findByCategoryEntityId(Long categoryId); - + List findByIdInAndIsDeletedFalseAndStatus(List ids,String status); } diff --git a/src/main/java/net/gepafin/tendermanagement/service/ApplicationService.java b/src/main/java/net/gepafin/tendermanagement/service/ApplicationService.java index 9cc2ea22..a1206ee3 100644 --- a/src/main/java/net/gepafin/tendermanagement/service/ApplicationService.java +++ b/src/main/java/net/gepafin/tendermanagement/service/ApplicationService.java @@ -54,5 +54,5 @@ public interface ApplicationService { public byte[] downloadRankingCsv(HttpServletRequest request, Long callId); - + public void uploadCompanyDocumentsToApplication(HttpServletRequest request, Long applicationId, List companyDocumentIds); } diff --git a/src/main/java/net/gepafin/tendermanagement/service/impl/ApplicationServiceImpl.java b/src/main/java/net/gepafin/tendermanagement/service/impl/ApplicationServiceImpl.java index e311340e..12769ac7 100644 --- a/src/main/java/net/gepafin/tendermanagement/service/impl/ApplicationServiceImpl.java +++ b/src/main/java/net/gepafin/tendermanagement/service/impl/ApplicationServiceImpl.java @@ -182,4 +182,10 @@ public class ApplicationServiceImpl implements ApplicationService { UserEntity userEntity = validator.validateUser(request); return applicationDao.downloadRankingCsv(callId,userEntity); } + + @Override + public void uploadCompanyDocumentsToApplication(HttpServletRequest request, Long applicationId, List companyDocumentIds) { + UserEntity userEntity = validator.validateUser(request); + applicationDao.uploadCompanyDocumentsToApplication(applicationId,companyDocumentIds,userEntity); + } } diff --git a/src/main/java/net/gepafin/tendermanagement/web/rest/api/ApplicationApi.java b/src/main/java/net/gepafin/tendermanagement/web/rest/api/ApplicationApi.java index b64b3951..989088d5 100644 --- a/src/main/java/net/gepafin/tendermanagement/web/rest/api/ApplicationApi.java +++ b/src/main/java/net/gepafin/tendermanagement/web/rest/api/ApplicationApi.java @@ -267,6 +267,19 @@ public interface ApplicationApi { public ResponseEntity downloadRankingCsv( HttpServletRequest request, @Parameter(description = "The call id", required = true) @PathVariable(value = "callId", required = true) Long callId); + @Operation(summary = "Api to upload company documents in application", + responses = { + @ApiResponse(responseCode = "200", description = "OK"), + @ApiResponse(responseCode = "404", description = "Not Found", content = @Content(mediaType = MediaType.APPLICATION_JSON_VALUE, examples = { + @ExampleObject(value = ErrorConstants.NOTFOUND_ERROR_EXAMPLE)})), + @ApiResponse(responseCode = "401", description = "Unauthorized", content = @Content(mediaType = MediaType.APPLICATION_JSON_VALUE, examples = { + @ExampleObject(value = ErrorConstants.UNAUTHORIZED_ERROR_EXAMPLE)})), + @ApiResponse(responseCode = "400", description = "Bad Request", content = @Content(mediaType = MediaType.APPLICATION_JSON_VALUE, examples = { + @ExampleObject(value = ErrorConstants.BADREQUEST_ERROR_EXAMPLE)})) + }) + @GetMapping(value = "/{applicationId}/companyDocuments") + public ResponseEntity> uploadCompanyDocumentsToApplication( + HttpServletRequest request,@Parameter(description = "The application id", required = true) @PathVariable(value = "applicationId", required = true) Long applicationId, @Parameter(description = "The company document id", required = true) @RequestParam("companyDocumentIds") List companyDocumentIds); } diff --git a/src/main/java/net/gepafin/tendermanagement/web/rest/api/impl/ApplicationApiController.java b/src/main/java/net/gepafin/tendermanagement/web/rest/api/impl/ApplicationApiController.java index 76946420..c5817500 100644 --- a/src/main/java/net/gepafin/tendermanagement/web/rest/api/impl/ApplicationApiController.java +++ b/src/main/java/net/gepafin/tendermanagement/web/rest/api/impl/ApplicationApiController.java @@ -275,4 +275,15 @@ public class ApplicationApiController implements ApplicationApi { .contentType(MediaType.APPLICATION_OCTET_STREAM) .body(csvBytes); } + + @Override + public ResponseEntity> uploadCompanyDocumentsToApplication(HttpServletRequest request, Long applicationId,List companyDocumentIds) { + loggingUtil.logUserAction( + UserActionRequest.builder().request(request).actionType(UserActionLogsEnum.UPDATE).actionContext(UserActionContextEnum.UPLOAD_COMPANY_DOCUMENT_TO_APPLICATION).build()); + + applicationService.uploadCompanyDocumentsToApplication(request, applicationId,companyDocumentIds); + + return ResponseEntity.status(HttpStatus.OK).body(new Response<>(null, Status.SUCCESS, Translator.toLocale(GepafinConstant.UPLOAD_COMPANY_DOCUMENT_TO_APPLICATION_MSG))); + + } } diff --git a/src/main/resources/db/changelog/db.changelog-1.0.0.xml b/src/main/resources/db/changelog/db.changelog-1.0.0.xml index 1f2ebb22..9c5aa1de 100644 --- a/src/main/resources/db/changelog/db.changelog-1.0.0.xml +++ b/src/main/resources/db/changelog/db.changelog-1.0.0.xml @@ -3167,4 +3167,10 @@ + + + + + + diff --git a/src/main/resources/message_en.properties b/src/main/resources/message_en.properties index 39cec228..7e930753 100644 --- a/src/main/resources/message_en.properties +++ b/src/main/resources/message_en.properties @@ -427,5 +427,8 @@ subject.body.required=Subject and body is required to create contract. mail.send.successfully=Mail sent succesfully. email.log.fetched=Email log fetched successfully. amendment.appropiate.status=Application amendment is not in appropiate status for this operation. +upload.company.document.to.application=Uploaded company document to application successfully. +company.document.not.found.with.ids=Company document not found. Missing IDs: {0} + diff --git a/src/main/resources/message_it.properties b/src/main/resources/message_it.properties index 3cd42992..d88b196c 100644 --- a/src/main/resources/message_it.properties +++ b/src/main/resources/message_it.properties @@ -418,3 +418,5 @@ subject.body.required=Per creare un contratto sono necessari oggetto e corpo. mail.send.successfully=Email inviata con successo. email.log.fetched=Registro email recuperato correttamente. amendment.appropiate.status=L'emendamento dell'applicazione non � in stato appropriato per questa operazione. +upload.company.document.to.application=Documento aziendale caricato correttamente nell'applicazione. +company.document.not.found.with.ids=Documento aziendale non trovato. ID mancanti: {0} From feca1e86bf11cbc33c76adcf076c46de42466423 Mon Sep 17 00:00:00 2001 From: rajesh Date: Tue, 18 Nov 2025 16:59:43 +0530 Subject: [PATCH 2/5] Fixed issue in company document get endpoint --- .../dao/CompanyDocumentDao.java | 21 ++++++++++++------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/src/main/java/net/gepafin/tendermanagement/dao/CompanyDocumentDao.java b/src/main/java/net/gepafin/tendermanagement/dao/CompanyDocumentDao.java index 687917df..ca266679 100644 --- a/src/main/java/net/gepafin/tendermanagement/dao/CompanyDocumentDao.java +++ b/src/main/java/net/gepafin/tendermanagement/dao/CompanyDocumentDao.java @@ -333,6 +333,11 @@ public class CompanyDocumentDao { predicate = builder.and(predicate, builder.isFalse(root.get("isDeleted"))); + predicate = builder.and( + predicate, + builder.notEqual(root.get("status"), CompanyDocumentStatusEnum.EXPIRED.getValue()) + ); + if (typeEnum != null) { if (typeEnum == CompanyDocumentTypeEnum.COMPANY_DOCUMENT) { // Case 1: Fetch only COMPANY_DOCUMENT type documents for the given company @@ -346,15 +351,15 @@ public class CompanyDocumentDao { builder.equal(root.get("userWithCompany").get("userId"), userId) ); } + }else { + // Case 3: If typeEnum is null, fetch all documents for the company and personal documents for the user + Predicate companyPredicate = builder.equal(root.get("companyId"), companyId); + Predicate personalPredicate = builder.and( + builder.equal(root.get("type"), CompanyDocumentTypeEnum.PERSONAL_DOCUMENT.getValue()), + builder.equal(root.get("userWithCompany").get("userId"), userId) + ); + predicate = builder.and(predicate, builder.or(companyPredicate, personalPredicate)); } - // Case 3: If typeEnum is null, fetch all documents for the company and personal documents for the user - Predicate companyPredicate = builder.equal(root.get("companyId"), companyId); - Predicate personalPredicate = builder.and( - builder.equal(root.get("type"), CompanyDocumentTypeEnum.PERSONAL_DOCUMENT.getValue()), - builder.equal(root.get("userWithCompany").get("userId"), userId) - ); - predicate = builder.and(predicate, builder.or(companyPredicate, personalPredicate)); - predicate = builder.equal(root.get("status"), CompanyDocumentStatusEnum.VALID.getValue()); return predicate; }; } From d8538b0b358213259f2392a7b12990562c16d67c Mon Sep 17 00:00:00 2001 From: rajesh Date: Tue, 18 Nov 2025 19:37:03 +0530 Subject: [PATCH 3/5] Disabled evaluation scheduler and increased evaluation duration --- .../gepafin/tendermanagement/dao/ApplicationEvaluationDao.java | 2 +- .../scheduler/ApplicationEvaluationScheduler.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/net/gepafin/tendermanagement/dao/ApplicationEvaluationDao.java b/src/main/java/net/gepafin/tendermanagement/dao/ApplicationEvaluationDao.java index a07cb582..4379fbc8 100644 --- a/src/main/java/net/gepafin/tendermanagement/dao/ApplicationEvaluationDao.java +++ b/src/main/java/net/gepafin/tendermanagement/dao/ApplicationEvaluationDao.java @@ -170,7 +170,7 @@ public class ApplicationEvaluationDao { Long hubId = application.getHubId(); HubEntity hub = hubService.valdateHub(hubId); - Long initialDays = (hub != null) ? hub.getEvaluationExpirationDays() : 30L; + Long initialDays = (hub != null) ? hub.getEvaluationExpirationDays() : 365L; entity.setApplicationId(application.getId()); entity.setAssignedApplicationsEntity(assignedApplications); diff --git a/src/main/java/net/gepafin/tendermanagement/scheduler/ApplicationEvaluationScheduler.java b/src/main/java/net/gepafin/tendermanagement/scheduler/ApplicationEvaluationScheduler.java index 413efe37..dd32315f 100644 --- a/src/main/java/net/gepafin/tendermanagement/scheduler/ApplicationEvaluationScheduler.java +++ b/src/main/java/net/gepafin/tendermanagement/scheduler/ApplicationEvaluationScheduler.java @@ -45,7 +45,7 @@ public class ApplicationEvaluationScheduler { private static final Logger log = LoggerFactory.getLogger(ApplicationEvaluationScheduler.class); - @Scheduled(cron = "0 0 2 * * ?") // Runs daily at midnight +// @Scheduled(cron = "0 0 2 * * ?") // Runs daily at midnight public void updateExpiredEvaluations() { log.info("Starting the Application Evaluation Expiration scheduler..."); try { From b52b82d8de60bfecb62abd8adf6a3234f91724c4 Mon Sep 17 00:00:00 2001 From: rajesh Date: Wed, 19 Nov 2025 12:19:49 +0530 Subject: [PATCH 4/5] Added companyId in evaluation response --- .../gepafin/tendermanagement/dao/ApplicationEvaluationDao.java | 3 ++- .../model/response/ApplicationEvaluationFormResponse.java | 1 + .../model/response/ApplicationEvaluationResponse.java | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/java/net/gepafin/tendermanagement/dao/ApplicationEvaluationDao.java b/src/main/java/net/gepafin/tendermanagement/dao/ApplicationEvaluationDao.java index 4379fbc8..cb052189 100644 --- a/src/main/java/net/gepafin/tendermanagement/dao/ApplicationEvaluationDao.java +++ b/src/main/java/net/gepafin/tendermanagement/dao/ApplicationEvaluationDao.java @@ -205,7 +205,7 @@ public class ApplicationEvaluationDao { CompanyEntity company=companyService.validateCompany(entity.getAssignedApplicationsEntity().getApplication().getCompanyId()); setAmendmentDetails(entity,response); - + response.setCompanyId(company.getId()); response.setCompanyVatNumber(company.getVatNumber()); response.setCompanyCodiceAteco(company.getCodiceAteco()); setCriteriaResponses(entity, response, evaluationCriterias); @@ -2434,6 +2434,7 @@ public class ApplicationEvaluationDao { if (evaluationFormEntity != null) { response.setApplicationEvaluationFormResponse(convertEvaluationFormToResponse(evaluationFormEntity, evaluationEntity)); } + response.setCompanyId(company.getId()); response.setCompanyVatNumber(company.getVatNumber()); response.setCompanyCodiceAteco(company.getCodiceAteco()); response.setSignedDocument(getApplicationSignedDocument(evaluationEntity)); diff --git a/src/main/java/net/gepafin/tendermanagement/model/response/ApplicationEvaluationFormResponse.java b/src/main/java/net/gepafin/tendermanagement/model/response/ApplicationEvaluationFormResponse.java index 2e18339a..3903daed 100644 --- a/src/main/java/net/gepafin/tendermanagement/model/response/ApplicationEvaluationFormResponse.java +++ b/src/main/java/net/gepafin/tendermanagement/model/response/ApplicationEvaluationFormResponse.java @@ -15,6 +15,7 @@ public class ApplicationEvaluationFormResponse { private Long id; private Long applicationId; + private Long companyId; private ApplicationStatusTypeEnum applicationStatus; private Long assignedApplicationId; private String note; diff --git a/src/main/java/net/gepafin/tendermanagement/model/response/ApplicationEvaluationResponse.java b/src/main/java/net/gepafin/tendermanagement/model/response/ApplicationEvaluationResponse.java index 742edae9..d05f5816 100644 --- a/src/main/java/net/gepafin/tendermanagement/model/response/ApplicationEvaluationResponse.java +++ b/src/main/java/net/gepafin/tendermanagement/model/response/ApplicationEvaluationResponse.java @@ -15,6 +15,7 @@ public class ApplicationEvaluationResponse { private Long id; private Long applicationId; + private Long companyId; private ApplicationStatusTypeEnum applicationStatus; private Long assignedApplicationId; private String note; From e69c6ba8e073f6a421e8ce7fcf19f76b1d1688f6 Mon Sep 17 00:00:00 2001 From: rajesh Date: Wed, 19 Nov 2025 13:06:44 +0530 Subject: [PATCH 5/5] Updated code for company document --- .../java/net/gepafin/tendermanagement/dao/ApplicationDao.java | 2 +- .../repositories/CompanyDocumentRepository.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/net/gepafin/tendermanagement/dao/ApplicationDao.java b/src/main/java/net/gepafin/tendermanagement/dao/ApplicationDao.java index aa65357a..d7a5661a 100644 --- a/src/main/java/net/gepafin/tendermanagement/dao/ApplicationDao.java +++ b/src/main/java/net/gepafin/tendermanagement/dao/ApplicationDao.java @@ -2668,7 +2668,7 @@ public class ApplicationDao { public List validateCompanyDocuments(List ids) { List documents = - companyDocumentRepository.findByIdInAndIsDeletedFalseAndStatus(ids,CompanyDocumentStatusEnum.VALID.getValue()); + companyDocumentRepository.findByIdInAndIsDeletedFalseAndStatusNot(ids,CompanyDocumentStatusEnum.EXPIRED.getValue()); Set foundIds = documents.stream() .map(CompanyDocumentEntity::getId) diff --git a/src/main/java/net/gepafin/tendermanagement/repositories/CompanyDocumentRepository.java b/src/main/java/net/gepafin/tendermanagement/repositories/CompanyDocumentRepository.java index 47e0a14f..c37b993a 100644 --- a/src/main/java/net/gepafin/tendermanagement/repositories/CompanyDocumentRepository.java +++ b/src/main/java/net/gepafin/tendermanagement/repositories/CompanyDocumentRepository.java @@ -35,7 +35,7 @@ public interface CompanyDocumentRepository extends JpaRepository findByCategoryEntityId(Long categoryId); - List findByIdInAndIsDeletedFalseAndStatus(List ids,String status); + List findByIdInAndIsDeletedFalseAndStatusNot(List ids, String status); }