Created crud operation for evaluation criteria,faq,lookUp data and document

This commit is contained in:
harish
2024-08-26 17:05:03 +05:30
parent 049b53ac46
commit 948e5ec31d
33 changed files with 1075 additions and 77 deletions

View File

@@ -0,0 +1,75 @@
package net.gepafin.tendermanagement.dao;
import net.gepafin.tendermanagement.config.Translator;
import net.gepafin.tendermanagement.constants.GepafinConstant;
import net.gepafin.tendermanagement.entities.CallEntity;
import net.gepafin.tendermanagement.entities.EvaluationCriteriaEntity;
import net.gepafin.tendermanagement.model.request.EvaluationCriteriaRequest;
import net.gepafin.tendermanagement.model.response.EvaluationCriteriaResponseBean;
import net.gepafin.tendermanagement.repositories.CallRepository;
import net.gepafin.tendermanagement.repositories.EvaluationCriteriaRepository;
import net.gepafin.tendermanagement.web.rest.api.errors.ResourceNotFoundException;
import net.gepafin.tendermanagement.web.rest.api.errors.Status;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.dao.EmptyResultDataAccessException;
import org.springframework.stereotype.Component;
@Component
public class EvaluationCriteriaDao {
@Autowired
private EvaluationCriteriaRepository repository;
@Autowired
private CallRepository callRepository;
public EvaluationCriteriaResponseBean createEvaluationCriteria(EvaluationCriteriaRequest evaluationCriteriaRequest) {
EvaluationCriteriaEntity entity = convertEvaluationCriteriaRequestToEvaluationCriteriaEntity(evaluationCriteriaRequest);
return convertEvaluationCriteriaEntityEvaluationCriteriaToResponseBean(entity);
}
private EvaluationCriteriaEntity convertEvaluationCriteriaRequestToEvaluationCriteriaEntity(EvaluationCriteriaRequest evaluationCriteriaRequest) {
EvaluationCriteriaEntity entity = new EvaluationCriteriaEntity();
CallEntity callEntity= callRepository.findById(evaluationCriteriaRequest.getCallId())
.orElseThrow(() -> new ResourceNotFoundException(Status.VALIDATION_ERROR, Translator.toLocale(GepafinConstant.CALL_NOT_FOUND)));
entity.setCall(callEntity);
entity.setName(evaluationCriteriaRequest.getName());
entity.setDescription(evaluationCriteriaRequest.getDescription());
entity.setScore(evaluationCriteriaRequest.getScore());
entity = repository.save(entity);
return entity;
}
public EvaluationCriteriaResponseBean getEvaluationCriteriaById(Long id) {
return repository.findById(id)
.map(this::convertEvaluationCriteriaEntityEvaluationCriteriaToResponseBean)
.orElseThrow(() -> new ResourceNotFoundException(Status.NOT_FOUND, Translator.toLocale(GepafinConstant.EVALUATION_CRITERIA_NOT_FOUND)));
}
public EvaluationCriteriaResponseBean updateEvaluationCriteria(Long id, EvaluationCriteriaRequest request) {
EvaluationCriteriaEntity entity = repository.findById(id)
.orElseThrow(() -> new ResourceNotFoundException(Status.NOT_FOUND, Translator.toLocale(GepafinConstant.EVALUATION_CRITERIA_NOT_FOUND)));
entity = convertEvaluationCriteriaRequestToEvaluationCriteriaEntity(request);
return convertEvaluationCriteriaEntityEvaluationCriteriaToResponseBean(entity);
}
public void deleteEvaluationCriteria(Long id) {
try {
repository.deleteById(id);
} catch (EmptyResultDataAccessException e) {
throw new ResourceNotFoundException(Status.NOT_FOUND, Translator.toLocale(GepafinConstant.EVALUATION_CRITERIA_NOT_FOUND));
}
}
private EvaluationCriteriaResponseBean convertEvaluationCriteriaEntityEvaluationCriteriaToResponseBean(EvaluationCriteriaEntity entity) {
EvaluationCriteriaResponseBean response = new EvaluationCriteriaResponseBean();
response.setId(entity.getId());
response.setName(entity.getName());
response.setDescription(entity.getDescription());
response.setScore(entity.getScore());
response.setCreatedDate(entity.getCreatedDate());
response.setUpdatedDate(entity.getUpdatedDate());
return response;
}
}