From 1fba8f84b6326b2f1d613ec02890386ad512f184 Mon Sep 17 00:00:00 2001
From: sinake <sinake1@qq.com>
Date: 星期六, 09 五月 2026 09:45:34 +0800
Subject: [PATCH] 青附院opo捐献亲属确认增加状态 青附院opo患者死亡信息增加状态 青附院opo供体维护记录增加状态

---
 ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatebaseinfoServiceImpl.java |  121 +++++++++++++++++++++++++++++++--------
 1 files changed, 95 insertions(+), 26 deletions(-)

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 d333d7b..3605a75 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
@@ -17,8 +17,10 @@
 import com.ruoyi.project.common.CalculateDateUtils;
 import com.ruoyi.project.domain.*;
 import com.ruoyi.project.domain.dto.DonatebaseinfoProgressDTO;
+import com.ruoyi.project.domain.entity.ServiceDonatemaintenanceEntity;
 import com.ruoyi.project.domain.vo.DonatebaseinfoProgressVO;
 import com.ruoyi.project.domain.vo.TimeVO;
+import com.ruoyi.project.domain.vo.WorkFlowVO;
 import com.ruoyi.project.domain.vo.countByRecordStateVO;
 import com.ruoyi.project.mapper.*;
 import com.ruoyi.project.service.*;
@@ -84,6 +86,10 @@
     private IServiceDonatecompletioninfoService serviceDonatecompletioninfoService;
     @Autowired
     private SysUserMapper sysUserMapper;
+    @Autowired
+    IServiceDonatemaintenanceService serviceDonatemaintenanceService;
+    @Autowired
+    IServiceDeathinfoService serviceDeathinfoService;
 
 
     /**
@@ -254,6 +260,11 @@
     }
 
     @Override
+    public List<Map<String,Object>> totalConfirmationBaseInfo(DonatebaseinfoProgressVO donatebaseinfoProgressVO) {
+        return serviceDonatebaseinfoMapper.totalConfirmationBaseInfo(donatebaseinfoProgressVO);
+    }
+
+    @Override
     public String gethqzz(Long infoid) {
         return serviceDonatebaseinfoMapper.gethqzz(infoid);
     }
@@ -279,11 +290,9 @@
     }
 
     @Override
-    public Map<String, Object> getWorkFlow(Long id) {
+    public WorkFlowVO getWorkFlow(Long id) {
         log.info("getWorkFlow鐨勫叆鍙侷D涓猴細{}", id);
-        //鐢ㄤ簬杩斿洖
-        Map<String, Object> map = new ConcurrentHashMap<>();
-
+        WorkFlowVO map1=new WorkFlowVO();
         ServiceDonatebaseinfo serviceDonatebaseinfo = getById(id);
 
         if (ObjectUtils.isEmpty(serviceDonatebaseinfo)) {
@@ -311,12 +320,11 @@
         donatebaseinfo.put("process", "");
         //灏佽serviceDonateorgan娼滃湪鎹愮尞杩斿洖鏁版嵁
         log.info("妫�鏌ュ皝瑁呮綔鍦ㄦ崘鐚繑鍥炴暟鎹甦onatebaseinfo鐨勫�间负锛歿}", donatebaseinfo);
-        map.put("donatebaseinfo", donatebaseinfo);
-
+        map1.setDonatebaseinfo(donatebaseinfo);
         //灏佽鍖诲璇勪及
         log.info("妫�鏌erviceDonatebaseinfo.getWorkflow()鐨勫�间负锛歿}", serviceDonatebaseinfo.getWorkflow());
         Map<String, String> medicalevaluation = new HashMap<>();
-        if (serviceDonatebaseinfo.getWorkflow() >= 1) {
+        //if (serviceDonatebaseinfo.getWorkflow() >= 1) {
             ServiceMedicalevaluation serviceMedicalevaluation = new ServiceMedicalevaluation();
             serviceMedicalevaluation.setInfoid(id);
             List<ServiceMedicalevaluation> serviceMedicalevaluations = serviceMedicalevaluationService.queryList(serviceMedicalevaluation);
@@ -341,14 +349,14 @@
                 }
                 medicalevaluation.put("process", "");
             }
-        }
+        //}
         //灏佽鍖诲璇勪及杩斿洖鏁版嵁
         log.info("妫�鏌ュ皝瑁呭尰瀛﹁瘎浼拌繑鍥炴暟鎹甿edicalevaluation鐨勫�间负锛歿}", medicalevaluation);
-        map.put("medicalevaluation", medicalevaluation);
+        map1.setMedicalevaluation(medicalevaluation);
 
         //灏佽鎹愮尞纭
         Map<String, String> relativesconfirmation = new HashMap<>();
-        if (serviceDonatebaseinfo.getWorkflow() >= 2) {
+        //if (serviceDonatebaseinfo.getWorkflow() >= 2) {
             ServiceRelativesconfirmation serviceRelativesconfirmation = new ServiceRelativesconfirmation();
             serviceRelativesconfirmation.setInfoid(id);
             List<ServiceRelativesconfirmation> serviceRelativesconfirmations = serviceRelativesconfirmationService.queryList(serviceRelativesconfirmation);
@@ -373,15 +381,14 @@
                 }
                 relativesconfirmation.put("process", "");
             }
-        }
+        //}
         //灏佽鎹愮尞纭杩斿洖鏁版嵁
         log.info("妫�鏌ュ皝瑁呮崘鐚‘璁よ繑鍥炴暟鎹畆elativesconfirmation鐨勫�间负锛歿}", relativesconfirmation);
-        map.put("relativesconfirmation", relativesconfirmation);
-
+        map1.setRelativesconfirmation(relativesconfirmation);
 
         //灏佽浼︾悊瀹℃煡
         Map<String, String> donateflowcharts = new HashMap<>();
-        if (serviceDonatebaseinfo.getWorkflow() >= 3) {
+        //if (serviceDonatebaseinfo.getWorkflow() >= 3) {
             ServiceEthicalreviewopinions serviceDonateflowchart = new ServiceEthicalreviewopinions();
             serviceDonateflowchart.setInfoid(id);
             List<ServiceEthicalreviewopinions> serviceEthicalreviewopinionsList = iServiceEthicalreviewopinionsService.queryList(serviceDonateflowchart);
@@ -407,14 +414,14 @@
                 }
                 donateflowcharts.put("process", "");
             }
-        }
+        //}
         //灏佽浼︾悊瀹℃煡杩斿洖鏁版嵁
         log.info("妫�鏌ュ皝瑁呬鸡鐞嗗鏌ヨ繑鍥炴暟鎹甦onateflowcharts鐨勫�间负锛歿}", donateflowcharts);
-        map.put("donateflowcharts", donateflowcharts);
+        map1.setDonateflowcharts(donateflowcharts);
 
         //灏佽鍣ㄥ畼鍒嗛厤
         Map<String, String> donateorgansService = new HashMap<>();
-        if (serviceDonatebaseinfo.getWorkflow() >= 4) {
+       // if (serviceDonatebaseinfo.getWorkflow() >= 4) {
             ServiceDonateorgan serviceDonateorgan = new ServiceDonateorgan();
             serviceDonateorgan.setInfoid(id);
             List<ServiceDonateorgan> serviceDonateorgans = serviceDonateorganService.queryList(serviceDonateorgan);
@@ -440,14 +447,14 @@
                 }
                 donateorgansService.put("process", "");
             }
-        }
+        //}
         log.info("妫�鏌ュ皝瑁呭櫒瀹樺垎閰嶈繑鍥炴暟鎹甦onateorgansService鐨勫�间负锛歿}", donateorgansService);
         //灏佽鍣ㄥ畼鍒嗛厤杩斿洖鏁版嵁
-        map.put("donateorgansService", donateorgansService);
+        map1.setDonateorgansService(donateorgansService);
 
         //灏佽鑾峰彇瑙佽瘉
         Map<String, String> donationwitness = new HashMap<>();
-        if (serviceDonatebaseinfo.getWorkflow() >= 5) {
+        //if (serviceDonatebaseinfo.getWorkflow() >= 5) {
             ServiceDonationwitness serviceDonationwitness = serviceDonationwitnessService.getByInfoId(id);
             log.info("妫�鏌erviceDonationwitness鐨勫�间负锛歿}", serviceDonationwitness);
             if (!ObjectUtils.isEmpty(serviceDonationwitness)) {
@@ -471,14 +478,14 @@
 
                 donationwitness.put("process", "");
             }
-        }
+        //}
         log.info("妫�鏌ュ皝瑁呰幏鍙栬璇佽繑鍥炴暟鎹甦onationwitness鐨勫�间负锛歿}", donationwitness);
         //灏佽鑾峰彇瑙佽瘉杩斿洖鏁版嵁
-        map.put("donationwitness", donationwitness);
+        map1.setDonationwitness(donationwitness);
 
         //灏佽瀹屾垚鐧昏
         Map<String, String> donatecompletioninfo = new HashMap<>();
-        if (serviceDonatebaseinfo.getWorkflow() >= 6) {
+       // if (serviceDonatebaseinfo.getWorkflow() >= 6) {
             ServiceDonatecompletioninfo serviceDonatecompletioninfo = new ServiceDonatecompletioninfo();
             serviceDonatecompletioninfo.setInfoid(id);
             List<ServiceDonatecompletioninfo> serviceDonatecompletioninfos = serviceDonatecompletioninfoService.queryList(serviceDonatecompletioninfo);
@@ -504,13 +511,69 @@
 
                 donatecompletioninfo.put("process", "");
             }
-        }
+        //}
         log.info("妫�鏌ュ皝瑁呭畬鎴愮櫥璁拌繑鍥炴暟鎹甦onatecompletioninfo鐨勫�间负锛歿}", donatecompletioninfo);
         //灏佽瀹屾垚鐧昏杩斿洖鏁版嵁
-        map.put("donatecompletioninfo", donatecompletioninfo);
+        map1.setDonatecompletioninfo(donatecompletioninfo);
+
+        //渚涗綋缁存姢璁板綍
+        Map<String, String> donatemaintenance = new HashMap<>();
+        ServiceDonatemaintenanceEntity serviceDonatemaintenanceEntity=new ServiceDonatemaintenanceEntity();
+        serviceDonatemaintenanceEntity.setInfoid(id);
+        List<ServiceDonatemaintenanceEntity> donatemaintenanceEntityList= serviceDonatemaintenanceService.queryList(serviceDonatemaintenanceEntity).getRecords();
+        if(donatemaintenanceEntityList.size()>0){
+            donatemaintenance.put("createtime", DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss", donatemaintenanceEntityList.get(0).getCreateTime()));
+            donatemaintenance.put("updatetime", donatemaintenanceEntityList.get(0).getUpdateTime() != null ? DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss", donatemaintenanceEntityList.get(0).getUpdateTime()) : "");
+
+            donatemaintenance.put("createperson", null);
+            if (StringUtils.isNotBlank(donatemaintenanceEntityList.get(0).getCreateBy())) {
+                SysUser sysUser = sysUserMapper.selectUserByUserName(donatemaintenanceEntityList.get(0).getCreateBy());
+                if (!ObjectUtils.isEmpty(sysUser)) {
+                    donatemaintenance.put("createperson", sysUser.getNickName());
+                }
+            }
+            donatemaintenance.put("updateperson", null);
+            if (StringUtils.isNotBlank(donatemaintenanceEntityList.get(0).getUpdateBy())) {
+                SysUser sysUser = sysUserMapper.selectUserByUserName(donatemaintenanceEntityList.get(0).getUpdateBy());
+                if (!ObjectUtils.isEmpty(sysUser)) {
+                    donatemaintenance.put("updateperson", sysUser.getNickName());
+                }
+            }
+
+            donatemaintenance.put("process", "");
+        }
+        map1.setDonatemaintenance(donatemaintenance);
+
+        //鎮h�呮浜′俊鎭�
+        Map<String, String> deathinfo = new HashMap<>();
+        ServiceDeathinfo serviceDeathinfo =new ServiceDeathinfo();
+        serviceDeathinfo.setInfoid(id);
+        List<ServiceDeathinfo> serviceDeathinfoList= serviceDeathinfoService.queryList(serviceDeathinfo).getRecords();
+        if(serviceDeathinfoList.size()>0){
+            deathinfo.put("createtime", DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss", serviceDeathinfoList.get(0).getCreateTime()));
+            deathinfo.put("updatetime", serviceDeathinfoList.get(0).getUpdateTime() != null ? DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss", donatemaintenanceEntityList.get(0).getUpdateTime()) : "");
+
+            deathinfo.put("createperson", null);
+            if (StringUtils.isNotBlank(serviceDeathinfoList.get(0).getCreateBy())) {
+                SysUser sysUser = sysUserMapper.selectUserByUserName(serviceDeathinfoList.get(0).getCreateBy());
+                if (!ObjectUtils.isEmpty(sysUser)) {
+                    deathinfo.put("createperson", sysUser.getNickName());
+                }
+            }
+            deathinfo.put("updateperson", null);
+            if (StringUtils.isNotBlank(serviceDeathinfoList.get(0).getUpdateBy())) {
+                SysUser sysUser = sysUserMapper.selectUserByUserName(serviceDeathinfoList.get(0).getUpdateBy());
+                if (!ObjectUtils.isEmpty(sysUser)) {
+                    deathinfo.put("updateperson", sysUser.getNickName());
+                }
+            }
+
+            deathinfo.put("process", "");
+        }
+        map1.setDeathinfo(deathinfo);
 
         //灏嗘暟鎹皝闂紝骞惰繑鍥�
-        return map;
+        return map1;
     }
 
 
@@ -554,6 +617,12 @@
         if (StringUtils.isNotBlank(serviceDonatebaseinfo.getGcsScore())) {
             wrappers.eq(ServiceDonatebaseinfo::getGcsScore, serviceDonatebaseinfo.getGcsScore());
         }
+        if (StringUtils.isNotBlank(serviceDonatebaseinfo.getExtracontent())) {
+            wrappers.eq(ServiceDonatebaseinfo::getExtracontent, serviceDonatebaseinfo.getExtracontent());
+        }
+        if (serviceDonatebaseinfo.getTerminationType()!=null) {
+            wrappers.eq(ServiceDonatebaseinfo::getTerminationType, serviceDonatebaseinfo.getTerminationType());
+        }
         Map<String, Object> params = serviceDonatebaseinfo.getParams();
         if (params.get("beginReporttime") != null && params.get("endReporttime") != null) {
             wrappers.between(ServiceDonatebaseinfo::getReporttime, params.get("beginReporttime"), params.get("endReporttime"));

--
Gitblit v1.9.3