From 63b95a545b17b5efdfcfc902f129d354600c44ab Mon Sep 17 00:00:00 2001
From: sinake <sinake1@qq.com>
Date: 星期一, 21 九月 2026 10:52:41 +0800
Subject: [PATCH] 驾驶舱相关统计修改
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceTotalsController.java | 9 ++
ruoyi-project/src/main/java/com/ruoyi/project/domain/vo/organList.java | 53 +++++++++++++
ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceTotalsMapper.java | 12 +++
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceTotalsServiceImp.java | 18 ++++
ruoyi-project/src/main/java/com/ruoyi/project/domain/vo/TimeVO.java | 4 +
ruoyi-project/src/main/java/com/ruoyi/project/service/iServiceTotalsService.java | 12 +++
ruoyi-project/src/main/resources/mapper/project/ServiceDonationwitnessMapper.xml | 8 +-
ruoyi-project/src/main/resources/mapper/project/ServiceTotalsMapper.xml | 31 +++++++
ruoyi-project/src/main/resources/mapper/project/ServiceDonatebaseinfoMapper.xml | 18 ++--
ruoyi-project/src/main/resources/mapper/project/ServiceDonateorganMapper.xml | 22 ++--
10 files changed, 163 insertions(+), 24 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceTotalsController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceTotalsController.java
index 717c0aa..0570013 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceTotalsController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceTotalsController.java
@@ -120,4 +120,13 @@
List<ServiceTotalsOrganTotals> list = service.organTotals(totals);
return Result.success(list);
}
+
+ @ApiOperation("鎹愮尞鍣ㄥ畼缁熻鏄庣粏鍒楄〃")
+ @PostMapping("/organList")
+ public Result<List<organList>> organList(@RequestBody ServiceTotals totals)
+ {
+ List<organList> list = service.organList(totals);
+ Long count=service.organCount(totals);
+ return Result.success(count,list);
+ }
}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/domain/vo/TimeVO.java b/ruoyi-project/src/main/java/com/ruoyi/project/domain/vo/TimeVO.java
index 6713358..f8920d7 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/domain/vo/TimeVO.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/domain/vo/TimeVO.java
@@ -23,5 +23,9 @@
//鍣ㄥ畼绉绘鐘舵�� 锛�0锛氭湭绉绘锛�1锛氬凡绉绘锛�2锛氬純鐢�
private Integer transplantstate = null;
+ private String reportId;
+
+ private String gcsScore;
+
}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/domain/vo/organList.java b/ruoyi-project/src/main/java/com/ruoyi/project/domain/vo/organList.java
new file mode 100644
index 0000000..2334b8e
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/domain/vo/organList.java
@@ -0,0 +1,53 @@
+package com.ruoyi.project.domain.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+@ApiModel("鎹愮尞鍣ㄥ畼缁熻鏄庣粏")
+public class organList {
+ @ApiModelProperty("id")
+ private Integer id;
+
+ @ApiModelProperty("妗堜緥缂栧彿")
+ private String caseNo;
+
+ @ApiModelProperty("濮撳悕")
+ private String name;
+
+ @ApiModelProperty("鍦板尯")
+ private String RegisterCountyName;
+
+ @ApiModelProperty("骞翠唤")
+ private String donateYear;
+
+ @ApiModelProperty("鍣ㄥ畼鐘舵��")
+ private Integer transplantstate;
+
+ @ApiModelProperty("鍣ㄥ畼鍚嶇О")
+ private String OrganName;
+
+ @ApiModelProperty("绉绘鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ private Date TransplantTime;
+
+ @ApiModelProperty("鍙椾綋濮撳悕")
+ private String TransplantName;
+
+ @ApiModelProperty("绉绘鍖荤敓")
+ private String TransplantDoct;
+
+ @ApiModelProperty("绉绘鍖婚櫌")
+ private String HospitalName;
+
+ @ApiModelProperty("鑾峰彇鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ private Date OrganGetTime;
+
+ @ApiModelProperty("寮冪敤鍘熷洜")
+ private String notgetreason;
+}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceTotalsMapper.java b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceTotalsMapper.java
index 37b462b..010a0a3 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceTotalsMapper.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceTotalsMapper.java
@@ -87,5 +87,17 @@
*/
List<ServiceTotalsOrganTotals> organTotals(ServiceTotals totals);
+ /**
+ * 鎹愮尞鍣ㄥ畼缁熻鏄庣粏鍒楄〃
+ *
+ */
+ public List<organList> organList(ServiceTotals totals);
+
+ /**
+ * 鎹愮尞鍣ㄥ畼缁熻鏄庣粏鏁伴噺
+ *
+ */
+ public Long organCount(ServiceTotals totals);
+
}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/iServiceTotalsService.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/iServiceTotalsService.java
index edd5c21..e7743d0 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/iServiceTotalsService.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/iServiceTotalsService.java
@@ -81,5 +81,17 @@
*
*/
List<ServiceTotalsOrganTotals> organTotals(ServiceTotals totals);
+
+ /**
+ * 鎹愮尞鍣ㄥ畼缁熻鏄庣粏鍒楄〃
+ *
+ */
+ public List<organList> organList(ServiceTotals totals);
+
+ /**
+ * 鎹愮尞鍣ㄥ畼缁熻鏄庣粏鏁伴噺
+ *
+ */
+ public Long organCount(ServiceTotals totals);
}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceTotalsServiceImp.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceTotalsServiceImp.java
index d294c1f..24aa9aa 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceTotalsServiceImp.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceTotalsServiceImp.java
@@ -141,4 +141,22 @@
return mapper.organTotals(totals);
}
+ /**
+ * 鎹愮尞鍣ㄥ畼缁熻鏄庣粏鍒楄〃
+ *
+ */
+ @Override
+ public List<organList> organList(ServiceTotals totals) {
+ return mapper.organList(totals);
+ }
+
+ /**
+ * 鎹愮尞鍣ㄥ畼缁熻鏄庣粏鏁伴噺
+ *
+ */
+ @Override
+ public Long organCount(ServiceTotals totals) {
+ return mapper.organCount(totals);
+ }
+
}
diff --git a/ruoyi-project/src/main/resources/mapper/project/ServiceDonatebaseinfoMapper.xml b/ruoyi-project/src/main/resources/mapper/project/ServiceDonatebaseinfoMapper.xml
index 6077521..a223c09 100644
--- a/ruoyi-project/src/main/resources/mapper/project/ServiceDonatebaseinfoMapper.xml
+++ b/ruoyi-project/src/main/resources/mapper/project/ServiceDonatebaseinfoMapper.xml
@@ -260,7 +260,7 @@
</select>
<select id="getDonateBaseCountThisYear" resultType="java.lang.Integer">
select count(*) from service_donatebaseinfo b
- inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
+ left join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
<where>
AND b.del_flag=0
<if test="starttime != null ">and b.donatetime >= #{starttime}</if>
@@ -300,7 +300,7 @@
</select>
<select id="getAllDonateBaseInfoByTime" resultType="com.ruoyi.project.domain.ServiceDonatebaseinfo">
select * from service_donatebaseinfo b
- inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
+ left join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
<where>
<if test="starttime != null ">and b.ReportTime >= #{starttime}</if>
<if test="caseNo != null ">and b.case_no >= #{caseNo}</if>
@@ -350,21 +350,21 @@
<select id="getDistrictDonate" resultType="java.lang.String">
select o.city
from service_donatebaseinfo b
- inner join base_organization o on o.organizationid = b.treatmenthospitalno
+ left join base_organization o on o.organizationid = b.treatmenthospitalno
where (b.RecordState = '0' or b.RecordState = '1' or b.RecordState = '2')
</select>
<select id="getDistrictComplete" resultType="java.lang.String">
select o.city
from service_donatebaseinfo b
inner join service_donatecompletioninfo d on d.infoid = b.id
- inner join base_organization o on o.organizationid = b.treatmenthospitalno
+ left join base_organization o on o.organizationid = b.treatmenthospitalno
where d.CompleteTime > 0
</select>
<select id="getDistrictOrgans" resultType="java.lang.String">
select o.city
from service_donatebaseinfo b
inner join service_donateorgan d on d.infoid = b.id
- inner join base_organization o on o.organizationid = b.treatmenthospitalno
+ left join base_organization o on o.organizationid = b.treatmenthospitalno
where d.OrganGetTime > 0
</select>
<select id="getDonateNameById" resultType="java.lang.String">
@@ -376,7 +376,7 @@
<select id="getDistrictDonateByTime" resultType="java.lang.String">
select o.city
from service_donatebaseinfo b
- inner join base_organization o on o.organizationid = b.treatmenthospitalno
+ left join base_organization o on o.organizationid = b.treatmenthospitalno
where (b.RecordState = '0' or b.RecordState = '1' or b.RecordState = '2')
and b.ReportTime >= #{starttime}
and b.ReportTime <= #{endtime}
@@ -385,7 +385,7 @@
select o.city
from service_donatebaseinfo b
inner join service_donatecompletioninfo d on d.infoid = b.id
- inner join base_organization o on o.organizationid = b.treatmenthospitalno
+ left join base_organization o on o.organizationid = b.treatmenthospitalno
where d.del_flag = 0
and d.CompleteTime >= #{starttime}
and d.CompleteTime <= #{endtime}
@@ -394,7 +394,7 @@
<select id="gettreatmenthospitalnoCompleteByTime" resultType="java.lang.String">
select b.treatmenthospitalno from service_donatebaseinfo b
inner join service_donatecompletioninfo d on d.infoid=b.id
- inner join base_organization o on o.organizationid=b.treatmenthospitalno
+ left join base_organization o on o.organizationid=b.treatmenthospitalno
<where>
d.del_flag=0
<if test="starttime != null ">and d.CompleteTime >= #{starttime}</if>
@@ -409,7 +409,7 @@
select o.city
from service_donatebaseinfo b
inner join service_donateorgan d on d.infoid = b.id
- inner join base_organization o on o.organizationid = b.treatmenthospitalno
+ left join base_organization o on o.organizationid = b.treatmenthospitalno
WHERE d.del_flag = 0
AND d.OrganGetTime IS NOT NULL
AND d.OrganGetTime >= #{starttime}
diff --git a/ruoyi-project/src/main/resources/mapper/project/ServiceDonateorganMapper.xml b/ruoyi-project/src/main/resources/mapper/project/ServiceDonateorganMapper.xml
index c5bf61e..b010d21 100644
--- a/ruoyi-project/src/main/resources/mapper/project/ServiceDonateorganMapper.xml
+++ b/ruoyi-project/src/main/resources/mapper/project/ServiceDonateorganMapper.xml
@@ -232,7 +232,7 @@
<!-- <if test="reporterno != null and reporterno != ''">and b.ReporterNo = #{reporterno}</if>-->
select count(*) from service_donatecomporgan d
inner join service_donatebaseinfo b on b.id = d.InfoID
- inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
+ left join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
where b.del_flag=0
AND d.del_flag=0
AND d.TransplantTime IS NOT NULL
@@ -262,7 +262,7 @@
select count(*) from service_donationwitnessorgan d
inner join service_donatebaseinfo b on b.id = d.InfoID
- inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
+ left join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
where b.del_flag=0
AND d.OrganGetTime IS NOT NULL
AND d.OrganState=1
@@ -279,7 +279,7 @@
select count(*) from service_donateorgan d
inner join service_donatebaseinfo b on b.id = d.InfoID
- inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
+ left join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
where IsBiopsyBefore = "1"
AND
d.OrganGetTime IS NOT NULL AND d.OrganNo != 'C00'
@@ -295,7 +295,7 @@
select count(*) from service_donateorgan d
inner join service_donatebaseinfo b on b.id = d.InfoID
- inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
+ left join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
where IsBiopsyAfter = "1"
AND
d.OrganGetTime IS NOT NULL AND d.OrganNo != 'C00'
@@ -311,7 +311,7 @@
select count(*) from service_donateorgan d
inner join service_donatebaseinfo b on b.id = d.InfoID
- inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
+ left join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
where IsMarginalOrgan = "1" AND
d.OrganGetTime IS NOT NULL AND d.OrganNo != 'C00'
AND d.OrganNo != 'C69L'
@@ -326,7 +326,7 @@
select count(*) from service_donateorgan d
inner join service_donatebaseinfo b on b.id = d.InfoID
- inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
+ left join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
where IsPathogenPositive = "1"
AND
d.OrganGetTime IS NOT NULL AND d.OrganNo != 'C00'
@@ -342,7 +342,7 @@
select count(*) from service_donateorgan d
inner join service_donatebaseinfo b on b.id = d.InfoID
- inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
+ left join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
where IsPNF = "1"
<if test="starttime != null ">and d.OrganGetTime >= #{starttime}</if>
<if test="endtime != null">and d.OrganGetTime <= #{endtime}</if>
@@ -352,7 +352,7 @@
<select id="getDGFNumberThisYear" resultType="java.lang.Integer">
select count(*) from service_donateorgan d
inner join service_donatebaseinfo b on b.id = d.InfoID
- inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
+ left join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
where IsDGF = "1"
<if test="starttime != null ">and d.OrganGetTime >= #{starttime}</if>
<if test="endtime != null ">and d.OrganGetTime <= #{endtime}</if>
@@ -362,7 +362,7 @@
<select id="selectPNFOrganThisYear" resultType="com.ruoyi.project.domain.ServiceDonateorgan">
select * from service_donateorgan d
inner join service_donatebaseinfo b on b.id = d.InfoID
- inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
+ left join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
where IsPNF = "1"
AND
d.OrganGetTime IS NOT NULL AND d.OrganNo != 'C00'
@@ -378,7 +378,7 @@
<select id="selectDGFOrganThisYear" resultType="com.ruoyi.project.domain.ServiceDonateorgan">
select * from service_donateorgan d
inner join service_donatebaseinfo b on b.id = d.InfoID
- inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
+ left join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
where IsDGF = "1"
AND
d.OrganGetTime IS NOT NULL AND d.OrganNo != 'C00'
@@ -542,7 +542,7 @@
select count(*) as gainsum,ifnull(sum( CASE WHEN transplantstate = 3 THEN 1 ELSE 0 END ),0) as abandonCount from
service_donatecomporgan d
inner join service_donatebaseinfo b on b.id = d.InfoID
- inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
+ left join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
where d.OrganNo = #{organno}
-- and (OrganState = "3" or OrganState = "4" or OrganState = "5" or OrganState = "6")
and d.del_flag=0 and b.del_flag = 0 and b.workflow>5
diff --git a/ruoyi-project/src/main/resources/mapper/project/ServiceDonationwitnessMapper.xml b/ruoyi-project/src/main/resources/mapper/project/ServiceDonationwitnessMapper.xml
index a930bb3..6d08453 100644
--- a/ruoyi-project/src/main/resources/mapper/project/ServiceDonationwitnessMapper.xml
+++ b/ruoyi-project/src/main/resources/mapper/project/ServiceDonationwitnessMapper.xml
@@ -288,7 +288,7 @@
<select id="getDBDDonaterNumberThisYear" resultType="java.lang.Integer">
select count(*) from service_donationwitness w
inner join service_donatebaseinfo b on w.InfoID = b.id
- inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
+ left join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
where w.DonationCategory = "DBD"
<if test="starttime != null ">and w.OperationBegTime >= #{starttime}</if>
<if test="endtime != null ">and w.OperationBegTime <= #{endtime}</if>
@@ -298,7 +298,7 @@
<select id="getDCDDonaterNumberThisYear" resultType="java.lang.Integer">
select count(*) from service_donationwitness w
inner join service_donatebaseinfo b on w.InfoID = b.id
- inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
+ left join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
where w.DonationCategory = "DCD"
<if test="starttime != null ">and w.OperationBegTime >= #{starttime}</if>
<if test="endtime != null ">and w.OperationBegTime <= #{endtime}</if>
@@ -309,7 +309,7 @@
<select id="getDBCDDonaterNumberThisYear" resultType="java.lang.Integer">
select count(*) from service_donationwitness w
inner join service_donatebaseinfo b on w.InfoID = b.id
- inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
+ left join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
where w.DonationCategory = "DBCD"
<if test="starttime != null ">and w.OperationBegTime >= #{starttime}</if>
<if test="endtime != null ">and w.OperationBegTime <= #{endtime}</if>
@@ -338,7 +338,7 @@
<select id="countThisYearByTime" resultType="java.lang.Integer">
select count(*) from service_donationwitness w
inner join service_donatebaseinfo b on w.InfoID = b.id
- inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
+ left join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
<where>
w.del_flag=0
and b.del_flag=0
diff --git a/ruoyi-project/src/main/resources/mapper/project/ServiceTotalsMapper.xml b/ruoyi-project/src/main/resources/mapper/project/ServiceTotalsMapper.xml
index 9b49fe8..ec964e8 100644
--- a/ruoyi-project/src/main/resources/mapper/project/ServiceTotalsMapper.xml
+++ b/ruoyi-project/src/main/resources/mapper/project/ServiceTotalsMapper.xml
@@ -209,4 +209,35 @@
(SELECT COUNT(*) FROM service_donationwitnessorgan WHERE del_flag=0 AND OrganState=4) totalRecycle
</select>
+ <select id="organList" parameterType="com.ruoyi.project.domain.ServiceTotals"
+ resultType="organList">
+ SELECT a.id,a.case_no,a.NAME,a.RegisterCountyName,YEAR(a.donatetime) donateYear,b.OrganName,b.transplantstate,
+ b.TransplantTime,b.Name,b.TransplantDoct,b.HospitalName,c.OrganGetTime,c.notgetreason
+ FROM service_donatebaseinfo a LEFT JOIN service_donatecomporgan b ON a.ID=b.InfoID
+ LEFT JOIN service_donationwitnessorgan c ON a.ID=c.InfoID
+ <where>
+ a.del_flag=0 AND b.del_flag=0 AND c.del_flag=0
+ <if test="organName != null and organName != ''">and b.OrganName>=#{organName}</if>
+ <if test="area != null and area != ''">and a.RegisterCountyName>=#{area}</if>
+ <if test="startTime != null and startTime != ''">and a.donatetime>=#{startTime}</if>
+ <if test="endTime != null and endTime != ''">and a.donatetime <= #{endTime}</if>
+ </where>
+
+ </select>
+
+ <select id="organCount" parameterType="com.ruoyi.project.domain.ServiceTotals"
+ resultType="Long">
+ SELECT count(*)
+ FROM service_donatebaseinfo a LEFT JOIN service_donatecomporgan b ON a.ID=b.InfoID
+ LEFT JOIN service_donationwitnessorgan c ON a.ID=c.InfoID
+ <where>
+ a.del_flag=0 AND b.del_flag=0 AND c.del_flag=0
+ <if test="organName != null and organName != ''">and b.OrganName>=#{organName}</if>
+ <if test="area != null and area != ''">and a.RegisterCountyName>=#{area}</if>
+ <if test="startTime != null and startTime != ''">and a.donatetime>=#{startTime}</if>
+ <if test="endTime != null and endTime != ''">and a.donatetime <= #{endTime}</if>
+ </where>
+
+ </select>
+
</mapper>
\ No newline at end of file
--
Gitblit v1.9.3