|  |  | 
 |  |  | package com.xcong.excoin; | 
 |  |  |  | 
 |  |  | import cn.hutool.core.collection.CollUtil; | 
 |  |  | import jnr.ffi.annotations.IgnoreError; | 
 |  |  |  | 
 |  |  | import com.xcong.excoin.modules.coin.dao.MemberAccountMoneyChangeDao; | 
 |  |  | import com.xcong.excoin.modules.coin.entity.MemberAccountMoneyChange; | 
 |  |  | import com.xcong.excoin.modules.contract.dao.ContractOrderDao; | 
 |  |  | 
 |  |  |     @Resource | 
 |  |  |     private MemberAccountMoneyChangeDao memberAccountMoneyChangeDao; | 
 |  |  |  | 
 |  |  |     @Test | 
 |  |  |     /*@Test | 
 |  |  |     public void returnTest() { | 
 |  |  |         ContractOrderEntity entity = contractOrderDao.selectById(667L); | 
 |  |  |         OrderWebsocketServiceImpl orderWebsocketService = SpringContextHolder.getBean(OrderWebsocketServiceImpl.class); | 
 |  |  |         orderWebsocketService.calYj(19L, new BigDecimal(4.18004236), entity, AgentReturnEntity.ORDER_TYPE_OPEN); | 
 |  |  |     } | 
 |  |  |     }*/ | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     @Test | 
 |  |  |     @Transactional(rollbackFor = Exception.class) | 
 |  |  |     public void moneyReturnTest() { | 
 |  |  |         List<AgentReturnEntity> list = agentReturnDao.selectAllNeedMoneyReturn(); | 
 |  |  |         log.info("返佣条数:{}", list.size()); | 
 |  |  |         if (CollUtil.isNotEmpty(list)) { | 
 |  |  |             for (AgentReturnEntity agentReturn : list) { | 
 |  |  |                 BigDecimal needReturn = agentReturn.getReturnAmount(); | 
 |  |  |                 Long memberId = agentReturn.getMemberId(); | 
 |  |  |                 MemberWalletAgentEntity walletAgent = memberWalletAgentDao.selectWalletAgentBymIdAndCode(memberId, "USDT"); | 
 |  |  |                 Long refererId = agentReturn.getRefererId(); | 
 |  |  |                 MemberWalletAgentEntity walletAgent = memberWalletAgentDao.selectWalletAgentBymIdAndCode(refererId, "USDT"); | 
 |  |  |                 if (walletAgent == null) { | 
 |  |  |                     continue; | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |                 log.info("用户ID:{}, 当前余额:{},总金额:{}, 返佣金额:{}", memberId, walletAgent.getAvailableBalance().toPlainString(), walletAgent.getTotalBalance().toPlainString(), needReturn); | 
 |  |  |                 log.info("用户ID:{}, 当前余额:{},总金额:{}, 返佣金额:{}", refererId, walletAgent.getAvailableBalance().toPlainString(), walletAgent.getTotalBalance().toPlainString(), needReturn); | 
 |  |  |                 walletAgent.setAvailableBalance(walletAgent.getAvailableBalance().add(needReturn)); | 
 |  |  |                 walletAgent.setTotalBalance(walletAgent.getTotalBalance().add(needReturn)); | 
 |  |  |  | 
 |  |  |                 agentReturn.setIsReturn(AgentReturnEntity.IS_RETURN_Y); | 
 |  |  |  | 
 |  |  |                 MemberAccountMoneyChange moneyChange = new MemberAccountMoneyChange(); | 
 |  |  |                 moneyChange.setAmount(needReturn); | 
 |  |  |                 moneyChange.setContent("佣金到账"); | 
 |  |  |                 moneyChange.setType(MemberAccountMoneyChange.TYPE_WALLET_AGENT); | 
 |  |  |                 moneyChange.setStatus(MemberAccountMoneyChange.STATUS_SUCCESS_INTEGER); | 
 |  |  |                 moneyChange.setMemberId(memberId); | 
 |  |  |                 moneyChange.setMemberId(refererId); | 
 |  |  |                 moneyChange.setSymbol("USDT"); | 
 |  |  |  | 
 |  |  | //                // 更新代理钱包金额 | 
 |  |  | //                memberWalletAgentDao.updateById(walletAgent); | 
 |  |  |                 memberWalletAgentDao.updateById(walletAgent); | 
 |  |  | //                // 更新返佣明细中状态 | 
 |  |  | //                agentReturnDao.updateById(agentReturn); | 
 |  |  |                 agentReturnDao.updateAgentReturnStatusByRefererId(AgentReturnEntity.IS_RETURN_Y, refererId); | 
 |  |  | //                // 插入财务流水记录 | 
 |  |  | //                memberAccountMoneyChangeDao.insert(moneyChange); | 
 |  |  |                 memberAccountMoneyChangeDao.insert(moneyChange); | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |     } |