From 4865dc7156334faf8f4c1ee8011bffb03a28bcc5 Mon Sep 17 00:00:00 2001
From: sinake <sinake1@qq.com>
Date: 星期五, 15 五月 2026 13:50:57 +0800
Subject: [PATCH] 理审查专家新增获专家状态统计

---
 ruoyi-project/src/main/resources/mapper/project/ServiceEthicalreviewopinionsMapper.xml |   50 +++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 43 insertions(+), 7 deletions(-)

diff --git a/ruoyi-project/src/main/resources/mapper/project/ServiceEthicalreviewopinionsMapper.xml b/ruoyi-project/src/main/resources/mapper/project/ServiceEthicalreviewopinionsMapper.xml
index e021b56..86d27e3 100644
--- a/ruoyi-project/src/main/resources/mapper/project/ServiceEthicalreviewopinionsMapper.xml
+++ b/ruoyi-project/src/main/resources/mapper/project/ServiceEthicalreviewopinionsMapper.xml
@@ -135,13 +135,13 @@
         service_ethicalreviewopinions.dept_name as dept_name,
         service_ethicalreviewopinions.dept_code as dept_code,
         service_ethicalreviewopinions.organ_type as organ_type,
-        service_ethicalreviewopinions.ConclusionOrder as conclusionorder
-        FROM
-        service_donatebaseinfo
-        LEFT JOIN
-        service_ethicalreviewopinions
-        ON
-        service_donatebaseinfo.ID = service_ethicalreviewopinions.InfoID
+        service_ethicalreviewopinions.ConclusionOrder as conclusionorder,
+        service_ethicalreviewopinions.nitiate_id as nitiateId,
+        service_ethicalreviewopinions.expert_no as expertNo,
+        service_ethicalreviewopinions.sigin as sigin
+        FROM   service_donatebaseinfo
+        LEFT JOIN  service_ethicalreviewopinions
+        ON service_donatebaseinfo.ID = service_ethicalreviewopinions.InfoID
         LEFT JOIN base_organization ON
         base_organization.OrganizationID = service_donatebaseinfo.TreatmentHospitalNo
 
@@ -172,6 +172,8 @@
             <if test="city != null and city != ''">and `base_organization`.`City` = #{city}</if>
             <if test="fcid != null ">and `service_ethicalreviewopinions`.`ID` = #{fcid}</if>
             <if test="workflow != null ">and `service_donatebaseinfo`.`workflow` = #{workflow}</if>
+            <if test="nitiateId != null ">and `service_ethicalreviewopinions`.`nitiate_id` = #{nitiateId}</if>
+            <if test="expertNo != null ">and `service_ethicalreviewopinions`.`expert_no` = #{expertNo}</if>
         </where>
 
         order by `service_ethicalreviewopinions`.`ConclusionTime` desc
@@ -186,4 +188,38 @@
           and create_time &lt;= #{endtime}
     </select>
 
+    <select id="expertTotal" resultType="com.ruoyi.project.domain.vo.EthicalreviewopinionsTotalVO">
+        SELECT COUNT(*) count,SUM(CASE WHEN receive_status = 1 THEN 1 ELSE 0 END) AS acceptCount,
+        SUM(CASE WHEN receive_status =0  THEN 1 ELSE 0 END) AS notAcceptCount,
+        SUM(CASE WHEN ExpertOpinion IS not null THEN 1 ELSE 0 END) AS opinionCount,
+        SUM(CASE WHEN ExpertOpinion IS null THEN 1 ELSE 0 END) AS notApinionCount,
+        SUM(CASE WHEN ConclusionAnnex IS not null THEN 1 ELSE 0 END) AS annexCount,
+        SUM(CASE WHEN ConclusionAnnex IS null THEN 1 ELSE 0 END) AS notAnnexCount
+
+        FROM service_ethicalreviewopinions
+        <where>
+            <if test="expertNo != null ">expert_no = #{expertNo}</if>
+        </where>
+
+        GROUP BY receive_status,ExpertOpinion,ConclusionAnnex
+    </select>
+
+    <update id="updateTimeOut" >
+        UPDATE service_ethicalreviewopinions SET receive_status=0
+        WHERE end_time IS NOT NULL AND end_time &lt;= NOW()
+    </update>
+
+    <select id="stateTotal" resultType="com.ruoyi.project.domain.vo.EthicalreviewopinionsStateTotalVO">
+        SELECT COUNT(*) count,SUM(CASE WHEN receive_status = 5 THEN 1 ELSE 0 END) AS throughCount,
+        SUM(CASE WHEN receive_status =4  THEN 1 ELSE 0 END) AS rejectCount,
+        SUM(CASE WHEN receive_status =3  THEN 1 ELSE 0 END) AS waiveCount
+
+        FROM service_ethicalreviewopinions
+        <where>
+            <if test="expertNo != null ">expert_no = #{expertNo}</if>
+        </where>
+
+        GROUP BY receive_status,expert_no
+    </select>
+
 </mapper>

--
Gitblit v1.9.3