From de92de7f7d75b1afd6b02df5caf3cdefd7533db6 Mon Sep 17 00:00:00 2001 From: Mohd-Arham Date: Tue, 25 Nov 2025 12:19:17 +0530 Subject: [PATCH] update code --- .../bbps/serviceImpl/AgentServiceImpl.java | 2 +- .../bbps/serviceImpl/ComplainServiceImpl.java | 4 +- .../bbps/util/BillerMapperHelper.java | 370 +++++++++--------- .../billpaymentservice/bbps/util/Helper.java | 263 +------------ 4 files changed, 205 insertions(+), 434 deletions(-) diff --git a/src/main/java/com/billpaymentservice/bbps/serviceImpl/AgentServiceImpl.java b/src/main/java/com/billpaymentservice/bbps/serviceImpl/AgentServiceImpl.java index bc8d806..d66f39f 100644 --- a/src/main/java/com/billpaymentservice/bbps/serviceImpl/AgentServiceImpl.java +++ b/src/main/java/com/billpaymentservice/bbps/serviceImpl/AgentServiceImpl.java @@ -255,7 +255,7 @@ public class AgentServiceImpl implements AgentService { // update inbound log success and persist bill data helper.updateInboundLogSuccess(inboundLog, responseData, generalResp.getStatus()); - helper.saveOrUpdateBillData(responseWrapper, billFetchByBillIdRequest, txnId); + mapperHelper.saveOrUpdateBillData(responseWrapper, billFetchByBillIdRequest, txnId); LOGGER.info("Bill data saved successfully for billId={} | Status={}", billId, generalResp.getStatus()); LOGGER.info("[{}] END | reqId={} | status={}", apiName, reqId, generalResp.getStatus()); return responseModel; diff --git a/src/main/java/com/billpaymentservice/bbps/serviceImpl/ComplainServiceImpl.java b/src/main/java/com/billpaymentservice/bbps/serviceImpl/ComplainServiceImpl.java index ca3d63a..8cf93cf 100644 --- a/src/main/java/com/billpaymentservice/bbps/serviceImpl/ComplainServiceImpl.java +++ b/src/main/java/com/billpaymentservice/bbps/serviceImpl/ComplainServiceImpl.java @@ -100,7 +100,7 @@ public class ComplainServiceImpl implements ComplainService { BharatConnectMaster headersData = beneficiaryDetailsRepository.findByOrgId(BBPSConstant.ORG_ID); ObjectMapper objectMapper = new ObjectMapper(); objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL); - FetchComplaintForwardRequest forwardReq = helper.fetchComplaintForwardRequestMap(complainRequestDTO); + FetchComplaintForwardRequest forwardReq = mapperHelper.fetchComplaintForwardRequestMap(complainRequestDTO); String forwardJson = helper.convertObjectToJson(forwardReq); String requestJson = helper.convertObjectToJson(complainRequestDTO); @@ -191,7 +191,7 @@ public class ComplainServiceImpl implements ComplainService { // Convert request to JSON ObjectMapper objectMapper = new ObjectMapper(); objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL); - FetchTicketLatestStatusRequest forwardReq = helper.fetchTicketLatestStatusRequestMap(request); + FetchTicketLatestStatusRequest forwardReq = mapperHelper.fetchTicketLatestStatusRequestMap(request); String forwardJson = helper.convertObjectToJson(forwardReq); String requestJson = helper.convertObjectToJson(request); diff --git a/src/main/java/com/billpaymentservice/bbps/util/BillerMapperHelper.java b/src/main/java/com/billpaymentservice/bbps/util/BillerMapperHelper.java index 9a63f65..72f1a52 100644 --- a/src/main/java/com/billpaymentservice/bbps/util/BillerMapperHelper.java +++ b/src/main/java/com/billpaymentservice/bbps/util/BillerMapperHelper.java @@ -33,8 +33,10 @@ import com.billpaymentservice.bbps.dto.TicketDetailsDTO; import com.billpaymentservice.bbps.dto.TicketDispositionsDTO; import com.billpaymentservice.bbps.dto.request.BillFetchByBillIdRequest; import com.billpaymentservice.bbps.dto.request.BillPaymentRequest; +import com.billpaymentservice.bbps.dto.request.ComplaintRequestDTO; import com.billpaymentservice.bbps.dto.request.FetchBillRequest; import com.billpaymentservice.bbps.dto.request.FetchBillValidatestRequest; +import com.billpaymentservice.bbps.dto.request.GetTicketLatestStausRequest; import com.billpaymentservice.bbps.dto.response.AmountOptionsResponse; import com.billpaymentservice.bbps.dto.response.BillDataResponse; import com.billpaymentservice.bbps.dto.response.ClientReqIdResponse; @@ -48,6 +50,8 @@ import com.billpaymentservice.bbps.dto.response.ViewComplainByIdResponse; import com.billpaymentservice.bbps.dto.sentRequest.BillPaymentForwardRequest; import com.billpaymentservice.bbps.dto.sentRequest.FetchBillForwardRequest; import com.billpaymentservice.bbps.dto.sentRequest.FetchBillValidatestForwardRequest; +import com.billpaymentservice.bbps.dto.sentRequest.FetchComplaintForwardRequest; +import com.billpaymentservice.bbps.dto.sentRequest.FetchTicketLatestStatusRequest; import com.billpaymentservice.bbps.entites.AdditionalInfoBill; import com.billpaymentservice.bbps.entites.AdditionalInfoBillValidate; import com.billpaymentservice.bbps.entites.AdditionalInfoPlans; @@ -137,10 +141,8 @@ public class BillerMapperHelper { CheckClientBillerDataRepository checkClientBillerDataRepository, TicketDispositionRepository ticketDispositionRepository, ViewAllComplainTicketDetailRepository viewAllComplainTicketDetailRepository, - ContactMasterDataRepository contactMasterDataRepository, - BBPSMasterDataRepo bbpsMasterDataRepo, - BillerDataRepository billerDataRespository, - BillMasterRepository billMasterRepository, + ContactMasterDataRepository contactMasterDataRepository, BBPSMasterDataRepo bbpsMasterDataRepo, + BillerDataRepository billerDataRespository, BillMasterRepository billMasterRepository, BillValidationRepository billValidationRepository) { this.billerRepo = billerRepo; this.customerParamGroupByBillerIdRepo = customerParamGroupByBillerIdRepo; @@ -860,196 +862,202 @@ public class BillerMapperHelper { public void saveOrUpdateBillerData(BillerDetails newEntity) { - Optional existingOpt = billerDataRespository.findByBillerId(newEntity.getBillerId()); + Optional existingOpt = billerDataRespository.findByBillerId(newEntity.getBillerId()); - if (existingOpt.isPresent()) { - //logic to be written - } - else { - // brand new biller - billerDataRespository.save(newEntity); - } + if (existingOpt.isPresent()) { + // logic to be written + } else { + // brand new biller + billerDataRespository.save(newEntity); + } } -public void saveOrUpdateBillData(BillDataResponse responseWrapper, - BillFetchByBillIdRequest billFetchByBillIdRequest,String txnId) { + public void saveOrUpdateBillData(BillDataResponse responseWrapper, + BillFetchByBillIdRequest billFetchByBillIdRequest, String txnId) { + BillMaster billMaster = new BillMaster(); -BillMaster billMaster = new BillMaster(); - -billMaster.setBillId(responseWrapper.getBillId()); -billMaster.setRefId(responseWrapper.getRefId()); -billMaster.setBillerId(responseWrapper.getBillerId()); -billMaster.setStatus(responseWrapper.getStatus()); -billMaster.setActionType(responseWrapper.getActionType()); -billMaster.setUserId(responseWrapper.getUserId()); -billMaster.setReqId(billFetchByBillIdRequest.getReqId()); -billMaster.setTxnId(txnId); + billMaster.setBillId(responseWrapper.getBillId()); + billMaster.setRefId(responseWrapper.getRefId()); + billMaster.setBillerId(responseWrapper.getBillerId()); + billMaster.setStatus(responseWrapper.getStatus()); + billMaster.setActionType(responseWrapper.getActionType()); + billMaster.setUserId(responseWrapper.getUserId()); + billMaster.setReqId(billFetchByBillIdRequest.getReqId()); + billMaster.setTxnId(txnId); // BILLER RESPONSE -BillerResponse billerResponse = new BillerResponse(); -if (responseWrapper.getBillerResponse() != null) { -billerResponse.setBillId(responseWrapper.getBillerResponse().getBillId()); -billerResponse.setAmount(responseWrapper.getBillerResponse().getAmount()); -billerResponse.setBillDate(responseWrapper.getBillerResponse().getBillDate()); -billerResponse.setBillNumber(responseWrapper.getBillerResponse().getBillNumber()); -billerResponse.setBillPeriod(responseWrapper.getBillerResponse().getBillPeriod()); -billerResponse.setCustConvFee(responseWrapper.getBillerResponse().getCustConvFee()); -billerResponse.setCouCustConvFee(responseWrapper.getBillerResponse().getCouCustConvFee()); -billerResponse.setDueDate(responseWrapper.getBillerResponse().getDueDate()); -billerResponse.setCustomerName(responseWrapper.getBillerResponse().getCustomerName()); -billerResponse.setAmountOption(responseWrapper.getBillerResponse().isAmountOption()); -billerResponse.setBillMaster(billMaster); -} -billMaster.setBillerResponse(billerResponse); - - + BillerResponse billerResponse = new BillerResponse(); + if (responseWrapper.getBillerResponse() != null) { + billerResponse.setBillId(responseWrapper.getBillerResponse().getBillId()); + billerResponse.setAmount(responseWrapper.getBillerResponse().getAmount()); + billerResponse.setBillDate(responseWrapper.getBillerResponse().getBillDate()); + billerResponse.setBillNumber(responseWrapper.getBillerResponse().getBillNumber()); + billerResponse.setBillPeriod(responseWrapper.getBillerResponse().getBillPeriod()); + billerResponse.setCustConvFee(responseWrapper.getBillerResponse().getCustConvFee()); + billerResponse.setCouCustConvFee(responseWrapper.getBillerResponse().getCouCustConvFee()); + billerResponse.setDueDate(responseWrapper.getBillerResponse().getDueDate()); + billerResponse.setCustomerName(responseWrapper.getBillerResponse().getCustomerName()); + billerResponse.setAmountOption(responseWrapper.getBillerResponse().isAmountOption()); + billerResponse.setBillMaster(billMaster); + } + billMaster.setBillerResponse(billerResponse); // ADDITIONAL INFO -List additionalInfos = new ArrayList<>(); -if (responseWrapper.getAdditionalInfo() != null) { -for (AdditionalInfoBillDTO info : responseWrapper.getAdditionalInfo()) { -AdditionalInfoBill entity = new AdditionalInfoBill(); -entity.setName(info.getName()); -entity.setValue(info.getValue()); -entity.setBillMaster(billMaster); -additionalInfos.add(entity); -} -} -billMaster.setAdditionalInfo(additionalInfos); - - + List additionalInfos = new ArrayList<>(); + if (responseWrapper.getAdditionalInfo() != null) { + for (AdditionalInfoBillDTO info : responseWrapper.getAdditionalInfo()) { + AdditionalInfoBill entity = new AdditionalInfoBill(); + entity.setName(info.getName()); + entity.setValue(info.getValue()); + entity.setBillMaster(billMaster); + additionalInfos.add(entity); + } + } + billMaster.setAdditionalInfo(additionalInfos); // CUSTOMER PARAMS -List customerParams = new ArrayList<>(); -if (responseWrapper.getCustomerParams() != null) { -for (CustomerParamDAO param : responseWrapper.getCustomerParams()) { -CustomerParamBill entity = new CustomerParamBill(); -entity.setName(param.getName()); -entity.setValue(param.getValue() == null ? "" : param.getValue()); -entity.setType(param.getType() == null ? "" : param.getType()); -entity.setBillMaster(billMaster); -customerParams.add(entity); -} -} -billMaster.setCustomerParams(customerParams); - - + List customerParams = new ArrayList<>(); + if (responseWrapper.getCustomerParams() != null) { + for (CustomerParamDAO param : responseWrapper.getCustomerParams()) { + CustomerParamBill entity = new CustomerParamBill(); + entity.setName(param.getName()); + entity.setValue(param.getValue() == null ? "" : param.getValue()); + entity.setType(param.getType() == null ? "" : param.getType()); + entity.setBillMaster(billMaster); + customerParams.add(entity); + } + } + billMaster.setCustomerParams(customerParams); // DATES -billMaster.setCreationDate(responseWrapper.getCreationDate()); -billMaster.setModifiedDate(responseWrapper.getModifiedDate()); -billMaster.setCreatedEpochDate(responseWrapper.getCreatedEpochDate()); -billMaster.setModifiedEpochDate(responseWrapper.getModifiedEpochDate()); + billMaster.setCreationDate(responseWrapper.getCreationDate()); + billMaster.setModifiedDate(responseWrapper.getModifiedDate()); + billMaster.setCreatedEpochDate(responseWrapper.getCreatedEpochDate()); + billMaster.setModifiedEpochDate(responseWrapper.getModifiedEpochDate()); + billMasterRepository.save(billMaster); + } -billMasterRepository.save(billMaster); -} - - public void saveBillValidation(FetchBillValidateResponse responseWrapper, BillFetchByBillIdRequest billRequest) { - System.out.println("responseWrapper"); - ModelMapper modelMapper = new ModelMapper(); - - try { - LOGGER.info("Saving bill validation data for billId={}", responseWrapper.getBillId()); - - // ✅ Map the main object - BillValidation billEntity = modelMapper.map(responseWrapper, BillValidation.class); - // ✅ Manually handle only the nested relationship part - if (responseWrapper.getCustomerParams() != null) { - List customerParams = responseWrapper.getCustomerParams() - .stream() - .map(param -> { - CustomerParamBillValidation cp = modelMapper.map(param, CustomerParamBillValidation.class); - cp.setBill(billEntity); // maintain relation - return cp; - }) - .collect(Collectors.toList()); - billEntity.setCustomerParams(customerParams); - } - if (responseWrapper.getAdditionalInfo() != null) { - List additionalInfos = responseWrapper.getAdditionalInfo() - .stream() - .map(info -> { - AdditionalInfoBillValidate ai = modelMapper.map(info, AdditionalInfoBillValidate.class); - ai.setBill(billEntity); // maintain relation - return ai; - }) - .collect(Collectors.toList()); - billEntity.setAdditionalInfo(additionalInfos); - - } - // ✅ Save everything (cascade handles child) - - billValidationRepository.save(billEntity); - - LOGGER.info("Bill validation saved successfully for billId={}", billEntity.getBillId()); - } catch (Exception ex) { - LOGGER.error("Error saving BillValidation data: {}", ex.getMessage(), ex); - throw new RuntimeException("Failed to save bill validation data", ex); - } - - -} - - public FetchBillForwardRequest fetchBillForwardRequestMap(FetchBillRequest req) { - - FetchBillForwardRequest forward = new FetchBillForwardRequest(); - - forward.setBillerId(req.getBillerId()); - forward.setBillerName(req.getBillerName()); - forward.setBillerCategory(req.getBillerCategory()); - forward.setClientReqId(req.getClientReqId()); - forward.setMacAdress(req.getMacAdress()); - forward.setCustomerMobNo(req.getCustomerMobNo()); - forward.setRemitterName(req.getRemitterName()); - forward.setPaymentChannel(req.getPaymentChannel()); - forward.setDeviceBlockTags(req.getDeviceBlockTags()); - forward.setCustomerParamsRequest(req.getCustomerParamsRequest()); - forward.setRemitterIdentity(req.getRemitterIdentity()); - - return forward; - } - - public FetchBillValidatestForwardRequest fetchBillValidatestForwardRequest(FetchBillValidatestRequest req) { - - FetchBillValidatestForwardRequest forward = new FetchBillValidatestForwardRequest(); - - forward.setBillerId(req.getBillerId()); - forward.setBillerName(req.getBillerName()); - forward.setBillerCategory(req.getBillerCategory()); - forward.setCustomerMobNo(req.getCustomerMobNo()); - forward.setClientReqId(req.getClientReqId()); - forward.setMacAddress(req.getMacAddress()); - forward.setCustomerParamsRequest(req.getCustomerParamsRequest()); - - return forward; - } - public BillPaymentForwardRequest billPaymentForwardRequest(BillPaymentRequest req) { - - BillPaymentForwardRequest forward = new BillPaymentForwardRequest(); - - forward.setTenantId(req.getTenantId()); - forward.setRefId(req.getRefId()); - forward.setBillId(req.getBillId()); - forward.setAmountOptions(req.isAmountOptions()); - forward.setPaymentMode(req.getPaymentMode()); - forward.setPaymentInformation(req.getPaymentInformation()); - forward.setBillerId(req.getBillerId()); - forward.setBillerName(req.getBillerName()); - forward.setBillerCategory(req.getBillerCategory()); - forward.setMacAdress(req.getMacAdress()); - forward.setCustomerMobNo(req.getCustomerMobNo()); - forward.setTxnAmount(req.getTxnAmount()); - forward.setPaymentRefId(req.getPaymentRefId()); - forward.setClientReqId(req.getClientReqId()); - forward.setPaymentChannel(req.getPaymentChannel()); - - forward.setDeviceBlockTags(req.getDeviceBlockTags()); - forward.setCustomerParamsRequest(req.getCustomerParamsRequest()); - forward.setRemitterIdentity(req.getRemitterIdentity()); - forward.setAmountBreakSet(req.getAmountBreakSet()); - - return forward; - } + public void saveBillValidation(FetchBillValidateResponse responseWrapper, BillFetchByBillIdRequest billRequest) { + System.out.println("responseWrapper"); + ModelMapper modelMapper = new ModelMapper(); + + try { + LOGGER.info("Saving bill validation data for billId={}", responseWrapper.getBillId()); + + // ✅ Map the main object + BillValidation billEntity = modelMapper.map(responseWrapper, BillValidation.class); + // ✅ Manually handle only the nested relationship part + if (responseWrapper.getCustomerParams() != null) { + List customerParams = responseWrapper.getCustomerParams().stream() + .map(param -> { + CustomerParamBillValidation cp = modelMapper.map(param, CustomerParamBillValidation.class); + cp.setBill(billEntity); // maintain relation + return cp; + }).collect(Collectors.toList()); + billEntity.setCustomerParams(customerParams); + } + if (responseWrapper.getAdditionalInfo() != null) { + List additionalInfos = responseWrapper.getAdditionalInfo().stream() + .map(info -> { + AdditionalInfoBillValidate ai = modelMapper.map(info, AdditionalInfoBillValidate.class); + ai.setBill(billEntity); // maintain relation + return ai; + }).collect(Collectors.toList()); + billEntity.setAdditionalInfo(additionalInfos); + + } + // ✅ Save everything (cascade handles child) + + billValidationRepository.save(billEntity); + + LOGGER.info("Bill validation saved successfully for billId={}", billEntity.getBillId()); + } catch (Exception ex) { + LOGGER.error("Error saving BillValidation data: {}", ex.getMessage(), ex); + throw new RuntimeException("Failed to save bill validation data", ex); + } + + } + + public FetchBillForwardRequest fetchBillForwardRequestMap(FetchBillRequest req) { + + FetchBillForwardRequest forward = new FetchBillForwardRequest(); + + forward.setBillerId(req.getBillerId()); + forward.setBillerName(req.getBillerName()); + forward.setBillerCategory(req.getBillerCategory()); + forward.setClientReqId(req.getClientReqId()); + forward.setMacAdress(req.getMacAdress()); + forward.setCustomerMobNo(req.getCustomerMobNo()); + forward.setRemitterName(req.getRemitterName()); + forward.setPaymentChannel(req.getPaymentChannel()); + forward.setDeviceBlockTags(req.getDeviceBlockTags()); + forward.setCustomerParamsRequest(req.getCustomerParamsRequest()); + forward.setRemitterIdentity(req.getRemitterIdentity()); + + return forward; + } + + public FetchBillValidatestForwardRequest fetchBillValidatestForwardRequest(FetchBillValidatestRequest req) { + + FetchBillValidatestForwardRequest forward = new FetchBillValidatestForwardRequest(); + + forward.setBillerId(req.getBillerId()); + forward.setBillerName(req.getBillerName()); + forward.setBillerCategory(req.getBillerCategory()); + forward.setCustomerMobNo(req.getCustomerMobNo()); + forward.setClientReqId(req.getClientReqId()); + forward.setMacAddress(req.getMacAddress()); + forward.setCustomerParamsRequest(req.getCustomerParamsRequest()); + + return forward; + } + + public BillPaymentForwardRequest billPaymentForwardRequest(BillPaymentRequest req) { + + BillPaymentForwardRequest forward = new BillPaymentForwardRequest(); + + forward.setTenantId(req.getTenantId()); + forward.setRefId(req.getRefId()); + forward.setBillId(req.getBillId()); + forward.setAmountOptions(req.isAmountOptions()); + forward.setPaymentMode(req.getPaymentMode()); + forward.setPaymentInformation(req.getPaymentInformation()); + forward.setBillerId(req.getBillerId()); + forward.setBillerName(req.getBillerName()); + forward.setBillerCategory(req.getBillerCategory()); + forward.setMacAdress(req.getMacAdress()); + forward.setCustomerMobNo(req.getCustomerMobNo()); + forward.setTxnAmount(req.getTxnAmount()); + forward.setPaymentRefId(req.getPaymentRefId()); + forward.setClientReqId(req.getClientReqId()); + forward.setPaymentChannel(req.getPaymentChannel()); + + forward.setDeviceBlockTags(req.getDeviceBlockTags()); + forward.setCustomerParamsRequest(req.getCustomerParamsRequest()); + forward.setRemitterIdentity(req.getRemitterIdentity()); + forward.setAmountBreakSet(req.getAmountBreakSet()); + + return forward; + } + + public FetchComplaintForwardRequest fetchComplaintForwardRequestMap(ComplaintRequestDTO complainRequestDTO) { + FetchComplaintForwardRequest forward = new FetchComplaintForwardRequest(); + + forward.setBillerId(complainRequestDTO.getBillerId()); + forward.setBillerName(complainRequestDTO.getBillerName()); + forward.setTicketDescription(complainRequestDTO.getTicketDescription()); + forward.setTicketDisposition(complainRequestDTO.getTicketDisposition()); + forward.setTicketDispositionCode(complainRequestDTO.getTicketDispositionCode()); + forward.setTxnId(complainRequestDTO.getTxnId()); + return forward; + } + + public FetchTicketLatestStatusRequest fetchTicketLatestStatusRequestMap(GetTicketLatestStausRequest request) { + FetchTicketLatestStatusRequest forward = new FetchTicketLatestStatusRequest(); + forward.setTicketId(request.getTicketId()); + forward.setTxnNpciId(request.getTxnNpciId()); + return forward; + } } diff --git a/src/main/java/com/billpaymentservice/bbps/util/Helper.java b/src/main/java/com/billpaymentservice/bbps/util/Helper.java index 35b89f4..9949670 100644 --- a/src/main/java/com/billpaymentservice/bbps/util/Helper.java +++ b/src/main/java/com/billpaymentservice/bbps/util/Helper.java @@ -7,28 +7,7 @@ import org.slf4j.LoggerFactory; import org.springframework.http.HttpHeaders; import org.springframework.http.MediaType; import org.springframework.stereotype.Component; -<<<<<<< HEAD -import com.billpaymentservice.bbps.dto.AdditionalInfoBillDTO; -import com.billpaymentservice.bbps.dto.CustomerParamDAO; -import com.billpaymentservice.bbps.dto.ResponseModel; -import com.billpaymentservice.bbps.dto.request.BillFetchByBillIdRequest; -import com.billpaymentservice.bbps.dto.request.BillPaymentRequest; -import com.billpaymentservice.bbps.dto.request.ComplaintRequestDTO; -import com.billpaymentservice.bbps.dto.request.FetchBillRequest; -import com.billpaymentservice.bbps.dto.request.FetchBillValidatestRequest; -import com.billpaymentservice.bbps.dto.request.GetTicketLatestStausRequest; -import com.billpaymentservice.bbps.dto.response.BillDataResponse; -import com.billpaymentservice.bbps.dto.response.FetchBillValidateResponse; -import com.billpaymentservice.bbps.dto.sentRequest.BillPaymentForwardRequest; -import com.billpaymentservice.bbps.dto.sentRequest.FetchBillForwardRequest; -import com.billpaymentservice.bbps.dto.sentRequest.FetchBillValidatestForwardRequest; -import com.billpaymentservice.bbps.dto.sentRequest.FetchComplaintForwardRequest; -import com.billpaymentservice.bbps.dto.sentRequest.FetchTicketLatestStatusRequest; -import com.billpaymentservice.bbps.entites.AdditionalInfoBill; -import com.billpaymentservice.bbps.entites.AdditionalInfoBillValidate; -======= ->>>>>>> d0812656ff2aee80b1eb0c0ab8e29a01d7d66553 import com.billpaymentservice.bbps.entites.BBPSMastersData; import com.billpaymentservice.bbps.entites.InboundTraceLog; import com.billpaymentservice.bbps.entites.OutboundTraceLog; @@ -54,26 +33,15 @@ public class Helper { private final ObjectMapper objectMapper = new ObjectMapper(); private final BBPSMasterDataRepo bbpsMasterDataRepo; - // Constructor Injection public Helper(BBPSMasterDataRepo bbpsMasterDataRepo, InboundTraceLogRepository inboundTraceLogRepository, -<<<<<<< HEAD + OutboundTraceLogRepository outboundTraceLogRepository, BillerDataRepository billerDataRepository, BillMasterRepository billMasterRepository, BillValidationRepository billValidationRepository) { + this.inboundTraceLogRepository = inboundTraceLogRepository; + this.outboundTraceLogRepository = outboundTraceLogRepository; this.bbpsMasterDataRepo = bbpsMasterDataRepo; - this.inboundTraceLogRepository = inboundTraceLogRepository; - this.outboundTraceLogRepository = outboundTraceLogRepository; - this.billerDataRespository = billerDataRepository; - this.billMasterRepository = billMasterRepository; - this.billValidationRepository = billValidationRepository; } -======= - OutboundTraceLogRepository outboundTraceLogRepository,BillerDataRepository billerDataRepository, - BillMasterRepository billMasterRepository,BillValidationRepository billValidationRepository) { - this.inboundTraceLogRepository = inboundTraceLogRepository; - this.outboundTraceLogRepository = outboundTraceLogRepository; - this.bbpsMasterDataRepo = bbpsMasterDataRepo;} ->>>>>>> d0812656ff2aee80b1eb0c0ab8e29a01d7d66553 /** * Validates whether the merchant exists and is active. @@ -182,225 +150,20 @@ public class Helper { outboundLog.setResponsePayload(responsePayload); outboundLog.setResponseReceiveTime(LocalDateTime.now()); outboundTraceLogRepository.save(outboundLog); -<<<<<<< HEAD - -======= ->>>>>>> d0812656ff2aee80b1eb0c0ab8e29a01d7d66553 } /* ---------- End helpers ---------- */ -<<<<<<< HEAD - Optional existingOpt = billerDataRespository.findByBillerId(newEntity.getBillerId()); - - if (existingOpt.isPresent()) { - // logic to be written - } else { - // brand new biller - billerDataRespository.save(newEntity); - } - } - - public void saveOrUpdateBillData(BillDataResponse responseWrapper, - BillFetchByBillIdRequest billFetchByBillIdRequest, String txnId) { - - BillMaster billMaster = new BillMaster(); - - billMaster.setBillId(billFetchByBillIdRequest.getBillId()); - billMaster.setRefId(responseWrapper.getRefId()); - billMaster.setBillerId(responseWrapper.getBillerId()); - billMaster.setStatus(responseWrapper.getStatus()); - billMaster.setActionType(responseWrapper.getActionType()); - billMaster.setUserId(responseWrapper.getUserId()); - billMaster.setReqId(billFetchByBillIdRequest.getReqId()); - billMaster.setTxnId(txnId); - -// BILLER RESPONSE - BillerResponse billerResponse = new BillerResponse(); - if (responseWrapper.getBillerResponse() != null) { - billerResponse.setBillId(responseWrapper.getBillerResponse().getBillId()); - billerResponse.setAmount(responseWrapper.getBillerResponse().getAmount()); - billerResponse.setBillDate(responseWrapper.getBillerResponse().getBillDate()); - billerResponse.setBillNumber(responseWrapper.getBillerResponse().getBillNumber()); - billerResponse.setBillPeriod(responseWrapper.getBillerResponse().getBillPeriod()); - billerResponse.setCustConvFee(responseWrapper.getBillerResponse().getCustConvFee()); - billerResponse.setCouCustConvFee(responseWrapper.getBillerResponse().getCouCustConvFee()); - billerResponse.setDueDate(responseWrapper.getBillerResponse().getDueDate()); - billerResponse.setCustomerName(responseWrapper.getBillerResponse().getCustomerName()); - billerResponse.setAmountOption(responseWrapper.getBillerResponse().isAmountOption()); - billerResponse.setBillMaster(billMaster); - } - billMaster.setBillerResponse(billerResponse); - -// ADDITIONAL INFO - List additionalInfos = new ArrayList<>(); - if (responseWrapper.getAdditionalInfo() != null) { - for (AdditionalInfoBillDTO info : responseWrapper.getAdditionalInfo()) { - AdditionalInfoBill entity = new AdditionalInfoBill(); - entity.setName(info.getName()); - entity.setValue(info.getValue()); - entity.setBillMaster(billMaster); - additionalInfos.add(entity); - } - } - billMaster.setAdditionalInfo(additionalInfos); - -// CUSTOMER PARAMS - List customerParams = new ArrayList<>(); - if (responseWrapper.getCustomerParams() != null) { - for (CustomerParamDAO param : responseWrapper.getCustomerParams()) { - CustomerParamBill entity = new CustomerParamBill(); - entity.setName(param.getName()); - entity.setValue(param.getValue() == null ? "" : param.getValue()); - entity.setType(param.getType() == null ? "" : param.getType()); - entity.setBillMaster(billMaster); - customerParams.add(entity); - } - } - billMaster.setCustomerParams(customerParams); - -// DATES - billMaster.setCreationDate(responseWrapper.getCreationDate()); - billMaster.setModifiedDate(responseWrapper.getModifiedDate()); - billMaster.setCreatedEpochDate(responseWrapper.getCreatedEpochDate()); - billMaster.setModifiedEpochDate(responseWrapper.getModifiedEpochDate()); - - billMasterRepository.save(billMaster); - } - - public void saveBillValidation(FetchBillValidateResponse responseWrapper, BillFetchByBillIdRequest billRequest) { - System.out.println("responseWrapper"); - ModelMapper modelMapper = new ModelMapper(); - - try { - LOGGER.info("Saving bill validation data for billId={}", responseWrapper.getBillId()); - - // ✅ Map the main object - BillValidation billEntity = modelMapper.map(responseWrapper, BillValidation.class); - // ✅ Manually handle only the nested relationship part - if (responseWrapper.getCustomerParams() != null) { - List customerParams = responseWrapper.getCustomerParams().stream() - .map(param -> { - CustomerParamBillValidation cp = modelMapper.map(param, CustomerParamBillValidation.class); - cp.setBill(billEntity); // maintain relation - return cp; - }).collect(Collectors.toList()); - billEntity.setCustomerParams(customerParams); - } - if (responseWrapper.getAdditionalInfo() != null) { - List additionalInfos = responseWrapper.getAdditionalInfo().stream() - .map(info -> { - AdditionalInfoBillValidate ai = modelMapper.map(info, AdditionalInfoBillValidate.class); - ai.setBill(billEntity); // maintain relation - return ai; - }).collect(Collectors.toList()); - billEntity.setAdditionalInfo(additionalInfos); - - } - // ✅ Save everything (cascade handles child) - - billValidationRepository.save(billEntity); - - LOGGER.info("Bill validation saved successfully for billId={}", billEntity.getBillId()); - } catch (Exception ex) { - LOGGER.error("Error saving BillValidation data: {}", ex.getMessage(), ex); - throw new RuntimeException("Failed to save bill validation data", ex); - } - - } - - public FetchBillForwardRequest fetchBillForwardRequestMap(FetchBillRequest req) { - - FetchBillForwardRequest forward = new FetchBillForwardRequest(); - - forward.setBillerId(req.getBillerId()); - forward.setBillerName(req.getBillerName()); - forward.setBillerCategory(req.getBillerCategory()); - forward.setClientReqId(req.getClientReqId()); - forward.setMacAdress(req.getMacAdress()); - forward.setCustomerMobNo(req.getCustomerMobNo()); - forward.setRemitterName(req.getRemitterName()); - forward.setPaymentChannel(req.getPaymentChannel()); - forward.setDeviceBlockTags(req.getDeviceBlockTags()); - forward.setCustomerParamsRequest(req.getCustomerParamsRequest()); - forward.setRemitterIdentity(req.getRemitterIdentity()); - - return forward; - } - - public FetchBillValidatestForwardRequest fetchBillValidatestForwardRequest(FetchBillValidatestRequest req) { - - FetchBillValidatestForwardRequest forward = new FetchBillValidatestForwardRequest(); - - forward.setBillerId(req.getBillerId()); - forward.setBillerName(req.getBillerName()); - forward.setBillerCategory(req.getBillerCategory()); - forward.setCustomerMobNo(req.getCustomerMobNo()); - forward.setClientReqId(req.getClientReqId()); - forward.setMacAddress(req.getMacAddress()); - forward.setCustomerParamsRequest(req.getCustomerParamsRequest()); - - return forward; - } - - public BillPaymentForwardRequest billPaymentForwardRequest(BillPaymentRequest req) { - - BillPaymentForwardRequest forward = new BillPaymentForwardRequest(); - - forward.setTenantId(req.getTenantId()); - forward.setRefId(req.getRefId()); - forward.setBillId(req.getBillId()); - forward.setAmountOptions(req.isAmountOptions()); - forward.setPaymentMode(req.getPaymentMode()); - forward.setPaymentInformation(req.getPaymentInformation()); - forward.setBillerId(req.getBillerId()); - forward.setBillerName(req.getBillerName()); - forward.setBillerCategory(req.getBillerCategory()); - forward.setMacAdress(req.getMacAdress()); - forward.setCustomerMobNo(req.getCustomerMobNo()); - forward.setTxnAmount(req.getTxnAmount()); - forward.setPaymentRefId(req.getPaymentRefId()); - forward.setClientReqId(req.getClientReqId()); - forward.setPaymentChannel(req.getPaymentChannel()); - - forward.setDeviceBlockTags(req.getDeviceBlockTags()); - forward.setCustomerParamsRequest(req.getCustomerParamsRequest()); - forward.setRemitterIdentity(req.getRemitterIdentity()); - forward.setAmountBreakSet(req.getAmountBreakSet()); - - return forward; - } - - public FetchComplaintForwardRequest fetchComplaintForwardRequestMap(ComplaintRequestDTO complainRequestDTO) { - FetchComplaintForwardRequest forward = new FetchComplaintForwardRequest(); - - forward.setBillerId(complainRequestDTO.getBillerId()); - forward.setBillerName(complainRequestDTO.getBillerName()); - forward.setTicketDescription(complainRequestDTO.getTicketDescription()); - forward.setTicketDisposition(complainRequestDTO.getTicketDisposition()); - forward.setTicketDispositionCode(complainRequestDTO.getTicketDispositionCode()); - forward.setTxnId(complainRequestDTO.getTxnId()); - return forward; - } - - public FetchTicketLatestStatusRequest fetchTicketLatestStatusRequestMap(GetTicketLatestStausRequest request) { - FetchTicketLatestStatusRequest forward = new FetchTicketLatestStatusRequest(); - forward.setTicketId(request.getTicketId()); - forward.setTxnNpciId(request.getTxnNpciId()); - return forward; - } -======= // New reusable header builder for BBPS calls - public HttpHeaders buildHeaders(BharatConnectMaster headersData) { - HttpHeaders headers = new HttpHeaders(); - if (headersData != null) { - headers.set("x-digiledge-key", headersData.getXDigiledgeKey()); - headers.set("agentId", headersData.getAgentId()); - headers.set("tenantId", headersData.getTenantId()); - } - headers.setContentType(MediaType.APPLICATION_JSON); - return headers; - } + public HttpHeaders buildHeaders(BharatConnectMaster headersData) { + HttpHeaders headers = new HttpHeaders(); + if (headersData != null) { + headers.set("x-digiledge-key", headersData.getXDigiledgeKey()); + headers.set("agentId", headersData.getAgentId()); + headers.set("tenantId", headersData.getTenantId()); + } + headers.setContentType(MediaType.APPLICATION_JSON); + return headers; + } ->>>>>>> d0812656ff2aee80b1eb0c0ab8e29a01d7d66553 } \ No newline at end of file