|
@@ -67,37 +67,41 @@ public class PatientInfoDjFacade extends PatientInfoServiceImpl {
|
|
|
* @return
|
|
|
*/
|
|
|
public GetTopPatientInfoDjDTO getTopPatientInfoDj(GetTopPatientInfoDjVO getTopPatientInfoDjVO) {
|
|
|
+ String hospitalCode = getTopPatientInfoDjVO.getHospitalCode();
|
|
|
+ String sonHospitalCode = getTopPatientInfoDjVO.getSonHospitalCode();
|
|
|
+ if (StringUtil.isBlank(sonHospitalCode)) {
|
|
|
+ QueryWrapper<SysSet> sysSetQe = new QueryWrapper<>();
|
|
|
+ sysSetQe.eq("sys_type", SysTypeEnum.PREC_SERVICE.getKey())
|
|
|
+ .eq("code", "junior_hospital")
|
|
|
+ .like("value", hospitalCode);
|
|
|
+ SysSet juniorHospitalSysSet = sysSetFacade.getOne(sysSetQe, false);
|
|
|
+ if (juniorHospitalSysSet != null
|
|
|
+ && Lists.newArrayList(juniorHospitalSysSet.getValue().split(",")).contains(hospitalCode)) {
|
|
|
+ hospitalCode = juniorHospitalSysSet.getHospitalCode();
|
|
|
+ sonHospitalCode = getTopPatientInfoDjVO.getHospitalCode();
|
|
|
+ }
|
|
|
+ getTopPatientInfoDjVO.setHospitalCode(hospitalCode);
|
|
|
+ getTopPatientInfoDjVO.setSonHospitalCode(sonHospitalCode);
|
|
|
+ }
|
|
|
+
|
|
|
GetTopPatientInfoDjDTO getTopPatientInfoDjDTO = this.baseMapper.getTopPatientInfoDj(getTopPatientInfoDjVO);
|
|
|
getTopPatientInfoDjDTO.setSystemTime(DateUtil.now());
|
|
|
getTopPatientInfoDjDTO.setRecordId(getTopPatientInfoDjVO.getRecordId());
|
|
|
getTopPatientInfoDjDTO.setPatientAge(DateUtil.yearCompare(getTopPatientInfoDjDTO.getBirthday(), DateUtil.now()));
|
|
|
|
|
|
- List<String> hospitalCodeList = Lists.newArrayList();
|
|
|
- hospitalCodeList.add(getTopPatientInfoDjVO.getHospitalCode());
|
|
|
- if (StringUtil.isNotBlank(getTopPatientInfoDjVO.getSonHospitalCode())) {
|
|
|
- hospitalCodeList.add(getTopPatientInfoDjVO.getSonHospitalCode());
|
|
|
- }
|
|
|
- QueryWrapper<HospitalInfo> hospitalInfoQe = new QueryWrapper<>();
|
|
|
- hospitalInfoQe.in("code", hospitalCodeList);
|
|
|
- Map<String, HospitalInfo> hospitalInfoMap = hospitalInfoFacade.list(hospitalInfoQe)
|
|
|
- .stream().collect(Collectors.toMap(HospitalInfo::getCode, i -> i));
|
|
|
-
|
|
|
- HospitalInfo hospitalInfo = hospitalInfoMap.get(getTopPatientInfoDjVO.getHospitalCode());
|
|
|
- HospitalInfo sonHospitalInfo = hospitalInfoMap.get(getTopPatientInfoDjVO.getSonHospitalCode());
|
|
|
- getTopPatientInfoDjDTO.setHospitalId(hospitalInfo.getId());
|
|
|
- getTopPatientInfoDjDTO.setHospitalCode(hospitalInfo.getCode());
|
|
|
- getTopPatientInfoDjDTO.setHospitalName(hospitalInfo.getName());
|
|
|
- if (sonHospitalInfo != null) {
|
|
|
- getTopPatientInfoDjDTO.setSonHospitalId(sonHospitalInfo.getId());
|
|
|
- getTopPatientInfoDjDTO.setSonHospitalCode(sonHospitalInfo.getCode());
|
|
|
- getTopPatientInfoDjDTO.setSonHospitalName(sonHospitalInfo.getName());
|
|
|
+ if (StringUtil.isNotBlank(sonHospitalCode)) {
|
|
|
+ QueryWrapper<HospitalInfo> hospitalInfoQe = new QueryWrapper<>();
|
|
|
+ hospitalInfoQe.eq("code", sonHospitalCode);
|
|
|
+ HospitalInfo sonHospitalInfo = hospitalInfoFacade.getOne(hospitalInfoQe, false);
|
|
|
+ if (sonHospitalInfo != null) {
|
|
|
+ getTopPatientInfoDjDTO.setSonHospitalId(sonHospitalInfo.getId());
|
|
|
+ getTopPatientInfoDjDTO.setSonHospitalCode(sonHospitalInfo.getCode());
|
|
|
+ getTopPatientInfoDjDTO.setSonHospitalName(sonHospitalInfo.getName());
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
QueryWrapper<HospitalDept> hospitalDeptQe = new QueryWrapper<>();
|
|
|
- hospitalDeptQe.eq("hospital_code",
|
|
|
- StringUtil.isBlank(getTopPatientInfoDjVO.getSonHospitalCode())
|
|
|
- ? getTopPatientInfoDjVO.getHospitalCode()
|
|
|
- : getTopPatientInfoDjVO.getSonHospitalCode());
|
|
|
+ hospitalDeptQe.eq("hospital_code", StringUtil.isBlank(sonHospitalCode) ? hospitalCode : sonHospitalCode);
|
|
|
hospitalDeptQe.eq("code", getTopPatientInfoDjVO.getHospitalDeptCode());
|
|
|
HospitalDept hospitalDept = hospitalDeptFacade.getOne(hospitalDeptQe, false);
|
|
|
if (hospitalDept != null) {
|