From 3669a1434209e399d46341504bd241dbf51ac291 Mon Sep 17 00:00:00 2001
From: puhanshu <a9236326>
Date: 星期五, 10 十二月 2021 10:29:10 +0800
Subject: [PATCH] 修改活动bug

---
 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActIntegralUserTradeServiceImpl.java |   34 ++++++++++++++++++++++++++--------
 1 files changed, 26 insertions(+), 8 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActIntegralUserTradeServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActIntegralUserTradeServiceImpl.java
index 7f588c4..8b46e66 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActIntegralUserTradeServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActIntegralUserTradeServiceImpl.java
@@ -320,6 +320,20 @@
 //                        identityType=2;
 //                    }
 //                }
+                break;
+            case 9:
+                remark.append("取消活动扣除积分");
+                if (integralUserDTO.getActivityType() == 1) {
+                    ComActActivityDO actActivityDO1 = comActActivityService.getById(serviceId);
+                    if (actActivityDO1 != null) {
+                        amount = -actActivityDO1.getCancelDeduct();
+                        if (actActivityDO1.getVolunteerMax() != 0) {
+                            identityType = 3;
+                        } else {
+                            identityType = 1;
+                        }
+                    }
+                }
             default:
                 break;
         }
@@ -367,19 +381,19 @@
         Integer integralAvailableResident = integralUserDO.getIntegralAvailableResident();
         Integer integralFrozenResident = integralUserDO.getIntegralFrozenResident();
 
-        integralUserDO.setIntegralSum(integralUserDO.getIntegralSum() + amount);
-        integralUserDO.setIntegralAvailableSum(integralUserDO.getIntegralAvailableSum() + amount);
+        integralUserDO.setIntegralSum(addIntegral(integralUserDO.getIntegralSum() + amount));
+        integralUserDO.setIntegralAvailableSum(addIntegral(integralUserDO.getIntegralAvailableSum() + amount));
         integralUserDO.setUpdateAt(nowDate);
         // 根据不同身份,计算钱包金额
         if (identityType.equals(ComActIntegralUserTradeDO.identityType.jm)) {
-            integralUserDO.setIntegralResident(integralUserDO.getIntegralResident() + amount);
-            integralUserDO.setIntegralAvailableResident(integralUserDO.getIntegralAvailableResident() + amount);
+            integralUserDO.setIntegralResident(addIntegral(integralUserDO.getIntegralResident() + amount));
+            integralUserDO.setIntegralAvailableResident(addIntegral(integralUserDO.getIntegralAvailableResident() + amount));
         } else if (identityType.equals(ComActIntegralUserTradeDO.identityType.dy)) {
-            integralUserDO.setIntegralParty(integralUserDO.getIntegralParty() + amount);
-            integralUserDO.setIntegralAvailableParty(integralUserDO.getIntegralAvailableParty() + amount);
+            integralUserDO.setIntegralParty(addIntegral(integralUserDO.getIntegralParty() + amount));
+            integralUserDO.setIntegralAvailableParty(addIntegral(integralUserDO.getIntegralAvailableParty() + amount));
         } else if (identityType.equals(ComActIntegralUserTradeDO.identityType.zyz)) {
-            integralUserDO.setIntegralVolunteer(integralUserDO.getIntegralVolunteer() + amount);
-            integralUserDO.setIntegralAvailableVolunteer(integralUserDO.getIntegralAvailableVolunteer() + amount);
+            integralUserDO.setIntegralVolunteer(addIntegral(integralUserDO.getIntegralVolunteer() + amount));
+            integralUserDO.setIntegralAvailableVolunteer(addIntegral(integralUserDO.getIntegralAvailableVolunteer() + amount));
         }
         // 更新钱包
         comActIntegralUserService.updateById(integralUserDO);
@@ -399,6 +413,10 @@
         return R.ok();
     }
 
+    private int addIntegral(int integral) {
+        return integral > 0 ? integral : 0;
+    }
+
     /**
      * 根据类型、用户id、社区id构建查询请求参数
      * 

--
Gitblit v1.7.1