diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/controller/agency/AgencyController.java b/postdischarge-manage/src/main/java/com/xinelu/manage/controller/agency/AgencyController.java index 89ac0944..fdee3e6d 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/controller/agency/AgencyController.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/controller/agency/AgencyController.java @@ -89,7 +89,7 @@ public class AgencyController extends BaseController { @Log(title = "机构信息", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@RequestBody Agency agency) { - return toAjax(agencyService.insertAgency(agency)); + return agencyService.insertAgency(agency); } /** diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/controller/department/DepartmentController.java b/postdischarge-manage/src/main/java/com/xinelu/manage/controller/department/DepartmentController.java index a2844373..de61f74b 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/controller/department/DepartmentController.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/controller/department/DepartmentController.java @@ -108,7 +108,7 @@ public class DepartmentController extends BaseController { @Log(title = "科室信息", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") public AjaxResult remove(@PathVariable Long[] ids) { - return toAjax(departmentService.deleteDepartmentByIds(ids)); + return departmentService.deleteDepartmentByIds(ids); } /** diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/controller/departmentdiseasetype/DepartmentDiseaseTypeController.java b/postdischarge-manage/src/main/java/com/xinelu/manage/controller/departmentdiseasetype/DepartmentDiseaseTypeController.java index 513d1c6a..a62a16d9 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/controller/departmentdiseasetype/DepartmentDiseaseTypeController.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/controller/departmentdiseasetype/DepartmentDiseaseTypeController.java @@ -88,4 +88,12 @@ public class DepartmentDiseaseTypeController extends BaseController { public AjaxResult remove(@PathVariable Long[] ids) { return toAjax(departmentDiseaseTypeService.deleteDepartmentDiseaseTypeByIds(ids)); } + + /** + * 科室病种数量 + */ + @GetMapping("/selectDiseaseCount") + public AjaxResult selectDiseaseTypeCount(String departmentName) { + return departmentDiseaseTypeService.selectDiseaseTypeCount(departmentName); + } } \ No newline at end of file diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/agency/AgencyMapper.java b/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/agency/AgencyMapper.java index 78f9030f..ef21ea0f 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/agency/AgencyMapper.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/agency/AgencyMapper.java @@ -70,6 +70,14 @@ public interface AgencyMapper { */ int updateAgency(Agency agency); + /** + * 修改机构信息 + * + * @param agency 机构信息 + * @return 结果 + */ + int updateAgencyById(Agency agency); + /** * 删除机构信息 * @@ -101,4 +109,7 @@ public interface AgencyMapper { * @return int **/ int insertAgencyImportList(List agencyList); + + + int selectAgencyNameByAgencyNameInt(String agencyName); } diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/department/DepartmentMapper.java b/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/department/DepartmentMapper.java index e71e38a6..04add12e 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/department/DepartmentMapper.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/department/DepartmentMapper.java @@ -56,6 +56,15 @@ public interface DepartmentMapper { */ int updateDepartment(Department department); + + /** + * 修改科室信息 + * + * @param department 科室信息 + * @return 结果 + */ + int updateDepartmentById(Department department); + /** * 删除科室信息 * @@ -123,8 +132,17 @@ public interface DepartmentMapper { /** * 查询科室信息列表及包含服务包数量 + * * @param departmentDto * @return */ List selectListServicePackageNum(DepartmentDTO departmentDto); + + /** + * 查询下级机构信息 + * + * @param id 机构信息主键 + * @return 机构信息 + */ + List selectDepartmentByParentId(Long[] id); } diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/departmentdiseasetype/DepartmentDiseaseTypeMapper.java b/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/departmentdiseasetype/DepartmentDiseaseTypeMapper.java index f022bbcb..54856699 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/departmentdiseasetype/DepartmentDiseaseTypeMapper.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/departmentdiseasetype/DepartmentDiseaseTypeMapper.java @@ -1,6 +1,7 @@ package com.xinelu.manage.mapper.departmentdiseasetype; import com.xinelu.manage.domain.departmentdiseasetype.DepartmentDiseaseType; +import com.xinelu.manage.vo.department.DepartmentVO; import java.util.List; @@ -59,4 +60,12 @@ public interface DepartmentDiseaseTypeMapper { * @return 结果 */ int deleteDepartmentDiseaseTypeByIds(Long[] ids); + + /** + * 科室病种数量 + * + * @param departmentName 科室名称 + * @return DepartmentVO + */ + List selectDiseaseTypeCount(String departmentName); } diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/service/agency/IAgencyService.java b/postdischarge-manage/src/main/java/com/xinelu/manage/service/agency/IAgencyService.java index 5e19e885..ce919d7a 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/service/agency/IAgencyService.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/service/agency/IAgencyService.java @@ -53,7 +53,7 @@ public interface IAgencyService { * @param agency 机构信息 * @return 结果 */ - int insertAgency(Agency agency); + AjaxResult insertAgency(Agency agency); /** * 修改机构信息 diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/service/agency/impl/AgencyServiceImpl.java b/postdischarge-manage/src/main/java/com/xinelu/manage/service/agency/impl/AgencyServiceImpl.java index 2a2c7edb..5f12ccb9 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/service/agency/impl/AgencyServiceImpl.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/service/agency/impl/AgencyServiceImpl.java @@ -109,10 +109,14 @@ public class AgencyServiceImpl implements IAgencyService { * @return 结果 */ @Override - public int insertAgency(Agency agency) { + public AjaxResult insertAgency(Agency agency) { + int i = agencyMapper.selectAgencyNameByAgencyNameInt(agency.getAgencyName()); + if (i > 0) { + return AjaxResult.error("该名称" + agency.getAgencyName() + "以重复!"); + } agency.setCreateTime(DateUtils.getNowDate()); agency.setCreateBy(SecurityUtils.getUsername()); - return agencyMapper.insertAgency(agency); + return AjaxResult.success(agencyMapper.insertAgency(agency)); } /** @@ -125,7 +129,7 @@ public class AgencyServiceImpl implements IAgencyService { public int updateAgency(Agency agency) { agency.setUpdateTime(DateUtils.getNowDate()); agency.setUpdateBy(SecurityUtils.getUsername()); - return agencyMapper.updateAgency(agency); + return agencyMapper.updateAgencyById(agency); } /** diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/service/department/IDepartmentService.java b/postdischarge-manage/src/main/java/com/xinelu/manage/service/department/IDepartmentService.java index 8d9fb247..51766ff2 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/service/department/IDepartmentService.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/service/department/IDepartmentService.java @@ -62,7 +62,7 @@ public interface IDepartmentService { * @param ids 需要删除的科室信息主键集合 * @return 结果 */ - int deleteDepartmentByIds(Long[] ids); + AjaxResult deleteDepartmentByIds(Long[] ids); /** * 删除科室信息信息 diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/service/department/impl/DepartmentServiceImpl.java b/postdischarge-manage/src/main/java/com/xinelu/manage/service/department/impl/DepartmentServiceImpl.java index 46fe130a..1d162a0c 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/service/department/impl/DepartmentServiceImpl.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/service/department/impl/DepartmentServiceImpl.java @@ -99,8 +99,9 @@ public class DepartmentServiceImpl implements IDepartmentService { */ @Override public int updateDepartment(Department department) { + department.setUpdateBy(SecurityUtils.getUsername()); department.setUpdateTime(DateUtils.getNowDate()); - return departmentMapper.updateDepartment(department); + return departmentMapper.updateDepartmentById(department); } /** @@ -110,8 +111,12 @@ public class DepartmentServiceImpl implements IDepartmentService { * @return 结果 */ @Override - public int deleteDepartmentByIds(Long[] ids) { - return departmentMapper.deleteDepartmentByIds(ids); + public AjaxResult deleteDepartmentByIds(Long[] ids) { + int size = departmentMapper.selectDepartmentByParentId(ids).size(); + if (size > 0) { + return AjaxResult.error("该科室存在下级科室,请先删除其下级科室!"); + } + return AjaxResult.success(departmentMapper.deleteDepartmentByIds(ids)); } /** diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/service/departmentdiseasetype/IDepartmentDiseaseTypeService.java b/postdischarge-manage/src/main/java/com/xinelu/manage/service/departmentdiseasetype/IDepartmentDiseaseTypeService.java index 302dbb88..eee70ec3 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/service/departmentdiseasetype/IDepartmentDiseaseTypeService.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/service/departmentdiseasetype/IDepartmentDiseaseTypeService.java @@ -1,5 +1,6 @@ package com.xinelu.manage.service.departmentdiseasetype; +import com.xinelu.common.core.domain.AjaxResult; import com.xinelu.manage.domain.departmentdiseasetype.DepartmentDiseaseType; import java.util.List; @@ -59,4 +60,12 @@ public interface IDepartmentDiseaseTypeService { * @return 结果 */ int deleteDepartmentDiseaseTypeById(Long id); + + /** + * 科室病种信息信息 + * + * @param departmentName 科室信息 + * @return 结果 + */ + AjaxResult selectDiseaseTypeCount(String departmentName); } diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/service/departmentdiseasetype/impl/DepartmentDiseaseTypeServiceImpl.java b/postdischarge-manage/src/main/java/com/xinelu/manage/service/departmentdiseasetype/impl/DepartmentDiseaseTypeServiceImpl.java index abba1ed7..43d728b0 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/service/departmentdiseasetype/impl/DepartmentDiseaseTypeServiceImpl.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/service/departmentdiseasetype/impl/DepartmentDiseaseTypeServiceImpl.java @@ -1,12 +1,16 @@ package com.xinelu.manage.service.departmentdiseasetype.impl; +import com.xinelu.common.core.domain.AjaxResult; import com.xinelu.common.utils.DateUtils; import com.xinelu.manage.domain.departmentdiseasetype.DepartmentDiseaseType; import com.xinelu.manage.mapper.departmentdiseasetype.DepartmentDiseaseTypeMapper; import com.xinelu.manage.service.departmentdiseasetype.IDepartmentDiseaseTypeService; +import com.xinelu.manage.vo.department.DepartmentVO; +import org.apache.commons.collections4.CollectionUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.ArrayList; import java.util.List; @@ -88,4 +92,26 @@ public class DepartmentDiseaseTypeServiceImpl implements IDepartmentDiseaseTypeS public int deleteDepartmentDiseaseTypeById(Long id) { return departmentDiseaseTypeMapper.deleteDepartmentDiseaseTypeById(id); } + + /** + * 科室病种数量 + * + * @param departmentName 科室名称 + * @return DepartmentVO + */ + @Override + public AjaxResult selectDiseaseTypeCount(String departmentName) { + DepartmentVO departmentVO = new DepartmentVO(); + List department = new ArrayList<>(); + departmentVO.setDepartmentName("全部"); + departmentVO.setCountNum(0); + List departmentVOS = departmentDiseaseTypeMapper.selectDiseaseTypeCount(departmentName); + if (CollectionUtils.isNotEmpty(departmentVOS)) { + Integer result = departmentVOS.stream().mapToInt(DepartmentVO::getCountNum).sum(); + departmentVO.setCountNum(result); + department.add(departmentVO); + department.addAll(departmentVOS); + } + return AjaxResult.success(department); + } } diff --git a/postdischarge-manage/src/main/resources/mapper/manage/agency/AgencyMapper.xml b/postdischarge-manage/src/main/resources/mapper/manage/agency/AgencyMapper.xml index 6e853e80..6b174afb 100644 --- a/postdischarge-manage/src/main/resources/mapper/manage/agency/AgencyMapper.xml +++ b/postdischarge-manage/src/main/resources/mapper/manage/agency/AgencyMapper.xml @@ -317,6 +317,36 @@ where id = #{id} + + update agency + + parent_id = #{parentId}, + agency_category_id = #{agencyCategoryId}, + agency_category_name = #{agencyCategoryName}, + area_code = #{areaCode}, + area_name = #{areaName}, + agency_name = #{agencyName}, + agency_code = #{agencyCode}, + agency_abbreviation = #{agencyAbbreviation}, + agency_status = #{agencyStatus}, + node_type = #{nodeType}, + org_agency_code = #{orgAgencyCode}, + agency_category_manage_level = #{agencyCategoryManageLevel}, + agency_contacts = #{agencyContacts}, + agency_phone = #{agencyPhone}, + agency_address = #{agencyAddress}, + agency_remark = #{agencyRemark}, + agency_sort = #{agencySort}, + update_by = + #{updateBy}, + + update_time = + #{updateTime}, + + + where id = #{id} + + delete from agency @@ -410,4 +440,10 @@ ) + + \ No newline at end of file diff --git a/postdischarge-manage/src/main/resources/mapper/manage/department/DepartmentMapper.xml b/postdischarge-manage/src/main/resources/mapper/manage/department/DepartmentMapper.xml index 439f0aef..a45d51f9 100644 --- a/postdischarge-manage/src/main/resources/mapper/manage/department/DepartmentMapper.xml +++ b/postdischarge-manage/src/main/resources/mapper/manage/department/DepartmentMapper.xml @@ -541,6 +541,43 @@ where id = #{id} + + update department + + parent_department_id = #{parentDepartmentId}, + agency_id = #{agencyId}, + agency_name = #{agencyName}, + department_name = #{departmentName}, + department_code =#{departmentCode}, + department_type =#{departmentType}, + department_abbreviation =#{departmentAbbreviation}, + department_person_id =#{departmentPersonId}, + department_person_name =#{departmentPersonName}, + node_type =#{nodeType}, + provide_service_category =#{provideServiceCategory}, + subdivision_category_id =#{subdivisionCategoryId}, + subdivision_category_name =#{subdivisionCategoryName}, + norm_department_compare_id =#{normDepartmentCompareId}, + norm_department_compare_name =#{normDepartmentCompareName}, + prepare_beds_count =#{prepareBedsCount}, + department_phone = #{departmentPhone}, + department_mail = #{departmentMail}, + establish_date = + #{establishDate}, + + revoke_date = + #{revokeDate}, + + update_by = + #{updateBy}, + + update_time = + #{updateTime}, + + + where id = #{id} + + delete from department @@ -553,4 +590,12 @@ #{id} + + \ No newline at end of file diff --git a/postdischarge-manage/src/main/resources/mapper/manage/departmentdiseasetype/DepartmentDiseaseTypeMapper.xml b/postdischarge-manage/src/main/resources/mapper/manage/departmentdiseasetype/DepartmentDiseaseTypeMapper.xml index a2612cfd..f2d35fbe 100644 --- a/postdischarge-manage/src/main/resources/mapper/manage/departmentdiseasetype/DepartmentDiseaseTypeMapper.xml +++ b/postdischarge-manage/src/main/resources/mapper/manage/departmentdiseasetype/DepartmentDiseaseTypeMapper.xml @@ -5,141 +5,155 @@ - - - - - - - - - - - + + + + + + + + + + + - select id, department_id, department_name, disease_type_name, disease_type_code, diagnosis_info, disease_type_remark, create_by, create_time, update_by, update_time from department_disease_type + select id, + department_id, + department_name, + disease_type_name, + disease_type_code, + diagnosis_info, + disease_type_remark, + create_by, + create_time, + update_by, + update_time + from department_disease_type - - - and department_id = #{departmentId} - - - and department_name like concat('%', #{departmentName}, '%') - - - and disease_type_name like concat('%', #{diseaseTypeName}, '%') - - - and disease_type_code = #{diseaseTypeCode} - - - and diagnosis_info = #{diagnosisInfo} - - - and disease_type_remark = #{diseaseTypeRemark} - + + and department_id = #{departmentId} + + + and department_name like concat('%', #{departmentName}, '%') + + + and disease_type_name like concat('%', #{diseaseTypeName}, '%') + + + and disease_type_code = #{diseaseTypeCode} + + + and diagnosis_info = #{diagnosisInfo} + + + and disease_type_remark = #{diseaseTypeRemark} + insert into department_disease_type - department_id, - - department_name, - - disease_type_name, - - disease_type_code, - - diagnosis_info, - - disease_type_remark, - - create_by, - - create_time, - - update_by, - - update_time, - + department_id, + + department_name, + + disease_type_name, + + disease_type_code, + + diagnosis_info, + + disease_type_remark, + + create_by, + + create_time, + + update_by, + + update_time, + - #{departmentId}, - - #{departmentName}, - - #{diseaseTypeName}, - - #{diseaseTypeCode}, - - #{diagnosisInfo}, - - #{diseaseTypeRemark}, - - #{createBy}, - - #{createTime}, - - #{updateBy}, - - #{updateTime}, - + #{departmentId}, + + #{departmentName}, + + #{diseaseTypeName}, + + #{diseaseTypeCode}, + + #{diagnosisInfo}, + + #{diseaseTypeRemark}, + + #{createBy}, + + #{createTime}, + + #{updateBy}, + + #{updateTime}, + update department_disease_type - department_id = - #{departmentId}, - - department_name = - #{departmentName}, - - disease_type_name = - #{diseaseTypeName}, - - disease_type_code = - #{diseaseTypeCode}, - - diagnosis_info = - #{diagnosisInfo}, - - disease_type_remark = - #{diseaseTypeRemark}, - - create_by = - #{createBy}, - - create_time = - #{createTime}, - - update_by = - #{updateBy}, - - update_time = - #{updateTime}, - + department_id = + #{departmentId}, + + department_name = + #{departmentName}, + + disease_type_name = + #{diseaseTypeName}, + + disease_type_code = + #{diseaseTypeCode}, + + diagnosis_info = + #{diagnosisInfo}, + + disease_type_remark = + #{diseaseTypeRemark}, + + create_by = + #{createBy}, + + create_time = + #{createTime}, + + update_by = + #{updateBy}, + + update_time = + #{updateTime}, + where id = #{id} - delete from department_disease_type where id = #{id} + delete + from department_disease_type + where id = #{id} @@ -148,4 +162,18 @@ #{id} + + \ No newline at end of file