From 66d2da225aff8d3ca59c857659e4f6766009545a Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Wed, 17 Nov 2021 11:49:37 +0800
Subject: [PATCH] Merge branch 'score_shop' of http://120.27.238.55:7000/r/beauty-erp into score_shop
---
zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WxShopActivitiesGroupServiceImpl.java | 59 +++++++++++++++++++++++++++++------------------------------
1 files changed, 29 insertions(+), 30 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 be14cdf..5cdb27c 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,13 +2,11 @@
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.system.common.init.UserCacheManager;
import com.matrix.component.tools.WxUtils;
import com.matrix.component.wechat.externalInterface.protocol.paramProtocol.BrandWCPayRequestData;
import com.matrix.core.exception.GlobleException;
import com.matrix.core.pojo.AjaxResult;
-import com.matrix.core.tools.LogUtil;
import com.matrix.core.tools.StringUtils;
import com.matrix.system.common.constance.AppConstance;
import com.matrix.system.constance.Dictionary;
@@ -44,7 +42,7 @@
private ShopActivitiesGroupInfoDao shopActivitiesGroupInfoDao;
@Autowired
- private RedisUserLoginUtils redisUserLoginUtils;
+ private UserCacheManager userCacheManager;
@Autowired
private ShopActivitiesGroupPriceDao shopActivitiesGroupPriceDao;
@@ -91,7 +89,7 @@
@Override
@Transactional(rollbackFor = Exception.class)
public AjaxResult createGroupBuy(CreateGroupBuyDTO createGroupBuyDTO) throws Exception {
- BizUser bizUser = redisUserLoginUtils.getLoginUser(BizUser.class);
+ SysVipInfo sysVipInfo = userCacheManager.getLoginUser();
ShopActivitiesGroupPrice groupPrice = shopActivitiesGroupPriceDao.selectById(createGroupBuyDTO.getGpId());
ShopActivitiesGroupInfo groupInfo = shopActivitiesGroupInfoDao.selectGroupInfoByActId(groupPrice.getActId());
@@ -103,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("达到最大开团数量");
}
@@ -114,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, "您该活动有个订单未付款");
@@ -129,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) {
@@ -146,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();
@@ -158,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();
@@ -193,7 +191,7 @@
@Transactional(rollbackFor = Exception.class)
@Override
public AjaxResult joinGroupBuy(CreateGroupBuyDTO createGroupBuyDTO) throws Exception {
- BizUser bizUser = redisUserLoginUtils.getLoginUser(BizUser.class);
+ SysVipInfo sysVipInfo = userCacheManager.getLoginUser();
// TODO 需判断拼团结束时间以及当前拼团是否已满员
@@ -202,7 +200,7 @@
return AjaxResult.buildFailInstance("该拼团不存在");
}
- if (groupJoin.getGjHeadId().equals(bizUser.getOpenId())) {
+ if (groupJoin.getGjHeadId().equals(sysVipInfo.getOpenId())) {
return AjaxResult.buildFailInstance("您是拼团团长,无法加入拼团");
}
@@ -210,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("您已加入了该拼团");
}
@@ -228,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("达到最大限购数量");
}
@@ -243,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) {
@@ -272,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();
@@ -281,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());
@@ -318,8 +316,9 @@
if (shopReceiveAddress == null) {
throw new GlobleException("请选择正确的收获地址");
}
-
+ SysVipInfo user=userCacheManager.getLoginUser();
ShopOrder shopOrder = new ShopOrder();
+ shopOrder.setCompanyId(user.getCompanyId());
shopOrder.setStoreId(Integer.parseInt(createGroupBuyDTO.getShopId().toString()));
shopOrder.setOrderType(ShopOrder.ORDER_TYPE_SERVICE);
@@ -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());
@@ -389,15 +388,15 @@
shopOrder.setPayResult(ShopOrder.ORDER_WX_STATUS_WAIT_PAY);
//如果没有提交购买方式或配送方式不是物流
//获取邮费
- BigDecimal postPrice = wxShopOrderService.calculationPostage(createGroupBuyDTO.getAddressId(), createGroupBuyDTO.getPrice());
+ BigDecimal postPrice = wxShopOrderService.calculationPostage(createGroupBuyDTO.getPrice(),user.getCompanyId());
shopOrder.setPostage(postPrice);
BigDecimal payPrice = createGroupBuyDTO.getPrice().multiply(BigDecimal.valueOf(createGroupBuyDTO.getCount())).add(shopOrder.getPostage());
shopOrder.setOrderMoney(payPrice);
DiscountExplain discountExplain = new DiscountExplain();
discountExplain.setPayPrice(payPrice);
discountExplain.setPostage(postPrice);
- discountExplain.setActivity(BigDecimal.ZERO);
- discountExplain.setCoupon(BigDecimal.ZERO);
+ discountExplain.setActivityPrice(BigDecimal.ZERO);
+ discountExplain.setCouponPrice(BigDecimal.ZERO);
discountExplain.setBillPrice(payPrice);
Gson g = new GsonBuilder().create();
shopOrder.setDiscountExplain(g.toJson(discountExplain));
--
Gitblit v1.9.1