From 961f921a9d210a003e0e636255628c7b82d2049c Mon Sep 17 00:00:00 2001
From: wujianwei <wjw@11.com>
Date: 星期一, 05 一月 2026 17:58:39 +0800
Subject: [PATCH] 新增字段

---
 service/src/main/java/com/ruoyi/cwgl/controller/InvoiceManageController.java |   77 ++++++++++++++++++++++++++++++++++++++
 1 files changed, 77 insertions(+), 0 deletions(-)

diff --git a/service/src/main/java/com/ruoyi/cwgl/controller/InvoiceManageController.java b/service/src/main/java/com/ruoyi/cwgl/controller/InvoiceManageController.java
index 128023d..09019d8 100644
--- a/service/src/main/java/com/ruoyi/cwgl/controller/InvoiceManageController.java
+++ b/service/src/main/java/com/ruoyi/cwgl/controller/InvoiceManageController.java
@@ -13,11 +13,15 @@
 import org.springframework.web.bind.annotation.RestController;
 import com.ruoyi.common.utils.file.DownloadExportUtil;
 import com.ruoyi.common.annotation.Log;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import com.ruoyi.common.core.controller.BaseController;
 import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.enums.BusinessType;
 import com.ruoyi.cwgl.domain.InvoiceManage;
+import com.ruoyi.cwgl.domain.InvoiceManageLog;
 import com.ruoyi.cwgl.service.IInvoiceManageService;
+import com.ruoyi.cwgl.service.IInvoiceManageLogService;
 import com.ruoyi.common.utils.poi.ExcelUtil;
 import com.ruoyi.common.core.page.TableDataInfo;
 
@@ -31,8 +35,13 @@
 @RequestMapping("/cwgl/invoiceManage")
 public class InvoiceManageController extends BaseController
 {
+    protected final Logger logger = LoggerFactory.getLogger(getClass());
+    
     @Autowired
     private IInvoiceManageService invoiceManageService;
+    
+    @Autowired
+    private IInvoiceManageLogService invoiceManageLogService;
 
 
 
@@ -85,6 +94,30 @@
     }
 
     /**
+     * 鐢宠寮�绁�
+     */
+    @PreAuthorize("@ss.hasPermi('cwgl:invoiceManage:apply')")
+    @Log(title = "鍙戠エ绠$悊", businessType = BusinessType.UPDATE)
+    @PostMapping("/apply")
+    public AjaxResult applyInvoice(@RequestBody InvoiceManage invoiceManage)
+    {
+        try {
+            // 璋冪敤鏈嶅姟灞傛柟娉曞鐞嗙敵璇峰紑绁ㄩ�昏緫
+            int result = invoiceManageService.updateInvoiceManage(invoiceManage);
+            
+            if (result > 0) {
+                // 璁板綍鐢宠寮�绁ㄦ棩蹇�
+                recordApplyInvoiceLog(invoiceManage);
+                return AjaxResult.success("鐢宠寮�绁ㄦ垚鍔�");
+            } else {
+                return AjaxResult.error("鐢宠寮�绁ㄥけ璐�");
+            }
+        } catch (Exception e) {
+            return AjaxResult.error("鐢宠寮�绁ㄥ紓甯革細" + e.getMessage());
+        }
+    }
+
+    /**
      * 淇敼鍙戠エ绠$悊
      */
     @PreAuthorize("@ss.hasPermi('cwgl:invoiceManage:edit')")
@@ -105,4 +138,48 @@
     {
         return toAjax(invoiceManageService.deleteInvoiceManageByIds(ids));
     }
+
+    /**
+     * 璁板綍鐢宠寮�绁ㄦ棩蹇�
+     *
+     * @param invoiceManage 鍙戠エ绠$悊瀵硅薄
+     */
+    private void recordApplyInvoiceLog(InvoiceManage invoiceManage)
+    {
+        try {
+            InvoiceManageLog log = new InvoiceManageLog();
+            log.setInvoiceManageId(invoiceManage.getId());
+            log.setOperator(getUsername());
+            log.setOperationTime(new java.util.Date());
+            
+            // 鏋勫缓鎿嶄綔鎻忚堪锛屽寘鍚紑绁ㄩ噾棰濄�佸叧鑱旇处鍗曠紪鍙峰拰瀵瑰簲寮�绁ㄩ噾棰�
+            StringBuilder descBuilder = new StringBuilder();
+            descBuilder.append("鐢宠寮�绁�: ");
+            
+            if (invoiceManage.getInvoiceAmount() != null) {
+                descBuilder.append("寮�绁ㄩ噾棰�=").append(invoiceManage.getInvoiceAmount()).append("; ");
+            }
+            
+            // 鑾峰彇鍏宠仈璐﹀崟淇℃伅
+            if (invoiceManage.getInvoiceDetailList() != null && !invoiceManage.getInvoiceDetailList().isEmpty()) {
+                descBuilder.append("鍏宠仈璐﹀崟淇℃伅: ");
+                for (com.ruoyi.cwgl.domain.InvoiceDetail detail : invoiceManage.getInvoiceDetailList()) {
+                    if (detail.getReceivableBillNo() != null) {
+                        descBuilder.append("璐﹀崟缂栧彿=").append(detail.getReceivableBillNo());
+                    }
+                    if (detail.getCurrentBilledAmount() != null) {
+                        descBuilder.append(", 鏈寮�绁ㄩ噾棰�=").append(detail.getCurrentBilledAmount());
+                    }
+                    descBuilder.append("; ");
+                }
+            }
+            
+            log.setOperationDesc(descBuilder.toString());
+            log.setCreateTime(new java.util.Date());
+            
+            invoiceManageLogService.insertInvoiceManageLog(log);
+        } catch (Exception e) {
+            logger.error("璁板綍鐢宠寮�绁ㄦ棩蹇楀け璐�: {}", e.getMessage());
+        }
+    }
 }

--
Gitblit v1.8.0