From 3d83fe59399df5f7c80749841b8d26851c016c18 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Mon, 05 Sep 2022 16:16:41 +0800
Subject: [PATCH] 20220902
---
src/main/java/cc/mrbird/febs/mall/mapper/MallOrderItemMapper.java | 2 ++
src/main/resources/mapper/modules/MallOrderItemMapper.xml | 5 +++++
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java | 17 +++++++++++++++++
3 files changed, 24 insertions(+), 0 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/mapper/MallOrderItemMapper.java b/src/main/java/cc/mrbird/febs/mall/mapper/MallOrderItemMapper.java
index 8e0e589..28ac651 100644
--- a/src/main/java/cc/mrbird/febs/mall/mapper/MallOrderItemMapper.java
+++ b/src/main/java/cc/mrbird/febs/mall/mapper/MallOrderItemMapper.java
@@ -13,4 +13,6 @@
List<MallOrderItem> selectListByNotInStateAndOrderId(@Param("state")Integer i, @Param("orderId")Long orderId);
void updateStateByOrderId(@Param("state")Integer i, @Param("orderId")Long id);
+
+ List<MallOrderItem> selectListByOrderId(@Param("orderId")Long id);
}
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 fafe3d7..30deeb9 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
@@ -227,6 +227,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);
+ }
+ }
}
/**
diff --git a/src/main/resources/mapper/modules/MallOrderItemMapper.xml b/src/main/resources/mapper/modules/MallOrderItemMapper.xml
index 05805ae..7cf7252 100644
--- a/src/main/resources/mapper/modules/MallOrderItemMapper.xml
+++ b/src/main/resources/mapper/modules/MallOrderItemMapper.xml
@@ -19,5 +19,10 @@
where order_id = #{orderId}
</update>
+ <select id="selectListByOrderId" resultType="cc.mrbird.febs.mall.entity.MallOrderItem">
+ select a.* from mall_order_item a
+ where a.order_id=#{orderId}
+ </select>
+
</mapper>
\ No newline at end of file
--
Gitblit v1.9.1