|
@@ -1,9 +1,16 @@
|
|
|
package com.diagbot.facade;
|
|
|
|
|
|
+import java.util.LinkedHashMap;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
+import com.diagbot.dto.HospitalDeptDTO;
|
|
|
+import com.diagbot.enums.StatusEnum;
|
|
|
+import com.diagbot.util.EntityUtil;
|
|
|
+import com.diagbot.util.ListUtil;
|
|
|
+import com.diagbot.vo.HospitalDeptVO;
|
|
|
+import com.google.common.collect.Lists;
|
|
|
import org.springframework.stereotype.Component;
|
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
@@ -32,21 +39,53 @@ public class HospitalDeptFacade extends HospitalDeptServiceImpl {
|
|
|
HospitalDeptInfoDTO hospitalDeptInfoDTO = new HospitalDeptInfoDTO();
|
|
|
QueryWrapper<HospitalDept> hospitalDeptQueryWrapper = new QueryWrapper<>();
|
|
|
hospitalDeptQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
|
|
|
- .eq("hospital_code",hospitalDeptInfoVO.getHospitalCode())
|
|
|
- .eq("code",hospitalDeptInfoVO.getDeptCode());
|
|
|
+ .eq("hospital_code", hospitalDeptInfoVO.getHospitalCode())
|
|
|
+ .eq("code", hospitalDeptInfoVO.getDeptCode());
|
|
|
HospitalDept hospitalDept = this.getOne(hospitalDeptQueryWrapper);
|
|
|
- BeanUtil.copyProperties(hospitalDept,hospitalDeptInfoDTO);
|
|
|
+ BeanUtil.copyProperties(hospitalDept, hospitalDeptInfoDTO);
|
|
|
return hospitalDeptInfoDTO;
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
/**
|
|
|
* 根据ids获取科室信息map
|
|
|
+ *
|
|
|
* @param ids 科室ids
|
|
|
* @return 科室信息
|
|
|
*/
|
|
|
public Map<Long, HospitalDept> hospitalDeptInfoMapByIds(List<Long> ids) {
|
|
|
- Map<Long, HospitalDept> hospitalDeptMap = this.listByIds(ids).stream().filter(i -> i.getIsDeleted().equals("N") && i.getStatus() == 1).collect(Collectors.toMap(HospitalDept::getId, i -> i));
|
|
|
+ Map<Long, HospitalDept> hospitalDeptMap = this.listByIds(ids).stream().filter(i -> i.getIsDeleted().equals("N") && i.getStatus() == 1).collect(Collectors.toMap(HospitalDept::getId, i -> i));
|
|
|
return hospitalDeptMap;
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取科室对接信息
|
|
|
+ *
|
|
|
+ * @param hospitalDeptVO
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public Map<String, List<HospitalDeptDTO>> hospitalDeptByConceptNames(HospitalDeptVO hospitalDeptVO) {
|
|
|
+ Map<String, List<HospitalDeptDTO>> retMap = new LinkedHashMap<>();
|
|
|
+ QueryWrapper<HospitalDept> hospitalDeptQueryWrapper = new QueryWrapper<>();
|
|
|
+ hospitalDeptQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
|
|
|
+ .eq("hospital_code", hospitalDeptVO.getHospitalCode())
|
|
|
+ .eq("status", StatusEnum.Enable.getKey())
|
|
|
+ .in("concept_dept_name", hospitalDeptVO.getConceptNames());
|
|
|
+ List<HospitalDept> hospitalDeptList = this.list(hospitalDeptQueryWrapper);
|
|
|
+ if (ListUtil.isNotEmpty(hospitalDeptList)) {
|
|
|
+ Map<String, List<HospitalDept>> hospitalDeptMap = EntityUtil.makeEntityListMap(hospitalDeptList, "conceptDeptName");
|
|
|
+ for (Map.Entry<String, List<HospitalDept>> entry : hospitalDeptMap.entrySet()) {
|
|
|
+ List<HospitalDeptDTO> hospitalDeptDTOList = Lists.newArrayList();
|
|
|
+ for (HospitalDept hospitalDept : entry.getValue()) {
|
|
|
+ HospitalDeptDTO hospitalDeptDTO = new HospitalDeptDTO();
|
|
|
+ hospitalDeptDTO.setHospitalCode(hospitalDept.getHospitalCode());
|
|
|
+ hospitalDeptDTO.setHospitalName(hospitalDept.getHospitalName());
|
|
|
+ hospitalDeptDTO.setHospitalDeptCode(hospitalDept.getCode());
|
|
|
+ hospitalDeptDTO.setHospitalDeptName(hospitalDept.getName());
|
|
|
+ hospitalDeptDTOList.add(hospitalDeptDTO);
|
|
|
+ }
|
|
|
+ retMap.put(entry.getKey(), hospitalDeptDTOList);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return retMap;
|
|
|
+ }
|
|
|
}
|