|
@@ -18,16 +18,12 @@ import com.diagbot.dto.ReadInquiryDTO;
|
|
import com.diagbot.dto.ReadInquiryDrugDTO;
|
|
import com.diagbot.dto.ReadInquiryDrugDTO;
|
|
import com.diagbot.dto.RespDTO;
|
|
import com.diagbot.dto.RespDTO;
|
|
import com.diagbot.dto.SaveInquiryDTO;
|
|
import com.diagbot.dto.SaveInquiryDTO;
|
|
-import com.diagbot.entity.DoctorInfo;
|
|
|
|
-import com.diagbot.entity.HospitalDept;
|
|
|
|
import com.diagbot.entity.InquiryDetail;
|
|
import com.diagbot.entity.InquiryDetail;
|
|
import com.diagbot.entity.InquiryDrug;
|
|
import com.diagbot.entity.InquiryDrug;
|
|
import com.diagbot.entity.InquiryEvaluation;
|
|
import com.diagbot.entity.InquiryEvaluation;
|
|
import com.diagbot.entity.InquiryInfo;
|
|
import com.diagbot.entity.InquiryInfo;
|
|
import com.diagbot.entity.InquiryScale;
|
|
import com.diagbot.entity.InquiryScale;
|
|
-import com.diagbot.entity.PatientInfo;
|
|
|
|
import com.diagbot.enums.IsDeleteEnum;
|
|
import com.diagbot.enums.IsDeleteEnum;
|
|
-import com.diagbot.enums.SexTypeEnum;
|
|
|
|
import com.diagbot.enums.SysTypeEnum;
|
|
import com.diagbot.enums.SysTypeEnum;
|
|
import com.diagbot.exception.CommonErrorCode;
|
|
import com.diagbot.exception.CommonErrorCode;
|
|
import com.diagbot.exception.CommonException;
|
|
import com.diagbot.exception.CommonException;
|
|
@@ -55,6 +51,7 @@ import com.diagbot.vo.PatientInfoVO;
|
|
import com.diagbot.vo.ReadInquiryVO;
|
|
import com.diagbot.vo.ReadInquiryVO;
|
|
import com.diagbot.vo.SaveInquiryToHisVO;
|
|
import com.diagbot.vo.SaveInquiryToHisVO;
|
|
import com.diagbot.vo.SaveInquiryVO;
|
|
import com.diagbot.vo.SaveInquiryVO;
|
|
|
|
+import io.github.lvyahui8.spring.aggregate.facade.DataBeanAggregateQueryFacade;
|
|
import org.apache.poi.hssf.usermodel.HSSFRow;
|
|
import org.apache.poi.hssf.usermodel.HSSFRow;
|
|
import org.apache.poi.hssf.usermodel.HSSFSheet;
|
|
import org.apache.poi.hssf.usermodel.HSSFSheet;
|
|
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
|
|
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
|
|
@@ -66,12 +63,11 @@ import javax.servlet.ServletOutputStream;
|
|
import javax.servlet.http.HttpServletResponse;
|
|
import javax.servlet.http.HttpServletResponse;
|
|
import java.io.IOException;
|
|
import java.io.IOException;
|
|
import java.net.URLEncoder;
|
|
import java.net.URLEncoder;
|
|
-import java.util.ArrayList;
|
|
|
|
|
|
+import java.util.Collections;
|
|
import java.util.Date;
|
|
import java.util.Date;
|
|
import java.util.HashMap;
|
|
import java.util.HashMap;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
import java.util.Map;
|
|
-import java.util.Optional;
|
|
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -111,6 +107,8 @@ public class InquiryInfoFacade extends InquiryInfoServiceImpl {
|
|
private InquiryScaleService inquiryScaleService;
|
|
private InquiryScaleService inquiryScaleService;
|
|
@Autowired
|
|
@Autowired
|
|
private IndexDataFacade indexDataFacade;
|
|
private IndexDataFacade indexDataFacade;
|
|
|
|
+ @Autowired
|
|
|
|
+ private DataBeanAggregateQueryFacade dataBeanAggregateQueryFacade;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 问诊记录保存
|
|
* 问诊记录保存
|
|
@@ -326,48 +324,18 @@ public class InquiryInfoFacade extends InquiryInfoServiceImpl {
|
|
BeanUtil.copyProperties(iPage, hisInquiryDTOPage);
|
|
BeanUtil.copyProperties(iPage, hisInquiryDTOPage);
|
|
|
|
|
|
List<InquiryInfo> inquiryInfoList = iPage.getRecords();
|
|
List<InquiryInfo> inquiryInfoList = iPage.getRecords();
|
|
- if (inquiryInfoList.size() == 0) {
|
|
|
|
|
|
+ if (ListUtil.isEmpty(inquiryInfoList)) {
|
|
return null;
|
|
return null;
|
|
}
|
|
}
|
|
|
|
|
|
- List<Long> hospitalDeptIdList = inquiryInfoList.stream()
|
|
|
|
- .map(i -> i.getHospitalDeptId()).distinct().collect(Collectors.toList());
|
|
|
|
- List<Long> doctorIdList = inquiryInfoList.stream()
|
|
|
|
- .map(i -> i.getDoctorId()).distinct().collect(Collectors.toList());
|
|
|
|
- List<Long> patientIdList = inquiryInfoList.stream()
|
|
|
|
- .map(i -> i.getPatientId()).distinct().collect(Collectors.toList());
|
|
|
|
- List<Long> inquiryIdList = inquiryInfoList.stream()
|
|
|
|
- .map(i -> i.getId()).distinct().collect(Collectors.toList());
|
|
|
|
-
|
|
|
|
- Map<Long, HospitalDept> hospitalDeptMap = hospitalDeptFacade.hospitalDeptInfoMapByIds(hospitalDeptIdList);
|
|
|
|
- Map<Long, DoctorInfo> doctorInfoMap = doctorInfoFacade.doctorInfoMapByIds(doctorIdList);
|
|
|
|
- Map<Long, PatientInfo> patientInfoMap = patientInfoFacade.patientInfoMapByIds(patientIdList);
|
|
|
|
- Map<Long, List<InquiryDetail>> inquiryDetailMap = inquiryDetailFacade.getDetailsByInquryIds(inquiryIdList);
|
|
|
|
-
|
|
|
|
- List<HisInquiryDTO> hisInquiryDTOList = new ArrayList<>();
|
|
|
|
- inquiryInfoList.forEach(i -> {
|
|
|
|
- HisInquiryDTO hisInquiryDTO = new HisInquiryDTO();
|
|
|
|
- BeanUtil.copyProperties(i, hisInquiryDTO);
|
|
|
|
- hisInquiryDTO.setInquiryDate(i.getGmtModified());
|
|
|
|
- hisInquiryDTO.setInquiryTime(i.getGmtModified());
|
|
|
|
- hisInquiryDTO.setHospitalDeptName(
|
|
|
|
- Optional.ofNullable(hospitalDeptMap.get(i.getHospitalDeptId()))
|
|
|
|
- .map(t -> t.getName()).orElse(null)
|
|
|
|
- );
|
|
|
|
- hisInquiryDTO.setDoctorName(
|
|
|
|
- Optional.ofNullable(doctorInfoMap.get(i.getDoctorId())).map(t -> t.getName()).orElse(null)
|
|
|
|
- );
|
|
|
|
- PatientInfo patientInfo = patientInfoMap.get(i.getPatientId());
|
|
|
|
- if (patientInfo != null) {
|
|
|
|
- hisInquiryDTO.setPatientName(patientInfo.getName());
|
|
|
|
- hisInquiryDTO.setPatientIdNo(patientInfo.getIdNo());
|
|
|
|
- hisInquiryDTO.setPatientSex(SexTypeEnum.getName(patientInfo.getSex()));
|
|
|
|
- hisInquiryDTO.setPatientAge(DateUtil.yearCompare(patientInfo.getBirthday(), DateUtil.now()));
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- hisInquiryDTO.setDetailList(inquiryDetailMap.get(i.getId()));
|
|
|
|
- hisInquiryDTOList.add(hisInquiryDTO);
|
|
|
|
- });
|
|
|
|
|
|
+ List<HisInquiryDTO> hisInquiryDTOList = ListUtil.newArrayList();
|
|
|
|
+ try {
|
|
|
|
+ hisInquiryDTOList = dataBeanAggregateQueryFacade.get("hisInquirysAddDetail",
|
|
|
|
+ Collections.singletonMap("inquiryInfoList",inquiryInfoList),
|
|
|
|
+ List.class);
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
+ e.printStackTrace();
|
|
|
|
+ }
|
|
|
|
|
|
hisInquiryDTOPage.setRecords(hisInquiryDTOList);
|
|
hisInquiryDTOPage.setRecords(hisInquiryDTOList);
|
|
return hisInquiryDTOPage;
|
|
return hisInquiryDTOPage;
|
|
@@ -429,20 +397,18 @@ public class InquiryInfoFacade extends InquiryInfoServiceImpl {
|
|
return null;
|
|
return null;
|
|
}
|
|
}
|
|
|
|
|
|
- Map<Long, List<InquiryDetail>> inquiryDetailMap = inquiryDetailFacade.getDetailsByInquryIds(
|
|
|
|
- inquiryInfoList.stream().map(i -> i.getId()).collect(Collectors.toList()));
|
|
|
|
- List<HisInquirysForDjDTO> hisInquirysForDjDTOList = BeanUtil.listCopyTo(
|
|
|
|
- inquiryInfoList, HisInquirysForDjDTO.class);
|
|
|
|
-
|
|
|
|
- hisInquirysForDjDTOList.forEach(i -> {
|
|
|
|
- i.setContentList(inquiryDetailMap.get(i.getId()).stream()
|
|
|
|
- .map(k -> k.getContentValue()).collect(Collectors.toList()));
|
|
|
|
- });
|
|
|
|
|
|
+ List<HisInquirysForDjDTO> hisInquirysForDjDTOList = ListUtil.newArrayList();
|
|
|
|
+ try {
|
|
|
|
+ hisInquirysForDjDTOList = dataBeanAggregateQueryFacade.get("hisInquirysForDjAddDetail",
|
|
|
|
+ Collections.singletonMap("inquiryInfoList",inquiryInfoList),
|
|
|
|
+ List.class);
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
+ e.printStackTrace();
|
|
|
|
+ }
|
|
|
|
|
|
return hisInquirysForDjDTOList;
|
|
return hisInquirysForDjDTOList;
|
|
}
|
|
}
|
|
|
|
|
|
-
|
|
|
|
/**
|
|
/**
|
|
* 病历详情
|
|
* 病历详情
|
|
*
|
|
*
|