From d3b5c1badd7f652c4d629a97b0c95b06607bb849 Mon Sep 17 00:00:00 2001
From: sinake <sinake1@qq.com>
Date: 星期五, 30 十月 2026 15:52:57 +0800
Subject: [PATCH] 器管回款显示列表内容调整
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonorchargeorganController.java | 74 +++++++++++++++++++++++++++++++++++++
1 files changed, 74 insertions(+), 0 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonorchargeorganController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonorchargeorganController.java
index c529985..e41c09b 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonorchargeorganController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonorchargeorganController.java
@@ -16,6 +16,7 @@
import com.ruoyi.common.utils.bean.DtoConversionUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.project.domain.*;
+import com.ruoyi.project.domain.dto.OrganfeeExportDto;
import com.ruoyi.project.service.IServiceDonorchargeorganService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -25,6 +26,7 @@
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
+import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@@ -83,6 +85,78 @@
}
/**
+ * 瀵煎嚭鍣ㄥ畼璐圭敤鍒楄〃锛堟煡璇㈡潯浠朵笌鍒楄〃鎺ュ彛涓�鑷达紝鍚姤鍛婃棩鏈熷尯闂达級
+ */
+ @ApiOperation("瀵煎嚭鍣ㄥ畼璐圭敤鍒楄〃")
+ @Log(title = "鍣ㄥ畼璐圭敤", businessType = BusinessType.EXPORT)
+ @GetMapping("/exportOrganfee")
+ public AjaxResult exportOrganfee(ServiceDonorchargeorgan serviceDonorchargeorgan) {
+ log.info("瀵煎嚭鍣ㄥ畼璐圭敤鍒楄〃鐨勫叆鍙傦細{}", serviceDonorchargeorgan);
+ List<ServiceDonorchargeorgan> list = null;
+ if (Boolean.TRUE.equals(serviceDonorchargeorgan.getPaymentidIsNotNull())) {
+ list = serviceDonorchargeorganService.queryList(serviceDonorchargeorgan);
+ } else {
+ list = serviceDonorchargeorganService.queryListBypaymentidIsNull(serviceDonorchargeorgan);
+ }
+ List<OrganfeeExportDto> exportList = new ArrayList<>(list.size());
+ for (ServiceDonorchargeorgan serviceDonorchargeorganItem : list) {
+ OrganfeeExportDto exportDto = DtoConversionUtils.sourceToTarget(serviceDonorchargeorganItem, OrganfeeExportDto.class);
+ exportDto.setOrganStateName(organStateName(serviceDonorchargeorganItem.getOrganState()));
+ BigDecimal receivableBalance = receivableBalance(serviceDonorchargeorganItem.getOrgancharge(), serviceDonorchargeorganItem.getAmount());
+ exportDto.setReceivableBalance(receivableBalance);
+ exportDto.setPayStatus(payStatus(receivableBalance));
+ exportList.add(exportDto);
+ }
+ ExcelUtil<OrganfeeExportDto> util = new ExcelUtil<OrganfeeExportDto>(OrganfeeExportDto.class);
+ return util.exportExcel(exportList, "鍣ㄥ畼璐圭敤鏁版嵁");
+ }
+
+ /**
+ * 鍣ㄥ畼鐘舵�佸�艰浆鏂囨湰
+ */
+ private String organStateName(String organState) {
+ if (StringUtils.isEmpty(organState)) {
+ return "";
+ }
+ switch (organState) {
+ case "1":
+ return "绉绘";
+ case "2":
+ return "寮冪敤";
+ case "3":
+ return "搴撳瓨";
+ case "4":
+ return "澶卞姛";
+ case "5":
+ return "鐩寸郴鍏嶉櫎";
+ case "6":
+ return "涓嶈壇浜嬩欢";
+ default:
+ return organState;
+ }
+ }
+
+ /**
+ * 搴旀敹閲戦-瀹炴敹閲戦鐨勫樊棰濓紝搴旀敹閲戦涓虹┖鏃惰繑鍥� null
+ */
+ private BigDecimal receivableBalance(BigDecimal organcharge, BigDecimal amount) {
+ if (organcharge == null) {
+ return null;
+ }
+ return organcharge.subtract(amount == null ? BigDecimal.ZERO : amount);
+ }
+
+ /**
+ * 宸涓� 0 宸蹭粯锛屽叾瀹冩湭浠�
+ */
+ private String payStatus(BigDecimal receivableBalance) {
+ if (receivableBalance == null) {
+ return "";
+ }
+ return receivableBalance.compareTo(BigDecimal.ZERO) == 0 ? "宸蹭粯" : "鏈粯";
+ }
+
+ /**
* 鑾峰彇鎹愮尞鍣ㄥ畼璇︾粏淇℃伅
*/
@ApiOperation("鑾峰彇鎹愮尞鍣ㄥ畼璇︾粏淇℃伅")
--
Gitblit v1.9.3