From b5abe70a5173840fdd4f93efbba6ec10a12d5264 Mon Sep 17 00:00:00 2001
From: jyy <935090232@qq.com>
Date: Fri, 09 Apr 2021 15:23:44 +0800
Subject: [PATCH] 服务单
---
zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WXShopOrderServiceImpl.java | 40 +++++++++++++++++++++++-----------------
1 files changed, 23 insertions(+), 17 deletions(-)
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WXShopOrderServiceImpl.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WXShopOrderServiceImpl.java
index 70bb8d6..e702535 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WXShopOrderServiceImpl.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WXShopOrderServiceImpl.java
@@ -3,7 +3,7 @@
import cn.hutool.core.collection.CollUtil;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
-import com.matrix.biz.bean.BizUser;
+import com.matrix.system.hive.bean.SysVipInfo;
import com.matrix.component.rabbitmq.RabiitMqTemplate;
import com.matrix.component.redis.RedisUserLoginUtils;
import com.matrix.component.tools.WxUtils;
@@ -18,6 +18,7 @@
import com.matrix.system.common.dao.CustomerDataDictionaryDao;
import com.matrix.system.common.interceptor.HostInterceptor;
import com.matrix.system.hive.dao.ShoppingGoodsDao;
+import com.matrix.system.hive.dao.SysVipInfoDao;
import com.matrix.system.score.dao.ScoreVipDetailDao;
import com.matrix.system.shopXcx.api.action.PayThreadPool;
import com.matrix.system.shopXcx.api.pojo.OrderCouponGroup;
@@ -104,6 +105,9 @@
@Autowired
private ScoreVipDetailDao scoreVipDetailDao;
+
+ @Autowired
+ private SysVipInfoDao sysVipInfoDao;
@Override
public BigDecimal calculationPostage(BigDecimal payPrice, Long companyId) {
BigDecimal postage = BigDecimal.ZERO;
@@ -128,7 +132,7 @@
@Transactional(rollbackFor = Exception.class)
@Override
public AjaxResult createShopOrder(ShopOrderDto shopOrderDto) throws Exception {
- BizUser bizUser = redisUserLoginUtils.getLoginUser(BizUser.class);
+ SysVipInfo sysVipInfo = redisUserLoginUtils.getLoginUser(SysVipInfo.class);
//校验收货地址
@@ -143,14 +147,14 @@
if(discountExplain.getScorePay()!=null){
//校验用户积分是否够用
- int score=scoreVipDetailDao.selectUserTotalScore(bizUser.getOpenId(),null);
+ int score=scoreVipDetailDao.selectUserTotalScore(sysVipInfo.getId());
if(score<discountExplain.getScorePay()){
return AjaxResult.buildFailInstance("积分不足");
}
}
ShopOrder shopOrder = new ShopOrder();
- shopOrder.setCompanyId(bizUser.getCompanyId());
+ shopOrder.setCompanyId(sysVipInfo.getCompanyId());
shopOrder.setStoreId(Integer.parseInt(shopOrderDto.getShopId().toString()));
//默认设置为产品类型
shopOrder.setOrderType(ShopOrder.ORDER_TYPE_GOODS);
@@ -189,11 +193,11 @@
}
//校验商品是否限购
- wxShopOrderUtil.verifyProductLimitInfo(details, bizUser.getOpenId());
+ wxShopOrderUtil.verifyProductLimitInfo(details, sysVipInfo.getOpenId());
//TODO 更新库存和销量 更新库存和销量[考虑和erp库存联动]
wxShopOrderUtil.updateProductAndSkuInfo(details);
//用户openId
- shopOrder.setUserId(bizUser.getOpenId());
+ shopOrder.setUserId(sysVipInfo.getId());
shopOrder.setCreateBy("微信小程序生成");
shopOrder.setUpdateBy("微信小程序生成");
shopOrder.setCommodityPrice(discountExplain.getBillPrice());
@@ -277,7 +281,7 @@
//支付总积分
Integer scoreCount=0;
- BizUser bizUser = redisUserLoginUtils.getLoginUser(BizUser.class);
+ SysVipInfo sysVipInfo = redisUserLoginUtils.getLoginUser(SysVipInfo.class);
//计算购物车中物品的优惠信息
List<OrderItemDto> orderItemDtos = shopOrderDto.getOrderItemList()
@@ -325,7 +329,7 @@
//满足店铺活动的订单不能使用优惠券
if (conditionsGroupCount > 0) {
//计算可用优惠券
- usefulCoupon = wxShopCouponService.getCartVoCouponList(bizUser.getCompanyId(), orderItemDtos);
+ usefulCoupon = wxShopCouponService.getCartVoCouponList(sysVipInfo.getCompanyId(), orderItemDtos);
//获取用户使用的优惠券
if (shopOrderDto.getCouponReceiveId() == null) {
//如果用户没有选择优惠券则默认选优惠金额最高的
@@ -397,7 +401,7 @@
if(shopOrder.getScorePay()!=null){
//校验用户积分是否够用
- int score=scoreVipDetailDao.selectUserTotalScore(shopOrder.getUserId(),null);
+ int score=scoreVipDetailDao.selectUserTotalScore(shopOrder.getUserId());
if(score<shopOrder.getScorePay()){
return AjaxResult.buildFailInstance("积分不足");
}
@@ -422,13 +426,15 @@
BigDecimal money = new BigDecimal(shopOrder.getOrderMoney().toString());
BrandWCPayRequestData payData;
String productNames = wxShopOrderUtil.getProductNames(shopOrder.getUserId(), shopOrder.getId());
+ SysVipInfo vipInfo=sysVipInfoDao.selectById(shopOrder.getUserId());
+
LogUtil.debug(String.valueOf(isDebug));
if (isDebug) {
payData = weixinServiceUtil.createOrder("[测试]" + productNames, shopOrder.getOrderNo(),
- 1, shopOrder.getUserId(), String.valueOf(shopOrder.getId()));
+ 1, vipInfo.getOpenId(), String.valueOf(shopOrder.getId()));
} else {
payData = weixinServiceUtil.createOrder(productNames, shopOrder.getOrderNo(),
- unit.multiply(money).intValue(), shopOrder.getUserId(), String.valueOf(shopOrder.getId()));
+ unit.multiply(money).intValue(),vipInfo.getOpenId(), String.valueOf(shopOrder.getId()));
}
ShopOrder updateParam = new ShopOrder();
updateParam.setId(shopOrder.getId());
@@ -445,12 +451,12 @@
*/
@Override
public AjaxResult getMyOrderInfo(OrderInfoQueryPOJO orderInfoQueryPOJO) {
- BizUser bizUser = redisUserLoginUtils.getLoginUser(BizUser.class);
+ SysVipInfo sysVipInfo = redisUserLoginUtils.getLoginUser(SysVipInfo.class);
orderInfoQueryPOJO.setSort("update_time");
if (orderInfoQueryPOJO.getOffset() >= 1) {
orderInfoQueryPOJO.setOffset((orderInfoQueryPOJO.getOffset() - 1) * orderInfoQueryPOJO.getLimit());
}
- List<ShopOrder> result = shopOrderDao.selectMyOrderByStatus(bizUser.getOpenId(), orderInfoQueryPOJO);
+ List<ShopOrder> result = shopOrderDao.selectMyOrderByStatus(sysVipInfo.getId(), orderInfoQueryPOJO);
return new AjaxResult(AjaxResult.STATUS_SUCCESS, result);
}
@@ -462,8 +468,8 @@
*/
@Override
public AjaxResult getOrderInfoById(Integer orderId) {
- BizUser bizUser = redisUserLoginUtils.getLoginUser(BizUser.class);
- ShopOrder shopOrder = shopOrderDao.selectOrderInfoById(bizUser.getOpenId(), orderId);
+ SysVipInfo sysVipInfo = redisUserLoginUtils.getLoginUser(SysVipInfo.class);
+ ShopOrder shopOrder = shopOrderDao.selectOrderInfoById(sysVipInfo.getId(), orderId);
return new AjaxResult(AjaxResult.STATUS_SUCCESS, Arrays.asList(shopOrder));
}
@@ -484,8 +490,8 @@
}
if (shopOrder.getDiscountAmount() != null && shopOrder.getDiscountAmount().compareTo(BigDecimal.ZERO) > 0) {
ShopCouponRecord shopCouponRecord = new ShopCouponRecord();
- BizUser bizUser = redisUserLoginUtils.getLoginUser(BizUser.class);
- shopCouponRecord.setUserId(bizUser.getOpenId());
+ SysVipInfo sysVipInfo = redisUserLoginUtils.getLoginUser(SysVipInfo.class);
+ shopCouponRecord.setUserId(sysVipInfo.getId());
shopCouponRecord.setOrderId(orderId);
List<ShopCouponRecord> recordList = shopCouponRecordDao.selectByModel(shopCouponRecord);
if (CollectionUtils.isNotEmpty(recordList)) {
--
Gitblit v1.9.1