From e842ed74b3167075e4f8f0cf76b38ddc53a8fb54 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期五, 12 九月 2025 22:18:48 +0800
Subject: [PATCH] 日志修改
---
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonateorganServiceImpl.java | 160 +++++++++++++++++++++-------------------------------
1 files changed, 65 insertions(+), 95 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 5baef9a..525832a 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
@@ -1,13 +1,16 @@
package com.ruoyi.project.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-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.common.utils.bean.DtoConversionUtils;
+import com.ruoyi.project.common.CalculateDateUtils;
import com.ruoyi.project.domain.*;
import com.ruoyi.project.domain.vo.*;
import com.ruoyi.project.mapper.*;
@@ -17,12 +20,11 @@
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.time.LocalDate;
+import java.time.ZoneId;
import java.util.*;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.logging.Logger;
/**
* 鎹愮尞鍣ㄥ畼绠$悊Service涓氬姟灞傚鐞�
@@ -145,15 +147,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");
@@ -242,8 +235,8 @@
}
@Override
- public organQuality getOrganQuality(TimeVO timeVO) {
- organQuality og = new organQuality();
+ public OrganQuality getOrganQuality(TimeVO timeVO) {
+ OrganQuality og = new OrganQuality();
//鏈勾搴﹁幏鍙栨崘鐚�呮暟閲�
int transferNumber = serviceDonationwitnessMapper.countThisYearByTime(timeVO);
@@ -256,7 +249,7 @@
og.setDonateTransferRate(transferRate);
}
- //鏈勾搴︾Щ妞嶅櫒瀹樻暟閲�
+ //鏈勾搴︾Щ妞嶅櫒瀹樻暟閲忥紙鍚純鐢級
int organTransplantNumber = serviceDonateorganMapper.getAllFinishedOrgansThisYear(timeVO);
//鏈勾搴BD鏉ユ簮鍣ㄥ畼鎹愮尞鑰�
int DBDDonaterNumber = serviceDonationwitnessMapper.getDBDDonaterNumberThisYear(timeVO);
@@ -264,6 +257,9 @@
int DCDDonaterNumber = serviceDonationwitnessMapper.getDCDDonaterNumberThisYear(timeVO);
//鏈勾搴BCD鏉ユ簮鍣ㄥ畼鎹愮尞鑰�
int DBCDDonaterNumber = serviceDonationwitnessMapper.getDBCDDonaterNumberThisYear(timeVO);
+ //鏌ュ嚭鏉ョ殑transferNumber鏈夐棶棰橈紝鍏堜笉鐢ㄤ簡锛岀敤涓嬮潰鐩稿姞鐨則ransferNumber
+ transferNumber = DBDDonaterNumber + DCDDonaterNumber + DBCDDonaterNumber;
+ log.info("transferNumber鐨勫�间负锛歿}, DBDDonaterNumber鐨勫�间负锛歿}锛� DCDDonaterNumber鐨勫�间负锛歿}锛� DBCDDonaterNumber鐨勫�间负锛歿}", transferNumber, DBDDonaterNumber, DCDDonaterNumber, DBCDDonaterNumber);
if (transferNumber == 0) {
og.setOrganProductionRate(0.0);
og.setDBDDonateRate(0.0);
@@ -302,7 +298,15 @@
og.setMarginOrganRate(0.0);
og.setGermPositiveRate(0.0);
} else {
- double organUsedRate = (double) organTransplantNumber / (double) getOrganNumber;
+ log.info("timeVO鐨勫�间负 锛� {}", timeVO);
+ TimeVO timeVO1 = DtoConversionUtils.sourceToTarget(timeVO, TimeVO.class);
+ timeVO1.setTransplantstate(1);
+ //鑾峰彇鏈勾搴﹀凡缁忕Щ妞嶅櫒瀹樻暟閲�
+ int organTransplantNumber2 = serviceDonateorganMapper.getAllFinishedOrgansThisYear(timeVO1);
+ log.info("timeVO1鐨勫�间负 锛� {}", timeVO1);
+ log.info("organTransplantNumber2鐨勫�间负 锛� {}", organTransplantNumber2);
+ log.info("organTransplantNumber鐨勫�间负 锛� {}", organTransplantNumber);
+ double organUsedRate = (double) organTransplantNumber2 / (double) organTransplantNumber;
og.setOrganUsedRate(organUsedRate);
double biopsyBeforeRate = (double) biopsyBeforeNumber / (double) getOrganNumber;
@@ -441,8 +445,17 @@
@Override
public List<DonateOrganVO> selectVOList(DonateOrganVO donateOrganVO) {
-
- return serviceDonateorganMapper.selectVOList(donateOrganVO);
+ List<DonateOrganVO> donateOrganVOS = serviceDonateorganMapper.selectVOList(donateOrganVO);
+ for (DonateOrganVO donateOrganVO1:donateOrganVOS) {
+ if (donateOrganVO1.getBirthday() != null) {
+ Map<String, String> map = CalculateDateUtils.calculateAge(donateOrganVO1.getBirthday().toInstant().atZone(ZoneId.systemDefault()).toLocalDate(), LocalDate.now());
+ donateOrganVO1.setAge(org.apache.commons.lang3.ObjectUtils.isNotEmpty(map.get("age")) ? Long.valueOf(map.get("age")) : null);
+ donateOrganVO1.setAgeunit(map.get("ageUnit"));
+ donateOrganVO1.setAge2(org.apache.commons.lang3.ObjectUtils.isNotEmpty(map.get("age2")) ? Long.valueOf(map.get("age2")) : null);
+ donateOrganVO1.setAgeunit2(map.get("ageUnit2"));
+ }
+ }
+ return donateOrganVOS;
}
@Override
@@ -718,34 +731,33 @@
}
@Override
- public List<organInfoVO> getOrganCount(TimeVO timeVO) {
- List<organInfoVO> l = new ArrayList<>();
-
- //List<ServiceDonateorgan> serviceDonateorgans = serviceDonateorganMapper.selectAll(timeVO);
- Map<String, Integer> map_organs = new HashMap<String, Integer>();
- //List<String> organNo = new ArrayList<>();
+ public Map<String, Object> getOrganCount(TimeVO timeVO) {
+ Map<String, Object> map = new HashMap<>();
+ List<OrganInfoVO> organInfoVOList = new ArrayList<>();
+ Integer countSum = 0;
+ Integer abandonCountSum = 0;
List<SysDictData> data = dictDataMapper.selectDictDataByType("sys_Organ");
if (StringUtils.isNull(data)) {
data = new ArrayList<SysDictData>();
}
-
for (SysDictData sysDictData : data) {
if (!sysDictData.getDictValue().equals("C00")) {
- int count = serviceDonateorganMapper.getDistinctOrgansCount(sysDictData.getDictValue(), timeVO.getStarttime(), timeVO.getEndtime(), timeVO.getCity(), timeVO.getReporterno());
- map_organs.put(sysDictData.getDictValue(), count);
+ DistinctOrgansCount distinctOrgansCount = serviceDonateorganMapper.getDistinctOrgansCount(sysDictData.getDictValue(), timeVO.getStarttime(), timeVO.getEndtime(), timeVO.getCity(), timeVO.getReporterno());
+ OrganInfoVO organ = new OrganInfoVO();
+ organ.setOrganNo(sysDictData.getDictValue());
+ organ.setCount(distinctOrgansCount.getGainsum());
+ organ.setAbandonCount(distinctOrgansCount.getAbandonCount());
+ countSum = countSum + distinctOrgansCount.getGainsum();
+ abandonCountSum = abandonCountSum + distinctOrgansCount.getAbandonCount();
+ organInfoVOList.add(organ);
}
}
- for (Map.Entry<String, Integer> entry : map_organs.entrySet()) {
- organInfoVO organ = new organInfoVO();
- organ.setOrganNo(entry.getKey());
- //organ.setOrganName(serviceDonateorganMapper.getOrganNameByNo(entry.getKey()));
- organ.setCount(entry.getValue());
- l.add(organ);
- }
-
- return l;
+ map.put("countSum", countSum);
+ map.put("abandonCountSum", abandonCountSum);
+ map.put("organInfoVOList", organInfoVOList);
+ return map;
}
@Override
@@ -771,17 +783,6 @@
log.info("serviceDonateorgan鐨勬暟鎹负: {}", serviceDonateorgan);
boolean save = this.save(serviceDonateorgan);
-
-// //淇濆瓨service_organallocation
-// ServiceOrganallocation serviceOrganallocation = new ServiceOrganallocation();
-// serviceOrganallocation.setAgeunit(serviceDonateorgan.getAgeunit());
-// serviceOrganallocation.setApplicanttime(serviceDonateorgan.getApplicanttime());
-// serviceOrganallocation.setIdcardno(serviceDonateorgan.getIdcardno());
-// serviceOrganallocation.setIdcardtype(Long.valueOf(serviceDonateorgan.getIdcardtype()));
-// serviceOrganallocation.setOrganid(serviceDonateorgan.getId());
-// serviceOrganallocation.setOrgannumber(serviceDonateorgan.getOrgannumber());
-// log.info("serviceOrganallocation鐨勬暟鎹负: {}", serviceOrganallocation);
-// serviceOrganallocationService.save(serviceOrganallocation);
}
return serviceDonateorgans;
}
@@ -799,52 +800,6 @@
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) {
@@ -979,5 +934,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