From ac4e0288fc652b72a22e61fc78cf39ab067917c7 Mon Sep 17 00:00:00 2001 From: yyb <1416014977@qq.com> Date: Wed, 28 Jan 2026 09:37:43 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E6=96=B0=E5=A2=9E=E6=8C=96=E7=9F=BF?= =?UTF-8?q?=E8=B4=A6=E6=88=B7=E7=BC=93=E5=AD=98=E5=88=A0=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/m2pool/lease/task/OrderAndPayTask.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/main/java/com/m2pool/lease/task/OrderAndPayTask.java b/src/main/java/com/m2pool/lease/task/OrderAndPayTask.java index 94f1565..1d6d28a 100644 --- a/src/main/java/com/m2pool/lease/task/OrderAndPayTask.java +++ b/src/main/java/com/m2pool/lease/task/OrderAndPayTask.java @@ -1,6 +1,7 @@ package com.m2pool.lease.task; import cn.hutool.json.JSONUtil; +import com.alibaba.cloud.commons.lang.StringUtils; import com.baomidou.dynamic.datasource.annotation.DSTransactional; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; @@ -13,6 +14,7 @@ import com.m2pool.lease.entity.*; import com.m2pool.lease.mapper.*; import com.m2pool.lease.mq.message.RabbitmqDeleteWalletMessage; import com.m2pool.lease.mq.message.RabbitmqPayAutoMessage; +import com.m2pool.lease.redis.service.RedisService; import com.m2pool.lease.service.LeaseOrderItemService; import com.m2pool.lease.service.LeasePayRecordMessageInfoService; import com.m2pool.lease.service.LeasePayRecordMessageService; @@ -20,7 +22,9 @@ import com.m2pool.lease.service.LeaseUserOwnedProductService; import com.m2pool.lease.utils.DateUtils; import com.m2pool.lease.utils.HashUtils; import org.springframework.amqp.rabbit.core.RabbitTemplate; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Configuration; +import org.springframework.data.redis.core.RedisTemplate; import org.springframework.scheduling.annotation.Async; import org.springframework.scheduling.annotation.EnableAsync; import org.springframework.scheduling.annotation.EnableScheduling; @@ -91,6 +95,8 @@ public class OrderAndPayTask { private LeaseMachineMapper leaseMachineMapper; @Resource private LedgerLogService ledgerLogService; + @Resource + private RedisService redisService; /** * 检查钱包半年内是否有 支付,充值,提现操作 @@ -787,6 +793,7 @@ public class OrderAndPayTask { Map sellerInfoMap = leaseShops.stream().collect(Collectors.toMap(LeaseShop::getId, Function.identity())); List reocrdList = new ArrayList<>(); + Map redisMapKeyFiled = new HashMap<>(); //遍历按订单id分组后的map orderItemMap.forEach((orderId, orderItemList) -> { LeaseOrderItem firstItem = orderItemList.get(0); @@ -808,6 +815,9 @@ public class OrderAndPayTask { //实际支付金额 = 累积的实际支付金额 totalRealAmount = totalRealAmount.add(item.getSettlePayRealAmount()); totalNeedAmount = totalNeedAmount.add(item.getSettlePayRealAmount()); + if (!StringUtils.isEmpty(item.getUser())){ + redisMapKeyFiled.put(combinationKey(item.getPool(),item.getUser(),item.getCoin(),item.getAlgorithm()),item.getMiner()); + } } LeasePayRecordMessage build = LeasePayRecordMessage.builder() @@ -867,6 +877,8 @@ public class OrderAndPayTask { //修改买家和卖家账户余额 int buyerUpdate = leaseUserWalletDataMapper.updateBalanceAndBlockBalanceById(buyerUpdateRecords); int sellerUpdate = leaseShopConfigMapper.updateBalanceById(sellerUpdateRecords); + + redisService.deleteCacheMapValue7(redisMapKeyFiled); if (buyerUpdate > 0 || sellerUpdate > 0){ for (LeasePayRecordMessage item : reocrdList) { recordLog(item); @@ -874,6 +886,11 @@ public class OrderAndPayTask { } } + + public String combinationKey(String pool,String walletAddress,String coin,String algo){ + return pool +":"+ walletAddress +":"+ coin +":"+ algo; + } + /** * 合并相同卖家条件的支付记录消息(按 toAddress, fromSymbol, fromChain) * @param records 支付记录消息列表