From 5201530b321e07bdd3062c8017abe51a4ee1a089 Mon Sep 17 00:00:00 2001 From: wangguorui <2069821375@qq.com> Date: Thu, 11 Dec 2025 18:24:40 +0800 Subject: [PATCH] =?UTF-8?q?12=E6=9C=8811=E6=97=A5=E7=8E=B0=E9=87=91?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E5=A4=9A=E8=AF=AD=E8=A8=80=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=EF=BC=8C=E5=AF=BC=E5=87=BA=E6=97=B6=E6=98=BE=E7=A4=BA=E5=AF=B9?= =?UTF-8?q?=E5=BA=94=E8=AF=AD=E8=A8=80=EF=BC=88=E4=BF=AE=E5=A4=8D=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/example/demo/Export/ExportServiceImpl.java | 30 ++++++++++++---------- .../demo/controller/coin/ExportController.java | 18 +++++++++++++ .../com/example/demo/domain/DTO/ArticleDTO.java | 1 + .../example/demo/domain/DTO/BeanRechargeDTO.java | 1 + .../java/com/example/demo/domain/DTO/CashDTO.java | 1 + .../com/example/demo/domain/DTO/ConsumeDTO.java | 1 + .../java/com/example/demo/domain/DTO/FanDTO.java | 1 + .../com/example/demo/domain/DTO/FinanceDTO.java | 1 + .../java/com/example/demo/domain/DTO/LiveDTO.java | 1 + .../com/example/demo/domain/DTO/OnlineDTO.java | 1 + .../com/example/demo/domain/DTO/RechargeDTO.java | 1 + .../com/example/demo/domain/DTO/RefundDTO.java | 1 + 12 files changed, 44 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/example/demo/Export/ExportServiceImpl.java b/src/main/java/com/example/demo/Export/ExportServiceImpl.java index 66c7797..8995263 100644 --- a/src/main/java/com/example/demo/Export/ExportServiceImpl.java +++ b/src/main/java/com/example/demo/Export/ExportServiceImpl.java @@ -45,9 +45,10 @@ public class ExportServiceImpl implements ExportService { * @param exportType 导出类型 ("充值明细", "退款明细", "消耗明细") * @param queueName Redis 队列名称 * @param requestData 请求数据字段名 ("rechargeUser", "refundUser", "consumeUser","liveUser") + * @param lang 语言参数 * @return Result */ - private Result addExport(Object dto, String exportType, String queueName, String requestData) { + private Result addExport(Object dto, String exportType, String queueName, String requestData, String lang) { HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); String token = request.getHeader("token"); @@ -66,7 +67,7 @@ public class ExportServiceImpl implements ExportService { Long recordId = idHolder.getId(); // 构造完整的 JSON 数据 - Map exportData = constructExportData(recordId, token, dto, requestData); + Map exportData = constructExportData(recordId, token, dto, requestData, lang); // 发送到 Redis 消息队列 String jsonData = new ObjectMapper().writeValueAsString(exportData); @@ -247,10 +248,11 @@ public class ExportServiceImpl implements ExportService { /** * 构造导出数据 */ - private Map constructExportData(Long recordId, String token, Object dto, String requestDataKey) throws Exception { + private Map constructExportData(Long recordId, String token, Object dto, String requestDataKey, String lang) throws Exception { Map exportData = new HashMap<>(); exportData.put("recordId", recordId); exportData.put("token", token); + exportData.put("lang", lang); // 添加语言参数 Map requestData = new HashMap<>(); if (dto instanceof RechargeDTO rechargeDTO) { @@ -291,51 +293,51 @@ public class ExportServiceImpl implements ExportService { @Override public Result addExportRecharge(RechargeDTO dto) { - return addExport(dto, "充值明细", "recharge:queue:export_queue", "rechargeUser"); + return addExport(dto, "充值明细", "recharge:queue:export_queue", "rechargeUser", dto.getLang()); } @Override public Result addExportRefund(RefundDTO dto) { - return addExport(dto, "退款明细", "refund:queue:export_queue", "refundUser"); + return addExport(dto, "退款明细", "refund:queue:export_queue", "refundUser", dto.getLang()); } @Override public Result addExportConsume(ConsumeDTO dto) { - return addExport(dto, "消耗明细", "consume:queue:export_queue", "consumeUser"); + return addExport(dto, "消耗明细", "consume:queue:export_queue", "consumeUser", dto.getLang()); } @Override public Result addExportLive(LiveDTO dto) { - return addExport(dto, "打赏明细", "lives:queue:export_queue", "beanConsumeLive"); + return addExport(dto, "打赏明细", "lives:queue:export_queue", "beanConsumeLive", dto.getLang()); } @Override public Result addExportFan(FanDTO dto) { - return addExport(dto, "铁粉明细", "fan:queue:export_queue", "beanConsumeFan"); + return addExport(dto, "铁粉明细", "fan:queue:export_queue", "beanConsumeFan", dto.getLang()); } @Override public Result addExportArticle(ArticleDTO dto) { - return addExport(dto, "文章明细", "article:queue:export_queue", "beanConsumeArticle"); + return addExport(dto, "文章明细", "article:queue:export_queue", "beanConsumeArticle", dto.getLang()); } @Override public Result addExportBean(BeanRechargeDTO dto) { - return addExport(dto, "金豆明细", "bean:queue:export_queue", "beanSystemRechargeInfo"); + return addExport(dto, "金豆明细", "bean:queue:export_queue", "beanSystemRechargeInfo", dto.getLang()); } @Override public Result addExportOnline(OnlineDTO dto) { - return addExport(dto, "在线明细", "online:queue:export_queue", "beanOnlineRechargeInfo"); + return addExport(dto, "在线明细", "online:queue:export_queue", "beanOnlineRechargeInfo", dto.getLang()); } @Override public Result addExportFinance(FinanceDTO dto) { - return addExport(dto, "现金退款明细", "finance:queue:export_queue", "cashRecordDTO"); + return addExport(dto, "现金退款明细", "finance:queue:export_queue", "cashRecordDTO", dto.getLang()); } @Override public Result addExportCash(CashDTO dto) { - return addExport(dto, "现金收款明细", "cash:queue:export_queue", "cashCollection"); + return addExport(dto, "现金收款明细", "cash:queue:export_queue", "cashCollection", dto.getLang()); } -} \ No newline at end of file +} 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 74257a4..4f65ccb 100644 --- a/src/main/java/com/example/demo/controller/coin/ExportController.java +++ b/src/main/java/com/example/demo/controller/coin/ExportController.java @@ -75,6 +75,7 @@ public class ExportController { HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); String token = request.getHeader("token"); dto.setToken(token); + dto.setLang(lang); // 设置语言参数 // 解析语言代码 String languageCode = parseLanguageCode(lang); @@ -106,6 +107,7 @@ public class ExportController { HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); String token = request.getHeader("token"); dto.setToken(token); + dto.setLang(lang); // 设置语言参数 // 解析语言代码 String languageCode = parseLanguageCode(lang); @@ -137,6 +139,7 @@ public class ExportController { HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); String token = request.getHeader("token"); dto.setToken(token); + dto.setLang(lang); // 设置语言参数 // 解析语言代码 String languageCode = parseLanguageCode(lang); @@ -159,6 +162,8 @@ public class ExportController { String lockKey = "export:lock:" + dto.getToken(); String requestId = UUID.randomUUID().toString(); long expireTime = 5000; + dto.setLang(lang); // 设置语言参数 + try { // 尝试获取锁 if (!redisLockUtil.tryLock(lockKey, requestId, expireTime)) { @@ -178,6 +183,8 @@ public class ExportController { String lockKey = "export:lock:" + dto.getToken(); String requestId = UUID.randomUUID().toString(); long expireTime = 5000; + dto.setLang(lang); // 设置语言参数 + try { // 尝试获取锁 if (!redisLockUtil.tryLock(lockKey, requestId, expireTime)) { @@ -197,6 +204,8 @@ public class ExportController { String lockKey = "export:lock:" + dto.getToken(); String requestId = UUID.randomUUID().toString(); long expireTime = 5000; + dto.setLang(lang); // 设置语言参数 + try { // 尝试获取锁 if (!redisLockUtil.tryLock(lockKey, requestId, expireTime)) { @@ -216,6 +225,8 @@ public class ExportController { String lockKey = "export:lock:" + dto.getToken(); String requestId = UUID.randomUUID().toString(); long expireTime = 5000; + dto.setLang(lang); // 设置语言参数 + try { // 尝试获取锁 if (!redisLockUtil.tryLock(lockKey, requestId, expireTime)) { @@ -235,6 +246,8 @@ public class ExportController { String lockKey = "export:lock:" + dto.getToken(); String requestId = UUID.randomUUID().toString(); long expireTime = 5000; + dto.setLang(lang); // 设置语言参数 + try { // 尝试获取锁 if (!redisLockUtil.tryLock(lockKey, requestId, expireTime)) { @@ -257,6 +270,8 @@ public class ExportController { String lockKey = "export:lock:" + dto.getToken(); String requestId = UUID.randomUUID().toString(); long expireTime = 5000; + dto.setLang(lang); // 设置语言参数 + try { // 尝试获取锁 if (!redisLockUtil.tryLock(lockKey, requestId, expireTime)) { @@ -276,6 +291,8 @@ public class ExportController { String lockKey = "export:lock:" + dto.getToken(); String requestId = UUID.randomUUID().toString(); long expireTime = 5000; + dto.setLang(lang); // 设置语言参数 + try { // 尝试获取锁 if (!redisLockUtil.tryLock(lockKey, requestId, expireTime)) { @@ -290,6 +307,7 @@ public class ExportController { } } + /** * 解析语言代码 */ diff --git a/src/main/java/com/example/demo/domain/DTO/ArticleDTO.java b/src/main/java/com/example/demo/domain/DTO/ArticleDTO.java index c9dc8da..7e483bb 100644 --- a/src/main/java/com/example/demo/domain/DTO/ArticleDTO.java +++ b/src/main/java/com/example/demo/domain/DTO/ArticleDTO.java @@ -28,6 +28,7 @@ public class ArticleDTO { private String text = ""; //关键词搜索 private Integer dataNum = 0; private String deptid = ""; + private String lang; @NotNull(message = "page不能为空") private Integer page = 1; diff --git a/src/main/java/com/example/demo/domain/DTO/BeanRechargeDTO.java b/src/main/java/com/example/demo/domain/DTO/BeanRechargeDTO.java index 71a243a..62f5f59 100644 --- a/src/main/java/com/example/demo/domain/DTO/BeanRechargeDTO.java +++ b/src/main/java/com/example/demo/domain/DTO/BeanRechargeDTO.java @@ -29,6 +29,7 @@ public class BeanRechargeDTO { private String text = ""; //关键词搜索 private Integer dataNum = 0; private String deptid = ""; + private String lang; @NotNull(message = "page不能为空") private Integer page = 1; diff --git a/src/main/java/com/example/demo/domain/DTO/CashDTO.java b/src/main/java/com/example/demo/domain/DTO/CashDTO.java index 09aeea1..85611ff 100644 --- a/src/main/java/com/example/demo/domain/DTO/CashDTO.java +++ b/src/main/java/com/example/demo/domain/DTO/CashDTO.java @@ -30,6 +30,7 @@ public class CashDTO { private String text = ""; //关键词搜索 private Integer dataNum = 0; private String deptid = ""; + private String lang; @NotNull(message = "page不能为空") private Integer page = 1; diff --git a/src/main/java/com/example/demo/domain/DTO/ConsumeDTO.java b/src/main/java/com/example/demo/domain/DTO/ConsumeDTO.java index 28aa272..97d9982 100644 --- a/src/main/java/com/example/demo/domain/DTO/ConsumeDTO.java +++ b/src/main/java/com/example/demo/domain/DTO/ConsumeDTO.java @@ -27,6 +27,7 @@ public class ConsumeDTO { private String text = ""; //关键词搜索 private Integer dataNum = 0; private String deptid = ""; + private String lang; @NotNull(message = "page不能为空") private Integer page = 1; diff --git a/src/main/java/com/example/demo/domain/DTO/FanDTO.java b/src/main/java/com/example/demo/domain/DTO/FanDTO.java index d917fec..bd70ce2 100644 --- a/src/main/java/com/example/demo/domain/DTO/FanDTO.java +++ b/src/main/java/com/example/demo/domain/DTO/FanDTO.java @@ -28,6 +28,7 @@ public class FanDTO { private String text = ""; //关键词搜索 private Integer dataNum = 0; private String deptid = ""; + private String lang; @NotNull(message = "page不能为空") private Integer page = 1; diff --git a/src/main/java/com/example/demo/domain/DTO/FinanceDTO.java b/src/main/java/com/example/demo/domain/DTO/FinanceDTO.java index d98283a..0bfdd5e 100644 --- a/src/main/java/com/example/demo/domain/DTO/FinanceDTO.java +++ b/src/main/java/com/example/demo/domain/DTO/FinanceDTO.java @@ -28,6 +28,7 @@ public class FinanceDTO { private Integer dataNum = 0; private String deptid = ""; private CashRecordDTO cashRecordDTO; + private String lang; @NotNull(message = "page不能为空") private Integer page = 1; diff --git a/src/main/java/com/example/demo/domain/DTO/LiveDTO.java b/src/main/java/com/example/demo/domain/DTO/LiveDTO.java index 180aded..24a08a9 100644 --- a/src/main/java/com/example/demo/domain/DTO/LiveDTO.java +++ b/src/main/java/com/example/demo/domain/DTO/LiveDTO.java @@ -28,6 +28,7 @@ public class LiveDTO { private String text = ""; //关键词搜索 private Integer dataNum = 0; private String deptid = ""; + private String lang; @NotNull(message = "page不能为空") private Integer page = 1; diff --git a/src/main/java/com/example/demo/domain/DTO/OnlineDTO.java b/src/main/java/com/example/demo/domain/DTO/OnlineDTO.java index b775884..38e9f56 100644 --- a/src/main/java/com/example/demo/domain/DTO/OnlineDTO.java +++ b/src/main/java/com/example/demo/domain/DTO/OnlineDTO.java @@ -27,6 +27,7 @@ public class OnlineDTO { private String text = ""; //关键词搜索 private Integer dataNum = 0; private String deptid = ""; + private String lang; @NotNull(message = "page不能为空") private Integer page = 1; diff --git a/src/main/java/com/example/demo/domain/DTO/RechargeDTO.java b/src/main/java/com/example/demo/domain/DTO/RechargeDTO.java index aa94c35..9484031 100644 --- a/src/main/java/com/example/demo/domain/DTO/RechargeDTO.java +++ b/src/main/java/com/example/demo/domain/DTO/RechargeDTO.java @@ -29,6 +29,7 @@ public class RechargeDTO { private Integer dataNum = 0; private String deptid = ""; private RechargeUser rechargeUser; + private String lang; @NotNull(message = "page不能为空") private Integer page = 1; diff --git a/src/main/java/com/example/demo/domain/DTO/RefundDTO.java b/src/main/java/com/example/demo/domain/DTO/RefundDTO.java index 3ec4359..f893f59 100644 --- a/src/main/java/com/example/demo/domain/DTO/RefundDTO.java +++ b/src/main/java/com/example/demo/domain/DTO/RefundDTO.java @@ -28,6 +28,7 @@ public class RefundDTO { private Integer dataNum = 0; private String deptid = ""; private RefundUser refundUser; + private String lang; @NotNull(message = "page不能为空") private Integer page = 1;