Updated get endpoints
This commit is contained in:
@@ -121,5 +121,6 @@ public class GepafinConstant {
|
||||
public static final String VALIDATION_FIELD_PATTERN = "validation.field.pattern";
|
||||
public static final String VALIDATION_FIELD_NOT_NULL = "validation.field.not_null";
|
||||
public static final String VALIDATION_FIELD_NOT_EMPTY = "validation.field.not_empty";
|
||||
public static final String APPLICATION_ALREADY_EXISTS="application.already.exists";
|
||||
|
||||
}
|
||||
|
||||
@@ -5,9 +5,9 @@ import net.gepafin.tendermanagement.constants.GepafinConstant;
|
||||
import net.gepafin.tendermanagement.entities.*;
|
||||
import net.gepafin.tendermanagement.enums.ApplicationStatusTypeEnum;
|
||||
import net.gepafin.tendermanagement.model.request.ApplicationFormFieldRequestBean;
|
||||
import net.gepafin.tendermanagement.model.request.ApplicationRequest;
|
||||
import net.gepafin.tendermanagement.model.request.ApplicationRequestBean;
|
||||
import net.gepafin.tendermanagement.model.response.ApplicationFormFieldResponseBean;
|
||||
import net.gepafin.tendermanagement.model.response.ApplicationResponseBean;
|
||||
import net.gepafin.tendermanagement.model.response.*;
|
||||
import net.gepafin.tendermanagement.repositories.ApplicationFormFieldRepository;
|
||||
import net.gepafin.tendermanagement.repositories.ApplicationFormRepository;
|
||||
import net.gepafin.tendermanagement.repositories.ApplicationRepository;
|
||||
@@ -50,9 +50,12 @@ public class ApplicationDao {
|
||||
@Autowired
|
||||
private FormService formService;
|
||||
|
||||
public ApplicationResponseBean createApplication(ApplicationRequestBean applicationRequestBean, UserEntity userEntity, Long callId) {
|
||||
CallEntity call = callService.validateCall(callId);
|
||||
FormEntity formEntity = formService.validateForm(applicationRequestBean.getFormId());
|
||||
@Autowired
|
||||
private FormDao formDao;
|
||||
|
||||
public ApplicationResponseBean createApplication(ApplicationRequestBean applicationRequestBean, UserEntity userEntity, Long formId) {
|
||||
FormEntity formEntity = formService.validateForm(formId);
|
||||
CallEntity call = callService.validateCall(formEntity.getCall().getId());
|
||||
ApplicationEntity applicationEntity = getApplicationOrCreate(userEntity, call, formEntity);
|
||||
formService.validateFormField(applicationRequestBean.getFormFields(),applicationEntity,formEntity);
|
||||
ApplicationFormEntity applicationFormEntity = getApplicationFormOrCreate(formEntity, applicationEntity);
|
||||
@@ -117,47 +120,25 @@ public class ApplicationDao {
|
||||
log.info("Application deleted with ID: {}", id);
|
||||
}
|
||||
|
||||
public List<ApplicationResponseBean> getAllApplications(Map<String, Object> userInfo) {
|
||||
public List<ApplicationResponse> getAllApplications(UserEntity userEntity) {
|
||||
log.info("Fetching all applications");
|
||||
String userIdStr = (String) userInfo.get("userId");
|
||||
Long userId = Long.parseLong(userIdStr);
|
||||
List<ApplicationEntity> applicationEntities = applicationRepository.findByUserIdAndIsDeletedFalse(userId);
|
||||
List<Long> applicationIds = applicationEntities.stream()
|
||||
.map(ApplicationEntity::getId)
|
||||
.collect(Collectors.toList());
|
||||
|
||||
List<ApplicationFormEntity> applicationFormEntities = applicationFormRepository.findByApplicationIdIn(applicationIds);
|
||||
|
||||
List<Long> applicationFormIds = applicationFormEntities.stream()
|
||||
.map(ApplicationFormEntity::getId)
|
||||
.collect(Collectors.toList());
|
||||
|
||||
List<ApplicationFormFieldEntity> applicationFormFieldEntities = applicationFormFieldRepository.findByApplicationFormIdIn(applicationFormIds);
|
||||
|
||||
|
||||
return applicationEntities.stream().map(applicationEntity -> {
|
||||
ApplicationResponseBean responseBean = new ApplicationResponseBean();
|
||||
List<ApplicationResponse> applicationResponses=new ArrayList<>();
|
||||
List<ApplicationEntity> applicationEntities = applicationRepository.findByUserIdAndIsDeletedFalse(userEntity.getId());
|
||||
for(ApplicationEntity applicationEntity:applicationEntities){
|
||||
ApplicationResponse responseBean = getApplicationResponse(applicationEntity);
|
||||
applicationResponses.add(responseBean);
|
||||
}
|
||||
return applicationResponses;
|
||||
}
|
||||
|
||||
private ApplicationResponse getApplicationResponse(ApplicationEntity applicationEntity) {
|
||||
ApplicationResponse responseBean = new ApplicationResponse();
|
||||
responseBean.setId(applicationEntity.getId());
|
||||
responseBean.setCallId(applicationEntity.getCall().getId());
|
||||
responseBean.setSubmissionDate(applicationEntity.getSubmissionDate());
|
||||
responseBean.setStatus(applicationEntity.getStatus());
|
||||
responseBean.setComments(applicationEntity.getComments());
|
||||
|
||||
List<ApplicationFormFieldResponseBean> formFieldResponseBeans = applicationFormFieldEntities.stream()
|
||||
.filter(field -> field.getApplicationForm().getApplication().getId().equals(applicationEntity.getId()))
|
||||
.map(field -> {
|
||||
ApplicationFormFieldResponseBean fieldResponseBean = new ApplicationFormFieldResponseBean();
|
||||
fieldResponseBean.setId(field.getId());
|
||||
fieldResponseBean.setFieldId(field.getFieldId());
|
||||
fieldResponseBean.setApplicationFormId(field.getApplicationForm().getId());
|
||||
fieldResponseBean.setFieldValue(field.getFieldValue());
|
||||
return fieldResponseBean;
|
||||
}).collect(Collectors.toList());
|
||||
|
||||
responseBean.setFormFields(formFieldResponseBeans);
|
||||
|
||||
return responseBean;
|
||||
}).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
public ApplicationEntity validateApplication(Long id) {
|
||||
@@ -247,4 +228,82 @@ public class ApplicationDao {
|
||||
ApplicationEntity applicationEntity=applicationRepository.save(application);
|
||||
return applicationEntity;
|
||||
}
|
||||
|
||||
public ApplicationGetResponseBean getApplicationByFormId( Long applicationId,Long formId, UserEntity userEntity) {
|
||||
|
||||
ApplicationEntity applicationEntity=null;
|
||||
List<FormApplicationResponse> formApplicationResponses = new ArrayList<>();
|
||||
List<FormEntity> formEntities = new ArrayList<>();
|
||||
Optional<ApplicationEntity> applicationEntity1 = applicationRepository.findById(applicationId);
|
||||
applicationEntity=applicationEntity1.get();
|
||||
if (applicationEntity == null) {
|
||||
throw new CustomValidationException(Status.BAD_REQUEST,Translator.toLocale(GepafinConstant.APPLICATION_NOT_FOUND_MSG));
|
||||
}
|
||||
if (formId != null) {
|
||||
FormEntity formEntity = formService.validateForm(formId);
|
||||
applicationEntity = applicationRepository.findByUserIdAndCallIdAndIsDeletedFalse(userEntity.getId(), formEntity.getCall().getId());
|
||||
formEntities.add(formEntity);
|
||||
processForm(formEntity, applicationEntity, formApplicationResponses);
|
||||
}
|
||||
else {
|
||||
List<ApplicationFormEntity> applicationFormEntities = applicationFormRepository.findByApplicationId(applicationEntity.getId());
|
||||
for (ApplicationFormEntity applicationFormEntity : applicationFormEntities) {
|
||||
FormEntity form = formService.validateForm(applicationFormEntity.getForm().getId());
|
||||
formEntities.add(form);
|
||||
processForm(form, applicationEntity, formApplicationResponses);
|
||||
}
|
||||
}
|
||||
|
||||
return createApplicationGetResponseBean(applicationEntity, formEntities, formApplicationResponses);
|
||||
}
|
||||
|
||||
private void processForm(FormEntity formEntity, ApplicationEntity applicationEntity, List<FormApplicationResponse> formApplicationResponses) {
|
||||
ApplicationFormEntity applicationFormEntity = applicationFormRepository.findByApplicationIdAndFormId(applicationEntity.getId(), formEntity.getId());
|
||||
if(applicationFormEntity!=null) {
|
||||
List<ApplicationFormFieldEntity> applicationFormFieldEntities = applicationFormFieldRepository.findByApplicationFormId(applicationFormEntity.getId());
|
||||
FormApplicationResponse formApplicationResponse = createFormApplicationResponse(formEntity);
|
||||
List<ApplicationFormFieldResponseBean> applicationFormFieldResponseBeans = convertApplicationFormFieldEntitiesToApplicationFormFieldResponseBeans(applicationFormFieldEntities, applicationFormEntity.getId());
|
||||
|
||||
formApplicationResponse.setFormFields(applicationFormFieldResponseBeans);
|
||||
formApplicationResponses.add(formApplicationResponse);
|
||||
}
|
||||
}
|
||||
|
||||
private ApplicationGetResponseBean createApplicationGetResponseBean(ApplicationEntity applicationEntity, List<FormEntity> formEntities, List<FormApplicationResponse> formApplicationResponses) {
|
||||
ApplicationGetResponseBean applicationGetResponseBean =createApplicationGetResponseBean(applicationEntity);
|
||||
applicationGetResponseBean.setForm(formApplicationResponses);
|
||||
return applicationGetResponseBean;
|
||||
}
|
||||
|
||||
private ApplicationGetResponseBean createApplicationGetResponseBean(ApplicationEntity applicationEntity) {
|
||||
ApplicationGetResponseBean applicationGetResponseBean = new ApplicationGetResponseBean();
|
||||
applicationGetResponseBean.setId(applicationEntity.getId());
|
||||
applicationGetResponseBean.setStatus(applicationEntity.getStatus());
|
||||
applicationGetResponseBean.setComments(applicationEntity.getComments());
|
||||
applicationGetResponseBean.setSubmissionDate(applicationEntity.getSubmissionDate());
|
||||
return applicationGetResponseBean;
|
||||
}
|
||||
|
||||
private FormApplicationResponse createFormApplicationResponse(FormEntity formEntity) {
|
||||
FormApplicationResponse formApplicationResponse=new FormApplicationResponse();
|
||||
formApplicationResponse.setId(formEntity.getId());
|
||||
formApplicationResponse.setLabel(formEntity.getLabel());
|
||||
formApplicationResponse.setCallId(formEntity.getCall().getId());
|
||||
formApplicationResponse.setContent(Utils.convertJsonStringToList(formEntity.getContent(), ContentResponseBean.class));
|
||||
return formApplicationResponse;
|
||||
}
|
||||
|
||||
public ApplicationResponse createApplicationByCallId(ApplicationRequest applicationRequest,Long callId,UserEntity userEntity){
|
||||
CallEntity call=callService.validateCall(callId);
|
||||
checkIfApplicationExists(call,userEntity);
|
||||
ApplicationEntity applicationEntity=saveApplicationEntity(createApplicationEntity(userEntity,call));
|
||||
ApplicationResponse applicationResponse=getApplicationResponse(applicationEntity);
|
||||
return applicationResponse;
|
||||
}
|
||||
public void checkIfApplicationExists(CallEntity call,UserEntity userEntity){
|
||||
ApplicationEntity applicationEntity=applicationRepository.findByUserIdAndCallIdAndIsDeletedFalse(userEntity.getId(),call.getId());
|
||||
if(applicationEntity!=null){
|
||||
throw new CustomValidationException(Status.BAD_REQUEST,Translator.toLocale(GepafinConstant.APPLICATION_ALREADY_EXISTS));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
package net.gepafin.tendermanagement.model.request;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Data
|
||||
public class ApplicationRequest {
|
||||
|
||||
private LocalDateTime submissionDate;
|
||||
|
||||
private String status;
|
||||
|
||||
private String comments;
|
||||
|
||||
}
|
||||
@@ -9,7 +9,5 @@ import java.util.List;
|
||||
@Data
|
||||
public class ApplicationRequestBean {
|
||||
|
||||
private Long formId;
|
||||
|
||||
private List<ApplicationFormFieldRequestBean> formFields;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
package net.gepafin.tendermanagement.model.response;
|
||||
|
||||
import lombok.Data;
|
||||
import net.gepafin.tendermanagement.model.response.ApplicationResponseBean;
|
||||
import net.gepafin.tendermanagement.model.response.FormResponseBean;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class ApplicationGetResponseBean {
|
||||
|
||||
private Long id;
|
||||
|
||||
private LocalDateTime submissionDate;
|
||||
|
||||
private String status;
|
||||
|
||||
private String comments;
|
||||
|
||||
private List<FormApplicationResponse> form;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package net.gepafin.tendermanagement.model.response;
|
||||
|
||||
import lombok.Data;
|
||||
import net.gepafin.tendermanagement.model.response.ApplicationFormFieldResponseBean;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class ApplicationResponse{
|
||||
|
||||
private Long id;
|
||||
|
||||
private Long callId;
|
||||
|
||||
private LocalDateTime submissionDate;
|
||||
|
||||
private String status;
|
||||
|
||||
private String comments;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package net.gepafin.tendermanagement.model.response;
|
||||
|
||||
import lombok.Data;
|
||||
import net.gepafin.tendermanagement.model.response.ApplicationFormFieldResponseBean;
|
||||
import net.gepafin.tendermanagement.model.response.ContentResponseBean;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class FormApplicationResponse {
|
||||
|
||||
private Long id;
|
||||
|
||||
private String label;
|
||||
|
||||
private Long callId;
|
||||
|
||||
private List<ContentResponseBean> content;
|
||||
|
||||
private List<ApplicationFormFieldResponseBean> formFields;
|
||||
}
|
||||
@@ -2,20 +2,26 @@ package net.gepafin.tendermanagement.service;
|
||||
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import net.gepafin.tendermanagement.entities.ApplicationEntity;
|
||||
import net.gepafin.tendermanagement.model.request.ApplicationRequest;
|
||||
import net.gepafin.tendermanagement.model.request.ApplicationRequestBean;
|
||||
import net.gepafin.tendermanagement.model.response.ApplicationGetResponseBean;
|
||||
import net.gepafin.tendermanagement.model.response.ApplicationResponse;
|
||||
import net.gepafin.tendermanagement.model.response.ApplicationResponseBean;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface ApplicationService {
|
||||
|
||||
public ApplicationResponseBean createApplication(HttpServletRequest request, ApplicationRequestBean applicationRequestBean, Long callId);
|
||||
public ApplicationResponseBean createApplication(HttpServletRequest request, ApplicationRequestBean applicationRequestBean, Long formId);
|
||||
|
||||
ApplicationResponseBean getApplicationById(HttpServletRequest request, Long applicationId);
|
||||
ApplicationGetResponseBean getApplicationByFormId(HttpServletRequest request, Long applicationId,Long formId);
|
||||
|
||||
List<ApplicationResponseBean> getAllApplications(HttpServletRequest request);
|
||||
List<ApplicationResponse> getAllApplications(HttpServletRequest request);
|
||||
|
||||
void deleteApplication(HttpServletRequest request, Long applicationId);
|
||||
|
||||
public ApplicationEntity validateApplication(Long userId);
|
||||
|
||||
public ApplicationResponse createApplication(HttpServletRequest request, ApplicationRequest applicationRequest, Long callId);
|
||||
|
||||
}
|
||||
|
||||
@@ -4,7 +4,10 @@ import jakarta.servlet.http.HttpServletRequest;
|
||||
import net.gepafin.tendermanagement.dao.ApplicationDao;
|
||||
import net.gepafin.tendermanagement.entities.ApplicationEntity;
|
||||
import net.gepafin.tendermanagement.entities.UserEntity;
|
||||
import net.gepafin.tendermanagement.model.request.ApplicationRequest;
|
||||
import net.gepafin.tendermanagement.model.request.ApplicationRequestBean;
|
||||
import net.gepafin.tendermanagement.model.response.ApplicationGetResponseBean;
|
||||
import net.gepafin.tendermanagement.model.response.ApplicationResponse;
|
||||
import net.gepafin.tendermanagement.model.response.ApplicationResponseBean;
|
||||
import net.gepafin.tendermanagement.service.ApplicationService;
|
||||
import net.gepafin.tendermanagement.util.Validator;
|
||||
@@ -13,8 +16,6 @@ import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
|
||||
@Service
|
||||
public class ApplicationServiceImpl implements ApplicationService {
|
||||
@@ -27,15 +28,16 @@ public class ApplicationServiceImpl implements ApplicationService {
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public ApplicationResponseBean createApplication(HttpServletRequest request, ApplicationRequestBean applicationRequestBean, Long callId) {
|
||||
public ApplicationResponseBean createApplication(HttpServletRequest request, ApplicationRequestBean applicationRequestBean, Long formId) {
|
||||
UserEntity userEntity = validator.validateUser(request);
|
||||
return applicationDao.createApplication(applicationRequestBean,userEntity,callId);
|
||||
return applicationDao.createApplication(applicationRequestBean,userEntity,formId);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(readOnly = true)
|
||||
public ApplicationResponseBean getApplicationById(HttpServletRequest request, Long applicationId) {
|
||||
return null;
|
||||
public ApplicationGetResponseBean getApplicationByFormId(HttpServletRequest request, Long applicationId,Long formId) {
|
||||
UserEntity userEntity = validator.validateUser(request);
|
||||
return applicationDao.getApplicationByFormId(applicationId,formId,userEntity);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -50,10 +52,16 @@ public class ApplicationServiceImpl implements ApplicationService {
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(readOnly = true)
|
||||
public List<ApplicationResponseBean> getAllApplications(HttpServletRequest request) {
|
||||
Map<String,Object> userInfo=validator.getUserInfoFromToken(request);
|
||||
return applicationDao.getAllApplications(userInfo);
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public ApplicationResponse createApplication(HttpServletRequest request, ApplicationRequest applicationRequest, Long callId) {
|
||||
UserEntity userEntity = validator.validateUser(request);
|
||||
return applicationDao.createApplicationByCallId(applicationRequest,callId,userEntity);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(readOnly = true)
|
||||
public List<ApplicationResponse> getAllApplications(HttpServletRequest request) {
|
||||
UserEntity userEntity = validator.validateUser(request);
|
||||
return applicationDao.getAllApplications(userEntity);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,7 +7,10 @@ import io.swagger.v3.oas.annotations.media.ExampleObject;
|
||||
import io.swagger.v3.oas.annotations.responses.ApiResponse;
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import jakarta.validation.Valid;
|
||||
import net.gepafin.tendermanagement.model.request.ApplicationRequest;
|
||||
import net.gepafin.tendermanagement.model.request.ApplicationRequestBean;
|
||||
import net.gepafin.tendermanagement.model.response.ApplicationGetResponseBean;
|
||||
import net.gepafin.tendermanagement.model.response.ApplicationResponse;
|
||||
import net.gepafin.tendermanagement.model.response.ApplicationResponseBean;
|
||||
import net.gepafin.tendermanagement.model.util.Response;
|
||||
import net.gepafin.tendermanagement.web.rest.api.errors.ErrorConstants;
|
||||
@@ -30,11 +33,11 @@ public interface ApplicationApi {
|
||||
@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) })) })
|
||||
@PutMapping(value = "/call/{callId}",
|
||||
@PutMapping(value = "/form/{formId}",
|
||||
produces = { "application/json" })
|
||||
ResponseEntity<Response<ApplicationResponseBean>> createApplication(HttpServletRequest request,
|
||||
@Parameter(description = " Flow request object", required = true) @Valid @RequestBody ApplicationRequestBean applicationRequestBean,
|
||||
@Parameter(description = "The call ID", required = true) @PathVariable("callId") Long callId);
|
||||
@Parameter(description = "The form ID", required = true) @PathVariable("formId") Long formId);
|
||||
|
||||
@Operation(summary = "Api to get an application by id",
|
||||
responses = {
|
||||
@@ -46,8 +49,7 @@ public interface ApplicationApi {
|
||||
@ApiResponse(responseCode = "400", description = "Bad Request", content = @Content(mediaType = MediaType.APPLICATION_JSON_VALUE, examples = {
|
||||
@ExampleObject(value = ErrorConstants.BADREQUEST_ERROR_EXAMPLE) })) })
|
||||
@GetMapping(value = "/{applicationId}", produces = "application/json")
|
||||
ResponseEntity<Response<ApplicationResponseBean>> getApplicationById(HttpServletRequest request,
|
||||
@Parameter(description = "The application id", required = true) @PathVariable("applicationId") Long applicationId);
|
||||
ResponseEntity<Response<ApplicationGetResponseBean>> getApplicationByFormId(HttpServletRequest request, @Parameter(description = "The application id", required = true) @PathVariable(value = "applicationId", required = true) Long applicationId,@Parameter(description = "The form id", required = false) @RequestParam(value = "formId",required = false) Long formId);
|
||||
|
||||
@Operation(summary = "Api to get all applications",
|
||||
responses = {
|
||||
@@ -59,7 +61,7 @@ public interface ApplicationApi {
|
||||
@ApiResponse(responseCode = "400", description = "Bad Request", content = @Content(mediaType = MediaType.APPLICATION_JSON_VALUE, examples = {
|
||||
@ExampleObject(value = ErrorConstants.BADREQUEST_ERROR_EXAMPLE) })) })
|
||||
@GetMapping(value = "", produces = "application/json")
|
||||
ResponseEntity<Response<List<ApplicationResponseBean>>> getAllApplications(HttpServletRequest request);
|
||||
ResponseEntity<Response<List<ApplicationResponse>>> getAllApplications(HttpServletRequest request);
|
||||
|
||||
@Operation(summary = "Api to delete application",
|
||||
responses = {
|
||||
@@ -73,5 +75,21 @@ public interface ApplicationApi {
|
||||
@DeleteMapping(value = "/{applicationId}")
|
||||
ResponseEntity<Response<Void>> deleteApplication(HttpServletRequest request,
|
||||
@Parameter(description = "The application id", required = true) @PathVariable("applicationId") Long applicationId);
|
||||
|
||||
@Operation(summary = "Api to create 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) })) })
|
||||
@PostMapping(value = "/call/{callId}",
|
||||
produces = { "application/json" })
|
||||
ResponseEntity<Response<ApplicationResponse>> createApplicationByCallId(HttpServletRequest request,
|
||||
@Parameter(description = " Flow request object", required = true) @Valid @RequestBody ApplicationRequest applicationRequest,
|
||||
@Parameter(description = "The call ID", required = true) @PathVariable("callId") Long callId);
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -3,9 +3,11 @@ package net.gepafin.tendermanagement.web.rest.api.impl;
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import net.gepafin.tendermanagement.config.Translator;
|
||||
import net.gepafin.tendermanagement.constants.GepafinConstant;
|
||||
import net.gepafin.tendermanagement.model.request.ApplicationRequest;
|
||||
import net.gepafin.tendermanagement.model.request.ApplicationRequestBean;
|
||||
import net.gepafin.tendermanagement.model.response.ApplicationGetResponseBean;
|
||||
import net.gepafin.tendermanagement.model.response.ApplicationResponse;
|
||||
import net.gepafin.tendermanagement.model.response.ApplicationResponseBean;
|
||||
import net.gepafin.tendermanagement.model.response.FlowResponseBean;
|
||||
import net.gepafin.tendermanagement.model.util.Response;
|
||||
import net.gepafin.tendermanagement.service.ApplicationService;
|
||||
import net.gepafin.tendermanagement.web.rest.api.ApplicationApi;
|
||||
@@ -31,16 +33,16 @@ public class ApplicationApiController implements ApplicationApi {
|
||||
private ApplicationService applicationService;
|
||||
|
||||
@Override
|
||||
public ResponseEntity<Response<ApplicationResponseBean>> createApplication(HttpServletRequest request, ApplicationRequestBean applicationRequestBean, Long callId) {
|
||||
ApplicationResponseBean applicationResponseBean= applicationService.createApplication(request,applicationRequestBean,callId);
|
||||
public ResponseEntity<Response<ApplicationResponseBean>> createApplication(HttpServletRequest request, ApplicationRequestBean applicationRequestBean, Long formId) {
|
||||
ApplicationResponseBean applicationResponseBean= applicationService.createApplication(request,applicationRequestBean,formId);
|
||||
return ResponseEntity.status(HttpStatus.CREATED)
|
||||
.body(new Response<>(applicationResponseBean, Status.SUCCESS, Translator.toLocale(GepafinConstant.APPLICATION_CREATED_SUCCESS_MSG))); }
|
||||
|
||||
@Override
|
||||
public ResponseEntity<Response<ApplicationResponseBean>> getApplicationById(HttpServletRequest request,
|
||||
Long applicationId) {
|
||||
public ResponseEntity<Response<ApplicationGetResponseBean>> getApplicationByFormId(HttpServletRequest request
|
||||
, Long applicationId,Long formId) {
|
||||
log.info("Get Application by ID - Application ID: {}", applicationId);
|
||||
ApplicationResponseBean application = applicationService.getApplicationById(request,applicationId);
|
||||
ApplicationGetResponseBean application = applicationService.getApplicationByFormId(request,applicationId,formId);
|
||||
return ResponseEntity.status(HttpStatus.OK)
|
||||
.body(new Response<>(application, Status.SUCCESS, Translator.toLocale(GepafinConstant.GET_APPLICATION_SUCCESS_MSG)));
|
||||
}
|
||||
@@ -55,8 +57,14 @@ public class ApplicationApiController implements ApplicationApi {
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResponseEntity<Response<List<ApplicationResponseBean>>> getAllApplications(HttpServletRequest request) {
|
||||
List<ApplicationResponseBean> applications = applicationService.getAllApplications(request);
|
||||
public ResponseEntity<Response<ApplicationResponse>> createApplicationByCallId(HttpServletRequest request, ApplicationRequest applicationRequest, Long callId) {
|
||||
ApplicationResponse applicationResponseBean=applicationService.createApplication(request,applicationRequest,callId);
|
||||
return ResponseEntity.status(HttpStatus.CREATED)
|
||||
.body(new Response<>(applicationResponseBean, Status.SUCCESS, Translator.toLocale(GepafinConstant.APPLICATION_CREATED_SUCCESS_MSG)));
|
||||
}
|
||||
@Override
|
||||
public ResponseEntity<Response<List<ApplicationResponse>>> getAllApplications(HttpServletRequest request) {
|
||||
List<ApplicationResponse> applications = applicationService.getAllApplications(request);
|
||||
log.info("Get All Applications");
|
||||
return ResponseEntity.status(HttpStatus.OK)
|
||||
.body(new Response<>(applications, Status.SUCCESS, Translator.toLocale(GepafinConstant.GET_APPLICATION_SUCCESS_MSG)));
|
||||
|
||||
@@ -148,6 +148,7 @@ application.get.success=Application details fetched successfully.
|
||||
application.not.found=Application not found with the given ID.
|
||||
application.form.field.not.found=Application form field not found.
|
||||
Form.not.matches.to.call.initial.form=Form id does not matches to initial form id of call.
|
||||
application.already.exists=Application already exists for this call.
|
||||
|
||||
#Validation related messages
|
||||
validation.field.required=Field {0} is required.
|
||||
@@ -156,3 +157,4 @@ validation.field.max_length=Field {0} must be no more than {1} characters long.
|
||||
validation.field.pattern=Field {0} does not match the required pattern.
|
||||
validation.field.not_null=Field {0} must not be null.
|
||||
validation.field.not_empty=Field {0} must not be empty.
|
||||
|
||||
|
||||
@@ -144,6 +144,7 @@ application.get.success=Dettagli dell'applicazione recuperati con successo.
|
||||
application.not.found=Applicazione non trovata con l'ID fornito.
|
||||
application.form.field.not.found=Campo del modulo di domanda non trovato.
|
||||
Form.not.matches.to.call.initial.form=L'ID del modulo non corrisponde all'ID del modulo iniziale della chiamata.
|
||||
application.already.exists=L'applicazione esiste già per questa chiamata.
|
||||
|
||||
#Validation related messages
|
||||
validation.field.required=Il campo {0} � obbligatorio.
|
||||
|
||||
Reference in New Issue
Block a user