updated code

This commit is contained in:
rajesh
2025-02-25 13:42:38 +05:30
parent cca4c46976
commit 46e603af3e
19 changed files with 104 additions and 111 deletions

View File

@@ -11,7 +11,7 @@ import net.gepafin.tendermanagement.entities.*;
import net.gepafin.tendermanagement.enums.*;
import net.gepafin.tendermanagement.model.request.CompanyDocumentRequest;
import net.gepafin.tendermanagement.model.request.VersionHistoryRequest;
import net.gepafin.tendermanagement.model.response.CategoryResponse;
import net.gepafin.tendermanagement.model.response.DocumentCategoryResponse;
import net.gepafin.tendermanagement.model.response.CompanyDocumentResponseBean;
import net.gepafin.tendermanagement.model.response.DocumentResponseBean;
import net.gepafin.tendermanagement.model.response.UploadFileOnAmazonS3Response;
@@ -19,7 +19,6 @@ import net.gepafin.tendermanagement.repositories.CompanyDocumentRepository;
import net.gepafin.tendermanagement.repositories.DocumentRepository;
import net.gepafin.tendermanagement.service.AmazonS3Service;
import net.gepafin.tendermanagement.service.ApplicationService;
import net.gepafin.tendermanagement.service.CategoryService;
import net.gepafin.tendermanagement.service.CompanyService;
import net.gepafin.tendermanagement.service.impl.AmazonS3ServiceImpl;
import net.gepafin.tendermanagement.util.LoggingUtil;
@@ -34,8 +33,6 @@ import org.springframework.data.jpa.domain.Specification;
import org.springframework.stereotype.Component;
import org.springframework.web.multipart.MultipartFile;
import java.net.URLDecoder;
import java.nio.charset.StandardCharsets;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
@@ -63,7 +60,7 @@ public class CompanyDocumentDao {
private HttpServletRequest request;
@Autowired
private CategoryDao categoryDao;
private DocumentCategoryDao categoryDao;
@Autowired
private CompanyService companyService;
@@ -89,8 +86,8 @@ public class CompanyDocumentDao {
@Autowired
private Validator validator;
public List<CompanyDocumentResponseBean> uploadFileForCompany(HttpServletRequest request, Long userId, List<MultipartFile> files, Long companyId, Long categoryId, CompanyDocumentTypeEnum companyDocumentSourceTypeEnum, LocalDateTime expirationDate){
CategoryEntity categoryEntity = categoryDao.validateCategory(categoryId);
public List<CompanyDocumentResponseBean> uploadFileForCompany(HttpServletRequest request, Long userId, List<MultipartFile> files, Long companyId, Long documentCategoryId, CompanyDocumentTypeEnum companyDocumentSourceTypeEnum, LocalDateTime expirationDate){
DocumentCategoryEntity categoryEntity = categoryDao.validateCategory(documentCategoryId);
validator.validateUserWithCompany(request,companyId);
UserWithCompanyEntity userWithCompanyEntity=companyService.getUserWithCompany(userId,companyId);
@@ -159,8 +156,8 @@ public class CompanyDocumentDao {
public CompanyDocumentResponseBean convertToCompanyDocumentResponseBean(CompanyDocumentEntity entity) {
CompanyDocumentResponseBean responseBean = new CompanyDocumentResponseBean();
CategoryEntity categoryEntity = entity.getCategoryEntity();
CategoryResponse responseCategory = categoryDao.convertToResponseBean(categoryEntity);
DocumentCategoryEntity categoryEntity = entity.getCategoryEntity();
DocumentCategoryResponse responseCategory = categoryDao.convertToResponseBean(categoryEntity);
responseBean.setId(entity.getId());
responseBean.setName(entity.getFileName());
responseBean.setType(CompanyDocumentTypeEnum.valueOf(entity.getType()));
@@ -194,7 +191,7 @@ public class CompanyDocumentDao {
}
}
if (companyDocumentRequest.getCategoryId() != null && companyDocumentRequest.getCategoryId() >0) {
CategoryEntity categoryEntity = categoryDao.validateCategory(companyDocumentRequest.getCategoryId());
DocumentCategoryEntity categoryEntity = categoryDao.validateCategory(companyDocumentRequest.getCategoryId());
setIfUpdated(companyDocumentEntity::getCategoryEntity, companyDocumentEntity::setCategoryEntity, categoryEntity);
}
companyDocumentRepository.save(companyDocumentEntity);

View File

@@ -3,15 +3,13 @@ package net.gepafin.tendermanagement.dao;
import jakarta.servlet.http.HttpServletRequest;
import net.gepafin.tendermanagement.config.Translator;
import net.gepafin.tendermanagement.constants.GepafinConstant;
import net.gepafin.tendermanagement.entities.CategoryEntity;
import net.gepafin.tendermanagement.entities.DocumentCategoryEntity;
import net.gepafin.tendermanagement.entities.CompanyDocumentEntity;
import net.gepafin.tendermanagement.entities.FaqEntity;
import net.gepafin.tendermanagement.entities.HubEntity;
import net.gepafin.tendermanagement.enums.VersionActionTypeEnum;
import net.gepafin.tendermanagement.model.request.CategoryRequest;
import net.gepafin.tendermanagement.model.request.DocumentCategoryRequest;
import net.gepafin.tendermanagement.model.request.VersionHistoryRequest;
import net.gepafin.tendermanagement.model.response.CategoryResponse;
import net.gepafin.tendermanagement.repositories.CategoryRepository;
import net.gepafin.tendermanagement.model.response.DocumentCategoryResponse;
import net.gepafin.tendermanagement.repositories.DocumentCategoryRepository;
import net.gepafin.tendermanagement.repositories.CompanyDocumentRepository;
import net.gepafin.tendermanagement.util.LoggingUtil;
import net.gepafin.tendermanagement.util.Utils;
@@ -26,10 +24,10 @@ import java.util.List;
import static net.gepafin.tendermanagement.util.Utils.setIfUpdated;
@Component
public class CategoryDao {
public class DocumentCategoryDao {
@Autowired
private CategoryRepository categoryRepository;
private DocumentCategoryRepository categoryRepository;
@Autowired
private LoggingUtil loggingUtil;
@@ -40,9 +38,9 @@ public class CategoryDao {
@Autowired
private CompanyDocumentRepository companyDocumentRepository;
public CategoryResponse createDocumentCategory(HttpServletRequest request, CategoryRequest categoryRequest){
public DocumentCategoryResponse createDocumentCategory(HttpServletRequest request, DocumentCategoryRequest categoryRequest){
CategoryEntity entity = createCategoryEntity(new CategoryEntity(),categoryRequest);
DocumentCategoryEntity entity = createCategoryEntity(new DocumentCategoryEntity(),categoryRequest);
categoryRepository.save(entity);
/** This code is responsible for adding a version history log for the "Create Company Document Category" operation. **/
@@ -51,15 +49,15 @@ public class CategoryDao {
return convertToResponseBean(entity);
}
public CategoryEntity createCategoryEntity(CategoryEntity entity,CategoryRequest companyDocumentCategoryRequest){
public DocumentCategoryEntity createCategoryEntity(DocumentCategoryEntity entity, DocumentCategoryRequest companyDocumentCategoryRequest){
entity.setCategoryName(companyDocumentCategoryRequest.getCategoryName());
entity.setDescription(companyDocumentCategoryRequest.getDescription());
entity.setIsDeleted(false);
return entity;
}
public CategoryResponse convertToResponseBean(CategoryEntity entity){
CategoryResponse response = new CategoryResponse();
public DocumentCategoryResponse convertToResponseBean(DocumentCategoryEntity entity){
DocumentCategoryResponse response = new DocumentCategoryResponse();
response.setId(entity.getId());
response.setCategoryName(entity.getCategoryName());
response.setDescription(entity.getDescription());
@@ -68,24 +66,24 @@ public class CategoryDao {
return response;
}
public CategoryResponse getDocumentCategoryById(HttpServletRequest request, Long id){
public DocumentCategoryResponse getDocumentCategoryById(HttpServletRequest request, Long id){
return convertToResponseBean(validateCategory(id));
}
public CategoryEntity validateCategory(Long id) {
public DocumentCategoryEntity validateCategory(Long id) {
return categoryRepository.findById(id)
.orElseThrow(() -> new ResourceNotFoundException(Status.NOT_FOUND,
Translator.toLocale(GepafinConstant.DOCUMENT_CATEGORY_NOT_FOUND)));
}
public void deleteCategory(HttpServletRequest request,Long id) {
CategoryEntity entity = validateCategory(id);
public void deleteDocumentCategory(HttpServletRequest request,Long id) {
DocumentCategoryEntity entity = validateCategory(id);
List<CompanyDocumentEntity> companyDocumentEntities = companyDocumentRepository.findByCategoryEntityId(id);
if (!companyDocumentEntities.isEmpty()){
throw new CustomValidationException(Status.VALIDATION_ERROR, Translator.toLocale(GepafinConstant.CATEGORY_CANNOT_BE_DELETED));
}
CategoryEntity oldCategoryEntity = Utils.getClonedEntityForData(entity);
DocumentCategoryEntity oldCategoryEntity = Utils.getClonedEntityForData(entity);
entity.setIsDeleted(true);
categoryRepository.save(entity);
@@ -94,17 +92,17 @@ public class CategoryDao {
VersionHistoryRequest.builder().request(request).actionType(VersionActionTypeEnum.SOFT_DELETE).oldData(oldCategoryEntity).newData(entity).build());
}
public CategoryResponse updateCategory(HttpServletRequest request,Long id , CategoryRequest categoryRequest){
CategoryEntity entity = validateCategory(id);
CategoryEntity oldCategoryEntity = Utils.getClonedEntityForData(entity);
CategoryEntity newCategoryEntity = updateCategoryEntity(entity, categoryRequest);
public DocumentCategoryResponse updateDocumentCategory(HttpServletRequest request, Long id , DocumentCategoryRequest categoryRequest){
DocumentCategoryEntity entity = validateCategory(id);
DocumentCategoryEntity oldCategoryEntity = Utils.getClonedEntityForData(entity);
DocumentCategoryEntity newCategoryEntity = updateCategoryEntity(entity, categoryRequest);
/** This code is responsible for adding a version history log for the "Update Category" operation. **/
loggingUtil.addVersionHistory(VersionHistoryRequest.builder().request(request).actionType(VersionActionTypeEnum.UPDATE).oldData(oldCategoryEntity).newData(newCategoryEntity).build());
return convertToResponseBean(entity);
}
public CategoryEntity updateCategoryEntity(CategoryEntity entity , CategoryRequest categoryRequest){
public DocumentCategoryEntity updateCategoryEntity(DocumentCategoryEntity entity , DocumentCategoryRequest categoryRequest){
setIfUpdated(entity::getCategoryName, entity::setCategoryName, categoryRequest.getCategoryName());
setIfUpdated(entity::getDescription, entity::setDescription, categoryRequest.getDescription());