医院园区查询
This commit is contained in:
parent
bdc1b53cb2
commit
d646a62680
@ -8,6 +8,7 @@ import com.xinelu.common.core.page.TableDataInfo;
|
|||||||
import com.xinelu.common.enums.BusinessType;
|
import com.xinelu.common.enums.BusinessType;
|
||||||
import com.xinelu.common.utils.poi.ExcelUtil;
|
import com.xinelu.common.utils.poi.ExcelUtil;
|
||||||
import com.xinelu.manage.domain.agency.Agency;
|
import com.xinelu.manage.domain.agency.Agency;
|
||||||
|
import com.xinelu.manage.dto.agency.HospitalDTO;
|
||||||
import com.xinelu.manage.service.agency.IAgencyService;
|
import com.xinelu.manage.service.agency.IAgencyService;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
@ -144,4 +145,9 @@ public class AgencyController extends BaseController {
|
|||||||
List<Agency> list = util.importExcel(file.getInputStream());
|
List<Agency> list = util.importExcel(file.getInputStream());
|
||||||
return agencyService.insertAgencyImportList(list);
|
return agencyService.insertAgencyImportList(list);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@GetMapping("/getAgencyList")
|
||||||
|
public AjaxResult getAgencyList(HospitalDTO hospitalDTO) {
|
||||||
|
return agencyService.getAgencyList(hospitalDTO);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,27 @@
|
|||||||
|
package com.xinelu.manage.dto.agency;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class HospitalDTO {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 类型
|
||||||
|
*/
|
||||||
|
private String nodeType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 医院id
|
||||||
|
*/
|
||||||
|
private Long hospitalId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 园区id
|
||||||
|
*/
|
||||||
|
private Long campusId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 科室id
|
||||||
|
*/
|
||||||
|
private Long departmentId;
|
||||||
|
}
|
||||||
@ -2,6 +2,7 @@ package com.xinelu.manage.service.agency;
|
|||||||
|
|
||||||
import com.xinelu.common.core.domain.AjaxResult;
|
import com.xinelu.common.core.domain.AjaxResult;
|
||||||
import com.xinelu.manage.domain.agency.Agency;
|
import com.xinelu.manage.domain.agency.Agency;
|
||||||
|
import com.xinelu.manage.dto.agency.HospitalDTO;
|
||||||
import com.xinelu.manage.vo.agency.AgencyTreeVO;
|
import com.xinelu.manage.vo.agency.AgencyTreeVO;
|
||||||
import com.xinelu.manage.vo.agency.AgencyVO;
|
import com.xinelu.manage.vo.agency.AgencyVO;
|
||||||
|
|
||||||
@ -94,4 +95,6 @@ public interface IAgencyService {
|
|||||||
* @return int
|
* @return int
|
||||||
**/
|
**/
|
||||||
AjaxResult insertAgencyImportList(List<Agency> agencyList);
|
AjaxResult insertAgencyImportList(List<Agency> agencyList);
|
||||||
|
|
||||||
|
AjaxResult getAgencyList(HospitalDTO hospitalDTO);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,16 +1,21 @@
|
|||||||
package com.xinelu.manage.service.agency.impl;
|
package com.xinelu.manage.service.agency.impl;
|
||||||
|
|
||||||
import com.xinelu.common.core.domain.AjaxResult;
|
import com.xinelu.common.core.domain.AjaxResult;
|
||||||
|
import com.xinelu.common.enums.NodeTypeEnum;
|
||||||
import com.xinelu.common.exception.ServiceException;
|
import com.xinelu.common.exception.ServiceException;
|
||||||
import com.xinelu.common.utils.SecurityUtils;
|
import com.xinelu.common.utils.SecurityUtils;
|
||||||
import com.xinelu.common.utils.bean.BeanUtils;
|
import com.xinelu.common.utils.bean.BeanUtils;
|
||||||
import com.xinelu.common.utils.regex.RegexUtil;
|
import com.xinelu.common.utils.regex.RegexUtil;
|
||||||
import com.xinelu.manage.domain.agency.Agency;
|
import com.xinelu.manage.domain.agency.Agency;
|
||||||
|
import com.xinelu.manage.domain.department.Department;
|
||||||
|
import com.xinelu.manage.dto.agency.HospitalDTO;
|
||||||
import com.xinelu.manage.mapper.agency.AgencyMapper;
|
import com.xinelu.manage.mapper.agency.AgencyMapper;
|
||||||
|
import com.xinelu.manage.mapper.department.DepartmentMapper;
|
||||||
import com.xinelu.manage.mapper.sysarea.SysAreaMapper;
|
import com.xinelu.manage.mapper.sysarea.SysAreaMapper;
|
||||||
import com.xinelu.manage.service.agency.IAgencyService;
|
import com.xinelu.manage.service.agency.IAgencyService;
|
||||||
import com.xinelu.manage.vo.agency.AgencyTreeVO;
|
import com.xinelu.manage.vo.agency.AgencyTreeVO;
|
||||||
import com.xinelu.manage.vo.agency.AgencyVO;
|
import com.xinelu.manage.vo.agency.AgencyVO;
|
||||||
|
import com.xinelu.manage.vo.agency.HospitalVO;
|
||||||
import com.xinelu.manage.vo.sysarea.SysAreaVO;
|
import com.xinelu.manage.vo.sysarea.SysAreaVO;
|
||||||
import org.apache.commons.collections4.CollectionUtils;
|
import org.apache.commons.collections4.CollectionUtils;
|
||||||
import org.apache.commons.lang3.BooleanUtils;
|
import org.apache.commons.lang3.BooleanUtils;
|
||||||
@ -41,6 +46,9 @@ public class AgencyServiceImpl implements IAgencyService {
|
|||||||
private RegexUtil regexUtil;
|
private RegexUtil regexUtil;
|
||||||
@Resource
|
@Resource
|
||||||
private SysAreaMapper sysAreaMapper;
|
private SysAreaMapper sysAreaMapper;
|
||||||
|
@Resource
|
||||||
|
private DepartmentMapper departmentMapper;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询机构信息
|
* 查询机构信息
|
||||||
@ -226,6 +234,44 @@ public class AgencyServiceImpl implements IAgencyService {
|
|||||||
return AjaxResult.success();
|
return AjaxResult.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult getAgencyList(HospitalDTO hospitalDTO) {
|
||||||
|
HospitalVO hospitalVO = new HospitalVO();
|
||||||
|
if (StringUtils.isNotBlank(hospitalDTO.getNodeType()) && NodeTypeEnum.HOSPITAL.getInfo().equals(hospitalDTO.getNodeType()) && Objects.nonNull(hospitalDTO.getHospitalId())) {
|
||||||
|
Agency agency = new Agency();
|
||||||
|
agency.setNodeType(NodeTypeEnum.CAMPUS.getInfo());
|
||||||
|
agency.setParentId(hospitalDTO.getHospitalId());
|
||||||
|
List<Agency> campusList = agencyMapper.selectAgencyList(agency);
|
||||||
|
hospitalVO.setCampusList(campusList);
|
||||||
|
Department department = new Department();
|
||||||
|
department.setNodeType(NodeTypeEnum.DEPARTMENT.getInfo());
|
||||||
|
department.setAgencyId(hospitalDTO.getHospitalId());
|
||||||
|
List<Department> departmentList = departmentMapper.selectDepartmentList(department);
|
||||||
|
hospitalVO.setDepartmentList(departmentList);
|
||||||
|
department.setNodeType(NodeTypeEnum.WARD.getInfo());
|
||||||
|
List<Department> wardList = departmentMapper.selectDepartmentList(department);
|
||||||
|
hospitalVO.setWardList(wardList);
|
||||||
|
}
|
||||||
|
if (StringUtils.isNotBlank(hospitalDTO.getNodeType()) && NodeTypeEnum.CAMPUS.getInfo().equals(hospitalDTO.getNodeType()) && Objects.nonNull(hospitalDTO.getCampusId())) {
|
||||||
|
Department department = new Department();
|
||||||
|
department.setNodeType(NodeTypeEnum.DEPARTMENT.getInfo());
|
||||||
|
department.setAgencyId(hospitalDTO.getCampusId());
|
||||||
|
List<Department> departmentList = departmentMapper.selectDepartmentList(department);
|
||||||
|
hospitalVO.setDepartmentList(departmentList);
|
||||||
|
department.setNodeType(NodeTypeEnum.WARD.getInfo());
|
||||||
|
List<Department> wardList = departmentMapper.selectDepartmentList(department);
|
||||||
|
hospitalVO.setWardList(wardList);
|
||||||
|
}
|
||||||
|
if (StringUtils.isNotBlank(hospitalDTO.getNodeType()) && NodeTypeEnum.DEPARTMENT.getInfo().equals(hospitalDTO.getNodeType()) && Objects.nonNull(hospitalDTO.getDepartmentId())) {
|
||||||
|
Department department = new Department();
|
||||||
|
department.setNodeType(NodeTypeEnum.WARD.getInfo());
|
||||||
|
department.setParentDepartmentId(hospitalDTO.getDepartmentId());
|
||||||
|
List<Department> wardList = departmentMapper.selectDepartmentList(department);
|
||||||
|
hospitalVO.setWardList(wardList);
|
||||||
|
}
|
||||||
|
return AjaxResult.success(hospitalVO);
|
||||||
|
}
|
||||||
|
|
||||||
public List<AgencyVO> buildDeptTree(List<AgencyVO> agencies) {
|
public List<AgencyVO> buildDeptTree(List<AgencyVO> agencies) {
|
||||||
List<AgencyVO> returnList = new ArrayList<AgencyVO>();
|
List<AgencyVO> returnList = new ArrayList<AgencyVO>();
|
||||||
List<Long> tempList = new ArrayList<Long>();
|
List<Long> tempList = new ArrayList<Long>();
|
||||||
|
|||||||
@ -0,0 +1,26 @@
|
|||||||
|
package com.xinelu.manage.vo.agency;
|
||||||
|
|
||||||
|
import com.xinelu.manage.domain.agency.Agency;
|
||||||
|
import com.xinelu.manage.domain.department.Department;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class HospitalVO {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 园区集合
|
||||||
|
*/
|
||||||
|
List<Agency> campusList;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 科室集合
|
||||||
|
*/
|
||||||
|
List<Department> departmentList;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 病区集合
|
||||||
|
*/
|
||||||
|
List<Department> wardList;
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue
Block a user