From 907641e56c2085aaa81f267946dc3e3e9fca73e7 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期三, 18 九月 2024 09:39:02 +0800 Subject: [PATCH] 代码提交 --- smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java | 113 +++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 79 insertions(+), 34 deletions(-) diff --git a/smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java index 53af4ce..871e4d3 100644 --- a/smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java +++ b/smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java @@ -1,13 +1,5 @@ package com.smartor.service.impl; -import java.io.FileOutputStream; -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.*; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; -import java.util.stream.Collectors; - import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.redis.RedisCache; import com.ruoyi.common.exception.base.BaseException; @@ -16,7 +8,9 @@ import com.ruoyi.common.utils.StringUtils; import com.smartor.domain.*; import com.smartor.mapper.BaseTagMapper; +import com.smartor.mapper.PatArchiveMapper; import com.smartor.mapper.PatArchivetagMapper; +import com.smartor.service.IPatArchiveService; import com.smartor.service.IPatMedInhospService; import com.smartor.service.IPatMedOuthospService; import com.smartor.service.IPatMedPhysicalService; @@ -24,14 +18,23 @@ import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.ObjectUtils; import org.apache.poi.hssf.usermodel.HSSFDateUtil; -import org.apache.poi.ss.usermodel.*; +import org.apache.poi.ss.usermodel.DataFormatter; +import org.apache.poi.ss.usermodel.Row; +import org.apache.poi.ss.usermodel.Sheet; +import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import com.smartor.mapper.PatArchiveMapper; -import com.smartor.service.IPatArchiveService; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; + +import java.io.FileOutputStream; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.*; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; +import java.util.stream.Collectors; /** * 鎮h�呮。妗圫ervice涓氬姟灞傚鐞� @@ -96,15 +99,17 @@ @Override public Integer insertPatArchive(PatArchive patArchive) { patArchive.setCreateTime(DateUtils.getNowDate()); - List<PatArchive> patArchives = new ArrayList<>(); - patArchives.add(patArchive); - patArchiveMapper.insertPatArchive(patArchives); - if (CollectionUtils.isNotEmpty(patArchives)) { - patArchives.get(0).getPatid(); - log.info("鎮h�卛d涓�: {}", patArchives.get(0).getPatid()); - return patArchives.get(0).getPatid().intValue(); + patArchiveMapper.insertPatArchiveSingle(patArchive); + return patArchive.getId().intValue(); + } + + @Override + public Boolean update(PatArchive patArchive) { + int i = patArchiveMapper.updatePatArchive(patArchive); + if (i != 1) { + return false; } - return null; + return true; } /** @@ -118,27 +123,28 @@ public Boolean saveOrUpdatePatInfo(PatArchiveVO patArchiveVO) { //閫氳繃isoperation鏉ュ垽鏂槸鍚︽柊澧� PatArchive patArchive = DtoConversionUtils.sourceToTarget(patArchiveVO, PatArchive.class); - if (patArchiveVO.getIsoperation() != null && patArchiveVO.getIsoperation() == 1) { + if (patArchiveVO.getIsoperation() != null && patArchiveVO.getIsoperation() == 1 || patArchiveVO.getId() == null) { //鏂板 List<PatArchive> patArchives = new ArrayList<>(); patArchive.setUpdateTime(DateUtils.getNowDate()); patArchives.add(patArchive); patArchiveMapper.insertPatArchive(patArchives); - } else if (patArchiveVO.getIsoperation() != null && patArchiveVO.getIsoperation() == 2) { + } else if (patArchiveVO.getIsoperation() != null && patArchiveVO.getIsoperation() == 2 || patArchiveVO.getId() != null) { //淇敼 + patArchiveVO.setIsoperation(2); patArchiveMapper.updatePatArchive(patArchive); } if (CollectionUtils.isNotEmpty(patArchiveVO.getTagList())) { //澶勭悊鏍囩锛堟柊澧炪�佸垹闄わ級 for (PatArchivetag patArchivetag : patArchiveVO.getTagList()) { - if (patArchivetag.getIsoperation() != null && patArchivetag.getIsoperation() == 1) { + if (patArchivetag.getIsoperation() != null && patArchivetag.getIsoperation() == 1 || patArchivetag.getIsoperation() == null && patArchiveVO.getIsoperation() == 1) { //鏂板 patArchivetag.setUpdateBy(null); patArchivetag.setCreateTime(new Date()); - patArchivetag.setPatid(patArchive.getPatid()); + patArchivetag.setPatid(patArchive.getId()); patArchivetagMapper.insertPatArchivetag(patArchivetag); - } else if (patArchivetag.getIsoperation() != null && patArchivetag.getIsoperation() == 3) { + } else if (patArchivetag.getIsoperation() != null && patArchivetag.getIsoperation() == 3 || patArchivetag.getIsoperation() == null && patArchiveVO.getIsoperation() == 3) { patArchivetag.setDelFlag("1"); //鍒犻櫎 log.info("鏍囩鐨刬d涓猴細{}", patArchivetag.getTagid()); @@ -171,6 +177,46 @@ public int deletePatArchiveByPatid(Long patid) { return patArchiveMapper.deletePatArchiveByPatid(patid); } + + /** + * 鑾峰彇鎮h�呬俊鎭� + * + * @param patArchiveReq + * @return + */ + @Override + public List<PatArchiveOthreInfo> getPatientInfo(PatArchiveReq patArchiveReq) { + if (CollectionUtils.isEmpty(patArchiveReq.getLeavehospitaldistrictcodes()) || patArchiveReq.getLeavehospitaldistrictcodes().size() == 0) { + patArchiveReq.setLeavehospitaldistrictcodes(null); + } + if (CollectionUtils.isEmpty(patArchiveReq.getLeaveldeptcodes()) || patArchiveReq.getLeaveldeptcodes().size() == 0) { + patArchiveReq.setLeaveldeptcodes(null); + } + + List<PatArchiveOthreInfo> patArchiveList = new ArrayList<>(); + if (patArchiveReq.getAllhosp() != null && patArchiveReq.getAllhosp() == 1) { + // 鏌ョ湅浣忛櫌 1 鏌ョ湅闂ㄨ瘖 2 鏌ョ湅浣撴 3 + List<PatArchiveOthreInfo> patArchives1 = patArchiveMapper.selectPatArchiveInfoByInhosp(patArchiveReq); + if (CollectionUtils.isNotEmpty(patArchives1)) { + patArchiveList.addAll(patArchives1); + } + } else if (patArchiveReq.getAllhosp() != null && patArchiveReq.getAllhosp() == 2) { + // 鏌ョ湅浣忛櫌 1 鏌ョ湅闂ㄨ瘖 2 鏌ョ湅浣撴 3 + List<PatArchiveOthreInfo> patArchives2 = patArchiveMapper.selectPatArchiveInfoByOuthosp(patArchiveReq); + if (CollectionUtils.isNotEmpty(patArchives2)) { + patArchiveList.addAll(patArchives2); + } + } else if (patArchiveReq.getAllhosp() != null && patArchiveReq.getAllhosp() == 3) { + // 鏌ョ湅浣忛櫌 1 鏌ョ湅闂ㄨ瘖 2 鏌ョ湅浣撴 3 + List<PatArchiveOthreInfo> patArchives3 = patArchiveMapper.selectPatArchiveInfoByPhysical(patArchiveReq); + if (CollectionUtils.isNotEmpty(patArchives3)) { + patArchiveList.addAll(patArchives3); + } + } + + return patArchiveList; + } + @Override @Transactional @@ -446,7 +492,7 @@ //鏍规嵁鏉′欢鑾峰彇鎮h�呬俊鎭� // List<PatArchive> patArchiveList = patArchiveMapper.patInfoByContion(patArchive); - List<PatArchive> patArchiveList = new ArrayList<>(); + List<PatArchiveOthreInfo> patArchiveList = new ArrayList<>(); if (patArchive.getEndtime() != null) { //鍑洪櫌鏃堕棿鍙湁浣忛櫌鎵嶆湁 @@ -454,33 +500,32 @@ } if (patArchive.getAllhosp() != null && patArchive.getAllhosp() == 0) { - List<PatArchive> patArchives0 = patArchiveMapper.selectPatArchiveInfoByAllhosp(patArchive); + List<PatArchiveOthreInfo> patArchives0 = patArchiveMapper.selectPatArchiveInfoByAllhosp(patArchive); if (CollectionUtils.isNotEmpty(patArchives0)) { patArchiveList.addAll(patArchives0); } } else if (patArchive.getAllhosp() != null && patArchive.getAllhosp() == 1) { - List<PatArchive> patArchives1 = patArchiveMapper.selectPatArchiveInfoByInhosp(patArchive); + List<PatArchiveOthreInfo> patArchives1 = patArchiveMapper.selectPatArchiveInfoByInhosp(patArchive); if (CollectionUtils.isNotEmpty(patArchives1)) { patArchiveList.addAll(patArchives1); } } else if (patArchive.getAllhosp() != null && patArchive.getAllhosp() == 2) { - List<PatArchive> patArchives2 = patArchiveMapper.selectPatArchiveInfoByOuthosp(patArchive); + List<PatArchiveOthreInfo> patArchives2 = patArchiveMapper.selectPatArchiveInfoByOuthosp(patArchive); if (CollectionUtils.isNotEmpty(patArchives2)) { patArchiveList.addAll(patArchives2); } } else if (patArchive.getAllhosp() != null && patArchive.getAllhosp() == 3) { - List<PatArchive> patArchives3 = patArchiveMapper.selectPatArchiveInfoByPhysical(patArchive); + List<PatArchiveOthreInfo> patArchives3 = patArchiveMapper.selectPatArchiveInfoByPhysical(patArchive); if (CollectionUtils.isNotEmpty(patArchives3)) { patArchiveList.addAll(patArchives3); } } - //鏍规嵁鎮h�匢D杩涜鍒嗙粍 - Map<Long, List<PatArchive>> listMap = patArchiveList.stream().collect(Collectors.groupingBy(PatArchive::getPatid)); + Map<Long, List<PatArchiveOthreInfo>> listMap = patArchiveList.stream().collect(Collectors.groupingBy(PatArchiveOthreInfo::getId)); //瀵规暟鎹繘琛屽皝瑁� - for (List<PatArchive> list : listMap.values()) { + for (List<PatArchiveOthreInfo> list : listMap.values()) { PatArchive patArchive1 = new PatArchive(); Set<PatArchivetag> stringList = new HashSet<>(); for (int i = 0; i < list.size(); i++) { @@ -514,7 +559,7 @@ for (int j = 0; j < patArchivetags1.size(); j++) { PatArchivetagAndPatientInfo patArchivetagAndPatientInfo = DtoConversionUtils.sourceToTarget(patArchivetags1.get(j), PatArchivetagAndPatientInfo.class); PatArchive patArchive = new PatArchive(); - patArchive.setPatid(patArchivetagAndPatientInfo.getPatid()); + patArchive.setId(patArchivetagAndPatientInfo.getPatid()); List<PatArchive> patArchiveList = patArchiveMapper.selectPatArchiveList(patArchive); patArchivetagAndPatientInfo.setPatNum(patArchiveList.size()); // patArchivetagAndPatientInfo.setPatArchives(patArchiveList); @@ -528,7 +573,7 @@ for (int j = 0; j < patArchivetags1.size(); j++) { PatArchivetagAndPatientInfo patArchivetagAndPatientInfo = DtoConversionUtils.sourceToTarget(patArchivetags1.get(j), PatArchivetagAndPatientInfo.class); PatArchive patArchive = new PatArchive(); - patArchive.setPatid(patArchivetagAndPatientInfo.getPatid()); + patArchive.setId(patArchivetagAndPatientInfo.getPatid()); List<PatArchive> patArchiveList = patArchiveMapper.selectPatArchiveList(patArchive); // patArchivetagAndPatientInfo.setPatArchives(patArchiveList); patArchivetagAndPatientInfo.setPatNum(patArchiveList.size()); -- Gitblit v1.9.3