From 88d0598e43a959375187485891a6cf13712ac768 Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期二, 27 十月 2026 01:12:49 +0800
Subject: [PATCH] 修改了统计
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFunddetailController.java | 47 +++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 47 insertions(+), 0 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFunddetailController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFunddetailController.java
index 4dc7e41..ff19deb 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFunddetailController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFunddetailController.java
@@ -11,6 +11,7 @@
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.project.domain.FunddetailReqVo;
import com.ruoyi.project.domain.ServiceFunddetail;
+import com.ruoyi.project.domain.SpStatBonus;
import com.ruoyi.project.domain.SpStatBonusReq;
import com.ruoyi.project.domain.vo.TaxMoneyByItemEO;
import com.ruoyi.project.domain.vo.TaxMoneySumEO;
@@ -22,6 +23,7 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
+import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.ZoneId;
import java.time.temporal.TemporalAdjusters;
@@ -87,6 +89,13 @@
@PostMapping("/add")
@NotRepeatCommit(key = "param:arg[1]", value = 30000)
public AjaxResult add(@RequestBody ServiceFunddetail serviceFunddetail) {
+ // 2026-10-15锛氶檮浠舵枃浠跺悕瑙勮寖浜屾鏍¢獙锛堜笌鍓嶇 opo-web/src/utils/fileNameCheck.js 鍚屽彛寰勶紝
+ // 鐩殑鏄槻姝㈢粫杩囧墠绔洿鎺ヨ皟鎺ュ彛淇濆瓨涓嶅悎瑙勯檮浠跺悕锛夈�傛柊澧炲満鏅病鏈夊巻鍙查檮浠讹紝鐢ㄤ弗鏍兼ā寮忋��
+ String nameError = com.ruoyi.project.common.AttachmentNameValidator
+ .checkJsonList(serviceFunddetail.getInvoicefiles(), serviceFunddetail.getAnnexfiles());
+ if (nameError != null) {
+ return AjaxResult.error("闄勪欢鏂囦欢鍚嶄笉绗﹀悎瑕佹眰锛屾棤娉曚繚瀛橈細" + nameError);
+ }
boolean save = serviceFunddetailService.save(serviceFunddetail);
return AjaxResult.success(serviceFunddetail);
}
@@ -101,6 +110,24 @@
@NotRepeatCommit(key = "param:arg[1]", value = 30000)
public AjaxResult edit(@RequestBody ServiceFunddetail serviceFunddetail) {
log.info("淇敼鐨勬暟鎹俊鎭細{}", serviceFunddetail);
+ // 2026-10-15锛氶檮浠舵枃浠跺悕瑙勮寖浜屾鏍¢獙銆備慨鏀瑰満鏅寜涓氬姟鍙e緞"鍙牎楠屾湰娆″彉鏇寸殑闄勪欢"锛�
+ // 淇濆瓨鍓嶈鏄庣粏宸插瓨鍦ㄧ殑鍘嗗彶闄勪欢鍚嶄笉鍙備笌鏍¢獙锛屽惁鍒欒�佸崟鎹紙鍘嗗彶涓嶅悎瑙勫悕鍗犳瘮寰堥珮锛夋敼涓噾棰濋兘瀛樹笉杩涘幓銆�
+ java.util.Set<String> existingNames = new java.util.HashSet<>();
+ if (serviceFunddetail.getId() != null) {
+ ServiceFunddetail oldDetail = serviceFunddetailService.getById(serviceFunddetail.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 nameError = com.ruoyi.project.common.AttachmentNameValidator
+ .checkJsonListForUpdate(existingNames, serviceFunddetail.getInvoicefiles(),
+ serviceFunddetail.getAnnexfiles());
+ if (nameError != null) {
+ return AjaxResult.error("闄勪欢鏂囦欢鍚嶄笉绗﹀悎瑕佹眰锛屾棤娉曚繚瀛橈細" + nameError);
+ }
return toAjax(serviceFunddetailService.updateById(serviceFunddetail));
}
@@ -195,4 +222,24 @@
startPage();
return getDataTable(serviceFunddetailService.getListBySpStatBonus(spStatBonusReq));
}
+
+ /**
+ * 瀵煎嚭缁╂晥濂栭噾缁熻
+ */
+ @ApiOperation("瀵煎嚭缁╂晥濂栭噾缁熻")
+ @Log(title = "缁╂晥缁熻", businessType = BusinessType.EXPORT)
+ @GetMapping("/exportBonus")
+ public AjaxResult exportBonus(SpStatBonusReq spStatBonusReq) {
+ List<SpStatBonus> list = serviceFunddetailService.getListBySpStatBonus(spStatBonusReq);
+ // 閲戦 0.00 涓嶆樉绀�
+ for (SpStatBonus row : list) {
+ row.setAmount(blankZero(row.getAmount()));
+ }
+ ExcelUtil<SpStatBonus> util = new ExcelUtil<SpStatBonus>(SpStatBonus.class);
+ return util.exportExcel(list, "缁╂晥缁熻鏁版嵁");
+ }
+
+ private BigDecimal blankZero(BigDecimal value) {
+ return (value == null || value.compareTo(BigDecimal.ZERO) == 0) ? null : value;
+ }
}
--
Gitblit v1.9.3