Resolved conflicts.

This commit is contained in:
piyushkag
2024-11-24 22:01:52 +05:30
4 changed files with 94 additions and 8 deletions

View File

@@ -3,12 +3,15 @@ package net.gepafin.tendermanagement.dao;
import net.gepafin.tendermanagement.config.Translator; import net.gepafin.tendermanagement.config.Translator;
import net.gepafin.tendermanagement.constants.GepafinConstant; import net.gepafin.tendermanagement.constants.GepafinConstant;
import net.gepafin.tendermanagement.entities.FormFieldEntity; import net.gepafin.tendermanagement.entities.FormFieldEntity;
import net.gepafin.tendermanagement.enums.VersionActionTypeEnum;
import net.gepafin.tendermanagement.model.request.FormFieldRequest; import net.gepafin.tendermanagement.model.request.FormFieldRequest;
import net.gepafin.tendermanagement.model.request.SettingRequestBean; import net.gepafin.tendermanagement.model.request.SettingRequestBean;
import net.gepafin.tendermanagement.model.request.VersionHistoryRequest;
import net.gepafin.tendermanagement.model.response.FormFieldResponseBean; import net.gepafin.tendermanagement.model.response.FormFieldResponseBean;
import net.gepafin.tendermanagement.model.response.SettingResponseBean; import net.gepafin.tendermanagement.model.response.SettingResponseBean;
import net.gepafin.tendermanagement.repositories.FormFieldRepository; import net.gepafin.tendermanagement.repositories.FormFieldRepository;
import net.gepafin.tendermanagement.util.DateTimeUtil; import net.gepafin.tendermanagement.util.DateTimeUtil;
import net.gepafin.tendermanagement.util.LoggingUtil;
import net.gepafin.tendermanagement.util.Utils; import net.gepafin.tendermanagement.util.Utils;
import net.gepafin.tendermanagement.web.rest.api.errors.CustomValidationException; 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.ResourceNotFoundException;
@@ -16,6 +19,8 @@ import net.gepafin.tendermanagement.web.rest.api.errors.Status;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import jakarta.servlet.http.HttpServletRequest;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.List; import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -26,6 +31,12 @@ public class FormFieldDao {
@Autowired @Autowired
private FormFieldRepository formFieldRepository; private FormFieldRepository formFieldRepository;
@Autowired
private LoggingUtil loggingUtil;
@Autowired
private HttpServletRequest request;
public FormFieldEntity convertFormFieldRequestToFormFieldEntity(FormFieldRequest formFieldRequest) { public FormFieldEntity convertFormFieldRequestToFormFieldEntity(FormFieldRequest formFieldRequest) {
FormFieldEntity formFieldEntity = new FormFieldEntity(); FormFieldEntity formFieldEntity = new FormFieldEntity();
formFieldEntity.setLabel(formFieldRequest.getLabel()); formFieldEntity.setLabel(formFieldRequest.getLabel());
@@ -34,7 +45,11 @@ public class FormFieldDao {
formFieldEntity.setSortOrder(formFieldRequest.getSortOrder()); formFieldEntity.setSortOrder(formFieldRequest.getSortOrder());
formFieldEntity.setValidators(Utils.convertMapIntoJsonString(formFieldRequest.getValidators())); formFieldEntity.setValidators(Utils.convertMapIntoJsonString(formFieldRequest.getValidators()));
formFieldEntity.setSettings(setSettingRequestBean(formFieldRequest.getSettings())); formFieldEntity.setSettings(setSettingRequestBean(formFieldRequest.getSettings()));
formFieldEntity = saveFormFieldEntity(formFieldEntity); formFieldEntity = formFieldRepository.save(formFieldEntity);
/** This code is responsible for adding a version history log for the "Create FormField" operation. **/
loggingUtil.addVersionHistory(VersionHistoryRequest.builder().request(request).actionType(VersionActionTypeEnum.INSERT).oldData(null).newData(formFieldEntity).build());
return formFieldEntity; return formFieldEntity;
} }
@@ -51,10 +66,10 @@ public class FormFieldDao {
return formFieldResponseBean; return formFieldResponseBean;
} }
public FormFieldEntity saveFormFieldEntity(FormFieldEntity formFieldEntity) { // public FormFieldEntity saveFormFieldEntity(FormFieldEntity formFieldEntity) {
formFieldEntity = formFieldRepository.save(formFieldEntity); // formFieldEntity = formFieldRepository.save(formFieldEntity);
return formFieldEntity; // return formFieldEntity;
} // }
public void validateFormField(FormFieldRequest formFieldRequest) { public void validateFormField(FormFieldRequest formFieldRequest) {
if (formFieldRequest.getSettings() == null || formFieldRequest.getLabel() == null) { if (formFieldRequest.getSettings() == null || formFieldRequest.getLabel() == null) {
@@ -71,6 +86,7 @@ public class FormFieldDao {
public FormFieldResponseBean updateFormField(Long formFieldId, FormFieldRequest formFieldRequest) { public FormFieldResponseBean updateFormField(Long formFieldId, FormFieldRequest formFieldRequest) {
FormFieldEntity formFieldEntity = validateFormField(formFieldId); FormFieldEntity formFieldEntity = validateFormField(formFieldId);
FormFieldEntity oldFormFieldEntity = Utils.getClonedEntityForData(formFieldEntity);
Utils.setIfUpdated(formFieldEntity::getName, formFieldEntity::setName, formFieldRequest.getName()); Utils.setIfUpdated(formFieldEntity::getName, formFieldEntity::setName, formFieldRequest.getName());
Utils.setIfUpdated(formFieldEntity::getLabel, formFieldEntity::setLabel, formFieldRequest.getLabel()); Utils.setIfUpdated(formFieldEntity::getLabel, formFieldEntity::setLabel, formFieldRequest.getLabel());
Utils.setIfUpdated(formFieldEntity::getDescription, formFieldEntity::setDescription, formFieldRequest.getDescription()); Utils.setIfUpdated(formFieldEntity::getDescription, formFieldEntity::setDescription, formFieldRequest.getDescription());
@@ -80,7 +96,13 @@ public class FormFieldDao {
Utils.setIfUpdated(formFieldEntity::getValidators, formFieldEntity::setValidators, Utils.setIfUpdated(formFieldEntity::getValidators, formFieldEntity::setValidators,
Utils.convertMapIntoJsonString(formFieldRequest.getValidators())); Utils.convertMapIntoJsonString(formFieldRequest.getValidators()));
formFieldEntity.setUpdatedDate(DateTimeUtil.DateServerToUTC(LocalDateTime.now())); formFieldEntity.setUpdatedDate(DateTimeUtil.DateServerToUTC(LocalDateTime.now()));
formFieldEntity = saveFormFieldEntity(formFieldEntity);
formFieldEntity = formFieldRepository.save(formFieldEntity);
/** This code is responsible for adding a version history log for the "Update FormField" operation. **/
loggingUtil.addVersionHistory(VersionHistoryRequest.builder().request(request).actionType(VersionActionTypeEnum.UPDATE).oldData(oldFormFieldEntity).newData(formFieldEntity).build());
return convertFormFieldEntityToFormFieldResponseBean(formFieldEntity); return convertFormFieldEntityToFormFieldResponseBean(formFieldEntity);
} }
@@ -99,6 +121,11 @@ public class FormFieldDao {
public void deleteFormById(Long formFieldId) { public void deleteFormById(Long formFieldId) {
FormFieldEntity formEntity = validateFormField(formFieldId); FormFieldEntity formEntity = validateFormField(formFieldId);
formFieldRepository.delete(formEntity); formFieldRepository.delete(formEntity);
/** This code is responsible for adding a version history log for the "Delete FormField" operation. **/
loggingUtil.addVersionHistory(VersionHistoryRequest.builder().request(request).actionType(VersionActionTypeEnum.DELETE).oldData(formEntity).newData(null).build());
} }
public String setSettingRequestBean(List<SettingRequestBean> settingRequestBeans) { public String setSettingRequestBean(List<SettingRequestBean> settingRequestBeans) {

View File

@@ -90,6 +90,12 @@ public enum UserActionContextEnum {
GET_ASSIGNED_APPLICATION("GET_ASSIGNED_APPLICATION"), GET_ASSIGNED_APPLICATION("GET_ASSIGNED_APPLICATION"),
UPDATE_ASSIGNED_APPLICATION_DETAILS("UPDATE_ASSIGNED_APPLICATION_DETAILS"), UPDATE_ASSIGNED_APPLICATION_DETAILS("UPDATE_ASSIGNED_APPLICATION_DETAILS"),
/** Assigned form field context **/
CREATE_FORM_FIELD("CREATE_FORM_FIELD"),
UPDATE_FORM_FIELD("UPDATE_FORM_FIELD"),
GET_FORM_FIELD("GET_FORM_FIELD"),
DELETE_FORM_FIELD("DELETE_FORM_FIELD"),
/** Document action context **/ /** Document action context **/
UPLOAD_CALL_DOCUMENT("UPLOAD_CALL_DOCUMENT"), UPLOAD_CALL_DOCUMENT("UPLOAD_CALL_DOCUMENT"),
UPLOAD_CALL_IMAGES("UPLOAD_CALL_IMAGES"), UPLOAD_CALL_IMAGES("UPLOAD_CALL_IMAGES"),
@@ -100,6 +106,10 @@ public enum UserActionContextEnum {
UPDATE_IMAGES("UPDATE_IMAGES"), UPDATE_IMAGES("UPDATE_IMAGES"),
GET_DOCUMENT("GET_DOCUMENT"), GET_DOCUMENT("GET_DOCUMENT"),
/** Assigned flow context **/
CREATE_UPDATE_FLOW("CREATE_UPDATE_FLOW"),
GET_FLOW("GET_FLOW"),
/** Login attempt action context **/ /** Login attempt action context **/
GET_LOGIN_ATTEMPT_LIST("GET_LOGIN_ATTEMPT_LIST"), GET_LOGIN_ATTEMPT_LIST("GET_LOGIN_ATTEMPT_LIST"),
ADD_LOGIN_ATTEMPT("ADD_LOGIN_ATTEMPT"), ADD_LOGIN_ATTEMPT("ADD_LOGIN_ATTEMPT"),

View File

@@ -3,10 +3,14 @@ package net.gepafin.tendermanagement.web.rest.api.impl;
import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletRequest;
import net.gepafin.tendermanagement.config.Translator; import net.gepafin.tendermanagement.config.Translator;
import net.gepafin.tendermanagement.constants.GepafinConstant; import net.gepafin.tendermanagement.constants.GepafinConstant;
import net.gepafin.tendermanagement.enums.UserActionContextEnum;
import net.gepafin.tendermanagement.enums.UserActionLogsEnum;
import net.gepafin.tendermanagement.model.request.FlowRequestBean; import net.gepafin.tendermanagement.model.request.FlowRequestBean;
import net.gepafin.tendermanagement.model.request.UserActionRequest;
import net.gepafin.tendermanagement.model.response.FlowResponseBean; import net.gepafin.tendermanagement.model.response.FlowResponseBean;
import net.gepafin.tendermanagement.model.util.Response; import net.gepafin.tendermanagement.model.util.Response;
import net.gepafin.tendermanagement.service.FlowService; import net.gepafin.tendermanagement.service.FlowService;
import net.gepafin.tendermanagement.util.LoggingUtil;
import net.gepafin.tendermanagement.web.rest.api.FlowApi; import net.gepafin.tendermanagement.web.rest.api.FlowApi;
import net.gepafin.tendermanagement.web.rest.api.errors.Status; import net.gepafin.tendermanagement.web.rest.api.errors.Status;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@@ -23,15 +27,28 @@ public class FlowApiController implements FlowApi {
@Autowired @Autowired
private FlowService flowService; private FlowService flowService;
@Autowired
private LoggingUtil loggingUtil;
@Override @Override
public ResponseEntity<Response<FlowResponseBean>> createOrUpdateFlow(HttpServletRequest httpServletRequest, FlowRequestBean flowRequestBean, Long callId) { public ResponseEntity<Response<FlowResponseBean>> createOrUpdateFlow(HttpServletRequest request, FlowRequestBean flowRequestBean, Long callId) {
FlowResponseBean flowResponseBean=flowService.createOrUpdateFlow(httpServletRequest,flowRequestBean,callId);
/** This code is responsible for creating user action logs for the "Create or update Flow" operation. **/
loggingUtil.logUserAction(UserActionRequest.builder().request(request).actionType(UserActionLogsEnum.INSERT)
.actionContext(UserActionContextEnum.CREATE_UPDATE_FLOW).build());
FlowResponseBean flowResponseBean=flowService.createOrUpdateFlow(request,flowRequestBean,callId);
return ResponseEntity.status(HttpStatus.CREATED) return ResponseEntity.status(HttpStatus.CREATED)
.body(new Response<>(flowResponseBean, Status.SUCCESS, Translator.toLocale(GepafinConstant.FLOW_CREATED_SUCCESSFULLY))); .body(new Response<>(flowResponseBean, Status.SUCCESS, Translator.toLocale(GepafinConstant.FLOW_CREATED_SUCCESSFULLY)));
} }
@Override @Override
public ResponseEntity<Response<FlowResponseBean>> getFlowByCallId(HttpServletRequest request, Long callId) { public ResponseEntity<Response<FlowResponseBean>> getFlowByCallId(HttpServletRequest request, Long callId) {
/** This code is responsible for creating user action logs for the "Create or update Flow" operation. **/
loggingUtil.logUserAction(UserActionRequest.builder().request(request).actionType(UserActionLogsEnum.VIEW)
.actionContext(UserActionContextEnum.GET_FLOW).build());
FlowResponseBean flowResponseBean=flowService.getFlowByCallId(request,callId); FlowResponseBean flowResponseBean=flowService.getFlowByCallId(request,callId);
return ResponseEntity.status(HttpStatus.OK) return ResponseEntity.status(HttpStatus.OK)
.body(new Response<>(flowResponseBean, Status.SUCCESS, Translator.toLocale(GepafinConstant.FLOW_FETCHED_SUCCESSFULLY))); .body(new Response<>(flowResponseBean, Status.SUCCESS, Translator.toLocale(GepafinConstant.FLOW_FETCHED_SUCCESSFULLY)));

View File

@@ -3,10 +3,14 @@ package net.gepafin.tendermanagement.web.rest.api.impl;
import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletRequest;
import net.gepafin.tendermanagement.config.Translator; import net.gepafin.tendermanagement.config.Translator;
import net.gepafin.tendermanagement.constants.GepafinConstant; import net.gepafin.tendermanagement.constants.GepafinConstant;
import net.gepafin.tendermanagement.enums.UserActionContextEnum;
import net.gepafin.tendermanagement.enums.UserActionLogsEnum;
import net.gepafin.tendermanagement.model.request.FormFieldRequest; import net.gepafin.tendermanagement.model.request.FormFieldRequest;
import net.gepafin.tendermanagement.model.request.UserActionRequest;
import net.gepafin.tendermanagement.model.response.FormFieldResponseBean; import net.gepafin.tendermanagement.model.response.FormFieldResponseBean;
import net.gepafin.tendermanagement.model.util.Response; import net.gepafin.tendermanagement.model.util.Response;
import net.gepafin.tendermanagement.service.FormFieldService; import net.gepafin.tendermanagement.service.FormFieldService;
import net.gepafin.tendermanagement.util.LoggingUtil;
import net.gepafin.tendermanagement.web.rest.api.FormFieldApi; import net.gepafin.tendermanagement.web.rest.api.FormFieldApi;
import net.gepafin.tendermanagement.web.rest.api.errors.Status; import net.gepafin.tendermanagement.web.rest.api.errors.Status;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@@ -24,8 +28,16 @@ public class FormFieldApiController implements FormFieldApi {
@Autowired @Autowired
private FormFieldService formFieldService; private FormFieldService formFieldService;
@Autowired
private LoggingUtil loggingUtil;
@Override @Override
public ResponseEntity<Response<FormFieldResponseBean>> createFormField(HttpServletRequest request, FormFieldRequest formFieldRequest) { public ResponseEntity<Response<FormFieldResponseBean>> createFormField(HttpServletRequest request, FormFieldRequest formFieldRequest) {
/** This code is responsible for creating user action logs for the "Create Form field" operation. **/
loggingUtil.logUserAction(UserActionRequest.builder().request(request).actionType(UserActionLogsEnum.INSERT)
.actionContext(UserActionContextEnum.CREATE_FORM_FIELD).build());
FormFieldResponseBean formFieldResponseBean=formFieldService.createFormField(request,formFieldRequest); FormFieldResponseBean formFieldResponseBean=formFieldService.createFormField(request,formFieldRequest);
return ResponseEntity.status(HttpStatus.CREATED) return ResponseEntity.status(HttpStatus.CREATED)
.body(new Response<>(formFieldResponseBean, Status.SUCCESS, Translator.toLocale(GepafinConstant.FORM_FIELD_CREATED_SUCCESSFULLY))); .body(new Response<>(formFieldResponseBean, Status.SUCCESS, Translator.toLocale(GepafinConstant.FORM_FIELD_CREATED_SUCCESSFULLY)));
@@ -33,6 +45,11 @@ public class FormFieldApiController implements FormFieldApi {
@Override @Override
public ResponseEntity<Response<FormFieldResponseBean>> updateFormField(HttpServletRequest request, Long formFieldId, FormFieldRequest formFieldRequest) { public ResponseEntity<Response<FormFieldResponseBean>> updateFormField(HttpServletRequest request, Long formFieldId, FormFieldRequest formFieldRequest) {
/** This code is responsible for creating user action logs for the "Update Form field" operation. **/
loggingUtil.logUserAction(UserActionRequest.builder().request(request).actionType(UserActionLogsEnum.UPDATE)
.actionContext(UserActionContextEnum.UPDATE_FORM_FIELD).build());
FormFieldResponseBean formFieldResponseBean=formFieldService.updateFormField(request,formFieldId,formFieldRequest); FormFieldResponseBean formFieldResponseBean=formFieldService.updateFormField(request,formFieldId,formFieldRequest);
return ResponseEntity.status(HttpStatus.CREATED) return ResponseEntity.status(HttpStatus.CREATED)
.body(new Response<>(formFieldResponseBean, Status.SUCCESS, Translator.toLocale(GepafinConstant.FORM_FIELD_UPDATED_SUCCESSFULLY))); .body(new Response<>(formFieldResponseBean, Status.SUCCESS, Translator.toLocale(GepafinConstant.FORM_FIELD_UPDATED_SUCCESSFULLY)));
@@ -40,6 +57,11 @@ public class FormFieldApiController implements FormFieldApi {
@Override @Override
public ResponseEntity<Response<FormFieldResponseBean>> getFormFieldById(HttpServletRequest request, Long formFieldId) { public ResponseEntity<Response<FormFieldResponseBean>> getFormFieldById(HttpServletRequest request, Long formFieldId) {
/** This code is responsible for creating user action logs for the "Get Form field" operation. **/
loggingUtil.logUserAction(UserActionRequest.builder().request(request).actionType(UserActionLogsEnum.VIEW)
.actionContext(UserActionContextEnum.GET_FORM_FIELD).build());
FormFieldResponseBean formFieldResponseBean=formFieldService.getFormFieldById(request,formFieldId); FormFieldResponseBean formFieldResponseBean=formFieldService.getFormFieldById(request,formFieldId);
return ResponseEntity.status(HttpStatus.OK) return ResponseEntity.status(HttpStatus.OK)
.body(new Response<>(formFieldResponseBean, Status.SUCCESS, Translator.toLocale(GepafinConstant.FORM_FIELD_FETCHED_SUCCESSFULLY))); .body(new Response<>(formFieldResponseBean, Status.SUCCESS, Translator.toLocale(GepafinConstant.FORM_FIELD_FETCHED_SUCCESSFULLY)));
@@ -47,6 +69,11 @@ public class FormFieldApiController implements FormFieldApi {
@Override @Override
public ResponseEntity<Response<Void>> deleteForm(HttpServletRequest request, Long formFieldId) { public ResponseEntity<Response<Void>> deleteForm(HttpServletRequest request, Long formFieldId) {
/** This code is responsible for creating user action logs for the "Get Form field" operation. **/
loggingUtil.logUserAction(UserActionRequest.builder().request(request).actionType(UserActionLogsEnum.DELETE)
.actionContext(UserActionContextEnum.DELETE_FORM_FIELD).build());
formFieldService.deleteFormField(request,formFieldId); formFieldService.deleteFormField(request,formFieldId);
return ResponseEntity.status(HttpStatus.OK) return ResponseEntity.status(HttpStatus.OK)
.body(new Response<>(null, Status.SUCCESS, Translator.toLocale(GepafinConstant.FORM_FIELD_DELETED_SUCCESSFULLY))); .body(new Response<>(null, Status.SUCCESS, Translator.toLocale(GepafinConstant.FORM_FIELD_DELETED_SUCCESSFULLY)));
@@ -54,6 +81,11 @@ public class FormFieldApiController implements FormFieldApi {
@Override @Override
public ResponseEntity<Response<List<FormFieldResponseBean>>> getAllFormField(HttpServletRequest request) { public ResponseEntity<Response<List<FormFieldResponseBean>>> getAllFormField(HttpServletRequest request) {
/** This code is responsible for creating user action logs for the "Get all Form field" operation. **/
loggingUtil.logUserAction(UserActionRequest.builder().request(request).actionType(UserActionLogsEnum.VIEW)
.actionContext(UserActionContextEnum.GET_FORM_FIELD).build());
List<FormFieldResponseBean> formFieldResponseBeans=formFieldService.getAllFormField(request); List<FormFieldResponseBean> formFieldResponseBeans=formFieldService.getAllFormField(request);
return ResponseEntity.status(HttpStatus.OK) return ResponseEntity.status(HttpStatus.OK)
.body(new Response<>(formFieldResponseBeans, Status.SUCCESS, Translator.toLocale(GepafinConstant.FORM_FIELD_FETCHED_SUCCESSFULLY))); .body(new Response<>(formFieldResponseBeans, Status.SUCCESS, Translator.toLocale(GepafinConstant.FORM_FIELD_FETCHED_SUCCESSFULLY)));