From 3acec3660921f22b58bdaa85d61a2fcfba8e6c98 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期三, 21 六月 2023 10:11:31 +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