updated code
This commit is contained in:
@@ -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);
|
||||
|
||||
@@ -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());
|
||||
|
||||
Reference in New Issue
Block a user