xiaoyong931011
2022-09-13 e0be773f58b404719b532528202675359c8eb157
20220902
6 files modified
55 ■■■■ changed files
src/main/java/cc/mrbird/febs/mall/mapper/MallGoodsMapper.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/mapper/MallGoodsSkuMapper.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java 20 ●●●●● patch | view | raw | blame | history
src/main/resources/mapper/modules/MallGoodsMapper.xml 7 ●●●●● patch | view | raw | blame | history
src/main/resources/mapper/modules/MallGoodsSkuMapper.xml 7 ●●●●● patch | view | raw | blame | history
src/test/java/cc/mrbird/febs/ProfitTest.java 17 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/mapper/MallGoodsMapper.java
@@ -48,4 +48,6 @@
    IPage<DataDictionaryCustom> getDeliveryHomeListInPage(Page<DataDictionaryCustom> page, @Param("record")AdminHomeDeliverySettingVo adminHomeDeliverySettingVo);
    MallGoodsCommentVo findMallGoodsCommentLevelByGoodsId(@Param("id")Long id);
    Integer upDateStockAndVolumeByGoodsId(@Param("id")Long id,@Param("cnt")Integer cnt);
}
src/main/java/cc/mrbird/febs/mall/mapper/MallGoodsSkuMapper.java
@@ -19,4 +19,6 @@
    MallGoodsSku selectSkuInfoById(@Param("id") Long id);
    int delSkuByIds(@Param("list") List<Long> ids);
    Integer upDateStockAndVolumeBySkuId(@Param("id")Long id, @Param("cnt")Integer cnt);
}
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
@@ -161,9 +161,12 @@
                        throw new FebsException(mallGoods.getGoodsName() + "已下架");
                    }
                    mallGoods.setStock(mallGoods.getStock() - item.getCnt());
                    mallGoods.setVolume(mallGoods.getVolume() + item.getCnt());
                    mallGoodsMapper.updateById(mallGoods);
//                    mallGoods.setStock(mallGoods.getStock() - item.getCnt());
//                    mallGoods.setVolume(mallGoods.getVolume() + item.getCnt());
                    Integer goodsResult = mallGoodsMapper.upDateStockAndVolumeByGoodsId(mallGoods.getId(), item.getCnt());
                    if(1 != goodsResult){
                        throw new FebsException(mallGoods.getGoodsName() + "库存不足");
                    }
                    BigDecimal amount = sku.getPresentPrice().multiply(BigDecimal.valueOf(item.getCnt()));
                    orderItem.setAmount(amount);
@@ -183,10 +186,13 @@
                    total = total.add(amount);
                    carriage = carriage.add(mallGoods.getCarriage());
                    sku.setStock(sku.getStock() - item.getCnt());
                    sku.setSkuVolume(sku.getSkuVolume() + item.getCnt());
                    mallGoodsSkuMapper.updateById(sku);
//                    sku.setStock(sku.getStock() - item.getCnt());
//                    sku.setSkuVolume(sku.getSkuVolume() + item.getCnt());
//                    mallGoodsSkuMapper.updateById(sku);
                    Integer skuResult = mallGoodsSkuMapper.upDateStockAndVolumeBySkuId(sku.getId(),item.getCnt());
                    if(1 != skuResult){
                        throw new FebsException(sku.getSkuName() + "库存不足");
                    }
                    if (addOrderDto.getType() == 1) {
                        mallShoppingCartMapper.delBySkuId(sku.getId(), member.getId());
                    }
src/main/resources/mapper/modules/MallGoodsMapper.xml
@@ -264,4 +264,11 @@
        from mall_goods_comment a limit 1
    </select>
    <update id="upDateStockAndVolumeByGoodsId">
        update mall_goods
        set stock = stock - #{cnt},
            volume = volume + #{cnt}
        where id=#{id} and  stock - #{cnt} <![CDATA[ >= ]]> 0
    </update>
</mapper>
src/main/resources/mapper/modules/MallGoodsSkuMapper.xml
@@ -38,4 +38,11 @@
            #{item}
        </foreach>
    </delete>
    <update id="upDateStockAndVolumeBySkuId">
        update mall_goods_sku
        set stock = stock - #{cnt},
            sku_volume = sku_volume + #{cnt}
        where id=#{id} and  stock - #{cnt} <![CDATA[ >= ]]> 0
    </update>
</mapper>
src/test/java/cc/mrbird/febs/ProfitTest.java
@@ -198,15 +198,20 @@
    }
    @Autowired
    private IXcxPayService iXcxPayService;
    @Autowired
    private MallGoodsMapper mallGoodsMapper;
    @Test
    public void qrcodeBase64(){
        WxGenerateQrCodeDto wxGenerateQrCodeDto = new WxGenerateQrCodeDto();
        wxGenerateQrCodeDto.setPage("pages/product/details");
        wxGenerateQrCodeDto.setScene("35");
        FebsResponse febsResponse = iXcxPayService.generateQrCode(wxGenerateQrCodeDto);
        String data = febsResponse.get("data").toString();
        System.out.println(data);
        Integer integer = mallGoodsMapper.upDateStockAndVolumeByGoodsId(35L, 3);
        System.out.println(integer);
//        WxGenerateQrCodeDto wxGenerateQrCodeDto = new WxGenerateQrCodeDto();
//        wxGenerateQrCodeDto.setPage("pages/product/details");
//        wxGenerateQrCodeDto.setScene("35");
//        FebsResponse febsResponse = iXcxPayService.generateQrCode(wxGenerateQrCodeDto);
//        String data = febsResponse.get("data").toString();
//        System.out.println(data);
    }