From 381afd9e82b6e8610aeb00b8d4c0ff138195bb2d Mon Sep 17 00:00:00 2001
From: cloudroam <cloudroam>
Date: 星期五, 01 十一月 2024 13:13:50 +0800
Subject: [PATCH] fix: 钱包供应商财务1

---
 src/main/java/com/mzl/flower/service/payment/OrderSettlementService.java |   58 ++++++++++++++++++++++++++++++----------------------------
 1 files changed, 30 insertions(+), 28 deletions(-)

diff --git a/src/main/java/com/mzl/flower/service/payment/OrderSettlementService.java b/src/main/java/com/mzl/flower/service/payment/OrderSettlementService.java
index 1bab152..1f1e32c 100644
--- a/src/main/java/com/mzl/flower/service/payment/OrderSettlementService.java
+++ b/src/main/java/com/mzl/flower/service/payment/OrderSettlementService.java
@@ -739,35 +739,37 @@
                         try {
                             //2024-10-28 直接保存到walletBillRecord
                             //新增WalletBillRecordDO
-                            WalletBillRecordDO walletBillRecord = new WalletBillRecordDO();
-                            walletBillRecord.setId(UUIDGenerator.getUUID());
-                            WalletDO walletDOInfo = walletService.getBySupplierId(supplierId);
-                            //增加供应商结算金额保存到钱包
-                            walletBillRecord.setSupplierId(supplierId);
-                            walletBillRecord.setWalletId(walletDOInfo.getId());
-                            walletBillRecord.setSettlementId(settlement.getId());
-                            walletBillRecord.setOrderItemId(detail.getOrderItemId());
-                            //变动金额等于供应商收入
-                            walletBillRecord.setTotalAmount(ois.getIncomeSupplier());
-                            walletBillRecord.setType(Constants.BILL_CHANGE_TYPE.settlement.name());
-                            walletBillRecord.setMethod(Constants.BILL_CHANGE_METHOD.add.name());
-                            walletBillRecord.setOriginalAmount(walletDOInfo.getTotalAmount());
-                            walletBillRecord.setChangeAmount(ois.getIncomeSupplier());
-                            walletBillRecord.setBalance(walletDOInfo.getWithdrawableAmount().add(ois.getIncomeSupplier()));
-                            Order order = orderMapper.selectById(detail.getOrderId());
-                            if (!ObjectUtils.isEmpty(order)) {
-                                walletBillRecord.setRemark("订单完成(订单号" + order.getOrderNo() + ")" + ",获得收入");
-                                walletBillRecord.setOrderNo(order.getOrderNo());
+                            if(ois.getIncomeSupplier().compareTo(BigDecimal.ZERO) > 0) {
+                                WalletBillRecordDO walletBillRecord = new WalletBillRecordDO();
+                                walletBillRecord.setId(UUIDGenerator.getUUID());
+                                WalletDO walletDOInfo = walletService.getBySupplierId(supplierId);
+                                //增加供应商结算金额保存到钱包
+                                walletBillRecord.setSupplierId(supplierId);
+                                walletBillRecord.setWalletId(walletDOInfo.getId());
+                                walletBillRecord.setSettlementId(settlement.getId());
+                                walletBillRecord.setOrderItemId(detail.getOrderItemId());
+                                //变动金额等于供应商收入
+                                walletBillRecord.setTotalAmount(ois.getIncomeSupplier());
+                                walletBillRecord.setType(Constants.BILL_CHANGE_TYPE.settlement.name());
+                                walletBillRecord.setMethod(Constants.BILL_CHANGE_METHOD.add.name());
+                                walletBillRecord.setOriginalAmount(walletDOInfo.getTotalAmount());
+                                walletBillRecord.setChangeAmount(ois.getIncomeSupplier());
+                                walletBillRecord.setBalance(walletDOInfo.getWithdrawableAmount().add(ois.getIncomeSupplier()));
+                                Order order = orderMapper.selectById(detail.getOrderId());
+                                if (!ObjectUtils.isEmpty(order)) {
+                                    walletBillRecord.setRemark("订单完成(订单号" + order.getOrderNo() + ")" + ",获得收入");
+                                    walletBillRecord.setOrderNo(order.getOrderNo());
+                                }
+                                //更新钱包
+                                //可提现金额=钱包余额=结算金额
+                                walletDOInfo.setWithdrawableAmount(walletDOInfo.getWithdrawableAmount().add(ois.getIncomeSupplier()));
+                                walletDOInfo.setTotalAmount(walletDOInfo.getWithdrawableAmount());
+                                //已结算金额
+                                walletDOInfo.setSettledAmount(walletDOInfo.getSettledAmount().add(ois.getIncomeSupplier()));
+                                walletMapper.updateById(walletDOInfo);
+                                walletBillRecord.create();
+                                walletBillRecordMapper.insert(walletBillRecord);
                             }
-                            //更新钱包
-                            //可提现金额=钱包余额=结算金额
-                            walletDOInfo.setWithdrawableAmount(walletDOInfo.getWithdrawableAmount().add(ois.getIncomeSupplier()));
-                            walletDOInfo.setTotalAmount(walletDOInfo.getWithdrawableAmount());
-                            //已结算金额
-                            walletDOInfo.setSettledAmount(walletDOInfo.getSettledAmount().add(ois.getIncomeSupplier()));
-                            walletMapper.updateById(walletDOInfo);
-                            walletBillRecord.create();
-                            walletBillRecordMapper.insert(walletBillRecord);
                         } finally {
                             lock.unlock();
                         }

--
Gitblit v1.9.3