From f237a61c412870933f47316a011237cd538de9bc Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期二, 20 八月 2024 09:07:02 +0800 Subject: [PATCH] 新增需求 --- guns-management/src/main/java/com/stylefeng/guns/modular/code/controller/SysDeptController.java | 94 ++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 80 insertions(+), 14 deletions(-) diff --git a/guns-management/src/main/java/com/stylefeng/guns/modular/code/controller/SysDeptController.java b/guns-management/src/main/java/com/stylefeng/guns/modular/code/controller/SysDeptController.java index 18521ac..a2a1311 100644 --- a/guns-management/src/main/java/com/stylefeng/guns/modular/code/controller/SysDeptController.java +++ b/guns-management/src/main/java/com/stylefeng/guns/modular/code/controller/SysDeptController.java @@ -1,21 +1,33 @@ package com.stylefeng.guns.modular.code.controller; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; import com.stylefeng.guns.core.common.annotion.BussinessLog; import com.stylefeng.guns.core.common.constant.dictmap.DeptDict; import com.stylefeng.guns.core.common.exception.BizExceptionEnum; import com.stylefeng.guns.core.exception.GunsException; import com.stylefeng.guns.core.mutidatasource.annotion.DataSource; +import com.stylefeng.guns.core.node.ZTreeNode; import com.stylefeng.guns.core.util.ToolUtil; +import com.stylefeng.guns.modular.system.dto.DeptQuery; import com.stylefeng.guns.modular.system.model.Dept; +import com.stylefeng.guns.modular.system.model.User; import com.stylefeng.guns.modular.system.service.IDeptService; +import com.stylefeng.guns.modular.system.service.IUserService; import com.stylefeng.guns.modular.system.util.ResultUtil; -import com.stylefeng.guns.modular.system.warpper.DeptWarpper; +import com.stylefeng.guns.modular.system.vo.DeptVO; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.ui.Model; +import org.springframework.util.StringUtils; +import org.springframework.web.bind.annotation.*; -import javax.xml.transform.Result; +import java.util.ArrayList; +import java.util.Date; import java.util.List; import java.util.Map; @@ -28,28 +40,82 @@ @DataSource(name = "dataSourceBiz") - @RequestMapping(value = "/list") + @GetMapping(value = "/list") + @ApiOperation(value = "列表", tags = {"后台-部门管理"}) @ResponseBody - public Object list(String condition) { - List<Map<String, Object>> list = this.deptService.list(condition); - return list; + public ResultUtil<PageInfo<Dept>> getList(DeptQuery req) { +// PageHelper.startPage(req.getPageNum(),req.getPageSize()); + List<Dept> depts = deptService.getList(req); + PageInfo<Dept> info=new PageInfo<>(depts); + return ResultUtil.success(info); } @DataSource(name = "dataSourceGuns") - @BussinessLog(value = "添加部门", key = "simplename", dict = DeptDict.class) - @RequestMapping(value = "/add") + @ApiOperation(value = "添加部门", tags = {"后台-部门管理"}) + @PostMapping(value = "/add") @ResponseBody + public ResultUtil add(Dept dept) { - if (ToolUtil.isOneEmpty(dept, dept.getSimplename())) { - throw new GunsException(BizExceptionEnum.REQUEST_NULL); - } //完善pids,根据pid拿到pid的pids + dept.setPid(0); deptSetPids(dept); + dept.setInsertTime(new Date()); + dept.setSimplename(dept.getFullname()); this.deptService.insert(dept); return ResultUtil.success("添加成功"); - } + @DataSource(name = "dataSourceBiz") + @GetMapping(value = "/tree") + @ApiOperation(value = "获取部下拉框", tags = {"后台-部门管理"}) + @ResponseBody + public List<Dept> tree() { + List<ZTreeNode> tree = this.deptService.tree(); + tree.add(ZTreeNode.createParent()); + return deptService.selectList(null); +// return tree; + } + @Autowired + private IUserService userService; + @DeleteMapping ("/delete") + @ResponseBody + @ApiOperation(value = "删除部门", tags = {"后台-部门管理"}) + public ResultUtil delete(String ids) { + String[] split = ids.split(","); + for (String id : split) { + List<User> users = userService.selectList(new EntityWrapper<User>().eq("deptid",Integer.valueOf(id))); + if (!users.isEmpty()){ + return ResultUtil.error("当前部门已绑定用户,无法删除"); + } + deptService.deleteById(Integer.valueOf(id)); + } + return ResultUtil.success("删除成功"); + } + + @GetMapping ("pre/edit/{deptId}") + public Dept deptUpdate(@PathVariable Integer deptId, Model model) { + Dept dept = deptService.selectById(deptId); + return dept; + } + + + @DataSource(name = "dataSourceGuns") + @ApiOperation(value = "修改部门", tags = {"后台-部门管理"}) + @PutMapping (value = "/update") + @ResponseBody + @ApiImplicitParams({ + @ApiImplicitParam(value = "部门id", name = "id"), + @ApiImplicitParam(value = "部门名称", name = "fullname"), + }) + public ResultUtil update(Integer id,String fullname ) { + Dept dept1 = deptService.selectById(id); + dept1.setFullname(fullname); + dept1.setSimplename(fullname); + deptService.updateById(dept1); + return ResultUtil.success("修改成功"); + } + + private void deptSetPids(Dept dept) { if (ToolUtil.isEmpty(dept.getPid()) || dept.getPid().equals(0)) { dept.setPid(0); -- Gitblit v1.7.1