From eca66cd5a9976aef14647993ab7ba7635c3be122 Mon Sep 17 00:00:00 2001 From: huangqizhen <15552608129@163.com> Date: Sun, 18 Jan 2026 15:46:30 +0800 Subject: [PATCH] =?UTF-8?q?1.18=20=E8=B5=84=E9=87=91=E6=B5=81=E6=B0=B4?= =?UTF-8?q?=E6=98=A0=E5=B0=84=E5=9C=B0=E5=8C=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../example/demo/controller/cash/CashRefundController.java | 10 +++++----- .../com/example/demo/controller/coin/ExportController.java | 6 +++--- src/main/java/com/example/demo/domain/vo/cash/FundsDTO.java | 2 +- .../demo/serviceImpl/cash/CashRefundServiceImpl.java | 13 ++++++++++++- 4 files changed, 21 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/example/demo/controller/cash/CashRefundController.java b/src/main/java/com/example/demo/controller/cash/CashRefundController.java index 86c2cb5..15f1459 100644 --- a/src/main/java/com/example/demo/controller/cash/CashRefundController.java +++ b/src/main/java/com/example/demo/controller/cash/CashRefundController.java @@ -572,8 +572,8 @@ public class CashRefundController { funds.setPaymentCurrencyName(languageTranslationUtil.translate(funds.getPaymentCurrencyName(), lang)); } // 翻译到账币种 - if (funds.getReceivedCurrency() != null) { - funds.setReceivedCurrency(languageTranslationUtil.translate(funds.getReceivedCurrency(), lang)); + if (funds.getReceivedCurrencyName() != null) { + funds.setReceivedCurrencyName(languageTranslationUtil.translate(funds.getReceivedCurrencyName(), lang)); } // 翻译退款币种 if (funds.getRefundCurrency() != null) { @@ -693,10 +693,10 @@ public class CashRefundController { } // 转换到账币种 - if (fundsDTO.getReceivedCurrency() != null && !fundsDTO.getReceivedCurrency().isEmpty()) { + if (fundsDTO.getReceivedCurrencyName() != null && !fundsDTO.getReceivedCurrencyName().isEmpty()) { String chineseReceivedCurrency = translationService.findChineseSimplifiedByTranslation( - fundsDTO.getReceivedCurrency(), languageCode); - fundsDTO.setReceivedCurrency(chineseReceivedCurrency); + fundsDTO.getReceivedCurrencyName(), languageCode); + fundsDTO.setReceivedCurrencyName(chineseReceivedCurrency); } // 转换退款币种 diff --git a/src/main/java/com/example/demo/controller/coin/ExportController.java b/src/main/java/com/example/demo/controller/coin/ExportController.java index 9a8a05f..c39fe10 100644 --- a/src/main/java/com/example/demo/controller/coin/ExportController.java +++ b/src/main/java/com/example/demo/controller/coin/ExportController.java @@ -830,10 +830,10 @@ public class ExportController { fundsDTO.setPaymentCurrencyName(chinesePaymentCurrency); } // 翻译到账币种 - if (fundsDTO.getReceivedCurrency() != null && !fundsDTO.getReceivedCurrency().isEmpty()) { + if (fundsDTO.getReceivedCurrencyName() != null && !fundsDTO.getReceivedCurrencyName().isEmpty()) { String chineseReceivedCurrency = translationService.findChineseSimplifiedByTranslation( - fundsDTO.getReceivedCurrency(), languageCode); - fundsDTO.setReceivedCurrency(chineseReceivedCurrency); + fundsDTO.getReceivedCurrencyName(), languageCode); + fundsDTO.setReceivedCurrencyName(chineseReceivedCurrency); } } } diff --git a/src/main/java/com/example/demo/domain/vo/cash/FundsDTO.java b/src/main/java/com/example/demo/domain/vo/cash/FundsDTO.java index 2b1be6c..5c6f7b8 100644 --- a/src/main/java/com/example/demo/domain/vo/cash/FundsDTO.java +++ b/src/main/java/com/example/demo/domain/vo/cash/FundsDTO.java @@ -36,7 +36,7 @@ public class FundsDTO { private String paymentCurrencyName; private BigDecimal paymentAmount; @ExcelIgnore - private String receivedCurrency; + private Integer receivedCurrency; private String receivedCurrencyName; private BigDecimal receivedAmount; private BigDecimal handlingCharge; diff --git a/src/main/java/com/example/demo/serviceImpl/cash/CashRefundServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/cash/CashRefundServiceImpl.java index 715c216..3c1e6e8 100644 --- a/src/main/java/com/example/demo/serviceImpl/cash/CashRefundServiceImpl.java +++ b/src/main/java/com/example/demo/serviceImpl/cash/CashRefundServiceImpl.java @@ -629,6 +629,7 @@ CashRecordDone cashRecordDone1 = new CashRecordDone(); // 4. 收集所有需要转换的 regionId 和 currencyId Set regionIds = new HashSet<>(); Set currencyIds = new HashSet<>(); + Set reCurrencyIds = new HashSet<>(); for (FundsDTO dto : list) { if (dto.getMarket() != null) { regionIds.add(dto.getMarket()); @@ -636,6 +637,9 @@ CashRecordDone cashRecordDone1 = new CashRecordDone(); if (dto.getPaymentCurrency() != null) { currencyIds.add(dto.getPaymentCurrency()); } + if (dto.getReceivedCurrency() != null) { + reCurrencyIds.add(dto.getReceivedCurrency()); + } } // 5. 批量查询地区字典 @@ -655,12 +659,19 @@ CashRecordDone cashRecordDone1 = new CashRecordDone(); currencyMap.put(currency.getId(), currency.getName()); // 或 getCode(),按需调整 } } + Map reCurrencyMap = new HashMap<>(); + if (!reCurrencyIds.isEmpty()) { + List reCurrencies = refundMapper.selectByCIds(new ArrayList<>(reCurrencyIds)); + for (Currency reCurrency : reCurrencies) { + reCurrencyMap.put(reCurrency.getId(), reCurrency.getName()); // 或 getCode(),按需调整 + } + } // 7. 回填地区名称和币种名称到 DTO for (FundsDTO dto : list) { dto.setMarketName(regionMap.get(dto.getMarket())); dto.setPaymentCurrencyName(currencyMap.get(dto.getPaymentCurrency())); - dto.setReceivedCurrencyName(currencyMap.get(dto.getReceivedCurrency())); + dto.setReceivedCurrencyName(reCurrencyMap.get(dto.getReceivedCurrency())); } // 8. 返回分页结果