From 92b91f9628c5b3072fe8f6cc260270b21387ce42 Mon Sep 17 00:00:00 2001 From: Raja Nabeel Date: Fri, 17 May 2024 19:55:26 +0500 Subject: [PATCH] committ --- .../mfsys/uco/controller/UserController.java | 2 +- .../mfsys/uco/dto/AccountInquiryResponse.java | 6 ++++++ .../mfsys/uco/dto/EvaluatedCurrencyReponse.java | 3 +++ .../java/com/mfsys/uco/model/UcoAccount.java | 2 ++ .../uco/repository/UCOAccountRepository.java | 4 +++- .../mfsys/uco/service/TransactionService.java | 8 ++++++-- .../mfsys/uco/service/UcoAccountService.java | 17 ++++++++++++++--- 7 files changed, 35 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/mfsys/uco/controller/UserController.java b/src/main/java/com/mfsys/uco/controller/UserController.java index d43040c..85811b4 100644 --- a/src/main/java/com/mfsys/uco/controller/UserController.java +++ b/src/main/java/com/mfsys/uco/controller/UserController.java @@ -82,7 +82,7 @@ public class UserController { } @GetMapping(UCOURI.FETCH_ACCOUNT_INQUIRY) - public AccountInquiryResponse getAccountInquiry( + public List getAccountInquiry( @RequestParam String acntTypeCode, @RequestParam String acntTypeValue, @RequestParam String porOrgacode, diff --git a/src/main/java/com/mfsys/uco/dto/AccountInquiryResponse.java b/src/main/java/com/mfsys/uco/dto/AccountInquiryResponse.java index 50b9c0b..94f2ef1 100644 --- a/src/main/java/com/mfsys/uco/dto/AccountInquiryResponse.java +++ b/src/main/java/com/mfsys/uco/dto/AccountInquiryResponse.java @@ -1,5 +1,7 @@ package com.mfsys.uco.dto; +import com.mfsys.comm.util.FieldNameLength; +import jakarta.persistence.Column; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -12,4 +14,8 @@ import lombok.NoArgsConstructor; public class AccountInquiryResponse { private String mbmBkmstitle; private String mbmBkmsnumber; + private String pcrCurrcode; + private String pcrCurrdesc; + private String pcrCurrshort; + } diff --git a/src/main/java/com/mfsys/uco/dto/EvaluatedCurrencyReponse.java b/src/main/java/com/mfsys/uco/dto/EvaluatedCurrencyReponse.java index 078a828..911c6cb 100644 --- a/src/main/java/com/mfsys/uco/dto/EvaluatedCurrencyReponse.java +++ b/src/main/java/com/mfsys/uco/dto/EvaluatedCurrencyReponse.java @@ -14,4 +14,7 @@ import java.math.BigDecimal; public class EvaluatedCurrencyReponse { private String pcrCurrcode; private double sgtGntramtfc; + private double serviceCharges; + private double targetPerEratrateact; + } diff --git a/src/main/java/com/mfsys/uco/model/UcoAccount.java b/src/main/java/com/mfsys/uco/model/UcoAccount.java index 11c3972..0958fcc 100644 --- a/src/main/java/com/mfsys/uco/model/UcoAccount.java +++ b/src/main/java/com/mfsys/uco/model/UcoAccount.java @@ -38,5 +38,7 @@ public class UcoAccount { private String pcrCurrdesc; @Column(name = "PCR_CURRCODE", columnDefinition = FieldNameLength.PCR_CURRCODE) private String pcrCurrcode; + @Column(name = "PCR_CURRSHORT", columnDefinition = FieldNameLength.PCR_CURRCODE) + private String pcrCurrshort; } diff --git a/src/main/java/com/mfsys/uco/repository/UCOAccountRepository.java b/src/main/java/com/mfsys/uco/repository/UCOAccountRepository.java index 1072351..d0e9a79 100644 --- a/src/main/java/com/mfsys/uco/repository/UCOAccountRepository.java +++ b/src/main/java/com/mfsys/uco/repository/UCOAccountRepository.java @@ -6,9 +6,11 @@ import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.Query; import org.springframework.stereotype.Repository; +import java.util.List; + @Repository public interface UCOAccountRepository extends JpaRepository { @Query("SELECT c FROM BN_MS_UC_UCOACCOUNT c WHERE c.id.porOrgacode =:porOrgacode and c.cmpCustcode = :cmpCustcode") - UcoAccount findUcoAccountByCmpCustcode(String porOrgacode, String cmpCustcode); + List findUcoAccountByCmpCustcode(String porOrgacode, String cmpCustcode); } diff --git a/src/main/java/com/mfsys/uco/service/TransactionService.java b/src/main/java/com/mfsys/uco/service/TransactionService.java index 296b8b6..ce8bafe 100644 --- a/src/main/java/com/mfsys/uco/service/TransactionService.java +++ b/src/main/java/com/mfsys/uco/service/TransactionService.java @@ -148,8 +148,12 @@ public class TransactionService { } double convertedAmount = convertCurrency(baseCurrencyCode, targetCurrencyCode, sgtGntramtfc, exchangeRates); - - return EvaluatedCurrencyReponse.builder().pcrCurrcode(targetCurrencyCode).sgtGntramtfc(convertedAmount).build(); + return EvaluatedCurrencyReponse.builder() + .pcrCurrcode(targetCurrencyCode) + .sgtGntramtfc(convertedAmount) + .serviceCharges(0.0) + .targetPerEratrateact(targetCurrencyCode.equals("default")?(1/exchangeRates.get(baseCurrencyCode)):exchangeRates.get(targetCurrencyCode)) + .build(); } public double convertCurrency(String baseCurrencyCode, String targetCurrencyCode, double amount, Map exchangeRates) { diff --git a/src/main/java/com/mfsys/uco/service/UcoAccountService.java b/src/main/java/com/mfsys/uco/service/UcoAccountService.java index 3a6ec0f..a74cd60 100644 --- a/src/main/java/com/mfsys/uco/service/UcoAccountService.java +++ b/src/main/java/com/mfsys/uco/service/UcoAccountService.java @@ -40,7 +40,7 @@ public class UcoAccountService { this.objectMapper = objectMapper; } - public AccountInquiryResponse fetchAccountTitile(String porOrgacode, String acntTypeCode, String acntTypeValue) { + public List fetchAccountTitile(String porOrgacode, String acntTypeCode, String acntTypeValue) { CustomerProfile customerProfile = new CustomerProfile(); if (acntTypeCode.equals(UCOConstants.CMP_PHONE)) { @@ -51,8 +51,17 @@ public class UcoAccountService { if (Objects.isNull(customerProfile)) { throw new AccountDoesntExistsException(); } - UcoAccount ucoAccount = ucoAccountRepository.findUcoAccountByCmpCustcode(porOrgacode, customerProfile.getCmpCustcode()); - return AccountInquiryResponse.builder().mbmBkmsnumber(ucoAccount.getId().getMbmBkmsnumber()).mbmBkmstitle(ucoAccount.getMbmBkmstitle()).build(); + List ucoAccountList= ucoAccountRepository.findUcoAccountByCmpCustcode(porOrgacode, customerProfile.getCmpCustcode()); + List accountInquiryResponseList = new ArrayList<>(); + ucoAccountList.stream().forEach(account ->{; + accountInquiryResponseList.add( AccountInquiryResponse.builder().mbmBkmsnumber(account.getId().getMbmBkmsnumber()) + .mbmBkmstitle(account.getMbmBkmstitle()) + .pcrCurrshort(account.getPcrCurrshort()) + .pcrCurrcode(account.getPcrCurrcode()) + .pcrCurrdesc(account.getPcrCurrdesc()) + .build()); + }); + return accountInquiryResponseList; } @@ -95,6 +104,7 @@ public class UcoAccountService { .pcrCurrdesc(accountDetail.getPcrCurrdesc()) .cmpCustcode(accountDetail.getCmpCustcode()) .pcrCurrcode(accountDetail.getPcrCurrcode()) + .pcrCurrshort(accountDetail.getPcrCurrshort()) .mbmBkmsclosed(accountDetail.isMbmBkmsclosed()) .mbmBkmsopendate(LocalDate.now()) .sgtLasttrandate(LocalDate.now()) @@ -136,6 +146,7 @@ public void saveCustomerAccountDetails(String porOrgacode, String cmpCustcode,St .pcrCurrdesc(k.getPcrCurrdesc()) .cmpCustcode(k.getCmpCustcode()) .pcrCurrcode(k.getPcrCurrcode()) + .pcrCurrshort(k.getPcrCurrshort()) .mbmBkmsclosed(k.isMbmBkmsclosed()) .mbmBkmsopendate(LocalDate.now()) .sgtLasttrandate(LocalDate.now())