From ded03f0315e02c13f17b8bf7777c89a5cc73130e Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期二, 19 三月 2024 12:16:38 +0800 Subject: [PATCH] 代码提交 --- ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonateorganServiceImpl.java | 124 +++++++++++++++++++++++------------------ 1 files changed, 69 insertions(+), 55 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 355eb56..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 { @@ -61,6 +70,8 @@ @Autowired private SysDictDataMapper dictDataMapper; + @Autowired + IServiceOrganallocationService serviceOrganallocationService; /** @@ -114,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); } @@ -134,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"); @@ -440,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)); @@ -736,53 +742,46 @@ return l; } + @Override + @Transactional(rollbackFor = Exception.class) + public List<ServiceDonateorgan> saveData(List<ServiceDonateorgan> serviceDonateorgans) { + for (ServiceDonateorgan serviceDonateorgan : serviceDonateorgans) { + if (serviceDonateorgan.getInfoid() == null) { + throw new BaseException("鏈叧鑱旀崘鐚熀纭�淇℃伅锛宨nfoid涓虹┖浜�" + serviceDonateorgan); + } + 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); -// @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; -// } + } + 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<DonateNumberByMonth> getDonatePeopleByMonth(TimeVO timeVO) { @@ -917,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