KKSU
2023-11-28 bc26bbd27b75ab2f8ffc79a5a5fe25206f15abc7
src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java
@@ -1200,32 +1200,29 @@
        //已完成的买单
        List<MallProductSellRecord> mallProductSellRecords = mallProductSellRecordMapper.selectListBySellId(sellId,ProductEnum.PRODUCT_MATE_STATE_FINISH.getValue());
        if(CollUtil.isEmpty(mallProductSellRecords)){
            return;
        if(CollUtil.isNotEmpty(mallProductSellRecords)){
            //实际支付总数
            BigDecimal nftCntTotal = mallProductSellRecords.stream().map(MallProductSellRecord::getNftCnt).reduce(BigDecimal.ZERO, BigDecimal::add);
            MallProductSell mallProductSell = mallProductSellMapper.selectById(sellId);
            if(nftCntTotal.compareTo(mallProductSell.getNftCnt()) >= 0){
                mallProductSell.setState(ProductEnum.PRODUCT_SELL_SUCCESS.getValue());
                mallProductSellMapper.updateById(mallProductSell);
            }
        }
        //实际支付总数
        BigDecimal nftCntTotal = mallProductSellRecords.stream().map(MallProductSellRecord::getNftCnt).reduce(BigDecimal.ZERO, BigDecimal::add);
        MallProductSell mallProductSell = mallProductSellMapper.selectById(sellId);
        if(nftCntTotal.compareTo(mallProductSell.getNftCnt()) < 0){
            return;
        }
        mallProductSell.setState(ProductEnum.PRODUCT_SELL_SUCCESS.getValue());
        mallProductSellMapper.updateById(mallProductSell);
        Long buyId = mallProductBuyRecord.getBuyId();
        List<MallProductBuyRecord> mallProductBuyRecords = mallProductBuyRecordMapper.selectListByBuyId(buyId,ProductEnum.PRODUCT_MATE_STATE_FINISH.getValue());
        if(CollUtil.isEmpty(mallProductBuyRecords)){
            return;
        if(CollUtil.isNotEmpty(mallProductBuyRecords)){
            //实际支付总数
            BigDecimal nftCntTotalBuy = mallProductBuyRecords.stream().map(MallProductBuyRecord::getPickNftCnt).reduce(BigDecimal.ZERO, BigDecimal::add);
            MallProductBuy mallProductBuy = mallProductBuyMapper.selectById(buyId);
            if(nftCntTotalBuy.compareTo(mallProductBuy.getNftTotal()) >= 0){
                mallProductBuy.setState(ProductEnum.PRODUCT_BUY_SUCCESS.getValue());
                mallProductBuy.setPayTime(DateUtil.date());
                mallProductBuyMapper.updateById(mallProductBuy);
            }
        }
        //实际支付总数
        BigDecimal nftCntTotalBuy = mallProductBuyRecords.stream().map(MallProductBuyRecord::getPickNftCnt).reduce(BigDecimal.ZERO, BigDecimal::add);
        MallProductBuy mallProductBuy = mallProductBuyMapper.selectById(buyId);
        if(nftCntTotalBuy.compareTo(mallProductBuy.getNftTotal()) < 0){
            return;
        }
        mallProductBuy.setState(ProductEnum.PRODUCT_BUY_SUCCESS.getValue());
        mallProductBuy.setPayTime(DateUtil.date());
        mallProductBuyMapper.updateById(mallProductBuy);
    }
    @Override