From 241a49f9653aa83d1dcd9bf646208da3157df35a Mon Sep 17 00:00:00 2001
From: 935090232@qq.com <ak473600000>
Date: Mon, 05 Apr 2021 22:48:14 +0800
Subject: [PATCH] 合并BizUser表与SysVipInfo表 大部分逻辑已经修正 可能存在问题的 1、拼团秒杀 2、分享图 3、分销结算

---
 zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WxShopActivitiesGroupServiceImpl.java |   47 +++++++++++++++++++++++------------------------
 1 files changed, 23 insertions(+), 24 deletions(-)

diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WxShopActivitiesGroupServiceImpl.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WxShopActivitiesGroupServiceImpl.java
index 0e06b76..aefbb92 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WxShopActivitiesGroupServiceImpl.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WxShopActivitiesGroupServiceImpl.java
@@ -2,7 +2,6 @@
 
 import com.google.gson.Gson;
 import com.google.gson.GsonBuilder;
-import com.matrix.biz.bean.BizUser;
 import com.matrix.component.redis.RedisUserLoginUtils;
 import com.matrix.component.tools.WxUtils;
 import com.matrix.component.wechat.externalInterface.protocol.paramProtocol.BrandWCPayRequestData;
@@ -90,7 +89,7 @@
     @Override
     @Transactional(rollbackFor = Exception.class)
     public AjaxResult createGroupBuy(CreateGroupBuyDTO createGroupBuyDTO) throws Exception {
-        BizUser bizUser = redisUserLoginUtils.getLoginUser(BizUser.class);
+        SysVipInfo sysVipInfo = redisUserLoginUtils.getLoginUser(SysVipInfo.class);
 
         ShopActivitiesGroupPrice groupPrice = shopActivitiesGroupPriceDao.selectById(createGroupBuyDTO.getGpId());
         ShopActivitiesGroupInfo groupInfo = shopActivitiesGroupInfoDao.selectGroupInfoByActId(groupPrice.getActId());
@@ -102,7 +101,7 @@
 
         // 判断最大开团数量
         if (groupInfo.getGiHeadDiscount() != null && groupInfo.getGiHeadDiscount() != 0) {
-            int createCnt = shopActivitiesGroupJoinDao.selectCreateGroupBuyCount(shopActivities.getId(), bizUser.getOpenId());
+            int createCnt = shopActivitiesGroupJoinDao.selectCreateGroupBuyCount(shopActivities.getId(), sysVipInfo.getOpenId());
             if (createCnt > groupInfo.getGiHeadDiscount()) {
                 return AjaxResult.buildFailInstance("达到最大开团数量");
             }
@@ -113,14 +112,14 @@
                 return AjaxResult.buildFailInstance("达到最大限购数量");
             }
 
-            int count = shopActivitiesGroupJoinUserDao.selectCountHasBuy(groupInfo.getId(), bizUser.getOpenId());
+            int count = shopActivitiesGroupJoinUserDao.selectCountHasBuy(groupInfo.getId(), sysVipInfo.getOpenId());
             if (count + createGroupBuyDTO.getCount() > groupInfo.getGiLimitBuy()) {
                 return AjaxResult.buildFailInstance("达到最大限购数量");
             }
         }
 
         // 判断该用户在这个活动中是否存在拼团,并判断该拼团订单是否已付款
-        ShopActivitiesGroupJoin existGroupJoin = shopActivitiesGroupJoinDao.selectExistGroupingJoinByUser(groupPrice.getActId(), bizUser.getOpenId());
+        ShopActivitiesGroupJoin existGroupJoin = shopActivitiesGroupJoinDao.selectExistGroupingJoinByUser(groupPrice.getActId(), sysVipInfo.getOpenId());
         if (existGroupJoin != null) {
             if (existGroupJoin.getGjStatus() == ShopActivitiesGroupJoin.ACTIVITIES_JOIN_WAIT_PAY) {
                 return new AjaxResult(AjaxResult.STATUS_FAIL, "您该活动有个订单未付款");
@@ -128,7 +127,7 @@
             return new AjaxResult(AjaxResult.STATUS_FAIL, "该活动已存在拼团");
         }
 
-        boolean isOld = isOldUser(bizUser.getPhoneNumber());
+        boolean isOld = isOldUser(sysVipInfo.getPhone());
         // 老用户和老带新的开团都必须是老用户
         if (ShopActivitiesGroupInfo.GROUP_TYPE_ALL_OLD == groupInfo.getGiType() || ShopActivitiesGroupInfo.GROUP_TYPE_OLD_AND_NEW == groupInfo.getGiType()) {
             if (!isOld) {
@@ -145,7 +144,7 @@
 
         createGroupBuyDTO.setPrice(groupPrice.getGpPrice());
         createGroupBuyDTO.setGoodsId(groupInfo.getGoodsId().intValue());
-        createGroupBuyDTO.setOpenId(bizUser.getOpenId());
+        createGroupBuyDTO.setUserId(sysVipInfo.getId());
         ShopOrder shopOrder = createOrderByGroupBuy(createGroupBuyDTO);
 
         ShopActivitiesGroupJoin groupJoin = new ShopActivitiesGroupJoin();
@@ -157,19 +156,19 @@
         groupJoin.setGjEndTime(gjEndTime.getTime());
         groupJoin.setGiId(groupInfo.getId());
         groupJoin.setGjStatus(ShopActivitiesGroupJoin.ACTIVITIES_JOIN_WAIT_PAY);
-        groupJoin.setCreateBy(bizUser.getNickName() == null ? "游客" : bizUser.getNickName());
-        groupJoin.setUpdateBy(bizUser.getNickName() == null ? "游客" : bizUser.getNickName());
-        groupJoin.setGjHeadId(bizUser.getOpenId());
+        groupJoin.setCreateBy(sysVipInfo.getNickName() == null ? "游客" : sysVipInfo.getNickName());
+        groupJoin.setUpdateBy(sysVipInfo.getNickName() == null ? "游客" : sysVipInfo.getNickName());
+        groupJoin.setGjHeadId(sysVipInfo.getId());
         groupJoin.setCompanyId(shopActivities.getCompanyId());
         shopActivitiesGroupJoinDao.insert(groupJoin);
 
         ShopActivitiesGroupJoinUser joinUser = new ShopActivitiesGroupJoinUser();
         joinUser.setGjId(groupJoin.getId());
         joinUser.setGiId(groupInfo.getId());
-        joinUser.setUserId(bizUser.getOpenId());
+        joinUser.setUserId(sysVipInfo.getId());
         joinUser.setIsHead(ShopActivitiesGroupJoinUser.USER_IS_HEAD_Y);
-        joinUser.setCreateBy(bizUser.getNickName() == null ? "游客" : bizUser.getNickName());
-        joinUser.setUpdateBy(bizUser.getNickName() == null ? "游客" : bizUser.getNickName());
+        joinUser.setCreateBy(sysVipInfo.getNickName() == null ? "游客" : sysVipInfo.getNickName());
+        joinUser.setUpdateBy(sysVipInfo.getNickName() == null ? "游客" : sysVipInfo.getNickName());
         joinUser.setIsHasPay(ShopActivitiesGroupJoinUser.IS_HAS_PAY_N);
         joinUser.setIsHasCancel(ShopActivitiesGroupJoinUser.IS_HAS_CANCEL_N);
         Calendar payEndTime = Calendar.getInstance();
@@ -192,7 +191,7 @@
     @Transactional(rollbackFor = Exception.class)
     @Override
     public AjaxResult joinGroupBuy(CreateGroupBuyDTO createGroupBuyDTO) throws Exception {
-        BizUser bizUser = redisUserLoginUtils.getLoginUser(BizUser.class);
+        SysVipInfo sysVipInfo = redisUserLoginUtils.getLoginUser(SysVipInfo.class);
 
         // TODO 需判断拼团结束时间以及当前拼团是否已满员
 
@@ -201,7 +200,7 @@
             return AjaxResult.buildFailInstance("该拼团不存在");
         }
 
-        if (groupJoin.getGjHeadId().equals(bizUser.getOpenId())) {
+        if (groupJoin.getGjHeadId().equals(sysVipInfo.getOpenId())) {
             return AjaxResult.buildFailInstance("您是拼团团长,无法加入拼团");
         }
 
@@ -209,7 +208,7 @@
             return AjaxResult.buildFailInstance("该拼团时间已结束");
         }
 
-        ShopActivitiesGroupJoinUser groupJoinUser = shopActivitiesGroupJoinUserDao.selectGroupJoinUserByUserIdAndGjId(bizUser.getOpenId(), groupJoin.getId());
+        ShopActivitiesGroupJoinUser groupJoinUser = shopActivitiesGroupJoinUserDao.selectGroupJoinUserByUserIdAndGjId(sysVipInfo.getOpenId(), groupJoin.getId());
         if (groupJoinUser != null) {
             return AjaxResult.buildFailInstance("您已加入了该拼团");
         }
@@ -227,7 +226,7 @@
                 return AjaxResult.buildFailInstance("达到最大限购数量");
             }
 
-            int count = shopActivitiesGroupJoinUserDao.selectCountHasBuy(groupInfo.getId(), bizUser.getOpenId());
+            int count = shopActivitiesGroupJoinUserDao.selectCountHasBuy(groupInfo.getId(), sysVipInfo.getOpenId());
             if (count + createGroupBuyDTO.getCount() > groupInfo.getGiLimitBuy()) {
                 return AjaxResult.buildFailInstance("达到最大限购数量");
             }
@@ -242,7 +241,7 @@
             return AjaxResult.buildFailInstance("该拼团已满员");
         }
 
-        boolean isOld = isOldUser(bizUser.getPhoneNumber());
+        boolean isOld = isOldUser(sysVipInfo.getPhone());
         // 老用户 -- 加入拼团的都必须是老用户
         if (ShopActivitiesGroupInfo.GROUP_TYPE_ALL_OLD == groupInfo.getGiType()) {
             if (!isOld) {
@@ -271,7 +270,7 @@
 
         createGroupBuyDTO.setPrice(groupPrice.getGpPrice());
         createGroupBuyDTO.setGoodsId(groupInfo.getGoodsId().intValue());
-        createGroupBuyDTO.setOpenId(bizUser.getOpenId());
+        createGroupBuyDTO.setUserId(sysVipInfo.getId());
         ShopOrder shopOrder = createOrderByGroupBuy(createGroupBuyDTO);
 
         ShopActivitiesGroupJoinUser joinUser = new ShopActivitiesGroupJoinUser();
@@ -280,12 +279,12 @@
         Calendar calendar = Calendar.getInstance();
         calendar.set(Calendar.MINUTE, Integer.parseInt(payTimeLimit));
         joinUser.setPayEndTime(calendar.getTime());
-        joinUser.setUserId(bizUser.getOpenId());
+        joinUser.setUserId(sysVipInfo.getId());
         joinUser.setGiId(groupInfo.getId());
         joinUser.setGjId(groupJoin.getId());
         joinUser.setIsHead(ShopActivitiesGroupJoinUser.USER_IS_HEAD_N);
-        joinUser.setCreateBy(bizUser.getNickName() == null ? "游客" : bizUser.getNickName());
-        joinUser.setUpdateBy(bizUser.getNickName() == null ? "游客" : bizUser.getNickName());
+        joinUser.setCreateBy(sysVipInfo.getNickName() == null ? "游客" : sysVipInfo.getNickName());
+        joinUser.setUpdateBy(sysVipInfo.getNickName() == null ? "游客" : sysVipInfo.getNickName());
         joinUser.setIsNewUser(isOld ? 2 : 1);
         joinUser.setIsHasCancel(ShopActivitiesGroupJoinUser.IS_HAS_CANCEL_N);
         joinUser.setCompanyId(groupJoin.getCompanyId());
@@ -317,7 +316,7 @@
         if (shopReceiveAddress == null) {
             throw new GlobleException("请选择正确的收获地址");
         }
-        BizUser user=redisUserLoginUtils.getLoginUser(BizUser.class);
+        SysVipInfo user=redisUserLoginUtils.getLoginUser(SysVipInfo.class);
         ShopOrder shopOrder = new ShopOrder();
         shopOrder.setCompanyId(user.getCompanyId());
         shopOrder.setStoreId(Integer.parseInt(createGroupBuyDTO.getShopId().toString()));
@@ -360,7 +359,7 @@
         //TODO 更新库存和销量 更新库存和销量[考虑和erp库存联动]
         wxShopOrderUtil.updateProductAndSkuInfo(details);
 
-        shopOrder.setUserId(createGroupBuyDTO.getOpenId());
+        shopOrder.setUserId(createGroupBuyDTO.getUserId());
         shopOrder.setCreateBy("微信小程序生成");
         shopOrder.setUpdateBy("微信小程序生成");
         shopOrder.setCommodityPrice(createGroupBuyDTO.getPrice());

--
Gitblit v1.9.1