Implemented crud operation for form,form-field and form-template
This commit is contained in:
@@ -43,6 +43,26 @@ public class GepafinConstant {
|
||||
public static final String EMAIL_ALREADY_EXISTS = "email.already.exists";
|
||||
public static final String DOCUMENT_ID_NOT_FOUND="document.id.not.found";
|
||||
public static final String INVALID_DATE_MSG = "call.invalid.date";
|
||||
public static final String FORM_NOT_FOUND = "form.not.found";
|
||||
public static final String FORM_CREATED_SUCCESSFULLY = "form.created.successfully";
|
||||
public static final String FORM_UPDATED_SUCCESSFULLY = "form.updated.suucessfully";
|
||||
public static final String FORM_DELETED_SUCCESSFULLY = "form.deleted.successfully";
|
||||
public static final String FORM_FETCHED_SUCCESSFULLY = "form.fetched.successfully";
|
||||
public static final String REQUIRED_PARAMETER_NOT_FOUND_FOR_FORM = "required.parameter.not.found.for.form";
|
||||
public static final String FORM_FIELD_NOT_FOUND = "form.field.not.found";
|
||||
public static final String FORM_FIELD_CREATED_SUCCESSFULLY = "form.field.created.successfully";
|
||||
public static final String FORM_FIELD_UPDATED_SUCCESSFULLY = "form.field.updated.suucessfully";
|
||||
public static final String FORM_FIELD_DELETED_SUCCESSFULLY = "form.field.deleted.successfully";
|
||||
public static final String FORM_FIELD_FETCHED_SUCCESSFULLY = "form.field.fetched.successfully";
|
||||
public static final String REQUIRED_PARAMETER_NOT_FOUND_FOR_FORM_FIELD = "required.parameter.not.found.for.form.field";
|
||||
public static final String FORM_TEMPLATE_NOT_FOUND = "form.template.not.found";
|
||||
public static final String FORM_TEMPLATE_CREATED_SUCCESSFULLY = "form.template.created.successfully";
|
||||
public static final String FORM_TEMPLATE_UPDATED_SUCCESSFULLY = "form.template.updated.suucessfully";
|
||||
public static final String FORM_TEMPLATE_DELETED_SUCCESSFULLY = "form.template.deleted.successfully";
|
||||
public static final String FORM_TEMPLATE_FETCHED_SUCCESSFULLY = "form.template.fetched.successfully";
|
||||
public static final String REQUIRED_PARAMETER_NOT_FOUND_FOR_FORM_TEMPLATE = "required.parameter.not.found.for.form.template";
|
||||
public static final String CALL_NOT_FOUND="call.not.found";
|
||||
public static final String FORM_NOT_FOUND_FOR_CALL_ID="form.not.found.for.call.id";
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -366,6 +366,13 @@ public class CallDao {
|
||||
return createCallResponseBean;
|
||||
|
||||
}
|
||||
public CallEntity getCallEntityById(Long id){
|
||||
CallEntity callEntity=callRepository.findByIdAndStatusNotIn(id,List.of(CallTypeEnum.PUBLISH.getValue()));
|
||||
if(callEntity==null){
|
||||
throw new ResourceNotFoundException(Status.NOT_FOUND, Translator.toLocale(GepafinConstant.CALL_NOT_FOUND));
|
||||
}
|
||||
return callEntity;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
107
src/main/java/net/gepafin/tendermanagement/dao/FormDao.java
Normal file
107
src/main/java/net/gepafin/tendermanagement/dao/FormDao.java
Normal file
@@ -0,0 +1,107 @@
|
||||
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.FormEntity;
|
||||
import net.gepafin.tendermanagement.entities.LookUpDataEntity;
|
||||
import net.gepafin.tendermanagement.model.request.FormRequest;
|
||||
import net.gepafin.tendermanagement.model.response.FormResponseBean;
|
||||
import net.gepafin.tendermanagement.repositories.CallRepository;
|
||||
import net.gepafin.tendermanagement.repositories.FormRepository;
|
||||
import net.gepafin.tendermanagement.service.CallService;
|
||||
import net.gepafin.tendermanagement.service.FormService;
|
||||
import net.gepafin.tendermanagement.util.ObjectUtils;
|
||||
import net.gepafin.tendermanagement.web.rest.api.errors.CustomValidationException;
|
||||
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.stereotype.Component;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Component
|
||||
public class FormDao {
|
||||
|
||||
@Autowired
|
||||
private FormRepository formRepository;
|
||||
|
||||
@Autowired
|
||||
private CallService callService;
|
||||
|
||||
@Autowired
|
||||
private FormService formService;
|
||||
|
||||
public FormEntity saveFormEntity(FormEntity formEntity){
|
||||
formEntity=formRepository.save(formEntity);
|
||||
return formEntity;
|
||||
}
|
||||
|
||||
public FormEntity convertFormRequestToFormEntity(Long callId,FormRequest formRequest){
|
||||
FormEntity formEntity=new FormEntity();
|
||||
CallEntity callEntity=callService.getCallEntityById(callId);
|
||||
formEntity.setCall(callEntity);
|
||||
formEntity.setLabel(formRequest.getLabel());
|
||||
formEntity.setContent(formRequest.getContent());
|
||||
formEntity.setOrderNo(formRequest.getOrderNo());
|
||||
formEntity=saveFormEntity(formEntity);
|
||||
return formEntity;
|
||||
}
|
||||
public FormResponseBean convertFormEntityToFormResponseBean(FormEntity formEntity){
|
||||
FormResponseBean formResponseBean=new FormResponseBean();
|
||||
formResponseBean.setId(formEntity.getId());
|
||||
formResponseBean.setContent(formEntity.getContent());
|
||||
formResponseBean.setLabel(formEntity.getLabel());
|
||||
formResponseBean.setCallId(formEntity.getCall().getId());
|
||||
formResponseBean.setOrderNo(formEntity.getOrderNo());
|
||||
formResponseBean.setCreatedDate(formEntity.getCreatedDate());
|
||||
formResponseBean.setUpdatedDate(formEntity.getUpdatedDate());
|
||||
return formResponseBean;
|
||||
}
|
||||
public FormResponseBean createForm(Long callId,FormRequest formRequest){
|
||||
validateForm(formRequest);
|
||||
FormEntity formEntity=convertFormRequestToFormEntity(callId,formRequest);
|
||||
return convertFormEntityToFormResponseBean(formEntity);
|
||||
}
|
||||
public void validateForm(FormRequest formRequest){
|
||||
if(formRequest.getContent()==null || formRequest.getLabel()==null || (formRequest.getOrderNo() == null || formRequest.getOrderNo() <= 0)){
|
||||
throw new CustomValidationException(Status.VALIDATION_ERROR, Translator.toLocale(GepafinConstant.REQUIRED_PARAMETER_NOT_FOUND_FOR_FORM));
|
||||
}
|
||||
}
|
||||
public FormResponseBean updateForm(Long formId, FormRequest formRequest){
|
||||
FormEntity formEntity = formService.getFormEntityById(formId);
|
||||
ObjectUtils.setIfUpdated(formEntity::getLabel,formEntity::setLabel,formRequest.getLabel());
|
||||
ObjectUtils.setIfUpdated(formEntity::getContent,formEntity::setContent,formRequest.getContent());
|
||||
if(formRequest.getOrderNo()!=null && formRequest.getOrderNo() > 0) {
|
||||
ObjectUtils.setIfUpdated(formEntity::getOrderNo, formEntity::setOrderNo, formRequest.getOrderNo());
|
||||
}
|
||||
formEntity=saveFormEntity(formEntity);
|
||||
return convertFormEntityToFormResponseBean(formEntity);
|
||||
}
|
||||
|
||||
public FormEntity getFormEntity(Long formId) {
|
||||
FormEntity formEntity = formRepository.findById(formId)
|
||||
.orElseThrow(() -> new ResourceNotFoundException(Status.NOT_FOUND, Translator.toLocale(GepafinConstant.FORM_NOT_FOUND)));
|
||||
return formEntity;
|
||||
}
|
||||
|
||||
public FormResponseBean getFormEntityById(Long formId) {
|
||||
FormEntity formEntity = formService.getFormEntityById(formId);
|
||||
return convertFormEntityToFormResponseBean(formEntity);
|
||||
}
|
||||
public void deleteFormById(Long formId){
|
||||
FormEntity formEntity=formService.getFormEntityById(formId);
|
||||
formRepository.delete(formEntity);
|
||||
}
|
||||
public List<FormResponseBean> getFormsByCallId(Long callId){
|
||||
List<FormEntity> formEntities=formRepository.findByCallId(callId);
|
||||
if(formEntities.isEmpty()){
|
||||
throw new ResourceNotFoundException(Status.NOT_FOUND, Translator.toLocale(GepafinConstant.FORM_NOT_FOUND_FOR_CALL_ID));
|
||||
}
|
||||
List<FormResponseBean> formResponseBeanList = formEntities.stream()
|
||||
.map(req -> convertFormEntityToFormResponseBean(req))
|
||||
.collect(Collectors.toList());
|
||||
return formResponseBeanList;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,87 @@
|
||||
package net.gepafin.tendermanagement.dao;
|
||||
|
||||
import net.gepafin.tendermanagement.config.Translator;
|
||||
import net.gepafin.tendermanagement.constants.GepafinConstant;
|
||||
import net.gepafin.tendermanagement.entities.FormFieldEntity;
|
||||
import net.gepafin.tendermanagement.model.request.FormFieldRequest;
|
||||
import net.gepafin.tendermanagement.model.response.FormFieldResponseBean;
|
||||
import net.gepafin.tendermanagement.repositories.FormFieldRepository;
|
||||
import net.gepafin.tendermanagement.service.FormFieldService;
|
||||
import net.gepafin.tendermanagement.util.ObjectUtils;
|
||||
import net.gepafin.tendermanagement.web.rest.api.errors.CustomValidationException;
|
||||
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.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class FormFieldDao {
|
||||
|
||||
@Autowired
|
||||
private FormFieldRepository formFieldRepository;
|
||||
|
||||
@Autowired
|
||||
private FormFieldService formFieldService;
|
||||
|
||||
|
||||
public FormFieldEntity convertFormFieldRequestToFormFieldResponseBean(FormFieldRequest formFieldRequest) {
|
||||
FormFieldEntity formFieldEntity = new FormFieldEntity();
|
||||
formFieldEntity.setLabel(formFieldRequest.getLabel());
|
||||
formFieldEntity.setDefinition(formFieldRequest.getDefinition());
|
||||
formFieldEntity.setIsActive(true);
|
||||
if(formFieldRequest.getIsActive()!=null) {
|
||||
formFieldEntity.setIsActive(formFieldRequest.getIsActive());
|
||||
}
|
||||
formFieldEntity = saveFormFieldEntity(formFieldEntity);
|
||||
return formFieldEntity;
|
||||
}
|
||||
|
||||
public FormFieldResponseBean convertFormFieldEntityToFormFieldResponseBean(FormFieldEntity formFieldEntity) {
|
||||
FormFieldResponseBean formFieldResponseBean = new FormFieldResponseBean();
|
||||
formFieldResponseBean.setId(formFieldEntity.getId());
|
||||
formFieldResponseBean.setDefinition(formFieldEntity.getDefinition());
|
||||
formFieldResponseBean.setLabel(formFieldEntity.getLabel());
|
||||
formFieldResponseBean.setIsActive(formFieldEntity.getIsActive());
|
||||
formFieldResponseBean.setCreatedDate(formFieldEntity.getCreatedDate());
|
||||
formFieldResponseBean.setUpdatedDate(formFieldEntity.getUpdatedDate());
|
||||
return formFieldResponseBean;
|
||||
}
|
||||
|
||||
public FormFieldEntity saveFormFieldEntity(FormFieldEntity formFieldEntity) {
|
||||
formFieldEntity = formFieldRepository.save(formFieldEntity);
|
||||
return formFieldEntity;
|
||||
}
|
||||
|
||||
public void validateFormField(FormFieldRequest formFieldRequest) {
|
||||
if (formFieldRequest.getDefinition() == null || formFieldRequest.getLabel() == null) {
|
||||
throw new CustomValidationException(Status.VALIDATION_ERROR, Translator.toLocale(GepafinConstant.REQUIRED_PARAMETER_NOT_FOUND_FOR_FORM_FIELD));
|
||||
}
|
||||
}
|
||||
public FormFieldResponseBean createFormField(FormFieldRequest formFieldRequest){
|
||||
validateFormField(formFieldRequest);
|
||||
FormFieldEntity formFieldEntity=convertFormFieldRequestToFormFieldResponseBean(formFieldRequest);
|
||||
return convertFormFieldEntityToFormFieldResponseBean(formFieldEntity);
|
||||
}
|
||||
public FormFieldResponseBean updateFormField(Long formFieldId,FormFieldRequest formFieldRequest){
|
||||
FormFieldEntity formFieldEntity = formFieldService.getFormFieldEntityById(formFieldId);
|
||||
ObjectUtils.setIfUpdated(formFieldEntity::getLabel,formFieldEntity::setLabel,formFieldRequest.getLabel());
|
||||
ObjectUtils.setIfUpdated(formFieldEntity::getDefinition,formFieldEntity::setDefinition,formFieldRequest.getDefinition());
|
||||
ObjectUtils.setIfUpdated(formFieldEntity::getIsActive,formFieldEntity::setIsActive,formFieldRequest.getIsActive());
|
||||
formFieldEntity=saveFormFieldEntity(formFieldEntity);
|
||||
return convertFormFieldEntityToFormFieldResponseBean(formFieldEntity);
|
||||
}
|
||||
public FormFieldEntity getFormFieldEntity(Long formFieldId) {
|
||||
FormFieldEntity formFieldEntity=formFieldRepository.findById(formFieldId)
|
||||
.orElseThrow(() -> new ResourceNotFoundException(Status.NOT_FOUND, Translator.toLocale(GepafinConstant.FORM_FIELD_NOT_FOUND)));
|
||||
return formFieldEntity;
|
||||
}
|
||||
|
||||
public FormFieldResponseBean getFormFieldEntityById(Long formFieldId) {
|
||||
FormFieldEntity formEntity = formFieldService.getFormFieldEntityById(formFieldId);
|
||||
return convertFormFieldEntityToFormFieldResponseBean(formEntity);
|
||||
}
|
||||
public void deleteFormById(Long formFieldId){
|
||||
FormFieldEntity formEntity=formFieldService.getFormFieldEntityById(formFieldId);
|
||||
formFieldRepository.delete(formEntity);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
package net.gepafin.tendermanagement.dao;
|
||||
|
||||
import net.gepafin.tendermanagement.config.Translator;
|
||||
import net.gepafin.tendermanagement.constants.GepafinConstant;
|
||||
import net.gepafin.tendermanagement.entities.FormTemplateEntity;
|
||||
import net.gepafin.tendermanagement.model.request.FormTemplateRequest;
|
||||
import net.gepafin.tendermanagement.model.response.FormTemplateResponseBean;
|
||||
import net.gepafin.tendermanagement.repositories.FormTemplateRepository;
|
||||
import net.gepafin.tendermanagement.service.FormTemplateService;
|
||||
import net.gepafin.tendermanagement.util.ObjectUtils;
|
||||
import net.gepafin.tendermanagement.web.rest.api.errors.CustomValidationException;
|
||||
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.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class FormTemplateDao {
|
||||
|
||||
@Autowired
|
||||
private FormTemplateRepository formTemplateRepository;
|
||||
|
||||
@Autowired
|
||||
private FormTemplateService formTemplateService;
|
||||
|
||||
|
||||
public FormTemplateEntity convertFormTemplateRequestToFormTemplateRequest(FormTemplateRequest formTemplateRequest){
|
||||
FormTemplateEntity formTemplateEntity=new FormTemplateEntity();
|
||||
formTemplateEntity.setContent(formTemplateRequest.getContent());
|
||||
formTemplateEntity.setLabel(formTemplateRequest.getLabel());
|
||||
formTemplateEntity=saveFormTemplateEntity(formTemplateEntity);
|
||||
return formTemplateEntity;
|
||||
}
|
||||
public FormTemplateEntity saveFormTemplateEntity(FormTemplateEntity formTemplateEntity){
|
||||
formTemplateEntity=formTemplateRepository.save(formTemplateEntity);
|
||||
return formTemplateEntity;
|
||||
}
|
||||
public FormTemplateResponseBean convertFormTemplateEntityToFormTemplateResponseBean(FormTemplateEntity formTemplateEntity){
|
||||
FormTemplateResponseBean formTemplateResponseBean=new FormTemplateResponseBean();
|
||||
formTemplateResponseBean.setId(formTemplateEntity.getId());
|
||||
formTemplateResponseBean.setContent(formTemplateEntity.getContent());
|
||||
formTemplateResponseBean.setLabel(formTemplateEntity.getLabel());
|
||||
formTemplateResponseBean.setCreatedDate(formTemplateEntity.getCreatedDate());
|
||||
formTemplateResponseBean.setUpdatedDate(formTemplateEntity.getUpdatedDate());
|
||||
return formTemplateResponseBean;
|
||||
}
|
||||
|
||||
public FormTemplateResponseBean createFormTemplate(FormTemplateRequest formTemplateRequest){
|
||||
validateFormTemplate(formTemplateRequest);
|
||||
FormTemplateEntity formTemplateEntity=convertFormTemplateRequestToFormTemplateRequest(formTemplateRequest);
|
||||
return convertFormTemplateEntityToFormTemplateResponseBean(formTemplateEntity);
|
||||
}
|
||||
public void validateFormTemplate(FormTemplateRequest formTemplateRequest){
|
||||
if(formTemplateRequest.getContent()==null || formTemplateRequest.getLabel()==null ){
|
||||
throw new CustomValidationException(Status.VALIDATION_ERROR, Translator.toLocale(GepafinConstant.REQUIRED_PARAMETER_NOT_FOUND_FOR_FORM_TEMPLATE));
|
||||
}
|
||||
}
|
||||
public FormTemplateResponseBean updateFormTemplate(Long formTemplateId,FormTemplateRequest formTemplateRequest){
|
||||
FormTemplateEntity formTemplateEntity = formTemplateService.getFormEntityById(formTemplateId);
|
||||
ObjectUtils.setIfUpdated(formTemplateEntity::getLabel,formTemplateEntity::setLabel,formTemplateRequest.getLabel());
|
||||
ObjectUtils.setIfUpdated(formTemplateEntity::getContent,formTemplateEntity::setContent,formTemplateRequest.getContent());
|
||||
formTemplateEntity=saveFormTemplateEntity(formTemplateEntity);
|
||||
return convertFormTemplateEntityToFormTemplateResponseBean(formTemplateEntity);
|
||||
}
|
||||
|
||||
public FormTemplateEntity getFormTemplateEntity(Long formTemplateId) {
|
||||
FormTemplateEntity formTemplateEntity = formTemplateRepository.findById(formTemplateId)
|
||||
.orElseThrow(() -> new ResourceNotFoundException(Status.NOT_FOUND, Translator.toLocale(GepafinConstant.FORM_TEMPLATE_NOT_FOUND)));
|
||||
return formTemplateEntity;
|
||||
}
|
||||
|
||||
public FormTemplateResponseBean getFormTemplateEntityById(Long formTemplateId) {
|
||||
FormTemplateEntity formTemplateEntity = formTemplateService.getFormEntityById(formTemplateId);
|
||||
return convertFormTemplateEntityToFormTemplateResponseBean(formTemplateEntity);
|
||||
}
|
||||
public void deleteFormTemplateById(Long formTemplateId){
|
||||
FormTemplateEntity formTemplateEntity=formTemplateService.getFormEntityById(formTemplateId);
|
||||
formTemplateRepository.delete(formTemplateEntity);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
package net.gepafin.tendermanagement.entities;
|
||||
|
||||
import jakarta.persistence.*;
|
||||
import lombok.Data;
|
||||
import lombok.Builder;
|
||||
|
||||
@Entity
|
||||
@Table(name = "FORM")
|
||||
@Data
|
||||
@Builder
|
||||
public class FormEntity extends BaseEntity{
|
||||
|
||||
@Column(name = "LABEL", length = 255)
|
||||
private String label;
|
||||
|
||||
@ManyToOne
|
||||
@JoinColumn(name = "CALL_ID", foreignKey = @ForeignKey(name = "fk_call_form"))
|
||||
private CallEntity call;
|
||||
|
||||
@Column(name = "CONTENT", length = 255)
|
||||
private String content;
|
||||
|
||||
@Column(name = "ORDER_NO")
|
||||
private Integer orderNo;
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package net.gepafin.tendermanagement.entities;
|
||||
|
||||
import jakarta.persistence.*;
|
||||
import lombok.Data;
|
||||
import lombok.Builder;
|
||||
|
||||
@Entity
|
||||
@Table(name = "FORM_FIELD")
|
||||
@Data
|
||||
@Builder
|
||||
public class FormFieldEntity extends BaseEntity{
|
||||
|
||||
@Column(name = "LABEL", length = 255)
|
||||
private String label;
|
||||
|
||||
@Column(name = "DEFINITION", length = 255)
|
||||
private String definition;
|
||||
|
||||
@Column(name = "IS_ACTIVE")
|
||||
private Boolean isActive;
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package net.gepafin.tendermanagement.entities;
|
||||
|
||||
import jakarta.persistence.*;
|
||||
import lombok.Data;
|
||||
import lombok.Builder;
|
||||
|
||||
@Entity
|
||||
@Table(name = "FORM_TEMPLATE")
|
||||
@Data
|
||||
@Builder
|
||||
public class FormTemplateEntity extends BaseEntity{
|
||||
|
||||
@Column(name = "LABEL", length = 255)
|
||||
private String label;
|
||||
|
||||
@Column(name = "CONTENT", length = 255)
|
||||
private String content;
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
package net.gepafin.tendermanagement.model.request;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class FormFieldRequest {
|
||||
|
||||
private String label;
|
||||
|
||||
private String definition;
|
||||
|
||||
private Boolean isActive;
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
package net.gepafin.tendermanagement.model.request;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class FormRequest {
|
||||
|
||||
private String label;
|
||||
|
||||
private String content;
|
||||
|
||||
private Integer orderNo;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
package net.gepafin.tendermanagement.model.request;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class FormTemplateRequest {
|
||||
|
||||
private String label;
|
||||
|
||||
private String content;
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
package net.gepafin.tendermanagement.model.response;
|
||||
|
||||
import lombok.Data;
|
||||
import net.gepafin.tendermanagement.model.BaseBean;
|
||||
|
||||
@Data
|
||||
public class FormFieldResponseBean extends BaseBean {
|
||||
|
||||
private String label;
|
||||
|
||||
private String definition;
|
||||
|
||||
private Boolean isActive;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package net.gepafin.tendermanagement.model.response;
|
||||
|
||||
import lombok.Data;
|
||||
import net.gepafin.tendermanagement.model.BaseBean;
|
||||
|
||||
@Data
|
||||
public class FormResponseBean extends BaseBean {
|
||||
|
||||
private String label;
|
||||
|
||||
private Long callId;
|
||||
|
||||
private String content;
|
||||
|
||||
private Integer orderNo;
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
package net.gepafin.tendermanagement.model.response;
|
||||
|
||||
import lombok.Data;
|
||||
import net.gepafin.tendermanagement.model.BaseBean;
|
||||
|
||||
@Data
|
||||
public class FormTemplateResponseBean extends BaseBean {
|
||||
|
||||
private String label;
|
||||
|
||||
private String content;
|
||||
}
|
||||
@@ -3,8 +3,11 @@ import net.gepafin.tendermanagement.entities.CallEntity;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Repository
|
||||
public interface CallRepository extends JpaRepository<CallEntity, Long> {
|
||||
|
||||
public CallEntity findByIdAndStatusNotIn(Long id, List<String> status);
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
package net.gepafin.tendermanagement.repositories;
|
||||
|
||||
import net.gepafin.tendermanagement.entities.FormFieldEntity;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
@Repository
|
||||
public interface FormFieldRepository extends JpaRepository<FormFieldEntity, Long> {
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
package net.gepafin.tendermanagement.repositories;
|
||||
|
||||
import net.gepafin.tendermanagement.entities.FormEntity;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Repository
|
||||
public interface FormRepository extends JpaRepository<FormEntity,Long> {
|
||||
|
||||
List<FormEntity> findByCallId(Long callId);
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
package net.gepafin.tendermanagement.repositories;
|
||||
|
||||
import net.gepafin.tendermanagement.entities.FormTemplateEntity;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
@Repository
|
||||
public interface FormTemplateRepository extends JpaRepository<FormTemplateEntity,Long> {
|
||||
}
|
||||
@@ -1,6 +1,7 @@
|
||||
package net.gepafin.tendermanagement.service;
|
||||
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import net.gepafin.tendermanagement.entities.CallEntity;
|
||||
import net.gepafin.tendermanagement.model.request.CreateCallRequestStep1;
|
||||
import net.gepafin.tendermanagement.model.request.CreateCallRequestStep2;
|
||||
import net.gepafin.tendermanagement.model.response.CreateCallResponseBean;
|
||||
@@ -11,4 +12,5 @@ public interface CallService {
|
||||
|
||||
CreateCallResponseBean createCallStep2(HttpServletRequest request, CreateCallRequestStep2 createCallRequest);
|
||||
|
||||
public CallEntity getCallEntityById(Long id);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
package net.gepafin.tendermanagement.service;
|
||||
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import net.gepafin.tendermanagement.entities.FormFieldEntity;
|
||||
import net.gepafin.tendermanagement.model.request.FormFieldRequest;
|
||||
import net.gepafin.tendermanagement.model.response.FormFieldResponseBean;
|
||||
|
||||
public interface FormFieldService {
|
||||
|
||||
public FormFieldResponseBean createFormField(HttpServletRequest request, FormFieldRequest formFieldRequest);
|
||||
|
||||
public FormFieldResponseBean updateFormField(HttpServletRequest request, Long formFieldId, FormFieldRequest formFieldRequest);
|
||||
|
||||
public FormFieldResponseBean getFormFieldById(HttpServletRequest request, Long formFieldId);
|
||||
|
||||
public void deleteFormField(HttpServletRequest request, Long formFieldId);
|
||||
|
||||
public FormFieldEntity getFormFieldEntityById(Long id);
|
||||
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
package net.gepafin.tendermanagement.service;
|
||||
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import net.gepafin.tendermanagement.entities.FormEntity;
|
||||
import net.gepafin.tendermanagement.model.request.FormRequest;
|
||||
import net.gepafin.tendermanagement.model.response.FormResponseBean;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface FormService {
|
||||
|
||||
public FormResponseBean createForm(HttpServletRequest request,Long callId,FormRequest formRequest);
|
||||
|
||||
public FormResponseBean updateForm(HttpServletRequest request, Long formId, FormRequest formRequest);
|
||||
|
||||
public FormResponseBean getFormById(HttpServletRequest request, Long formId);
|
||||
|
||||
public void deleteForm(HttpServletRequest request, Long formId);
|
||||
|
||||
public FormEntity getFormEntityById(Long id);
|
||||
|
||||
public List<FormResponseBean> getFormsByCallId(HttpServletRequest request,Long callId);
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package net.gepafin.tendermanagement.service;
|
||||
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import net.gepafin.tendermanagement.entities.FormTemplateEntity;
|
||||
import net.gepafin.tendermanagement.model.request.FormTemplateRequest;
|
||||
import net.gepafin.tendermanagement.model.response.FormTemplateResponseBean;
|
||||
|
||||
public interface FormTemplateService {
|
||||
|
||||
public FormTemplateResponseBean createTemplateForm(HttpServletRequest request, FormTemplateRequest formTemplateRequest);
|
||||
|
||||
public FormTemplateResponseBean updateTemplateForm(HttpServletRequest request, Long formTemplateId, FormTemplateRequest formTemplateRequest);
|
||||
|
||||
public FormTemplateResponseBean getFormTemplateById(HttpServletRequest request, Long formTemplateId);
|
||||
|
||||
public void deleteFormTemplate(HttpServletRequest request, Long formTemplateId);
|
||||
|
||||
public FormTemplateEntity getFormEntityById(Long id);
|
||||
|
||||
}
|
||||
@@ -3,6 +3,7 @@ package net.gepafin.tendermanagement.service.impl;
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import net.gepafin.tendermanagement.config.jwt.TokenProvider;
|
||||
import net.gepafin.tendermanagement.dao.CallDao;
|
||||
import net.gepafin.tendermanagement.entities.CallEntity;
|
||||
import net.gepafin.tendermanagement.model.request.CreateCallRequestStep1;
|
||||
import net.gepafin.tendermanagement.model.request.CreateCallRequestStep2;
|
||||
import net.gepafin.tendermanagement.model.response.CreateCallResponseBean;
|
||||
@@ -33,4 +34,9 @@ public class CallServiceImpl implements CallService {
|
||||
Map<String, Object> userInfo= tokenProvider.getUserInfoAndUserIdFromToken(request);
|
||||
return callDao.createCallStep2(createCallRequest, Long.parseLong(userInfo.get("userId").toString()));
|
||||
}
|
||||
|
||||
@Override
|
||||
public CallEntity getCallEntityById(Long id){
|
||||
return callDao.getCallEntityById(id);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
package net.gepafin.tendermanagement.service.impl;
|
||||
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import net.gepafin.tendermanagement.dao.FormFieldDao;
|
||||
import net.gepafin.tendermanagement.entities.FormFieldEntity;
|
||||
import net.gepafin.tendermanagement.model.request.FormFieldRequest;
|
||||
import net.gepafin.tendermanagement.model.response.FormFieldResponseBean;
|
||||
import net.gepafin.tendermanagement.service.FormFieldService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
public class FormFieldServiceImpl implements FormFieldService {
|
||||
|
||||
@Autowired
|
||||
private FormFieldDao formFieldDao;
|
||||
|
||||
@Override
|
||||
public FormFieldResponseBean createFormField(HttpServletRequest request, FormFieldRequest formFieldRequest) {
|
||||
return formFieldDao.createFormField(formFieldRequest);
|
||||
}
|
||||
|
||||
@Override
|
||||
public FormFieldResponseBean updateFormField(HttpServletRequest request, Long formFieldId, FormFieldRequest formFieldRequest) {
|
||||
return formFieldDao.updateFormField(formFieldId,formFieldRequest);
|
||||
}
|
||||
|
||||
@Override
|
||||
public FormFieldResponseBean getFormFieldById(HttpServletRequest request, Long formFieldId) {
|
||||
return formFieldDao.getFormFieldEntityById(formFieldId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteFormField(HttpServletRequest request, Long formFieldId) {
|
||||
formFieldDao.deleteFormById(formFieldId);
|
||||
return;
|
||||
}
|
||||
|
||||
@Override
|
||||
public FormFieldEntity getFormFieldEntityById(Long id) {
|
||||
return formFieldDao.getFormFieldEntity(id);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
package net.gepafin.tendermanagement.service.impl;
|
||||
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import net.gepafin.tendermanagement.dao.FormDao;
|
||||
import net.gepafin.tendermanagement.entities.FormEntity;
|
||||
import net.gepafin.tendermanagement.model.request.FormRequest;
|
||||
import net.gepafin.tendermanagement.model.response.FormResponseBean;
|
||||
import net.gepafin.tendermanagement.service.FormService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
public class FormServiceImpl implements FormService {
|
||||
|
||||
@Autowired
|
||||
private FormDao formDao;
|
||||
|
||||
@Override
|
||||
public FormResponseBean createForm(HttpServletRequest request,Long callId, FormRequest formRequest) {
|
||||
return formDao.createForm(callId,formRequest);
|
||||
}
|
||||
|
||||
@Override
|
||||
public FormResponseBean updateForm(HttpServletRequest request, Long formId, FormRequest formRequest) {
|
||||
return formDao.updateForm(formId,formRequest);
|
||||
}
|
||||
|
||||
@Override
|
||||
public FormResponseBean getFormById(HttpServletRequest request, Long formId) {
|
||||
return formDao.getFormEntityById(formId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteForm(HttpServletRequest request, Long formId) {
|
||||
formDao.deleteFormById(formId);
|
||||
return;
|
||||
}
|
||||
|
||||
@Override
|
||||
public FormEntity getFormEntityById(Long id) {
|
||||
return formDao.getFormEntity(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<FormResponseBean> getFormsByCallId(HttpServletRequest request, Long callId) {
|
||||
return formDao.getFormsByCallId(callId);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
package net.gepafin.tendermanagement.service.impl;
|
||||
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import net.gepafin.tendermanagement.dao.FormTemplateDao;
|
||||
import net.gepafin.tendermanagement.entities.FormTemplateEntity;
|
||||
import net.gepafin.tendermanagement.model.request.FormTemplateRequest;
|
||||
import net.gepafin.tendermanagement.model.response.FormTemplateResponseBean;
|
||||
import net.gepafin.tendermanagement.service.FormTemplateService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
public class FormTemplateServiceImpl implements FormTemplateService {
|
||||
|
||||
@Autowired
|
||||
private FormTemplateDao formTemplateDao;
|
||||
|
||||
@Override
|
||||
public FormTemplateResponseBean createTemplateForm(HttpServletRequest request, FormTemplateRequest formTemplateRequest) {
|
||||
return formTemplateDao.createFormTemplate(formTemplateRequest);
|
||||
}
|
||||
|
||||
@Override
|
||||
public FormTemplateResponseBean updateTemplateForm(HttpServletRequest request, Long formTemplateId, FormTemplateRequest formTemplateRequest) {
|
||||
return formTemplateDao.updateFormTemplate(formTemplateId,formTemplateRequest);
|
||||
}
|
||||
|
||||
@Override
|
||||
public FormTemplateResponseBean getFormTemplateById(HttpServletRequest request, Long formTemplateId) {
|
||||
return formTemplateDao.getFormTemplateEntityById(formTemplateId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteFormTemplate(HttpServletRequest request, Long formTemplateId) {
|
||||
formTemplateDao.deleteFormTemplateById(formTemplateId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public FormTemplateEntity getFormEntityById(Long id) {
|
||||
return formTemplateDao.getFormTemplateEntity(id);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package net.gepafin.tendermanagement.util;
|
||||
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import net.gepafin.tendermanagement.config.jwt.TokenProvider;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
@Component
|
||||
public class Validator {
|
||||
|
||||
@Autowired
|
||||
private TokenProvider tokenProvider;
|
||||
|
||||
public Map<String, Object> getUserInfoFromToken(HttpServletRequest request) {
|
||||
return tokenProvider.getUserInfoAndUserIdFromToken(request);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,96 @@
|
||||
package net.gepafin.tendermanagement.web.rest.api;
|
||||
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.media.Content;
|
||||
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.FormRequest;
|
||||
import net.gepafin.tendermanagement.model.response.FormResponseBean;
|
||||
import net.gepafin.tendermanagement.model.util.Response;
|
||||
import net.gepafin.tendermanagement.web.rest.api.errors.ErrorConstants;
|
||||
import org.springframework.http.MediaType;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
public interface FormApi {
|
||||
|
||||
@Operation(summary = "Api to create form",
|
||||
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 = MediaType.APPLICATION_JSON_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE)
|
||||
public ResponseEntity<Response<FormResponseBean>> createForm(HttpServletRequest request,@Parameter(description = "The call ID", required = true) @PathVariable("callId") Long callId,
|
||||
@Parameter(description = "form request object", required = true)
|
||||
@Valid @RequestBody FormRequest formRequest);
|
||||
|
||||
|
||||
@Operation(summary = "Api to update form",
|
||||
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) })) })
|
||||
@PutMapping(value = "/{formId}",
|
||||
produces = { "application/json" })
|
||||
ResponseEntity<Response<FormResponseBean>> updateForm(HttpServletRequest request,
|
||||
@Parameter(description = "The form ID", required = true) @PathVariable("formId") Long formId,
|
||||
@Parameter(description = "form request object", required = true) @Valid @RequestBody FormRequest formRequest);
|
||||
|
||||
@Operation(summary = "Api to get form by id",
|
||||
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) })) })
|
||||
@GetMapping(value = "/{formId}",
|
||||
produces = { "application/json" })
|
||||
ResponseEntity<Response<FormResponseBean>> getFormById(HttpServletRequest request,
|
||||
@Parameter(description = "The form ID", required = true) @PathVariable("formId") Long formId);
|
||||
|
||||
|
||||
@Operation(summary = "Api to delete form",
|
||||
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) })) })
|
||||
@DeleteMapping(value = "/{formId}")
|
||||
ResponseEntity<Response<Void>> deleteForm(HttpServletRequest request,
|
||||
@Parameter(description = "The form ID", required = true) @PathVariable("formId") Long formId);
|
||||
|
||||
@Operation(summary = "Api to get forms by callId",
|
||||
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) })) })
|
||||
@GetMapping(value = "/call/{callId}",
|
||||
produces = { "application/json" })
|
||||
ResponseEntity<Response<List<FormResponseBean>>> getFormsByCallId(HttpServletRequest request,
|
||||
@Parameter(description = "The call ID", required = true) @PathVariable("callId") Long callId);
|
||||
|
||||
}
|
||||
@@ -0,0 +1,78 @@
|
||||
package net.gepafin.tendermanagement.web.rest.api;
|
||||
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.media.Content;
|
||||
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.FormFieldRequest;
|
||||
import net.gepafin.tendermanagement.model.response.FormFieldResponseBean;
|
||||
import net.gepafin.tendermanagement.model.util.Response;
|
||||
import net.gepafin.tendermanagement.web.rest.api.errors.ErrorConstants;
|
||||
import org.springframework.http.MediaType;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
public interface FormFieldApi {
|
||||
|
||||
@Operation(summary = "Api to create form field",
|
||||
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 = "", produces = MediaType.APPLICATION_JSON_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE)
|
||||
public ResponseEntity<Response<FormFieldResponseBean>> createFormField(HttpServletRequest request,
|
||||
@Parameter(description = "form field request object", required = true)
|
||||
@Valid @RequestBody FormFieldRequest formFieldRequest);
|
||||
|
||||
|
||||
@Operation(summary = "Api to update form field",
|
||||
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) })) })
|
||||
@PutMapping(value = "/{formFieldId}",
|
||||
produces = { "application/json" })
|
||||
ResponseEntity<Response<FormFieldResponseBean>> updateFormField(HttpServletRequest request,
|
||||
@Parameter(description = "The form field ID", required = true) @PathVariable("formFieldId") Long formFieldId,
|
||||
@Parameter(description = "form field request object", required = true) @Valid @RequestBody FormFieldRequest formFieldRequest);
|
||||
|
||||
@Operation(summary = "Api to get form field by id",
|
||||
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) })) })
|
||||
@GetMapping(value = "/{formFieldId}",
|
||||
produces = { "application/json" })
|
||||
ResponseEntity<Response<FormFieldResponseBean>> getFormFieldById(HttpServletRequest request,
|
||||
@Parameter(description = "The form field ID", required = true) @PathVariable("formFieldId") Long formFieldId);
|
||||
|
||||
|
||||
@Operation(summary = "Api to delete form field",
|
||||
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) })) })
|
||||
@DeleteMapping(value = "/{formFieldId}")
|
||||
ResponseEntity<Response<Void>> deleteForm(HttpServletRequest request,
|
||||
@Parameter(description = "The form field ID", required = true) @PathVariable("formFieldId") Long formFieldId);
|
||||
}
|
||||
@@ -0,0 +1,78 @@
|
||||
package net.gepafin.tendermanagement.web.rest.api;
|
||||
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.media.Content;
|
||||
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.FormTemplateRequest;
|
||||
import net.gepafin.tendermanagement.model.response.FormTemplateResponseBean;
|
||||
import net.gepafin.tendermanagement.model.util.Response;
|
||||
import net.gepafin.tendermanagement.web.rest.api.errors.ErrorConstants;
|
||||
import org.springframework.http.MediaType;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
public interface FormTemplateApi {
|
||||
|
||||
@Operation(summary = "Api to create form template",
|
||||
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 = "", produces = MediaType.APPLICATION_JSON_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE)
|
||||
public ResponseEntity<Response<FormTemplateResponseBean>> createFormTemplate(HttpServletRequest request,
|
||||
@Parameter(description = "form template request object", required = true)
|
||||
@Valid @RequestBody FormTemplateRequest formTemplateRequest);
|
||||
|
||||
|
||||
@Operation(summary = "Api to update form template",
|
||||
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) })) })
|
||||
@PutMapping(value = "/{formTemplateId}",
|
||||
produces = { "application/json" })
|
||||
ResponseEntity<Response<FormTemplateResponseBean>> updateFormTemplate(HttpServletRequest request,
|
||||
@Parameter(description = "The form template ID", required = true) @PathVariable("formTemplateId") Long formTemplateId,
|
||||
@Parameter(description = "form template request object", required = true) @Valid @RequestBody FormTemplateRequest formTemplateRequest);
|
||||
|
||||
@Operation(summary = "Api to get form template by id",
|
||||
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) })) })
|
||||
@GetMapping(value = "/{formTemplateId}",
|
||||
produces = { "application/json" })
|
||||
ResponseEntity<Response<FormTemplateResponseBean>> getFormTemplateById(HttpServletRequest request,
|
||||
@Parameter(description = "The form template ID", required = true) @PathVariable("formTemplateId") Long formTemplateId);
|
||||
|
||||
|
||||
@Operation(summary = "Api to delete form template",
|
||||
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) })) })
|
||||
@DeleteMapping(value = "/{formTemplateId}")
|
||||
ResponseEntity<Response<Void>> deleteFormTemplate(HttpServletRequest request,
|
||||
@Parameter(description = "The form template ID", required = true) @PathVariable("formTemplateId") Long formTemplateId);
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
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.FormRequest;
|
||||
import net.gepafin.tendermanagement.model.response.FormResponseBean;
|
||||
import net.gepafin.tendermanagement.model.util.Response;
|
||||
import net.gepafin.tendermanagement.service.FormService;
|
||||
import net.gepafin.tendermanagement.web.rest.api.FormApi;
|
||||
import net.gepafin.tendermanagement.web.rest.api.errors.Status;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("${openapi.gepafin.base-path:/v1/form}")
|
||||
public class FormApiController implements FormApi {
|
||||
|
||||
@Autowired
|
||||
private FormService formService;
|
||||
|
||||
@Override
|
||||
public ResponseEntity<Response<FormResponseBean>> createForm(HttpServletRequest request,Long callId, FormRequest formRequest) {
|
||||
FormResponseBean formResponseBean = formService.createForm(request,callId, formRequest);
|
||||
return ResponseEntity.status(HttpStatus.CREATED)
|
||||
.body(new Response<>(formResponseBean, Status.SUCCESS, Translator.toLocale(GepafinConstant.FORM_CREATED_SUCCESSFULLY)));
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResponseEntity<Response<FormResponseBean>> updateForm(HttpServletRequest request, Long formId, FormRequest formRequest) {
|
||||
FormResponseBean formResponseBean = formService.updateForm(request, formId, formRequest);
|
||||
return ResponseEntity.status(HttpStatus.CREATED)
|
||||
.body(new Response<>(formResponseBean, Status.SUCCESS, Translator.toLocale(GepafinConstant.FORM_UPDATED_SUCCESSFULLY)));
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResponseEntity<Response<FormResponseBean>> getFormById(HttpServletRequest request, Long formId) {
|
||||
FormResponseBean formResponseBean=formService.getFormById(request,formId);
|
||||
return ResponseEntity.status(HttpStatus.OK)
|
||||
.body(new Response<>(formResponseBean, Status.SUCCESS, Translator.toLocale(GepafinConstant.FORM_FETCHED_SUCCESSFULLY)));
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResponseEntity<Response<Void>> deleteForm(HttpServletRequest request, Long formId) {
|
||||
formService.deleteForm(request,formId);
|
||||
return ResponseEntity.status(HttpStatus.OK)
|
||||
.body(new Response<>(null, Status.SUCCESS, Translator.toLocale(GepafinConstant.FORM_DELETED_SUCCESSFULLY)));
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResponseEntity<Response<List<FormResponseBean>>> getFormsByCallId(HttpServletRequest request, Long callId) {
|
||||
List<FormResponseBean> formResponseBean=formService.getFormsByCallId(request,callId);
|
||||
return ResponseEntity.status(HttpStatus.OK)
|
||||
.body(new Response<>(formResponseBean, Status.SUCCESS, Translator.toLocale(GepafinConstant.FORM_FETCHED_SUCCESSFULLY)));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
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.FormFieldRequest;
|
||||
import net.gepafin.tendermanagement.model.response.FormFieldResponseBean;
|
||||
import net.gepafin.tendermanagement.model.util.Response;
|
||||
import net.gepafin.tendermanagement.service.FormFieldService;
|
||||
import net.gepafin.tendermanagement.web.rest.api.FormFieldApi;
|
||||
import net.gepafin.tendermanagement.web.rest.api.errors.Status;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("${openapi.gepafin.base-path:/v1/formField}")
|
||||
public class FormFieldApiController implements FormFieldApi {
|
||||
|
||||
@Autowired
|
||||
private FormFieldService formFieldService;
|
||||
|
||||
@Override
|
||||
public ResponseEntity<Response<FormFieldResponseBean>> createFormField(HttpServletRequest request, FormFieldRequest formFieldRequest) {
|
||||
FormFieldResponseBean formFieldResponseBean=formFieldService.createFormField(request,formFieldRequest);
|
||||
return ResponseEntity.status(HttpStatus.CREATED)
|
||||
.body(new Response<>(formFieldResponseBean, Status.SUCCESS, Translator.toLocale(GepafinConstant.FORM_FIELD_CREATED_SUCCESSFULLY)));
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResponseEntity<Response<FormFieldResponseBean>> updateFormField(HttpServletRequest request, Long formFieldId, FormFieldRequest formFieldRequest) {
|
||||
FormFieldResponseBean formFieldResponseBean=formFieldService.updateFormField(request,formFieldId,formFieldRequest);
|
||||
return ResponseEntity.status(HttpStatus.CREATED)
|
||||
.body(new Response<>(formFieldResponseBean, Status.SUCCESS, Translator.toLocale(GepafinConstant.FORM_FIELD_UPDATED_SUCCESSFULLY)));
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResponseEntity<Response<FormFieldResponseBean>> getFormFieldById(HttpServletRequest request, Long formFieldId) {
|
||||
FormFieldResponseBean formFieldResponseBean=formFieldService.getFormFieldById(request,formFieldId);
|
||||
return ResponseEntity.status(HttpStatus.OK)
|
||||
.body(new Response<>(formFieldResponseBean, Status.SUCCESS, Translator.toLocale(GepafinConstant.FORM_FIELD_FETCHED_SUCCESSFULLY)));
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResponseEntity<Response<Void>> deleteForm(HttpServletRequest request, Long formFieldId) {
|
||||
formFieldService.deleteFormField(request,formFieldId);
|
||||
return ResponseEntity.status(HttpStatus.OK)
|
||||
.body(new Response<>(null, Status.SUCCESS, Translator.toLocale(GepafinConstant.FORM_FIELD_DELETED_SUCCESSFULLY)));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
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.FormTemplateRequest;
|
||||
import net.gepafin.tendermanagement.model.response.FormTemplateResponseBean;
|
||||
import net.gepafin.tendermanagement.model.util.Response;
|
||||
import net.gepafin.tendermanagement.service.FormTemplateService;
|
||||
import net.gepafin.tendermanagement.web.rest.api.FormTemplateApi;
|
||||
import net.gepafin.tendermanagement.web.rest.api.errors.Status;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("${openapi.gepafin.base-path:/v1/formTemplate}")
|
||||
public class FormTemplateApiController implements FormTemplateApi {
|
||||
|
||||
@Autowired
|
||||
private FormTemplateService formTemplateService;
|
||||
|
||||
@Override
|
||||
public ResponseEntity<Response<FormTemplateResponseBean>> createFormTemplate(HttpServletRequest request, FormTemplateRequest formTemplateRequest) {
|
||||
FormTemplateResponseBean formTemplateResponseBean=formTemplateService.createTemplateForm(request,formTemplateRequest);
|
||||
return ResponseEntity.status(HttpStatus.CREATED)
|
||||
.body(new Response<>(formTemplateResponseBean, Status.SUCCESS, Translator.toLocale(GepafinConstant.FORM_TEMPLATE_CREATED_SUCCESSFULLY)));
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResponseEntity<Response<FormTemplateResponseBean>> updateFormTemplate(HttpServletRequest request, Long formTemplateId, FormTemplateRequest formTemplateRequest) {
|
||||
FormTemplateResponseBean formTemplateResponseBean=formTemplateService.updateTemplateForm(request,formTemplateId,formTemplateRequest);
|
||||
return ResponseEntity.status(HttpStatus.CREATED)
|
||||
.body(new Response<>(formTemplateResponseBean, Status.SUCCESS, Translator.toLocale(GepafinConstant.FORM_TEMPLATE_UPDATED_SUCCESSFULLY)));
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResponseEntity<Response<FormTemplateResponseBean>> getFormTemplateById(HttpServletRequest request, Long formTemplateId) {
|
||||
FormTemplateResponseBean formTemplateResponseBean=formTemplateService.getFormTemplateById(request, formTemplateId);
|
||||
return ResponseEntity.status(HttpStatus.OK)
|
||||
.body(new Response<>(formTemplateResponseBean, Status.SUCCESS, Translator.toLocale(GepafinConstant.FORM_TEMPLATE_FETCHED_SUCCESSFULLY)));
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResponseEntity<Response<Void>> deleteFormTemplate(HttpServletRequest request, Long formTemplateId) {
|
||||
formTemplateService.deleteFormTemplate(request,formTemplateId);
|
||||
return ResponseEntity.status(HttpStatus.OK)
|
||||
.body(new Response<>(null, Status.SUCCESS, Translator.toLocale(GepafinConstant.FORM_TEMPLATE_DELETED_SUCCESSFULLY)));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user