From ff2adb439624a7894134c9774710e947b61b12c2 Mon Sep 17 00:00:00 2001 From: zhangheng <3226558941@qq.com> Date: Tue, 27 Feb 2024 15:29:54 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9C=BA=E6=9E=84=E5=88=A0=E9=99=A4=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manage/controller/agency/AgencyController.java | 2 +- .../com/xinelu/manage/mapper/agency/AgencyMapper.java | 8 ++++++++ .../xinelu/manage/service/agency/IAgencyService.java | 2 +- .../manage/service/agency/impl/AgencyServiceImpl.java | 10 ++++++++-- .../resources/mapper/manage/agency/AgencyMapper.xml | 8 ++++++++ 5 files changed, 26 insertions(+), 4 deletions(-) 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 31361061..bf4c094b 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 @@ -90,7 +90,7 @@ public class AgencyController extends BaseController { @Log(title = "机构信息", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") public AjaxResult remove(@PathVariable Long[] ids) { - return toAjax(agencyService.deleteAgencyByIds(ids)); + return agencyService.deleteAgencyByIds(ids); } /** 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 dae202aa..78f9030f 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 @@ -22,6 +22,14 @@ public interface AgencyMapper { */ Agency selectAgencyById(Long id); + /** + * 查询下级机构信息 + * + * @param id 机构信息主键 + * @return 机构信息 + */ + List selectSubordinateAgencyById(Long[] id); + /** * 查询机构信息 * 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 f7d27b97..8320102e 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 ids 需要删除的机构信息主键集合 * @return 结果 */ - int deleteAgencyByIds(Long[] ids); + AjaxResult deleteAgencyByIds(Long[] ids); /** * 删除机构信息信息 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 073b76f6..ad80e5a2 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 @@ -73,6 +73,7 @@ public class AgencyServiceImpl implements IAgencyService { @Override public int insertAgency(Agency agency) { agency.setCreateTime(DateUtils.getNowDate()); + agency.setCreateBy(SecurityUtils.getUsername()); return agencyMapper.insertAgency(agency); } @@ -85,6 +86,7 @@ public class AgencyServiceImpl implements IAgencyService { @Override public int updateAgency(Agency agency) { agency.setUpdateTime(DateUtils.getNowDate()); + agency.setUpdateBy(SecurityUtils.getUsername()); return agencyMapper.updateAgency(agency); } @@ -95,8 +97,12 @@ public class AgencyServiceImpl implements IAgencyService { * @return 结果 */ @Override - public int deleteAgencyByIds(Long[] ids) { - return agencyMapper.deleteAgencyByIds(ids); + public AjaxResult deleteAgencyByIds(Long[] ids) { + int size = agencyMapper.selectSubordinateAgencyById(ids).size(); + if (size > 0) { + return AjaxResult.error("该机构存在下级机构,请先删除其下级机构!"); + } + return AjaxResult.success(agencyMapper.deleteAgencyByIds(ids)); } /** 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 ded4c9b9..9b6b96c8 100644 --- a/postdischarge-manage/src/main/resources/mapper/manage/agency/AgencyMapper.xml +++ b/postdischarge-manage/src/main/resources/mapper/manage/agency/AgencyMapper.xml @@ -122,6 +122,14 @@ where id = #{id} + +