From 585ff1cd29e9875f5f2a0fa2b0fdc876c5c6301f Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期一, 26 一月 2026 18:26:31 +0800
Subject: [PATCH] 小程序   接口开发

---
 server/dmmall_service/src/main/java/com/doumee/service/business/impl/IntegralServiceImpl.java |  102 +++++++++++++++++++++++++++++++++------------------
 1 files changed, 66 insertions(+), 36 deletions(-)

diff --git a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/IntegralServiceImpl.java b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/IntegralServiceImpl.java
index 071a850..1d8e54b 100644
--- a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/IntegralServiceImpl.java
+++ b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/IntegralServiceImpl.java
@@ -208,6 +208,14 @@
         }else{
             shopMapper.subtractIntegral(shop.getId(),dealIntegralRequest.getIntegralNum());
         }
+
+        //绔欏唴淇�
+        noticeService.saveMemberIntegralNotice(
+                dealIntegralRequest.getIntegralObjType(),Constants.ZERO,shop.getId(),dealIntegralRequest.getIntegralNum(),
+                integral.getId(), dealIntegralRequest.getParam1()
+        );
+
+
         return integral.getId();
     }
 
@@ -462,21 +470,32 @@
             BigDecimal num = param.getNum();
             if(param.getType() == 1 &&Constants.formatBigdecimal(model.getIntegral()).compareTo(param.getNum())<0){
                 //濡傛灉鏄噺灏戯紝鍒ゆ柇鐢ㄦ埛浣欓鏄惁婊¤冻
-                num = num.multiply(new BigDecimal(-1));//鍑忓皯
+//                num = num.multiply(new BigDecimal(-1));//鍑忓皯
                 throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"鐢ㄦ埛璐︽埛浣欓涓嶈冻锛�");
             }
-            //璐︽埛浣欓
-            memberMapper.update(null,new UpdateWrapper<Member>().lambda()
-                    .eq(Member::getId,model.getId())
-                    .set(Member::getEditDate,date)
-                    .set(Member::getEditor,user.getId())
-                    .setSql(param.getType() == 0,"total_integral = ifnull(total_integral,0)+" + num)//绱澧炲姞
-                    .setSql(param.getType() == 0,"integral = ifnull(integral,0)+" + param.getNum())
-                    .setSql(param.getType() == 1,"integral = ifnull(integral,0)-" + param.getNum()));
-
             integralObjType = param.getType()==0?Constants.IntegralObjType.SYSTEM_RECHARGE:Constants.IntegralObjType.SYSTEM_DEDUCT;
-            integral.setTotalNum(param.getType() == 0? Constants.formatBigdecimal(model.getIntegral()).add(param.getNum()):Constants.formatBigdecimal(model.getIntegral()).subtract(param.getNum()));
-            integral.setUserType(Constants.ZERO);
+            DealIntegralRequest dealIntegralRequest = new DealIntegralRequest();
+            dealIntegralRequest.setIntegralNum(num);
+            dealIntegralRequest.setDealType(param.getType());
+            dealIntegralRequest.setMemberId(model.getId());
+            dealIntegralRequest.setObjId(null);
+            dealIntegralRequest.setOrderCode(null);
+            dealIntegralRequest.setIntegralObjType(integralObjType);
+            this.dealIntegral(dealIntegralRequest);
+
+
+            //璐︽埛浣欓
+//            memberMapper.update(null,new UpdateWrapper<Member>().lambda()
+//                    .eq(Member::getId,model.getId())
+//                    .set(Member::getEditDate,date)
+//                    .set(Member::getEditor,user.getId())
+//                    .setSql(param.getType() == 0,"total_integral = ifnull(total_integral,0)+" + num)//绱澧炲姞
+//                    .setSql(param.getType() == 0,"integral = ifnull(integral,0)+" + param.getNum())
+//                    .setSql(param.getType() == 1,"integral = ifnull(integral,0)-" + param.getNum()));
+//
+//            integralObjType = param.getType()==0?Constants.IntegralObjType.SYSTEM_RECHARGE:Constants.IntegralObjType.SYSTEM_DEDUCT;
+//            integral.setTotalNum(param.getType() == 0? Constants.formatBigdecimal(model.getIntegral()).add(param.getNum()):Constants.formatBigdecimal(model.getIntegral()).subtract(param.getNum()));
+//            integral.setUserType(Constants.ZERO);
         }else{//缁忛攢鍟嗚处鎴�
             Shop model = shopMapper.selectById(param.getMemberId());
             if(model == null ||Constants.equalsObject(model.getIsdeleted(),Constants.ONE)){
@@ -485,34 +504,45 @@
             BigDecimal num = param.getNum();
             if(param.getType() == 1 &&Constants.formatBigdecimal(model.getIntegral()).compareTo(param.getNum())<0){
                 //濡傛灉鏄噺灏戯紝鍒ゆ柇鐢ㄦ埛浣欓鏄惁婊¤冻
-                num = num.multiply(new BigDecimal(-1));//鍑忓皯
+//                num = num.multiply(new BigDecimal(-1));//鍑忓皯
                 throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"缁忛攢鍟嗚处鎴风Н鍒嗕綑棰濅笉瓒筹紒");
             }
             //璐︽埛浣欓
-            shopMapper.update(null,new UpdateWrapper<Shop>().lambda()
-                    .eq(Shop::getId,model.getId())
-                    .set(Shop::getEditDate,date)
-                    .set(Shop::getEditor,user.getId())
-                    .setSql(param.getType() == 0,"total_integral = ifnull(total_integral,0)+" + num)//绱澧炲姞
-                    .setSql(param.getType() == 0,"integral = ifnull(integral,0)+" + param.getNum())
-                    .setSql(param.getType() == 1,"integral = ifnull(integral,0)-" + param.getNum()));
-            integralObjType = param.getType()==0?Constants.IntegralObjType.SHOP_SYSTEM_RECHARGE:Constants.IntegralObjType.SHOP_SYSTEM_DEDUCT;
-            integral.setTotalNum(param.getType() == 0? Constants.formatBigdecimal(model.getIntegral()).add(param.getNum()):Constants.formatBigdecimal(model.getIntegral()).subtract(param.getNum()));
-            integral.setUserType(Constants.ONE);
+//            shopMapper.update(null,new UpdateWrapper<Shop>().lambda()
+//                    .eq(Shop::getId,model.getId())
+//                    .set(Shop::getEditDate,date)
+//                    .set(Shop::getEditor,user.getId())
+//                    .setSql(param.getType() == 0,"total_integral = ifnull(total_integral,0)+" + num)//绱澧炲姞
+//                    .setSql(param.getType() == 0,"integral = ifnull(integral,0)+" + param.getNum())
+//                    .setSql(param.getType() == 1,"integral = ifnull(integral,0)-" + param.getNum()));
+//            integralObjType = param.getType()==0?Constants.IntegralObjType.SHOP_SYSTEM_RECHARGE:Constants.IntegralObjType.SHOP_SYSTEM_DEDUCT;
+//            integral.setTotalNum(param.getType() == 0? Constants.formatBigdecimal(model.getIntegral()).add(param.getNum()):Constants.formatBigdecimal(model.getIntegral()).subtract(param.getNum()));
+//            integral.setUserType(Constants.ONE);
+
+            DealIntegralRequest dealIntegralRequest = new DealIntegralRequest();
+            dealIntegralRequest.setIntegralNum(num);
+            dealIntegralRequest.setDealType(param.getType());
+            dealIntegralRequest.setMemberId(model.getId());
+            dealIntegralRequest.setObjId(null);
+            dealIntegralRequest.setOrderCode(null);
+            dealIntegralRequest.setIntegralObjType(integralObjType);
+            this.dealShopIntegral(dealIntegralRequest);
+
+
         }
-        integral.setCreateDate(new Date());
-        integral.setCreator(user.getId());
-        integral.setIsdeleted(Constants.ZERO);
-        integral.setNum(param.getNum());
-        integral.setTitle(integralObjType.getName());
-        integral.setContent(integralObjType.getNoteinfo().replace("${param}",integral.getNum().toString()));
-        integral.setMemberId(param.getMemberId());
-        integral.setObjId(param.getMemberId());
-        integral.setObjType(integralObjType.getKey());
-        integral.setType(param.getType());
-        integral.setRemark(param.getRemark());
-        integral.setOrderCode(null);
-        integralMapper.insert(integral);
+//        integral.setCreateDate(new Date());
+//        integral.setCreator(user.getId());
+//        integral.setIsdeleted(Constants.ZERO);
+//        integral.setNum(param.getNum());
+//        integral.setTitle(integralObjType.getName());
+//        integral.setContent(integralObjType.getNoteinfo().replace("${param}",integral.getNum().toString()));
+//        integral.setMemberId(param.getMemberId());
+//        integral.setObjId(param.getMemberId());
+//        integral.setObjType(integralObjType.getKey());
+//        integral.setType(param.getType());
+//        integral.setRemark(param.getRemark());
+//        integral.setOrderCode(null);
+//        integralMapper.insert(integral);
     }
     @Override
     public IntegralDataResponse getIntegralData(IntegralRecordDTO model){

--
Gitblit v1.9.3