From 94d37bd869fcc1942267d2a1e8073653600df425 Mon Sep 17 00:00:00 2001
From: huanghongfa <huanghongfa123456>
Date: 星期一, 12 七月 2021 10:42:32 +0800
Subject: [PATCH] 修改随手拍活动审核计算收益规则(只要在活动时间内发布的随手拍都计算收益)

---
 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActUserWalletServiceImpl.java |  120 +++++++++++++++++++++++++++++-------------------------------
 1 files changed, 58 insertions(+), 62 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActUserWalletServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActUserWalletServiceImpl.java
index 50dddfd..e75c4e0 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActUserWalletServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActUserWalletServiceImpl.java
@@ -134,70 +134,66 @@
             return;
         }
 
-        if(photoActivityDO.getStatus() != ComActEasyPhotoActivityDO.status.jxz){
-            log.error("给用户添加收益失败,原因:活动未在进行中,活动id:" + easyPhotoDO.getActivityId());
+//        if(photoActivityDO.getStatus() != ComActEasyPhotoActivityDO.status.jxz){
+//            log.error("给用户添加收益失败,原因:活动未在进行中,活动id:" + easyPhotoDO.getActivityId());
+//            return;
+//        }
+
+
+//        Date nowDate = new Date();
+        //查询用户钱包
+        ComActUserWalletDO userWalletDO = comActUserWalletMapper.selectOne(new QueryWrapper<ComActUserWalletDO>()
+                .lambda().eq(ComActUserWalletDO::getUserId,easyPhotoDO.getSponsorId()).eq(ComActUserWalletDO::getCommunityId,easyPhotoDO.getCommunityId()));
+        if(userWalletDO == null){
+            userWalletDO = new ComActUserWalletDO();
+            userWalletDO.setIncomeAmount(BigDecimal.ZERO);
+            userWalletDO.setAvailableAmount(BigDecimal.ZERO);
+            userWalletDO.setSettlementAmount(BigDecimal.ZERO);
+            userWalletDO.setUserId(easyPhotoDO.getSponsorId());
+            userWalletDO.setCommunityId(easyPhotoDO.getCommunityId());
+            userWalletDO.setEasyCount(0);
+            userWalletDO.setCreateAt(new Date());
+            this.baseMapper.insert(userWalletDO);
+        }
+
+        //计算收益
+        BigDecimal profitAmount = BigDecimal.ZERO;
+        if(activityType.equals(ComActEasyPhotoDO.activityType.yz)){
+            profitAmount = photoActivityDO.getGoodReward();
+        }else if(activityType.equals(ComActEasyPhotoDO.activityType.jl)){
+            profitAmount = photoActivityDO.getExcellentReward();
+        }else if(activityType.equals(ComActEasyPhotoDO.activityType.pt)){
+            profitAmount = photoActivityDO.getOrdinaryReward();
+        }
+
+        if(profitAmount.compareTo(BigDecimal.ZERO) == 0){
+            log.error("此次参加活动的随手拍收益为0,不记录本次交易");
             return;
+        }else{
+            //记录钱包变动前金额
+            BigDecimal oldIncomeAmount = userWalletDO.getIncomeAmount();
+            BigDecimal oldAvailableAmount = userWalletDO.getAvailableAmount();
+            BigDecimal oldSettlementAmount = userWalletDO.getSettlementAmount();
+
+            //更新钱包金额
+            userWalletDO.setIncomeAmount(userWalletDO.getIncomeAmount().add(profitAmount));
+            userWalletDO.setAvailableAmount(userWalletDO.getAvailableAmount().add(profitAmount));
+            comActUserWalletMapper.updateById(userWalletDO);
+
+            //新增钱包资金交易记录
+            Long tradeId = comActUserWalletTradeService.addWalletTrade(easyPhotoDO.getSponsorId(),easyPhotoDO.getCommunityId()
+                    ,easyPhotoDO.getId(),profitAmount, ComActUserWalletTradeDO.type.fb,"发布随手拍"
+                    ,userId,userWalletDO.getId(),ComActUserWalletTradeDO.changeType.add);
+
+            //新增钱包资金变动记录
+            comActUserWalletChangeService.addWalletChange(easyPhotoDO.getSponsorId(),easyPhotoDO.getCommunityId(),userWalletDO.getId()
+                    ,oldIncomeAmount,userWalletDO.getIncomeAmount(),oldAvailableAmount,userWalletDO.getAvailableAmount()
+                    ,oldSettlementAmount,userWalletDO.getSettlementAmount(),tradeId);
         }
-
-
-        Date nowDate = new Date();
-        //活动正在进行中,需要给用户计算收益
-        if(nowDate.getTime() - photoActivityDO.getActivityStartAt().getTime() > 0 && nowDate.getTime() - photoActivityDO.getActivityEndAt().getTime() < 0){
-
-            //查询用户钱包
-            ComActUserWalletDO userWalletDO = comActUserWalletMapper.selectOne(new QueryWrapper<ComActUserWalletDO>()
-                    .lambda().eq(ComActUserWalletDO::getUserId,easyPhotoDO.getSponsorId()).eq(ComActUserWalletDO::getCommunityId,easyPhotoDO.getCommunityId()));
-            if(userWalletDO == null){
-                userWalletDO = new ComActUserWalletDO();
-                userWalletDO.setIncomeAmount(BigDecimal.ZERO);
-                userWalletDO.setAvailableAmount(BigDecimal.ZERO);
-                userWalletDO.setSettlementAmount(BigDecimal.ZERO);
-                userWalletDO.setUserId(easyPhotoDO.getSponsorId());
-                userWalletDO.setCommunityId(easyPhotoDO.getCommunityId());
-                userWalletDO.setEasyCount(0);
-                userWalletDO.setCreateAt(new Date());
-                this.baseMapper.insert(userWalletDO);
-            }
-
-            //计算收益
-            BigDecimal profitAmount = BigDecimal.ZERO;
-            if(activityType.equals(ComActEasyPhotoDO.activityType.yz)){
-                profitAmount = photoActivityDO.getGoodReward();
-            }else if(activityType.equals(ComActEasyPhotoDO.activityType.jl)){
-                profitAmount = photoActivityDO.getExcellentReward();
-            }else if(activityType.equals(ComActEasyPhotoDO.activityType.pt)){
-                profitAmount = photoActivityDO.getOrdinaryReward();
-            }
-
-            if(profitAmount.compareTo(BigDecimal.ZERO) == 0){
-                log.error("此次参加活动的随手拍收益为0,不记录本次交易");
-                return;
-            }else{
-                //记录钱包变动前金额
-                BigDecimal oldIncomeAmount = userWalletDO.getIncomeAmount();
-                BigDecimal oldAvailableAmount = userWalletDO.getAvailableAmount();
-                BigDecimal oldSettlementAmount = userWalletDO.getSettlementAmount();
-
-                //更新钱包金额
-                userWalletDO.setIncomeAmount(userWalletDO.getIncomeAmount().add(profitAmount));
-                userWalletDO.setAvailableAmount(userWalletDO.getAvailableAmount().add(profitAmount));
-                comActUserWalletMapper.updateById(userWalletDO);
-
-                //新增钱包资金交易记录
-                Long tradeId = comActUserWalletTradeService.addWalletTrade(easyPhotoDO.getSponsorId(),easyPhotoDO.getCommunityId()
-                        ,easyPhotoDO.getId(),profitAmount, ComActUserWalletTradeDO.type.fb,"发布随手拍"
-                        ,userId,userWalletDO.getId(),ComActUserWalletTradeDO.changeType.add);
-
-                //新增钱包资金变动记录
-                comActUserWalletChangeService.addWalletChange(easyPhotoDO.getSponsorId(),easyPhotoDO.getCommunityId(),userWalletDO.getId()
-                        ,oldIncomeAmount,userWalletDO.getIncomeAmount(),oldAvailableAmount,userWalletDO.getAvailableAmount()
-                        ,oldSettlementAmount,userWalletDO.getSettlementAmount(),tradeId);
-            }
-            //更新随手拍活动信息
-            easyPhotoDO.setActivityType(activityType);
-            easyPhotoDO.setActivityAmount(profitAmount);
-            comActEasyPhotoDAO.updateById(easyPhotoDO);
-        }
+        //更新随手拍活动信息
+        easyPhotoDO.setActivityType(activityType);
+        easyPhotoDO.setActivityAmount(profitAmount);
+        comActEasyPhotoDAO.updateById(easyPhotoDO);
     }
 
     /**

--
Gitblit v1.7.1