From 77d7257c02fc811a53b8d9207e4239f69c8a600c Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期四, 15 六月 2023 14:33:36 +0800 Subject: [PATCH] 题目和标签代码提交 --- smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java | 87 +++++++++++++++++++++++++++++++++++++++---- 1 files changed, 79 insertions(+), 8 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 9cad7d3..55eb072 100644 --- a/smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java +++ b/smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java @@ -3,18 +3,14 @@ import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Objects; +import java.util.*; +import java.util.stream.Collectors; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.DtoConversionUtils; import com.ruoyi.common.utils.StringUtils; -import com.smartor.domain.BaseTag; -import com.smartor.domain.PatArchivetag; -import com.smartor.domain.PatUpInfoVO; +import com.smartor.domain.*; import com.smartor.mapper.BaseTagMapper; import com.smartor.mapper.PatArchivetagMapper; import org.apache.commons.collections4.CollectionUtils; @@ -24,9 +20,9 @@ import org.apache.poi.ss.usermodel.*; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.core.parameters.P; import org.springframework.stereotype.Service; import com.smartor.mapper.PatArchiveMapper; -import com.smartor.domain.PatArchive; import com.smartor.service.IPatArchiveService; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; @@ -313,6 +309,81 @@ return "瀵煎嚭鎴愬姛"; } + @Override + public List<PatArchive> patInfoByContion(PatArchiveReq patArchive) { + List<PatArchive> patArchives = new ArrayList<>(); + + //鏍规嵁鏉′欢鑾峰彇鎮h�呬俊鎭� + List<PatArchive> patArchiveList = patArchiveMapper.patInfoByContion(patArchive); + //鏍规嵁鎮h�匢D杩涜鍒嗙粍 + Map<Long, List<PatArchive>> listMap = patArchiveList.stream().collect(Collectors.groupingBy(PatArchive::getPatid)); + + //瀵规暟鎹繘琛屽皝瑁� + for (List<PatArchive> list : listMap.values()) { + PatArchive patArchive1 = new PatArchive(); + List<String> stringList = new ArrayList<>(); + for (int i = 0; i < list.size(); i++) { + if (i == 0) { + patArchive1 = DtoConversionUtils.sourceToTarget(list.get(0), PatArchive.class); + //灏嗘爣绛剧疆绌�,涓嶇┖涔熸病鏈夐棶棰� + patArchive1.setTag(""); + } + //灏嗘煡鍑虹殑tag锛屾斁鍒皃atArchive1閲岀殑TagList涓� + stringList.add(list.get(i).getTag()); + } + patArchive1.setTagList(stringList); + patArchives.add(patArchive1); + } + + return patArchives; + } + + @Override + public List<PatArchivetagAndPatientInfo> patTagByContion(List<Long> tagids) { + List<PatArchivetagAndPatientInfo> patArchivetagAndPatientInfos = new ArrayList<>(); + if (tagids.size() > 0) { + for (int i = 0; i < tagids.size(); i++) { + PatArchivetag patArchivetag = new PatArchivetag(); + patArchivetag.setTagid(tagids.get(i)); + //鑾峰彇鎮h�卲atid + List<PatArchivetag> patArchivetags1 = patArchivetagMapper.selectPatArchivetagAndBaseTagList(patArchivetag); + 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()); + List<PatArchive> patArchiveList = patArchiveMapper.selectPatArchiveList(patArchive); + patArchivetagAndPatientInfo.setPatNum(patArchiveList.size()); + // patArchivetagAndPatientInfo.setPatArchives(patArchiveList); + patArchivetagAndPatientInfos.add(patArchivetagAndPatientInfo); + } + } + } else { + PatArchivetag patArchivetag = new PatArchivetag(); + //鑾峰彇鎮h�卲atid + List<PatArchivetag> patArchivetags1 = patArchivetagMapper.selectPatArchivetagAndBaseTagList(patArchivetag); + 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()); + List<PatArchive> patArchiveList = patArchiveMapper.selectPatArchiveList(patArchive); + // patArchivetagAndPatientInfo.setPatArchives(patArchiveList); + patArchivetagAndPatientInfo.setPatNum(patArchiveList.size()); + patArchivetagAndPatientInfos.add(patArchivetagAndPatientInfo); + } + } + return patArchivetagAndPatientInfos; + } + + @Override + public List<PatArchivetagAndPatientInfo> patInfoByTag(List<Long> tagids) { + + + + + + return null; + } + private void getdata(Row row, PatArchive patArchive, Boolean head) { if (head) { row.createCell(0).setCellValue("濮撳悕"); -- Gitblit v1.9.3