From 8d28496c655e2585ab76c1e949d2532b52bfdf4b Mon Sep 17 00:00:00 2001
From: maven <2163098428@qq.com>
Date: 星期五, 07 十一月 2025 13:57:33 +0800
Subject: [PATCH] yys  修改销售,采购编辑bug

---
 src/main/java/com/ruoyi/account/service/AccountExpenseService.java           |    2 +
 src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java |   24 ++++++-----
 src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java       |   22 ++++++-----
 src/main/java/com/ruoyi/account/service/AccountIncomeService.java            |    2 +
 src/main/java/com/ruoyi/account/service/impl/AccountIncomeServiceImpl.java   |    6 +++
 src/main/java/com/ruoyi/account/service/impl/AccountExpenseServiceImpl.java  |    6 +++
 6 files changed, 41 insertions(+), 21 deletions(-)

diff --git a/src/main/java/com/ruoyi/account/service/AccountExpenseService.java b/src/main/java/com/ruoyi/account/service/AccountExpenseService.java
index 621641b..7c91b2a 100644
--- a/src/main/java/com/ruoyi/account/service/AccountExpenseService.java
+++ b/src/main/java/com/ruoyi/account/service/AccountExpenseService.java
@@ -27,4 +27,6 @@
     Map<String,List<String>> analysis();
 
     AccountExpense getByInvoiceNumber(String purchaseContractNumber);
+
+    List<AccountExpense> getByInvoiceNumberList(String purchaseContractNumber);
 }
diff --git a/src/main/java/com/ruoyi/account/service/AccountIncomeService.java b/src/main/java/com/ruoyi/account/service/AccountIncomeService.java
index ab7036a..037a0ea 100644
--- a/src/main/java/com/ruoyi/account/service/AccountIncomeService.java
+++ b/src/main/java/com/ruoyi/account/service/AccountIncomeService.java
@@ -20,4 +20,6 @@
     List<AccountDto3> reportIncome();
 
     AccountIncome getByInvoiceNumber(String purchaseContractNumber);
+
+    List<AccountIncome> getByInvoiceNumberList(String purchaseContractNumber);
 }
diff --git a/src/main/java/com/ruoyi/account/service/impl/AccountExpenseServiceImpl.java b/src/main/java/com/ruoyi/account/service/impl/AccountExpenseServiceImpl.java
index a7ab8cf..a3c775f 100644
--- a/src/main/java/com/ruoyi/account/service/impl/AccountExpenseServiceImpl.java
+++ b/src/main/java/com/ruoyi/account/service/impl/AccountExpenseServiceImpl.java
@@ -157,5 +157,11 @@
                 .eq(AccountExpense::getInvoiceNumber, purchaseContractNumber));
     }
 
+    @Override
+    public List<AccountExpense> getByInvoiceNumberList(String purchaseContractNumber) {
+        return accountExpenseMapper.selectList(Wrappers.<AccountExpense>lambdaQuery()
+                .eq(AccountExpense::getInvoiceNumber, purchaseContractNumber));
+    }
+
 
 }
diff --git a/src/main/java/com/ruoyi/account/service/impl/AccountIncomeServiceImpl.java b/src/main/java/com/ruoyi/account/service/impl/AccountIncomeServiceImpl.java
index b4188e5..199e399 100644
--- a/src/main/java/com/ruoyi/account/service/impl/AccountIncomeServiceImpl.java
+++ b/src/main/java/com/ruoyi/account/service/impl/AccountIncomeServiceImpl.java
@@ -82,4 +82,10 @@
                 .eq(AccountIncome::getInvoiceNumber, purchaseContractNumber));
         return accountIncome;
     }
+
+    @Override
+    public List<AccountIncome> getByInvoiceNumberList(String purchaseContractNumber) {
+        return accountIncomeMapper.selectList(new LambdaQueryWrapper<AccountIncome>()
+                .eq(AccountIncome::getInvoiceNumber, purchaseContractNumber));
+    }
 }
diff --git a/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java b/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
index 79041dc..e5a64fd 100644
--- a/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
+++ b/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
@@ -153,18 +153,20 @@
         } else {
             purchaseLedgerMapper.updateById(purchaseLedger);
             PurchaseLedger purchaseLedgerDB = purchaseLedgerMapper.selectById(purchaseLedger.getId());
-            AccountExpense accountExpenseDB = accountExpenseService.getByInvoiceNumber(purchaseLedger.getPurchaseContractNumber());
-            if (ObjectUtils.isEmpty(accountExpenseDB)) {
-                throw new BaseException("鏀嚭绠$悊鏃犺閲囪喘鍚堝悓鐨勬敮鍑鸿褰�");
+            List<AccountExpense> accountExpenseDBs = accountExpenseService.getByInvoiceNumberList(purchaseLedger.getPurchaseContractNumber());
+            if (!CollectionUtils.isEmpty(accountExpenseDBs)) {
+                accountExpenseDBs.forEach(accountExpenseDB ->{
+                    accountExpenseDB.setExpenseDate(purchaseLedgerDB.getEntryDate());
+                    accountExpenseDB.setExpenseType("0");
+                    accountExpenseDB.setSupplierName(purchaseLedgerDB.getSupplierName());
+                    accountExpenseDB.setExpenseMoney(purchaseLedgerDB.getContractAmount());
+                    accountExpenseDB.setExpenseDescribed("閲囪喘鍚堝悓锛�" + purchaseLedgerDB.getPurchaseContractNumber());
+                    accountExpenseDB.setExpenseMethod("0");
+                    accountExpenseDB.setInvoiceNumber(purchaseLedgerDB.getPurchaseContractNumber());
+                    accountExpenseService.updateById(accountExpenseDB);
+                });
             }
-            accountExpenseDB.setExpenseDate(purchaseLedgerDB.getEntryDate());
-            accountExpenseDB.setExpenseType("0");
-            accountExpenseDB.setSupplierName(purchaseLedgerDB.getSupplierName());
-            accountExpenseDB.setExpenseMoney(purchaseLedgerDB.getContractAmount());
-            accountExpenseDB.setExpenseDescribed("閲囪喘鍚堝悓锛�" + purchaseLedgerDB.getPurchaseContractNumber());
-            accountExpenseDB.setExpenseMethod("0");
-            accountExpenseDB.setInvoiceNumber(purchaseLedgerDB.getPurchaseContractNumber());
-            accountExpenseService.updateById(accountExpenseDB);
+
         }
 
         // 4. 澶勭悊瀛愯〃鏁版嵁
diff --git a/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java b/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java
index 0cbe9d1..6493d46 100644
--- a/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java
+++ b/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java
@@ -399,17 +399,19 @@
             } else {
                 salesLedgerMapper.updateById(salesLedger);
                 SalesLedger salesLedgerDB = salesLedgerMapper.selectById(salesLedger.getId());
-                AccountIncome accountIncomeDB = accountIncomeService.getByInvoiceNumber(salesLedger.getSalesContractNo());
-                if (ObjectUtils.isEmpty(accountIncomeDB)) {
-                    throw new BaseException("鏀跺叆绠$悊鏃犺閿�鍞悎鍚岀殑鏀跺叆璁板綍");
+                List<AccountIncome> accountIncomeDBs = accountIncomeService.getByInvoiceNumberList(salesLedger.getSalesContractNo());
+                if (!CollectionUtils.isEmpty(accountIncomeDBs)) {
+                    accountIncomeDBs.forEach(accountIncomeDB ->{
+                        accountIncomeDB.setCustomerName(salesLedgerDB.getCustomerName());
+                        accountIncomeDB.setIncomeMoney(salesLedgerDB.getContractAmount());
+                        accountIncomeDB.setIncomeDescribed("閿�鍞悎鍚岋細" + salesLedgerDB.getSalesContractNo());
+                        accountIncomeDB.setInvoiceNumber(salesLedgerDB.getSalesContractNo());
+                        accountIncomeDB.setInputTime(new Date());
+                        accountIncomeDB.setInputUser(salesLedgerDB.getEntryPerson());
+                        accountIncomeService.updateById(accountIncomeDB);
+                    });
                 }
-                accountIncomeDB.setCustomerName(salesLedgerDB.getCustomerName());
-                accountIncomeDB.setIncomeMoney(salesLedgerDB.getContractAmount());
-                accountIncomeDB.setIncomeDescribed("閿�鍞悎鍚岋細" + salesLedgerDB.getSalesContractNo());
-                accountIncomeDB.setInvoiceNumber(salesLedgerDB.getSalesContractNo());
-                accountIncomeDB.setInputTime(new Date());
-                accountIncomeDB.setInputUser(salesLedgerDB.getEntryPerson());
-                accountIncomeService.updateById(accountIncomeDB);
+
             }
 
             // 4. 澶勭悊瀛愯〃鏁版嵁

--
Gitblit v1.9.3