From 519886a70d630e3cdd6c0f40f55fcebc6e780dc5 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期二, 19 三月 2024 17:45:11 +0800
Subject: [PATCH] 代码提交

---
 ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonateorganServiceImpl.java |  222 ++++++++++++++++---------------------------------------
 1 files changed, 64 insertions(+), 158 deletions(-)

diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonateorganServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonateorganServiceImpl.java
index fced001..0948119 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonateorganServiceImpl.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonateorganServiceImpl.java
@@ -4,20 +4,28 @@
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.core.domain.entity.SysDictData;
+import com.ruoyi.common.core.domain.entity.SysRole;
+import com.ruoyi.common.core.domain.entity.SysUser;
+import com.ruoyi.common.exception.base.BaseException;
+import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.project.domain.*;
 import com.ruoyi.project.domain.vo.*;
 import com.ruoyi.project.mapper.*;
 import com.ruoyi.project.service.*;
 import com.ruoyi.system.mapper.SysDictDataMapper;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
 
 import java.text.SimpleDateFormat;
 import java.util.*;
 import java.util.concurrent.ConcurrentHashMap;
+import java.util.logging.Logger;
 
 /**
  * 鎹愮尞鍣ㄥ畼绠$悊Service涓氬姟灞傚鐞�
@@ -25,6 +33,7 @@
  * @author ruoyi
  * @date 2021-11-10
  */
+@Slf4j
 @Service
 public class ServiceDonateorganServiceImpl extends ServiceImpl<ServiceDonateorganMapper, ServiceDonateorgan> implements IServiceDonateorganService {
 
@@ -62,22 +71,7 @@
     private SysDictDataMapper dictDataMapper;
 
     @Autowired
-    private IServiceMedicalevaluationService serviceMedicalevaluationService;
-
-    @Autowired
-    private IServiceRelativesconfirmationService serviceRelativesconfirmationService;
-
-    @Autowired
-    private IServiceEthicalreviewopinionsService serviceEthicalreviewopinionsService;
-
-    @Autowired
-    private IServiceOrganallocationService serviceOrganallocationService;
-
-    @Autowired
-    private IServiceDonationwitnessService serviceDonationwitnessService;
-
-    @Autowired
-    private IServiceDonatecompletioninfoService serviceDonatecompletioninfoService;
+    IServiceOrganallocationService serviceOrganallocationService;
 
 
     /**
@@ -131,6 +125,9 @@
         if (serviceDonateorgan.getTransplanttime() != null) {
             wrappers.eq(ServiceDonateorgan::getTransplanttime, serviceDonateorgan.getTransplanttime());
         }
+        if (serviceDonateorgan.getEstimatedtime() != null) {
+            wrappers.eq(ServiceDonateorgan::getEstimatedtime, serviceDonateorgan.getEstimatedtime());
+        }
         return this.list(wrappers);
     }
 
@@ -151,15 +148,6 @@
                 map_accept.put(org_accept.getCity(), map_accept.getOrDefault(org_accept.getCity(), 0) + 1);
             }
         }
-//        List<BasePrcaddressDict> city = basePrcaddressDictMapper.getAllCityOfZJ();
-//        for(BasePrcaddressDict c : city){
-//            NumberOfOrgans numberOfOrgans = new NumberOfOrgans();
-//            numberOfOrgans.setDistrict(c.getAreaname());
-//            numberOfOrgans.setNumberOfHospitals(baseOrganizationMapper.getOrganizationByCity(c.getAreanumber()));
-//            numberOfOrgans.setDonateNumber(map_donate.getOrDefault(c.getAreaname(),0));
-//            numberOfOrgans.setAcceptNumber(map_accept.getOrDefault(c.getAreaname(),0));
-//            list.add(numberOfOrgans);
-//        }
 
         List<String> regions = new ArrayList<String>();
         regions.add("0");
@@ -457,7 +445,8 @@
         donateNumber.setNumberOfDonate(serviceDonatebaseinfoMapper.countNumber(timeVO));
         donateNumber.setNumberOfMedicalEvaluation(serviceMedicalevaluationMapper.countNumber(timeVO));
         donateNumber.setNumberOfRelativeConfirmation(serviceRelativesconfirmationMapper.countNumber(timeVO));
-        donateNumber.setNumberOfDonatePeople(serviceOrganallocationMapper.countNumber(timeVO));
+//        donateNumber.setNumberOfDonatePeople(serviceOrganallocationMapper.countNumber(timeVO));
+        donateNumber.setNumberOfDonatePeople(serviceDonateorganMapper.countNumber(timeVO));
         donateNumber.setNumberOfOrgans(serviceDonateorganMapper.countNumber(timeVO));
         donateNumber.setNumberOfWitness(serviceDonationwitnessMapper.countNumber(timeVO));
         donateNumber.setNumberOfEthicalReview(serviceEthicalreviewopinionsMapper.countNumber(timeVO));
@@ -754,143 +743,45 @@
     }
 
     @Override
-    public Map<String, Object> getWorkFlow(Long id) {
-        //鐢ㄤ簬杩斿洖
-        Map<String, Object> map = new ConcurrentHashMap<>();
+    @Transactional(rollbackFor = Exception.class)
+    public List<ServiceDonateorgan> saveData(List<ServiceDonateorgan> serviceDonateorgans) {
+        for (ServiceDonateorgan serviceDonateorgan : serviceDonateorgans) {
+            if (serviceDonateorgan.getInfoid() == null) {
+                throw new BaseException("鏈叧鑱旀崘鐚熀纭�淇℃伅锛宨nfoid涓虹┖浜�" + serviceDonateorgan);
+            }
 
-        ServiceDonateorgan serviceDonateorgan = getById(id);
-        if (ObjectUtils.isEmpty(serviceDonateorgan)) {
-            return null;
+            String organNumber = serviceDonateorgan.getDonorno() + "." + serviceDonateorgan.getOrganno();
+            if (StringUtils.isEmpty(serviceDonateorgan.getDonorno()) || StringUtils.isEmpty(serviceDonateorgan.getOrganno())) {
+                throw new BaseException("鏂板鏃剁敓鎴愮殑缂栧彿涓虹┖,鍒涘缓澶辫触(璇锋鏌ユ崘鐚�呯紪鍙峰拰鍣ㄥ畼绫诲埆)! 锛�" + serviceDonateorgan.toString());
+            } else {
+                ServiceDonateorgan serviceDonateorgan1 = new ServiceDonateorgan();
+                serviceDonateorgan1.setOrgannumber(organNumber);
+                List<ServiceDonateorgan> listrecord = this.queryList(serviceDonateorgan);
+                if (listrecord.size() > 0) {
+                    continue;
+                }
+            }
+            serviceDonateorgan.setOrgannumber(organNumber);
+            log.info("serviceDonateorgan鐨勬暟鎹负: {}", serviceDonateorgan);
+            boolean save = this.save(serviceDonateorgan);
+
         }
-        //灏佽serviceDonateorgan娼滃湪鎹愮尞鏁版嵁
-        Map<String, String> donateorgan = new HashMap<>();
-        donateorgan.put("createtime", serviceDonateorgan.getCreateTime().toString());
-        donateorgan.put("updatetime", serviceDonateorgan.getUpdateTime().toString());
-        donateorgan.put("process", "");
-
-        //灏佽鍖诲璇勪及
-        Map<String, String> medicalevaluation = new HashMap<>();
-        ServiceMedicalevaluation serviceMedicalevaluation = new ServiceMedicalevaluation();
-        serviceMedicalevaluation.setInfoid(id);
-        List<ServiceMedicalevaluation> serviceMedicalevaluations = serviceMedicalevaluationService.queryList(serviceMedicalevaluation);
-        if (!CollectionUtils.isEmpty(serviceMedicalevaluations)) {
-            medicalevaluation.put("createtime", serviceMedicalevaluations.get(0).getCreateTime().toString());
-            medicalevaluation.put("updatetime", serviceMedicalevaluations.get(0).getUpdateTime().toString());
-            medicalevaluation.put("process", "");
-        }
-
-        //灏佽鎹愮尞纭
-        Map<String, String> relativesconfirmation = new HashMap<>();
-        ServiceRelativesconfirmation serviceRelativesconfirmation = new ServiceRelativesconfirmation();
-        serviceRelativesconfirmation.setInfoid(id);
-        List<ServiceRelativesconfirmation> serviceRelativesconfirmations = serviceRelativesconfirmationService.queryList(serviceRelativesconfirmation);
-        if (!CollectionUtils.isEmpty(serviceRelativesconfirmations)) {
-            relativesconfirmation.put("createtime", serviceRelativesconfirmations.get(0).getCreateTime().toString());
-            relativesconfirmation.put("updatetime", serviceRelativesconfirmations.get(0).getUpdateTime().toString());
-            relativesconfirmation.put("process", "");
-        }
-
-
-        //灏佽浼︾悊瀹℃煡
-        Map<String, String> ethicalreviewopinions = new HashMap<>();
-        ServiceEthicalreviewopinions serviceEthicalreviewopinions = new ServiceEthicalreviewopinions();
-        serviceEthicalreviewopinions.setInfoid(id);
-        List<ServiceEthicalreviewopinions> serviceEthicalreviewopinionsList = serviceEthicalreviewopinionsService.queryList(serviceEthicalreviewopinions);
-        if (!CollectionUtils.isEmpty(serviceEthicalreviewopinionsList)) {
-            ethicalreviewopinions.put("createtime", serviceEthicalreviewopinionsList.get(0).getCreateTime().toString());
-            ethicalreviewopinions.put("updatetime", serviceEthicalreviewopinionsList.get(0).getUpdateTime().toString());
-            ethicalreviewopinions.put("process", "");
-        }
-
-        //灏佽鍣ㄥ畼鍒嗛厤
-        Map<String, String> organallocationService = new HashMap<>();
-        ServiceOrganallocation serviceOrganallocation = new ServiceOrganallocation();
-        serviceOrganallocation.setOrganid(id);
-        List<ServiceOrganallocation> serviceOrganallocations = serviceOrganallocationService.selectServiceOrganallocationList(serviceOrganallocation);
-        if (!CollectionUtils.isEmpty(serviceOrganallocations)) {
-            organallocationService.put("createtime", serviceOrganallocations.get(0).getCreateTime().toString());
-            organallocationService.put("updatetime", serviceOrganallocations.get(0).getUpdateTime().toString());
-            organallocationService.put("process", "");
-        }
-
-        //灏佽鑾峰彇瑙佽瘉
-        Map<String, String> donationwitness = new HashMap<>();
-        ServiceDonationwitness serviceDonationwitness = serviceDonationwitnessService.getByInfoId(id);
-        if (!ObjectUtils.isEmpty(serviceDonationwitness)) {
-            donationwitness.put("createtime", serviceDonationwitness.getCreateTime().toString());
-            donationwitness.put("updatetime", serviceDonationwitness.getUpdateTime().toString());
-            donationwitness.put("process", "");
-        }
-
-        //灏佽瀹屾垚鐧昏
-        Map<String, String> donatecompletioninfo = new HashMap<>();
-        ServiceDonatecompletioninfo serviceDonatecompletioninfo = new ServiceDonatecompletioninfo();
-        serviceDonatecompletioninfo.setInfoid(id);
-        List<ServiceDonatecompletioninfo> serviceDonatecompletioninfos = serviceDonatecompletioninfoService.queryList(serviceDonatecompletioninfo);
-        if (!CollectionUtils.isEmpty(serviceDonatecompletioninfos)) {
-            donatecompletioninfo.put("createtime", serviceDonatecompletioninfos.get(0).getCreateTime().toString());
-            donatecompletioninfo.put("updatetime", serviceDonatecompletioninfos.get(0).getUpdateTime().toString());
-            donatecompletioninfo.put("process", "");
-        }
-
-        //灏嗘暟鎹皝闂紝骞惰繑鍥�
-        map.put("donateorgan", donateorgan);
-        map.put("medicalevaluation", medicalevaluation);
-        map.put("relativesconfirmation", relativesconfirmation);
-        map.put("ethicalreviewopinions", ethicalreviewopinions);
-        map.put("organallocationService", organallocationService);
-        map.put("donationwitness", donationwitness);
-        map.put("donatecompletioninfo", donatecompletioninfo);
-
-        return map;
+        return serviceDonateorgans;
     }
 
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public Boolean editArrayData(List<ServiceDonateorgan> serviceDonateorgans) {
+        for (ServiceDonateorgan serviceDonateorgan : serviceDonateorgans) {
+            if (serviceDonateorgan.getId() == null) {
+                throw new BaseException("id涓虹┖浜� 锛�" + serviceDonateorgan);
+            }
+            this.updateById(serviceDonateorgan);
+        }
+        //灏嗗甫ID鐨勬暟鎹繑鍥�
+        return true;
+    }
 
-//    @Override
-//    public List<DonateByRegionVO> OrgansOfHospitalByMonth() {
-//        List<BaseOrganization> baseOrganizations = baseOrganizationMapper.getHospitalList();
-//        List<DonateByRegionVO> l = new ArrayList<>();
-//        List<ServiceDonatebaseinfo> serviceDonatebaseinfos = serviceDonatebaseinfoMapper.getAllDonateBaseInfo();
-//
-//        for(BaseOrganization b : baseOrganizations){
-//            HashMap<String, Integer> map_baseinfo_count = new HashMap<String, Integer>();
-//            HashMap<String, Integer> map_completion_count = new HashMap<String, Integer>();
-//            //List<ServiceDonatebaseinfo> serviceDonatebaseinfos = serviceDonatebaseinfoMapper.getBaseInfoByHospital(b.getOrganizationid());
-//            List<ServiceDonatebaseinfo> serviceDonatebaseinfoOfThisHospital = new ArrayList<>();
-//            for(ServiceDonatebaseinfo sd : serviceDonatebaseinfos){
-//                if(b.getOrganizationid().equals(sd.getTreatmenthospitalno())){
-//                    serviceDonatebaseinfoOfThisHospital.add(sd);
-//                }
-//            }
-//            for(ServiceDonatebaseinfo s : serviceDonatebaseinfoOfThisHospital){
-//                Date dt = s.getReporttime();
-//                SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-//                String date = formatter.format(dt);
-//                String month = date.substring(0, 7);
-//                map_baseinfo_count.put(month, map_baseinfo_count.getOrDefault(month,0) + 1);
-//                ServiceDonatecompletioninfo sc = serviceDonatecompletioninfoMapper.getByInfoId(s.getId());
-//                if(sc != null){
-//                    map_completion_count.put(month, map_completion_count.getOrDefault(month,0) + 1);
-//                }
-//                else{
-//                    map_completion_count.put(month, map_completion_count.getOrDefault(month,0));
-//                }
-//
-//            }
-//
-//            for(Map.Entry<String, Integer> entry: map_baseinfo_count.entrySet()) {
-//                DonateByRegionVO d = new DonateByRegionVO();
-//                d.setHospitalNumber(b.getOrganizationid());
-//                d.setHospitalName(b.getOrganizationname());
-//                d.setRegionLevel(b.getRegionallevel());
-//                d.setMonth(entry.getKey());
-//                d.setBaseInfoCount(entry.getValue());
-//                d.setCompletionCount(map_completion_count.get(entry.getKey()));
-//                l.add(d);
-//            }
-//        }
-//        return l;
-//    }
 
     @Override
     public List<DonateNumberByMonth> getDonatePeopleByMonth(TimeVO timeVO) {
@@ -1025,5 +916,20 @@
         return l;
     }
 
+    @Override
+    public List<ServiceDonateorgan> countList(ServiceDonateorgan serviceDonateorgan) {
+        SysUser user = SecurityUtils.getLoginUser().getUser();
+        List<SysRole> l = user.getRoles();
+        Boolean b = false;
+        for (SysRole r : l) {
+            if (r.getRoleId().longValue() == 3) {
+                b = true;
+            }
+        }
+        if (b) {
+            serviceDonateorgan.setCreateBy(user.getUserName());
+        }
+        return serviceDonateorganMapper.countList(serviceDonateorgan);
+    }
 
 }

--
Gitblit v1.9.3