From 1fb23cbeeaaeda0a66cf8fe8977c3f5915743cc7 Mon Sep 17 00:00:00 2001 From: fengjin <1435304038@qq.com> Date: 星期五, 21 十月 2022 15:13:10 +0800 Subject: [PATCH] Merge branch 'zigonggao_dev' into huacheng_test --- flower_city/src/main/java/com/dg/core/controller/OrganizationController.java | 66 +++++++++++++++++++++++++++++++- 1 files changed, 63 insertions(+), 3 deletions(-) diff --git a/flower_city/src/main/java/com/dg/core/controller/OrganizationController.java b/flower_city/src/main/java/com/dg/core/controller/OrganizationController.java index a5b5346..4699d53 100644 --- a/flower_city/src/main/java/com/dg/core/controller/OrganizationController.java +++ b/flower_city/src/main/java/com/dg/core/controller/OrganizationController.java @@ -1,14 +1,14 @@ package com.dg.core.controller; -import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.dg.core.ResultData; import com.dg.core.annotation.Authorization; import com.dg.core.annotation.CurrentUser; -import com.dg.core.db.gen.entity.ClassifyAdministration; import com.dg.core.db.gen.entity.OrganizationChartEntity; import com.dg.core.db.gen.entity.SysUser; +import com.dg.core.db.gen.entity.TransactionEvent; import com.dg.core.service.IOrganizationChartService; +import com.dg.core.service.ITransactionEventService; import com.dg.core.util.TableDataInfo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -18,6 +18,7 @@ import org.springframework.web.bind.annotation.*; import java.time.LocalDateTime; +import java.util.ArrayList; import java.util.List; @@ -29,6 +30,9 @@ @Autowired(required = true) IOrganizationChartService iOrganizationChartService; + + @Autowired(required = true) + ITransactionEventService iTransactionEventService; /** * 查询机构列表 @@ -76,7 +80,7 @@ public ResultData updateConfig(@RequestBody OrganizationChartEntity entity,@CurrentUser SysUser sysUser) { entity.setUpdateTime(LocalDateTime.now()); - entity.setUpdateUserId(Integer.parseInt(String.valueOf(sysUser.getUserId()))); + entity.setUpdateUserId(sysUser.getUserId()); return toAjax(iOrganizationChartService.updateConfig(entity)); } @@ -89,6 +93,21 @@ public ResultData deleteConfigById(@RequestParam(value = "Id",required = false) String Id) { Assert.notNull(Id, "Id 不能为空"); + List<OrganizationChartEntity> list=iOrganizationChartService.selectParentList(Id,""); + + if(list!=null && list.size()>0) + { + return ResultData.error("该机构下存在其他部门!请先删除子部门"); + } + + List<String> ids=new ArrayList<>(); + ids.add(Id); + List<TransactionEvent> transactionEvents=iTransactionEventService.selectConfigList(null,null,ids); + + if(transactionEvents!=null && transactionEvents.size()>0) + { + return ResultData.error("该机构下已绑定办事指南!请解绑办事指南"); + } return toAjax(iOrganizationChartService.deleteConfigById(Id)); } @@ -127,4 +146,45 @@ } + /** + * 通过父级id查询对应机构下的全部部门id + * @param departmentId + * @return + */ + @ApiOperation(value = "通过父级id查询对应机构下的全部部门",response = OrganizationChartEntity.class) + @GetMapping("/getdepartment") + public TableDataInfo getOrganizations(@RequestParam(value = "department",required = false) String departmentId) + { + List<OrganizationChartEntity> ids=new ArrayList<>(); + List<OrganizationChartEntity> lists = iOrganizationChartService.selectParentList(departmentId,""); + if(lists.size()<1) + { + lists.add(iOrganizationChartService.selectConfigById(departmentId)); + } + ids=disposestreet(lists); + if(ids.size()<1) + { + return null; + } + ids.add(iOrganizationChartService.selectConfigById(departmentId)); + return getDataTable(ids); + } + + //递归取id + private List<OrganizationChartEntity> disposestreet(List<OrganizationChartEntity> lists) + { + List<OrganizationChartEntity> ids=new ArrayList<>(); + for (OrganizationChartEntity sysStreet:lists) + { + if(sysStreet.getChild()!=null && sysStreet.getChild().size()>0) + { + ids.addAll(disposestreet(sysStreet.getChild())); + } + else + { + ids.add(sysStreet); + } + } + return ids; + } } -- Gitblit v1.7.1