From 491372c3bffec87342f9f7f5546e2e83d5645d67 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Sun, 04 Feb 2024 18:09:06 +0800
Subject: [PATCH] 确认收货更新用户的会员信息

---
 src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java |   62 +++++++++++++------------------
 1 files changed, 26 insertions(+), 36 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java
index 814f89e..94871f7 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java
@@ -831,6 +831,9 @@
             } else {
                 System.out.println(number + " 不能被3整除");
             }
+
+            DateTime nowTimeFormat = DateUtil.parseTime(DateUtil.formatTime(DateUtil.date()));
+            System.out.println(nowTimeFormat);
         }
     @Override
     public void BuyToSell() {
@@ -878,19 +881,26 @@
                 BigDecimal remainder = bigDecimal.remainder(new BigDecimal(String.valueOf(cycle)));//取余
                 if (remainder.compareTo(BigDecimal.ZERO) == 0) {
                     /**
-                     * 更新买单状态
-                     * 收益生成一条卖单
-                     * 本金生成一条卖单
+                     * 用户的账户增加对应的收益
                      */
-//                    mallProductBuy.setMateState(ProductEnum.PRODUCT_BUY_MATE_STATE_SUCCESS.getValue());
-//                    mallProductBuyMapper.updateById(mallProductBuy);
                     BigDecimal nftTotal = mallProductBuy.getNftTotal();
                     BigDecimal profit = nftTotal.multiply(profitPercent.multiply(new BigDecimal(0.01)));
-//                    BigDecimal add = nftTotal.add(profit);
-//                    insertSell(mallProductBuy.getMemberId(),add,add,BigDecimal.ZERO,BigDecimal.ZERO);
-                    BigDecimal add = nftTotal.add(profit);
-                    insertSell(mallProductBuy.getMemberId(),profit,profit,BigDecimal.ZERO,BigDecimal.ZERO);
 //                    insertSell(mallProductBuy.getMemberId(),profit,profit,BigDecimal.ZERO,BigDecimal.ZERO);
+                    String orderNoSY = MallUtils.getOrderNum("SYNFT");
+                    mallMoneyFlowService.addMoneyFlow(
+                            mallProductBuy.getMemberId(),
+                            profit,
+                            MoneyFlowTypeNewEnum.PERK_CYCLE.getValue(),
+                            orderNoSY,
+                            null,
+                            FlowTypeNewEnum.NFT.getValue(),
+                            MoneyFlowTypeNewEnum.PERK_CYCLE.getDescrition(),
+                            AppContants.MEMBER_FLOW_DONE);
+
+                    MallMemberAmount mallMemberAmountMine = mallMemberAmountMapper.selectByMemberId(mallProductBuy.getMemberId());
+                    mallMemberAmountMine.setTrendsNft(mallMemberAmountMine.getTrendsNft().add(profit));
+                    mallMemberAmountMapper.updateTrendsNftById(mallMemberAmountMine);
+
 
                     /**
                      * 更新用户上级收益,冻结7天,7天时间到期自动释放到动态钱包
@@ -1042,30 +1052,6 @@
                      * 3、更新卖单子表的数据
                      */
                     agentProducer.sendFcmOrderBuyCancelMsg(mallProductBuyRecord.getId());
-
-//                    Long buyId = mallProductBuyRecord.getBuyId();
-//                    Long sellRecordId = mallProductBuyRecord.getSellRecordId();
-//                    MallProductBuy mallProductBuy = mallProductBuyMapper.selectById(buyId);
-//                    Long memberIdBuy = mallProductBuy.getMemberId();
-//                    //冻结账户
-//                    MallMember mallMemberBuy = memberMapper.selectById(memberIdBuy);
-//                    mallMemberBuy.setIsFrozen(ProductEnum.MEMBER_FROZEN.getValue());
-//                    memberMapper.updateById(mallMemberBuy);
-//                    //更新买单子表的数据
-//                    mallProductBuyRecord.setState(ProductEnum.PRODUCT_MATE_STATE_FAIL.getValue());
-//                    mallProductBuyRecordMapper.updateById(mallProductBuyRecord);
-//                    //更新买单主表
-//                    mallProductBuy.setNftAva(mallProductBuy.getNftAva().add(mallProductBuyRecord.getPickNftCnt()));
-//                    mallProductBuyMapper.updateById(mallProductBuy);
-//                    //更新卖单子表的数据
-//                    MallProductSellRecord mallProductSellRecord = mallProductSellRecordMapper.selectById(sellRecordId);
-//                    mallProductSellRecord.setState(ProductEnum.PRODUCT_MATE_STATE_FAIL.getValue());
-//                    mallProductSellRecordMapper.updateById(mallProductSellRecord);
-//                    //更新卖单主表
-//                    Long sellId = mallProductSellRecord.getSellId();
-//                    MallProductSell mallProductSell = mallProductSellMapper.selectById(sellId);
-//                    mallProductSell.setNftCntAva(mallProductSell.getNftCntAva().add(mallProductSellRecord.getNftCnt()));
-//                    mallProductSellMapper.updateById(mallProductSell);
                 }
             }
         }
@@ -1112,12 +1098,16 @@
         if(CollUtil.isEmpty(mallProductNfts)){
             return;
         }
-        DateTime nowTime = DateUtil.parseTime(DateUtil.formatTime(DateUtil.date()));
+        DateTime nowTime = DateUtil.date();
+        DateTime nowTimeFormat = DateUtil.parseTime(DateUtil.formatTime(nowTime));
         DataDictionaryCustom endTimeDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
                 DataDictionaryEnum.YU_YUE_END_TIME.getType(),
                 DataDictionaryEnum.YU_YUE_END_TIME.getCode()
         );
         DateTime endTime = DateUtil.parseTime(endTimeDic.getValue());
+        if(nowTimeFormat.compareTo(endTime) < 0){
+            return;
+        }
         for(MallProductNft mallProductNft : mallProductNfts){
             Long nftId = mallProductNft.getId();
             List<MallProductBuy> mallProductBuys = mallProductBuyMapper.selectListByStateAndProductNFTId(
@@ -1129,9 +1119,9 @@
             }
             for(MallProductBuy mallProductBuy : mallProductBuys){
                 /**
-                 * 当前时间比结束时间大
+                 * 当前时间比创建时间大
                  */
-                if(nowTime.compareTo(endTime) >= 0){
+                if(nowTime.compareTo(mallProductBuy.getCreatedTime()) >= 0){
                     /**
                      * 返回令牌
                      * 预约记录超时

--
Gitblit v1.9.1