From f16ee221c1384160c96a5907791d07e4f6126c4c Mon Sep 17 00:00:00 2001
From: sinake <sinake1@qq.com>
Date: 星期五, 24 四月 2026 10:48:17 +0800
Subject: [PATCH] 获取捐献进程进度统计
---
ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceDonatebaseinfoService.java | 5 +++++
ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceDonatebaseinfoMapper.java | 4 ++++
ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceRelativesconfirmationService.java | 4 ++++
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatebaseinfoServiceImpl.java | 5 +++++
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatebaseinfoController.java | 3 ++-
ruoyi-project/src/main/resources/mapper/project/ServiceRelativesconfirmationMapper.xml | 1 +
ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceRelativesconfirmationMapper.java | 1 +
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatebaseinfoReportServiceImpl.java | 1 +
ruoyi-project/src/main/resources/mapper/project/ServiceDonatebaseinfoMapper.xml | 30 ++++++++++++++++++++++++++++++
9 files changed, 53 insertions(+), 1 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatebaseinfoController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatebaseinfoController.java
index d79223f..76b8cab 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatebaseinfoController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatebaseinfoController.java
@@ -121,11 +121,12 @@
//鑾峰彇鎹愮尞杩涚▼杩涘害
Map<Integer, Long> terminationCase = total.stream().filter(Objects::nonNull).map(DonatebaseinfoProgressDTO::getTerminationCase).filter(Objects::nonNull).collect(Collectors.groupingBy(type -> type, Collectors.counting()));
-
+ List<Map<String,Object>> totals= serviceDonatebaseinfoService.totalConfirmationBaseInfo(donatebaseinfoProgressVO);
//鏁版嵁灏佽
Map<String, Object> map = new HashMap<>();
map.put("terminationCase", terminationCase);
map.put("donatebaseinfoProgressDTOS", donatebaseinfoProgressDTOS);
+ map.put("total", totals);
if (!CollectionUtils.isEmpty(total)) totalCount = total.size();
return getDataTable(map, totalCount);
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceDonatebaseinfoMapper.java b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceDonatebaseinfoMapper.java
index 5fc7237..4868797 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceDonatebaseinfoMapper.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceDonatebaseinfoMapper.java
@@ -5,10 +5,12 @@
import java.util.Date;
import java.util.List;
+import java.util.Map;
import com.ruoyi.project.domain.ServiceDonatebaseinfo;
import com.ruoyi.project.domain.dto.DonatebaseinfoProgressDTO;
import com.ruoyi.project.domain.vo.DonatebaseinfoProgressVO;
+import com.ruoyi.project.domain.vo.RelativeConfirmationBaseInfoVO;
import com.ruoyi.project.domain.vo.TimeVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@@ -57,6 +59,8 @@
List<DonatebaseinfoProgressDTO> donateBaseInfoProgressList(DonatebaseinfoProgressVO donatebaseinfoProgressVO);
+ List<Map<String,Object>> totalConfirmationBaseInfo(DonatebaseinfoProgressVO donatebaseinfoProgressVO);
+
ServiceDonatebaseinfo getById(Long infoid);
int countByRecordState(@Param("recordState") String recordState, @Param("starttime") Date starttime, @Param("endtime") Date endtime);
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceRelativesconfirmationMapper.java b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceRelativesconfirmationMapper.java
index 0672e60..2e3c68d 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceRelativesconfirmationMapper.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceRelativesconfirmationMapper.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import java.util.List;
+import java.util.Map;
import com.ruoyi.project.domain.ServiceRelativesconfirmation;
import com.ruoyi.project.domain.dto.RelativeConfirmationBaseInfoDTO;
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceDonatebaseinfoService.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceDonatebaseinfoService.java
index 9a5836b..a026c49 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceDonatebaseinfoService.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceDonatebaseinfoService.java
@@ -8,6 +8,7 @@
import com.ruoyi.project.domain.ServiceDonatebaseinfo;
import com.ruoyi.project.domain.dto.DonatebaseinfoProgressDTO;
import com.ruoyi.project.domain.vo.DonatebaseinfoProgressVO;
+import com.ruoyi.project.domain.vo.RelativeConfirmationBaseInfoVO;
import com.ruoyi.project.domain.vo.TimeVO;
import com.ruoyi.project.domain.vo.countByRecordStateVO;
import org.apache.xmlbeans.impl.xb.xsdschema.Public;
@@ -51,6 +52,8 @@
List<DonatebaseinfoProgressDTO> donateBaseInfoProgressList(DonatebaseinfoProgressVO donatebaseinfoProgressVO);
+ List<Map<String,Object>> totalConfirmationBaseInfo(DonatebaseinfoProgressVO donatebaseinfoProgressVO);
+
String gethqzz(Long infoid);
countByRecordStateVO countByRecordState(TimeVO timeVO);
@@ -58,4 +61,6 @@
String getDonateNameById(Long infoid);
Map<String, Object> getWorkFlow(Long id);
+
+
}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceRelativesconfirmationService.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceRelativesconfirmationService.java
index 2524688..32b7bab 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceRelativesconfirmationService.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceRelativesconfirmationService.java
@@ -1,6 +1,8 @@
package com.ruoyi.project.service;
import java.util.List;
+import java.util.Map;
+
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.project.domain.ServiceRelativesconfirmation;
import com.ruoyi.project.domain.dto.RelativeConfirmationBaseInfoDTO;
@@ -30,4 +32,6 @@
List<RelativeConfirmationVO> selectVOList(RelativeConfirmationVO relativeConfirmationVO);
List<RelativeConfirmationBaseInfoDTO> confirmationBaseInfoList(RelativeConfirmationBaseInfoVO relativeConfirmationBaseInfoVO);
+
+
}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatebaseinfoReportServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatebaseinfoReportServiceImpl.java
index dd539ff..b8e392e 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatebaseinfoReportServiceImpl.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatebaseinfoReportServiceImpl.java
@@ -128,6 +128,7 @@
serviceDonatebaseinfo1.setReportername(serviceDonatebaseinfoReport.getCoordinatorName());
serviceDonatebaseinfo1.setBloodtype(serviceDonatebaseinfoReport.getBloodType());
serviceDonatebaseinfo1.setRhyin(serviceDonatebaseinfoReport.getRhYin());
+ serviceDonatebaseinfo1.setRecordstate("0");
//鍏堥�氳繃caseNo鏌ヨ鏄惁瀛樺湪
ServiceDonatebaseinfo serviceDonatebaseinfo = new ServiceDonatebaseinfo();
serviceDonatebaseinfo.setCaseNo(serviceDonatebaseinfoReport.getCaseNo());
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatebaseinfoServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatebaseinfoServiceImpl.java
index 877ec1d..3ec8b27 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatebaseinfoServiceImpl.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatebaseinfoServiceImpl.java
@@ -254,6 +254,11 @@
}
@Override
+ public List<Map<String,Object>> totalConfirmationBaseInfo(DonatebaseinfoProgressVO donatebaseinfoProgressVO) {
+ return serviceDonatebaseinfoMapper.totalConfirmationBaseInfo(donatebaseinfoProgressVO);
+ }
+
+ @Override
public String gethqzz(Long infoid) {
return serviceDonatebaseinfoMapper.gethqzz(infoid);
}
diff --git a/ruoyi-project/src/main/resources/mapper/project/ServiceDonatebaseinfoMapper.xml b/ruoyi-project/src/main/resources/mapper/project/ServiceDonatebaseinfoMapper.xml
index 185951c..5d97133 100644
--- a/ruoyi-project/src/main/resources/mapper/project/ServiceDonatebaseinfoMapper.xml
+++ b/ruoyi-project/src/main/resources/mapper/project/ServiceDonatebaseinfoMapper.xml
@@ -478,4 +478,34 @@
<if test="pageNum != null and pageSize != null">limit #{pageNum},#{pageSize}</if>
</select>
+ <select id="totalConfirmationBaseInfo" resultType="Map">
+ SELECT recordstate AS recordState, count(recordstate) AS stateCount
+ FROM service_donatebaseinfo sd
+ LEFT JOIN service_medicalevaluation sm ON sd.ID = sm.InfoID
+ AND sm.del_flag = 0 -- 鎹愮尞璇勪及
+ LEFT JOIN service_relativesconfirmation sr ON sd.ID = sr.InfoID
+ AND sr.del_flag = 0-- 鎹愮尞纭
+ LEFT JOIN service_ethicalreviewinitiate se ON sd.ID = se.InfoID
+ AND se.del_flag = 0-- 浼︾悊瀹℃煡
+ LEFT JOIN service_donationwitness sdw ON sd.ID = sdw.InfoID
+ AND sdw.del_flag = 0-- 鑾峰彇瑙佽瘉
+ LEFT JOIN service_donatecompletioninfo sdt ON sd.ID = sdt.InfoID
+ AND sdt.del_flag = 0 -- 瀹屾垚鐧昏
+
+ <where>sd.del_flag = 0
+ <if test="terminationCase != null ">AND sd.termination_case = #{terminationCase}</if>
+ <if test="treatmentHospitalName != null ">AND sd.TreatmentHospitalName = #{treatmentHospitalName}</if>
+ <if test="name != null ">AND sd.Name like concat('%', #{name}, '%')</if>
+ <if test="inpatientNo != null ">AND sd.InpatientNo = #{inpatientNo}</if>
+ <if test="startAge != null">AND sd.age >= #{startAge}</if>
+ <if test="endAge !=null">AND sd.age <= #{endAge}
+ </if>
+ <if test="idcardno != null and idcardno != ''">and IDCardNo = #{idcardno}</if>
+ <if test="recordstate != null and recordstate != ''">and sd.RecordState = #{recordstate}</if>
+ <if test="workflow != null">and sd.workflow = #{workflow}</if>
+ <if test="diagnosisName != null">and sd.DiagnosisName like concat('%', #{diagnosisName}, '%')</if>
+ </where>
+ GROUP BY recordstate
+ </select>
+
</mapper>
diff --git a/ruoyi-project/src/main/resources/mapper/project/ServiceRelativesconfirmationMapper.xml b/ruoyi-project/src/main/resources/mapper/project/ServiceRelativesconfirmationMapper.xml
index 7d47e14..d52137d 100644
--- a/ruoyi-project/src/main/resources/mapper/project/ServiceRelativesconfirmationMapper.xml
+++ b/ruoyi-project/src/main/resources/mapper/project/ServiceRelativesconfirmationMapper.xml
@@ -341,4 +341,5 @@
<if test="pageNum != null and pageSize != null">limit #{pageNum},#{pageSize}</if>
</select>
+
</mapper>
--
Gitblit v1.9.3