xiaoyong931011
2022-09-05 3d83fe59399df5f7c80749841b8d26851c016c18
20220902
3 files modified
24 ■■■■■ changed files
src/main/java/cc/mrbird/febs/mall/mapper/MallOrderItemMapper.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java 17 ●●●●● patch | view | raw | blame | history
src/main/resources/mapper/modules/MallOrderItemMapper.xml 5 ●●●●● patch | view | raw | blame | history
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);
}
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);
            }
        }
    }
    /**
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>