From 5abae2f9eaa8304878a893cea47435eca8528494 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Tue, 06 Sep 2022 13:34:51 +0800
Subject: [PATCH] 20220902
---
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java | 27 +++++++++++++++++++++++++--
1 files changed, 25 insertions(+), 2 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
index 6f08fcc..b45cace 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
@@ -85,6 +85,11 @@
throw new FebsException("请选择自提点");
}
+ MallTeamLeader mallTeamLeader = mallTeamLeaderMapper.selectLeaderByUniqueCode(takeUniqueCode);
+ if(ObjectUtil.isEmpty(mallTeamLeader)){
+ throw new FebsException("请重新选择团长");
+ }
+
String orderNo = MallUtils.getOrderNum();
MallOrderInfo orderInfo = new MallOrderInfo();
orderInfo.setOrderNo(orderNo);
@@ -187,9 +192,9 @@
BigDecimal delivaryAmount = addOrderDto.getDeliveryAmount() == null ? BigDecimal.ZERO : addOrderDto.getDeliveryAmount();
if(BigDecimal.ZERO.compareTo(delivaryAmount) < 0 && 1 == addOrderDto.getIsHome()){
total = total.add(delivaryAmount);
+ orderInfo.setCarriage(delivaryAmount);
}
orderInfo.setAmount(total);
- orderInfo.setCarriage(carriage);
MallAddressInfo address = mallAddressInfoMapper.selectAddressInfoByMemberIdAndId(member.getId(), addOrderDto.getAddressId());
orderInfo.setName(address.getName());
@@ -227,6 +232,23 @@
orderInfo.setStatus(OrderStatusEnum.CANCEL.getValue());
orderInfo.setCancelType(MallOrderInfo.CANCEL_BY_SELF);
this.baseMapper.updateById(orderInfo);
+ List<MallOrderItem> mallOrderItemList = mallOrderItemMapper.selectListByOrderId(id);
+ if(CollUtil.isNotEmpty(mallOrderItemList)){
+ for(MallOrderItem mallOrderItem : mallOrderItemList){
+ Long goodsId = mallOrderItem.getGoodsId();
+ Long skuId = mallOrderItem.getSkuId();
+ Integer cnt = mallOrderItem.getCnt();
+ MallGoods mallGoods = mallGoodsMapper.selectById(goodsId);
+ mallGoods.setVolume(mallGoods.getVolume() - cnt);
+ mallGoods.setStock(mallGoods.getStock() + cnt);
+ mallGoodsMapper.updateById(mallGoods);
+
+ MallGoodsSku mallGoodsSku = mallGoodsSkuMapper.selectById(skuId);
+ mallGoodsSku.setSkuVolume(mallGoodsSku.getSkuVolume() - cnt);
+ mallGoodsSku.setStock(mallGoodsSku.getStock() + cnt);
+ mallGoodsSkuMapper.updateById(mallGoodsSku);
+ }
+ }
}
/**
@@ -491,7 +513,8 @@
MallLeaderAchieve mallLeaderAchieve = new MallLeaderAchieve();
mallLeaderAchieve.setMemberId(orderInfo.getMemberId());
mallLeaderAchieve.setOrderNo(orderInfo.getOrderNo());
- mallLeaderAchieve.setAmount(orderInfo.getAmount());
+ BigDecimal subtract = orderInfo.getAmount().subtract(orderInfo.getCarriage() == null ? BigDecimal.ZERO : orderInfo.getCarriage());
+ mallLeaderAchieve.setAmount(subtract);
mallLeaderAchieve.setUniqueCode(orderInfo.getTakeUniqueCode());
mallLeaderAchieve.setState(MallLeaderAchieve.STATE_ONE);
mallLeaderAchieveMapper.insert(mallLeaderAchieve);
--
Gitblit v1.9.1