From 8c215c8be0f5076e8c95daf1b2203440ca7dfcad Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期五, 23 十月 2026 13:42:50 +0800
Subject: [PATCH] 修改了报销校验

---
 ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java |   22 ++++++++++++++++++++++
 1 files changed, 22 insertions(+), 0 deletions(-)

diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java
index 17d1ed3..49f934e 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java
@@ -1583,6 +1583,28 @@
 
             // 淇濆瓨璇︽儏鏁版嵁
             for (ServiceFunddetailVO serviceFunddetailVO : serviceFunddetails) {
+                // 2026-10-15锛氶檮浠舵枃浠跺悕瑙勮寖浜屾鏍¢獙锛堜笌鍓嶇 fileNameCheck 鍚屽彛寰勶紱鍙牎楠屾湰娆″彉鏇寸殑闄勪欢锛屽巻鍙查檮浠舵斁琛岋級
+                java.util.Set<String> existingNames = new java.util.HashSet<>();
+                if (serviceFunddetailVO.getId() != null) {
+                    ServiceFunddetail oldDetail = serviceFunddetailMapper.selectById(serviceFunddetailVO.getId());
+                    if (oldDetail != null) {
+                        existingNames.addAll(com.ruoyi.project.common.AttachmentNameValidator
+                                .collectNames(oldDetail.getInvoicefiles()));
+                        existingNames.addAll(com.ruoyi.project.common.AttachmentNameValidator
+                                .collectNames(oldDetail.getAnnexfiles()));
+                    }
+                }
+                String invoiceJson = CollectionUtils.isEmpty(serviceFunddetailVO.getInvoicefilesList())
+                        ? serviceFunddetailVO.getInvoicefiles()
+                        : JSON.toJSONString(serviceFunddetailVO.getInvoicefilesList());
+                String annexJson = CollectionUtils.isEmpty(serviceFunddetailVO.getAnnexfilesList())
+                        ? serviceFunddetailVO.getAnnexfiles()
+                        : JSON.toJSONString(serviceFunddetailVO.getAnnexfilesList());
+                String nameError = com.ruoyi.project.common.AttachmentNameValidator
+                        .checkJsonListForUpdate(existingNames, invoiceJson, annexJson);
+                if (nameError != null) {
+                    throw new BaseException("闄勪欢鏂囦欢鍚嶄笉绗﹀悎瑕佹眰锛屾棤娉曚繚瀛橈細" + nameError);
+                }
                 //鍘绘帀韬唤璇佺殑棣栧熬绌烘牸
                 if (StringUtils.isNotEmpty(serviceFunddetailVO.getIdcardno())) {
                     serviceFunddetailVO.setIdcardno(serviceFunddetailVO.getIdcardno().trim());

--
Gitblit v1.9.3