From d39e4f7d839167c16425086dfa2f8747bccfdff9 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期四, 05 十一月 2026 17:39:01 +0800
Subject: [PATCH] feat: 打通销售采购财务闭环并完成累计业务优化
---
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/itemreceipt/MesWmItemReceiptServiceImpl.java | 24 ++++++++++++++++++++++++
1 files changed, 24 insertions(+), 0 deletions(-)
diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/itemreceipt/MesWmItemReceiptServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/itemreceipt/MesWmItemReceiptServiceImpl.java
index 4403d20..4346163 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/itemreceipt/MesWmItemReceiptServiceImpl.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/itemreceipt/MesWmItemReceiptServiceImpl.java
@@ -431,12 +431,36 @@
receiptLine.setItemId(noticeLine.getItemId());
// 浣跨敤鍚堟牸鏁伴噺锛堝鏋滄湁 IQC 鍒欐槸鍚堟牸鏁伴噺锛屽惁鍒欐槸鍒拌揣鏁伴噺锛�
receiptLine.setReceivedQuantity(noticeLine.getQualifiedQuantity() != null ? noticeLine.getQualifiedQuantity() : noticeLine.getArrivalQuantity());
+ // 鎸夐噰璐鍗曡鍗曚环蹇収閲戦锛屼緵鏉ョエ/瀵硅处浣跨敤
+ fillReceiptLinePrice(receiptLine);
itemReceiptLineService.createItemReceiptLineFromArrivalNoticeLine(receiptLine);
}
return receipt.getId();
}
+ /**
+ * 鎸夐噰璐鍗曡鍗曚环鍥炲~鍏ュ簱琛岄噾棰濓紝閬垮厤瀵硅处鏃跺啀鑱旇〃鍙栦环
+ */
+ private void fillReceiptLinePrice(MesWmItemReceiptLineDO receiptLine) {
+ if (receiptLine.getPurchaseOrderItemId() == null) {
+ return;
+ }
+ try {
+ var item = purchaseOrderApi.getPurchaseOrderItem(receiptLine.getPurchaseOrderItemId()).getData();
+ if (item == null || item.getProductPrice() == null) {
+ return;
+ }
+ receiptLine.setPrice(item.getProductPrice());
+ if (receiptLine.getReceivedQuantity() != null) {
+ receiptLine.setTotalPrice(item.getProductPrice().multiply(receiptLine.getReceivedQuantity()));
+ }
+ } catch (Exception ex) {
+ // 浠锋牸鍙槸蹇収锛岄噰璐鍗曡鍙栦笉鍒版椂涓嶉樆鏂叆搴�
+ log.warn("[fillReceiptLinePrice][閲囪喘璁㈠崟琛�({}) 浠锋牸蹇収澶辫触]", receiptLine.getPurchaseOrderItemId(), ex);
+ }
+ }
+
@Override
@Transactional(rollbackFor = Exception.class)
public void submitItemReceiptApproval(Long id, String processDefinitionKey) {
--
Gitblit v1.9.3