Done ticket GEPAFINBE-6143
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
package net.gepafin.tendermanagement.service;
|
||||
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import net.gepafin.tendermanagement.model.request.ApplicationContractRequest;
|
||||
import net.gepafin.tendermanagement.model.response.ApplicationContractResponse;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface ApplicationContractService {
|
||||
|
||||
public ApplicationContractResponse createApplicationContract(HttpServletRequest httpServletRequest, Long applicationId, List<MultipartFile> contractDocuments, ApplicationContractRequest applicationContractRequest);
|
||||
|
||||
public ApplicationContractResponse updateApplicationContract(HttpServletRequest httpServletRequest, Long applicationContractId,List<MultipartFile> beneficiaryContractDocuments);
|
||||
|
||||
public ApplicationContractResponse getContractById(Long contractId);
|
||||
|
||||
public ApplicationContractResponse getContractByApplicationId(Long applicationContractId);
|
||||
|
||||
List<ApplicationContractResponse> getContractByBeneficiaryUserId(Long beneficiaryUserId);
|
||||
}
|
||||
@@ -0,0 +1,68 @@
|
||||
package net.gepafin.tendermanagement.service.impl;
|
||||
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import net.gepafin.tendermanagement.config.Translator;
|
||||
import net.gepafin.tendermanagement.constants.GepafinConstant;
|
||||
import net.gepafin.tendermanagement.dao.ApplicationContractDao;
|
||||
import net.gepafin.tendermanagement.dao.UserDao;
|
||||
import net.gepafin.tendermanagement.entities.UserEntity;
|
||||
import net.gepafin.tendermanagement.model.request.ApplicationContractRequest;
|
||||
import net.gepafin.tendermanagement.model.response.ApplicationContractResponse;
|
||||
import net.gepafin.tendermanagement.service.ApplicationContractService;
|
||||
import net.gepafin.tendermanagement.util.Utils;
|
||||
import net.gepafin.tendermanagement.util.Validator;
|
||||
import net.gepafin.tendermanagement.web.rest.api.errors.CustomValidationException;
|
||||
import net.gepafin.tendermanagement.web.rest.api.errors.Status;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@Service
|
||||
public class ApplicationContractServiceImpl implements ApplicationContractService {
|
||||
|
||||
@Autowired
|
||||
private ApplicationContractDao applicationContractDao;
|
||||
|
||||
@Autowired
|
||||
private Validator validator;
|
||||
|
||||
@Autowired
|
||||
private UserDao userDao;
|
||||
|
||||
@Override
|
||||
public ApplicationContractResponse createApplicationContract(HttpServletRequest httpServletRequest, Long applicationId, List<MultipartFile> contractDocuments, ApplicationContractRequest applicationContractRequest) {
|
||||
UserEntity user= validator.validateUser(httpServletRequest);
|
||||
if(contractDocuments==null) {
|
||||
throw new CustomValidationException(Status.VALIDATION_ERROR, Translator.toLocale(GepafinConstant.FILES_REQUIRED_FOR_CONTRACT));
|
||||
}
|
||||
contractDocuments.forEach(Utils::validateFileType);
|
||||
return applicationContractDao.createApplicationContract(applicationId,contractDocuments,applicationContractRequest,user);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ApplicationContractResponse updateApplicationContract(HttpServletRequest httpServletRequest, Long applicationContractId, List<MultipartFile> beneficiaryContractDocuments) {
|
||||
UserEntity user= validator.validateUser(httpServletRequest);
|
||||
if(beneficiaryContractDocuments==null) {
|
||||
throw new CustomValidationException(Status.VALIDATION_ERROR, Translator.toLocale(GepafinConstant.FILES_REQUIRED_FOR_CONTRACT));
|
||||
}
|
||||
return applicationContractDao.updateApplicationContract(applicationContractId,beneficiaryContractDocuments,user);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ApplicationContractResponse getContractById(Long contractId) {
|
||||
return applicationContractDao.getContractById(contractId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ApplicationContractResponse getContractByApplicationId(Long applicationId) {
|
||||
return applicationContractDao.getContractByApplicationId(applicationId);
|
||||
}
|
||||
@Override
|
||||
public List<ApplicationContractResponse> getContractByBeneficiaryUserId(Long beneficiaryUserId) {
|
||||
UserEntity user=userDao.validateUser(beneficiaryUserId);
|
||||
return applicationContractDao.getContractByBeneficiaryUserId(user);
|
||||
}
|
||||
}
|
||||
@@ -9,6 +9,7 @@ import com.amazonaws.services.s3.model.ObjectMetadata;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import net.gepafin.tendermanagement.dao.DocumentDao;
|
||||
import net.gepafin.tendermanagement.dao.S3PathConfig;
|
||||
import net.gepafin.tendermanagement.entities.ApplicationContractEntity;
|
||||
import net.gepafin.tendermanagement.entities.ApplicationEntity;
|
||||
import net.gepafin.tendermanagement.entities.CommunicationEntity;
|
||||
import net.gepafin.tendermanagement.entities.DocumentEntity;
|
||||
@@ -81,6 +82,9 @@ public class S3ReUploadMigrationService {
|
||||
@Autowired
|
||||
private DocumentDao documentDao;
|
||||
|
||||
@Autowired
|
||||
private ApplicationContractRepository applicationContractRepository;
|
||||
|
||||
|
||||
private boolean migrationCompleted = false;
|
||||
|
||||
@@ -114,6 +118,7 @@ public class S3ReUploadMigrationService {
|
||||
Long amendmentId = null;
|
||||
Long evaluationId = null;
|
||||
Long communicationId=null;
|
||||
Long contractId=null;
|
||||
if (DocumentSourceTypeEnum.CALL.getValue().equalsIgnoreCase(document.getSource())) {
|
||||
callId = document.getSourceId();
|
||||
} else if (DocumentSourceTypeEnum.APPLICATION.getValue().equalsIgnoreCase(document.getSource())) {
|
||||
@@ -138,9 +143,15 @@ public class S3ReUploadMigrationService {
|
||||
applicationId = applicationEntity.getId();
|
||||
callId = applicationEntity.getCall().getId();
|
||||
}
|
||||
else if(DocumentSourceTypeEnum.CONTRACT.getValue().equalsIgnoreCase(document.getSource())){
|
||||
contractId = document.getSourceId();
|
||||
ApplicationContractEntity applicationContractEntity=applicationContractRepository.findByIdAndIsDeletedFalse(contractId);
|
||||
ApplicationEntity applicationEntity=applicationService.validateApplication(applicationContractEntity.getApplicationId());
|
||||
applicationId = applicationEntity.getId();
|
||||
callId = applicationEntity.getCall().getId();
|
||||
}
|
||||
|
||||
|
||||
documentDao.deleteFileFromS3(document,callId,applicationId,amendmentId,communicationId);
|
||||
documentDao.deleteFileFromS3(document,callId,applicationId,amendmentId,communicationId,contractId);
|
||||
processDocuments++;
|
||||
|
||||
} catch (Exception e) {
|
||||
@@ -231,10 +242,10 @@ public class S3ReUploadMigrationService {
|
||||
Long callId;
|
||||
|
||||
if (sourceType.equals(DocumentSourceTypeEnum.CALL)) {
|
||||
return s3ConfigBean.generateDocumentPath(sourceType, document.getSourceId(), 0L,0L,0L);
|
||||
return s3ConfigBean.generateDocumentPath(sourceType, document.getSourceId(), 0L,0L,0L,0L);
|
||||
} else {
|
||||
callId = applicationRepository.findCallIdById(document.getSourceId());
|
||||
return s3ConfigBean.generateDocumentPath(sourceType, callId, document.getSourceId(),0L,0L);
|
||||
return s3ConfigBean.generateDocumentPath(sourceType, callId, document.getSourceId(),0L,0L,0L);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -139,7 +139,7 @@ public class UserSignedAndDelegationServiceImpl {
|
||||
|
||||
private String generateNewS3PathForDelegationDoc() {
|
||||
|
||||
return s3ConfigBean.generateDocumentPathForOther(DocOtherSourceTypeEnum.USER_DELEGATION, 0L, 0L,0L,0L);
|
||||
return s3ConfigBean.generateDocumentPathForOther(DocOtherSourceTypeEnum.USER_DELEGATION, 0L, 0L,0L,0L,0L);
|
||||
}
|
||||
|
||||
private String generateNewS3PathForUserSignedDoc(ApplicationSignedDocumentEntity document) {
|
||||
|
||||
Reference in New Issue
Block a user