package com.sinata.system.service;
|
|
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.sinata.common.entity.PageDTO;
|
import com.sinata.system.domain.MwApplication;
|
import com.sinata.system.domain.SysDepartment;
|
import com.sinata.system.domain.dto.DisposalUnitDTO;
|
import com.sinata.system.domain.dto.MedicalInstitutionDTO;
|
import com.sinata.system.domain.dto.RegulatoryUnitDTO;
|
import com.sinata.system.domain.dto.SysDepartmentDTO;
|
import com.sinata.system.domain.query.DepartmentQuery;
|
import com.sinata.system.domain.vo.DisposalUnitVO;
|
import com.sinata.system.domain.vo.MedicalInstitutionVO;
|
import com.sinata.system.domain.vo.RegulatoryUnitVO;
|
import com.sinata.system.domain.vo.SysDepartmentVO;
|
|
import java.util.List;
|
|
/**
|
* <p>
|
* 区域表 服务类
|
* </p>
|
*
|
* @author mitao
|
* @since 2024-12-02
|
*/
|
public interface SysDepartmentService extends IService<SysDepartment> {
|
/**
|
* 获取区域树
|
* @return
|
*/
|
List<SysDepartmentVO> listByType(Integer type);
|
|
/**
|
* 根据父级id获取区域信息
|
*
|
* @param parentId
|
* @return
|
*/
|
SysDepartment getDepartmentByParentId(Long parentId);
|
|
/**
|
* 获取区域树
|
*
|
* @param keyword
|
* @return
|
*/
|
List<SysDepartmentVO> getRegionTree(String keyword);
|
List<SysDepartmentVO> getRegionTree1(String keyword);
|
List<SysDepartmentVO> getRegionTree2(String keyword);
|
|
/**
|
* 当前登录用户所在区域
|
*
|
* @return
|
*/
|
SysDepartment getMyDepartment();
|
|
/**
|
* 新增区域
|
*
|
* @param dto
|
* @return
|
*/
|
void addRegion(SysDepartmentDTO dto);
|
|
/**
|
* 编辑区域
|
*
|
* @param dto
|
* @return
|
*/
|
void editRegion(SysDepartmentDTO dto);
|
|
/**
|
* 获取树编码
|
*
|
* @param parentId
|
* @return
|
*/
|
String generateTreeCode(Long parentId);
|
|
/**
|
* 生成组织编码
|
* 区域、医疗机构、处置单位、监管单位 4位 按组织类型不重复
|
*
|
* @param parentId
|
* @param orgType
|
* @return
|
*/
|
String getOrgCode(Long parentId, Integer orgType);
|
|
/**
|
* 删除区域
|
*
|
* @param id
|
*/
|
void deleteRegion(Long id);
|
|
/**
|
* 医疗机构分页列表
|
*
|
* @param query
|
* @return
|
*/
|
PageDTO<MedicalInstitutionVO> pageMedicalList(DepartmentQuery query);
|
|
/**
|
* 新增医疗机构
|
*
|
* @param dto
|
*/
|
void addMedical(MedicalInstitutionDTO dto);
|
|
/**
|
* 编辑医疗机构
|
*
|
* @param dto
|
* @return
|
*/
|
void editMedical(MedicalInstitutionDTO dto);
|
|
/**
|
* 医疗机构详情
|
*
|
* @param id
|
* @return
|
*/
|
MedicalInstitutionVO getMedicalDetailById(Long id);
|
|
/**
|
* 根据父级区域id查询处置单位列表
|
*
|
* @param id
|
* @return
|
*/
|
List<DisposalUnitVO> getDisposalUnitListByParentId(Long id);
|
|
/**
|
* 获取完整区域
|
*
|
* @param department
|
* @return
|
*/
|
String getRegionName(SysDepartment department);
|
|
/**
|
* 删除医疗机构
|
*
|
* @param id
|
*/
|
void deleteMedical(Long id);
|
|
/**
|
* 处置单位分页列表
|
*
|
* @param query
|
* @return
|
*/
|
PageDTO<DisposalUnitVO> pageDisposalUnitList(DepartmentQuery query);
|
|
/**
|
* 新增处置单位
|
*
|
* @param dto
|
*/
|
void addDisposalUnit(DisposalUnitDTO dto);
|
|
/**
|
* 编辑医疗机构
|
*
|
* @param dto
|
* @return
|
*/
|
void editDisposalUnit(DisposalUnitDTO dto);
|
|
/**
|
* 处置单位详情
|
*
|
* @param id
|
* @return
|
*/
|
DisposalUnitVO getDisposalUnitDetailById(Long id);
|
|
/**
|
* 删除处置单位
|
*
|
* @param id
|
*/
|
void deleteDisposalUnit(Long id);
|
|
/**
|
* 监管单位分页列表
|
*
|
* @param query
|
* @return
|
*/
|
PageDTO<RegulatoryUnitVO> pageRegulatoryUnitList(DepartmentQuery query);
|
|
/**
|
* 新增监管单位
|
*
|
* @param dto
|
*/
|
void addRegulatoryUnit(RegulatoryUnitDTO dto);
|
|
/**
|
* 编辑监管单位
|
*
|
* @param dto
|
*/
|
void editRegulatoryUnit(RegulatoryUnitDTO dto);
|
|
/**
|
* 监管单位详情
|
*
|
* @param id
|
* @return
|
*/
|
RegulatoryUnitVO getRegulatoryUnitDetailById(Long id);
|
|
/**
|
* 删除监管单位
|
*
|
* @param id
|
*/
|
void deleteRegulatoryUnit(Long id);
|
|
/**
|
* 根据部门id获取树编码,如果为空则获取当前登录用户所在区域树编码
|
*
|
* @param departmentId
|
* @return
|
*/
|
String getTreeCodeByDepartmentId(Long departmentId);
|
|
/**
|
* 路线关联医院列表
|
*
|
* @param id
|
* @return
|
*/
|
List<MedicalInstitutionVO> getHospitalListByRouteId(Long id);
|
|
/**
|
* 创建机构
|
*
|
* @param mwApplication
|
*/
|
void createDepartment(MwApplication mwApplication);
|
}
|