From 2cfceadff437135a255990ab9698788a48adb636 Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期二, 16 十二月 2025 09:54:00 +0800
Subject: [PATCH] 小程序 用户端接口开发

---
 server/dmmall_service/src/main/java/com/doumee/service/business/impl/IntegralServiceImpl.java |   36 +++++++++++++++++++++++++++++++++++-
 1 files changed, 35 insertions(+), 1 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 5ed3b67..d53622a 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
@@ -10,10 +10,12 @@
 import com.doumee.core.utils.Utils;
 import com.doumee.dao.business.IntegralMapper;
 import com.doumee.dao.business.MemberMapper;
+import com.doumee.dao.business.ShopMapper;
 import com.doumee.dao.business.join.IntegralJoinMapper;
 import com.doumee.dao.business.model.Fund;
 import com.doumee.dao.business.model.Integral;
 import com.doumee.dao.business.model.Member;
+import com.doumee.dao.business.model.Shop;
 import com.doumee.dao.web.dto.IntegralDTO;
 import com.doumee.dao.web.request.DealIntegralRequest;
 import com.doumee.service.business.AreasService;
@@ -58,6 +60,9 @@
 
     @Autowired
     private MemberMapper memberMapper;
+
+    @Autowired
+    private ShopMapper shopMapper;
 
     @Transactional(rollbackFor = {Exception.class, BusinessException.class})
     @Override
@@ -150,6 +155,7 @@
         integral.setNum(dealIntegralRequest.getIntegralNum());
         integral.setTotalNum(dealIntegralRequest.getDealType().equals(Constants.ZERO)? member.getIntegral().add(integral.getNum()):member.getIntegral().subtract(integral.getNum()));
         integral.setOrderCode(dealIntegralRequest.getOrderCode());
+        integral.setUserType(Constants.ZERO);
         integralMapper.insert(integral);
         if(dealIntegralRequest.getDealType().equals(Constants.ZERO)){
             memberMapper.addIntegral(member.getId(),dealIntegralRequest.getIntegralNum(),
@@ -160,7 +166,35 @@
         return integral.getId();
     }
 
-
+    @Override
+    @Transactional(rollbackFor = {Exception.class, BusinessException.class})
+    public Integer dealShopIntegral(DealIntegralRequest dealIntegralRequest) {
+        Shop shop = shopMapper.selectById(dealIntegralRequest.getMemberId());
+        if(Objects.isNull(shop)){
+            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌鍟嗘埛淇℃伅");
+        }
+        Integral integral = new Integral();
+        integral.setMemberId(shop.getId());
+        integral.setCreateDate(new Date());
+        integral.setIsdeleted(Constants.ZERO);
+        integral.setTitle(dealIntegralRequest.getIntegralObjType().getName());
+        integral.setContent(dealIntegralRequest.getIntegralObjType().getNoteinfo());
+        integral.setObjId(dealIntegralRequest.getObjId());
+        integral.setObjType(dealIntegralRequest.getIntegralObjType().getKey());
+        integral.setType(dealIntegralRequest.getDealType());
+        integral.setNum(dealIntegralRequest.getIntegralNum());
+        integral.setTotalNum(dealIntegralRequest.getDealType().equals(Constants.ZERO)? shop.getIntegral().add(integral.getNum()):shop.getIntegral().subtract(integral.getNum()));
+        integral.setOrderCode(dealIntegralRequest.getOrderCode());
+        integral.setUserType(Constants.ONE);
+        integralMapper.insert(integral);
+        if(dealIntegralRequest.getDealType().equals(Constants.ZERO)){
+            shopMapper.addIntegral(shop.getId(),dealIntegralRequest.getIntegralNum(),
+                    dealIntegralRequest.getIntegralObjType().getAddTitle()==Constants.ZERO?dealIntegralRequest.getIntegralNum():BigDecimal.ZERO);
+        }else{
+            shopMapper.subtractIntegral(shop.getId(),dealIntegralRequest.getIntegralNum());
+        }
+        return integral.getId();
+    }
 
 
     @Override

--
Gitblit v1.9.3