Cui Zhi Feng
2024-09-26 8b90545525a05c8dbbd6e3f69ddfc0028fcca979
src/main/java/com/mzl/flower/service/payment/OrderItemSalesService.java
@@ -343,7 +343,10 @@
        }
        BigDecimal feeSupplier = getAmount(dto.getFeeSupplier());
        BigDecimal supplierTotal = oi.getSupplierPrice().multiply(new BigDecimal(sl.getNum()));//申请数量的供应商价格
        BigDecimal supplierTotal = getAmount(oi.getSupplierPrice()).multiply(new BigDecimal(sl.getNum()));//申请数量的供应商价格
        log.info(">>>>>>feeSupplier: " + feeSupplier);
        log.info(">>>>>>supplierTotal: " + supplierTotal);
        log.info(">>>>>>sl.getNum(): " + sl.getNum());
        //1.输入不能大于商品申请数量"供应商上架价格
        if(feeSupplier.doubleValue() > supplierTotal.doubleValue()){
            throw new ValidationException("供应商扣款金额不能大于商品申请数量的供应商售价");
@@ -352,7 +355,7 @@
        BigDecimal feePartner = getAmount(dto.getFeePartner());
        //合伙人输入框限制:
        //1.输入金额不能大于输入金额申请数量"加价
        BigDecimal partnerTotal = oi.getMarkupPartner().multiply(new BigDecimal(sl.getNum()));//申请数量的合伙人加价
        BigDecimal partnerTotal = getAmount(oi.getMarkupPartner()).multiply(new BigDecimal(sl.getNum()));//申请数量的合伙人加价
        if(feePartner.doubleValue() > partnerTotal.doubleValue()){
            throw new ValidationException("合伙人扣款金额不能大于商品申请数量的合伙人加价");
        }
@@ -364,7 +367,9 @@
        BigDecimal feePackingTransport = getAmount(dto.getFeePackingTransport());
        BigDecimal totalFee = feeSupplier.add(feePartner).add(feePlatform).add(feePlatformPack)
                .add(feePlatformCheck).add(feePlatformTransport).add(feePackingTransport);
                .add(feePlatformCheck).add(feePlatformTransport);
        BigDecimal totalFeeWithPacking = totalFee.add(feePackingTransport);
        List<OrderItemSales> ls = orderItemSalesMapper.selectList(new QueryWrapper<OrderItemSales>()
                .eq("order_item_id", oi.getId())
@@ -376,7 +381,7 @@
        int preNum = 0;
        if(ls != null && ls.size() > 0){
            for(OrderItemSales s : ls){
                preFee = preFee.add(s.getTotalFee());
                preFee = preFee.add(s.getTotalFee()).subtract(s.getFeePackingTransport());
                preFeeSupplier = preFeeSupplier.add(s.getFeeSupplier());
                preNum += s.getNum();
                preFeePackingTransport = preFeePackingTransport.add(s.getFeePackingTransport());
@@ -434,14 +439,14 @@
        sl.setFeePlatformCheck(feePlatformCheck);
        sl.setFeePlatformTransport(feePlatformTransport);
        sl.setFeePackingTransport(feePackingTransport);
        sl.setTotalFee(totalFee);
        sl.setTotalFee(totalFeeWithPacking);
        sl.setStatus(status);
        sl.setAuditTime(LocalDateTime.now());
        sl.update(SecurityUtils.getUserId());
        if(Constants.ORDER_SALES_STATUS.AGREED.name().equals(sl.getStatus())){
            if(totalFee.doubleValue() > 0) {
                String refundId = paymentV3Service.refundOrderSub(o, totalFee);
            if(totalFeeWithPacking.doubleValue() > 0) {
                String refundId = paymentV3Service.refundOrderSub(o, totalFeeWithPacking);
                sl.setRefundId(refundId);
            }
        }