From d54fbc9d4f8981fa0f7f613b33a28a8cd4f764ea Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期日, 25 十月 2026 16:29:53 +0800
Subject: [PATCH] feat(system): 优化用户搜索功能并完善ERP和MES模块验证逻辑

---
 yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/miscreceipt/MesWmMiscReceiptService.java |   53 +++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 51 insertions(+), 2 deletions(-)

diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/miscreceipt/MesWmMiscReceiptService.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/miscreceipt/MesWmMiscReceiptService.java
index 7d797b3..089ad81 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/miscreceipt/MesWmMiscReceiptService.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/miscreceipt/MesWmMiscReceiptService.java
@@ -1,10 +1,15 @@
 package cn.iocoder.yudao.module.mes.service.wm.miscreceipt;
 
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.module.mes.controller.admin.wm.miscreceipt.vo.MesWmMiscReceiptImportExcelVO;
+import cn.iocoder.yudao.module.mes.controller.admin.wm.miscreceipt.vo.MesWmMiscReceiptImportRespVO;
 import cn.iocoder.yudao.module.mes.controller.admin.wm.miscreceipt.vo.MesWmMiscReceiptPageReqVO;
 import cn.iocoder.yudao.module.mes.controller.admin.wm.miscreceipt.vo.MesWmMiscReceiptSaveReqVO;
 import cn.iocoder.yudao.module.mes.dal.dataobject.wm.miscreceipt.MesWmMiscReceiptDO;
 import jakarta.validation.Valid;
+
+import java.util.List;
+import java.util.Set;
 
 /**
  * MES 鏉傞」鍏ュ簱鍗� Service 鎺ュ彛
@@ -52,11 +57,46 @@
     PageResult<MesWmMiscReceiptDO> getMiscReceiptPage(MesWmMiscReceiptPageReqVO pageReqVO);
 
     /**
-     * 鎻愪氦瀹℃壒锛堣崏绋� 鈫� 宸插鎵癸級
+     * 鎻愪氦鏉傞」鍏ュ簱鍗曞鎵癸紙鑽夌 鈫� 瀹℃壒涓級
+     *
+     * 瀹℃牳浜虹敱銆岀郴缁熺鐞� - 瀹℃壒閰嶇疆銆嶆寜涓氬姟绫诲瀷缁熶竴閰嶇疆锛堜笟鍔$紪鐮� misc_receipt_approve锛夛紝
+     * 鎻愪氦鏃舵棤闇�鎸囧畾锛涙湭鍚敤瀹℃壒鎴栨湭閰嶇疆鏈夋晥瀹℃牳浜烘椂鎶涘嚭涓氬姟寮傚父銆�
      *
      * @param id 缂栧彿
      */
-    void submitMiscReceipt(Long id);
+    void submitMiscReceiptApproval(Long id);
+
+    /**
+     * 鑾峰緱鏉傞」鍏ュ簱鍗曞鎵圭殑瀹℃牳浜虹紪鍙烽泦鍚�
+     *
+     * 渚涘墠绔垽鏂綋鍓嶇櫥褰曠敤鎴锋槸鍚﹀簲灞曠ず銆屽鏍搞�嶆寜閽紱鏈厤缃椂杩斿洖绌洪泦鍚堛��
+     *
+     * @return 瀹℃牳浜虹敤鎴风紪鍙烽泦鍚�
+     */
+    Set<Long> getMiscReceiptApproverUserIds();
+
+    /**
+     * 瀹℃牳鏉傞」鍏ュ簱鍗曪紙瀹℃壒涓� 鈫� 宸插鎵� / 鑽夌锛�
+     *
+     * 浠呬笟鍔$紪鐮� misc_receipt_approve 閰嶇疆鐨勫鏍镐汉鍙搷浣滐紙澶氫汉鏃舵垨绛撅級锛屼笖浠呭湪瀹℃壒涓姸鎬佷笅鍏佽銆�
+     * 瀹℃牳閫氳繃缃负宸插鎵癸紙鍙墽琛屽叆搴擄級锛涘鏍镐笉閫氳繃蹇呴』濉啓鍘熷洜锛岄��鍥炶崏绋垮彲淇敼鍚庨噸鏂版彁浜ゃ��
+     *
+     * @param id           缂栧彿
+     * @param pass         鏄惁閫氳繃锛宼rue=閫氳繃 / false=涓嶉�氳繃
+     * @param reviewRemark 瀹℃牳鎰忚锛屽鏍镐笉閫氳繃鏃跺繀濉�
+     */
+    void auditMiscReceipt(Long id, Boolean pass, String reviewRemark);
+
+    /**
+     * 鍥炲啓 BPM 瀹℃壒缁撴灉锛堜緵 BPM 娴佺▼鐘舵�佺洃鍚櫒璋冪敤锛�
+     *
+     * 浠呭湪鍗曟嵁澶勪簬瀹℃壒涓椂鐢熸晥锛氶�氳繃=宸插鎵� / 涓嶉�氳繃=鑽夌 / 鍙栨秷=宸插彇娑堛��
+     *
+     * @param id        缂栧彿
+     * @param bpmStatus BPM 浠诲姟鐘舵�侊紝瑙� {@link cn.iocoder.yudao.module.bpm.enums.task.BpmTaskStatusEnum}
+     * @param reason    瀹℃壒鎰忚 / 鍙栨秷鍘熷洜
+     */
+    void updateMiscReceiptAuditStatus(Long id, Integer bpmStatus, String reason);
 
     /**
      * 鎵ц鍏ュ簱锛堝凡瀹℃壒 鈫� 宸插畬鎴愶級锛屾洿鏂板簱瀛樺彴璐�
@@ -87,4 +127,13 @@
      */
     void validateMiscReceiptEditable(Long id);
 
+    /**
+     * 瀵煎叆鏉傞」鍏ュ簱鍗�
+     *
+     * @param importList    瀵煎叆鍒楄〃
+     * @param updateSupport 鏄惁鏀寔鏇存柊锛岄粯璁や负 false
+     * @return 瀵煎叆缁撴灉
+     */
+    MesWmMiscReceiptImportRespVO importMiscReceiptList(List<MesWmMiscReceiptImportExcelVO> importList, boolean updateSupport);
+
 }

--
Gitblit v1.9.3