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-crm/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/invoice/vo/invoice/CrmInvoiceRespVO.java |   54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 54 insertions(+), 0 deletions(-)

diff --git a/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/invoice/vo/invoice/CrmInvoiceRespVO.java b/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/invoice/vo/invoice/CrmInvoiceRespVO.java
index 05b1e68..6ea731e 100644
--- a/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/invoice/vo/invoice/CrmInvoiceRespVO.java
+++ b/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/controller/admin/invoice/vo/invoice/CrmInvoiceRespVO.java
@@ -44,6 +44,15 @@
     @ExcelProperty("寮�绁ㄩ噾棰�")
     private BigDecimal price;
 
+    @Schema(description = "鍚堝悓閲戦")
+    private BigDecimal contractAmount;
+    @Schema(description = "棰勪粯娆鹃噾棰�")
+    private BigDecimal prepaymentAmount;
+    @Schema(description = "鍒拌揣娆鹃噾棰�")
+    private BigDecimal deliveryAmount;
+    @Schema(description = "楠屾敹娆鹃噾棰�")
+    private BigDecimal acceptanceAmount;
+
     @Schema(description = "寮�绁ㄦ棩鏈�", requiredMode = Schema.RequiredMode.REQUIRED, example = "2024-02-02")
     @ExcelProperty("寮�绁ㄦ棩鏈�")
     private LocalDateTime invoiceTime;
@@ -57,6 +66,45 @@
     @Schema(description = "鍚堝悓缂栧彿", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
     @ExcelProperty("鍚堝悓缂栧彿")
     private Long contractId;
+    @Schema(description = "鍏宠仈閿�鍞鍗�")
+    private Long saleOrderId;
+    @Schema(description = "鍏宠仈鍑哄簱鍗�")
+    private Long saleOutId;
+    @Schema(description = "鍑哄簱鍗曞彿", example = "SL20261029001")
+    private String saleOutCode;
+    @Schema(description = "鍙戠エ褰曞叆鐘舵�侊細0寰呭綍鍏� 10宸插綍鍏�", example = "0")
+    private Integer entryStatus;
+    @Schema(description = "鍙戠エ褰曞叆浜�")
+    private Long entryUserId;
+    @Schema(description = "鍙戠エ褰曞叆鏃堕棿")
+    private LocalDateTime entryTime;
+
+    @Schema(description = "鏀舵鑺傜偣")
+    private List<PaymentNode> paymentNodes;
+
+    @Schema(description = "鏀舵鑺傜偣")
+    @Data
+    public static class PaymentNode {
+
+        @Schema(description = "鍥炴璁″垝缂栧彿")
+        private Long id;
+        @Schema(description = "闃舵锛�1鍚堝悓娆� 2棰勪粯娆� 3鍒拌揣娆� 4楠屾敹娆� 5璐ㄤ繚閲�")
+        private Integer stage;
+        @Schema(description = "璁″垝鍥炴閲戦")
+        private BigDecimal amount;
+        @Schema(description = "璁″垝鍥炴鏃堕棿")
+        private LocalDateTime returnTime;
+        @Schema(description = "瀹為檯鍥炴鏃堕棿")
+        private LocalDateTime actualTime;
+        @Schema(description = "宸插洖娆鹃噾棰�")
+        private BigDecimal receiptedPrice;
+        @Schema(description = "鐘舵�侊細0鏈洖娆� 10閮ㄥ垎鍥炴 20宸插洖娓�")
+        private Integer status;
+        @Schema(description = "澶囨敞")
+        private String remark;
+
+    }
+
     @Schema(description = "鍚堝悓淇℃伅")
     private CrmContractRespVO contract;
 
@@ -85,6 +133,12 @@
     @Schema(description = "鍙戠エ闄勪欢鍒楄〃")
     private List<StorageBlobRespDTO> attachmentList;
 
+    @Schema(description = "鏄惁宸蹭笂浼犲彂绁ㄩ檮浠�", example = "true")
+    private Boolean hasAttachment;
+
+    @Schema(description = "鍓╀綑鍙洖娆鹃噾棰濓紝绛変簬 寮�绁ㄩ噾棰� - 璇ュ紑绁ㄥ凡鍥炴閲戦锛堣崏绋�+瀹℃壒涓�+瀹℃壒閫氳繃锛�", example = "1000.00")
+    private BigDecimal remainingInvoicePrice;
+
     @Schema(description = "鍒涘缓鏃堕棿", requiredMode = Schema.RequiredMode.REQUIRED)
     @ExcelProperty("鍒涘缓鏃堕棿")
     private LocalDateTime createTime;

--
Gitblit v1.9.3