123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185 |
- package com.bootdo.system.controller;
- import com.bootdo.common.annotation.Log;
- import com.bootdo.common.config.Constant;
- import com.bootdo.common.controller.BaseController;
- import com.bootdo.common.domain.Tree;
- import com.bootdo.common.utils.R;
- import com.bootdo.common.utils.ShiroUtils;
- import com.bootdo.system.domain.DeptDO;
- import com.bootdo.system.domain.UserDO;
- import com.bootdo.system.service.DeptService;
- import io.swagger.annotations.ApiOperation;
- import org.apache.shiro.authz.annotation.RequiresPermissions;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Controller;
- import org.springframework.ui.Model;
- import org.springframework.web.bind.annotation.*;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- /**
- * 部门管理
- *
- * @author chglee
- * @email 1992lcg@163.com
- * @date 2017-09-27 14:40:36
- */
- @Controller
- @RequestMapping("/system/sysDept")
- public class DeptController extends BaseController {
- private String prefix = "system/dept";
- @Autowired
- private DeptService sysDeptService;
- @Log("访问机构管理")
- @GetMapping()
- @RequiresPermissions("system:sysDept:sysDept")
- String dept() {
- return prefix + "/dept";
- }
- //@ApiOperation(value = "获取部门列表", notes = "")
- @ResponseBody
- @GetMapping("/list")
- @RequiresPermissions("system:sysDept:sysDept")
- public List<DeptDO> list() {
- Map<String, Object> query = new HashMap<>(16);
- List<DeptDO> sysDeptList = sysDeptService.list(query);
- return sysDeptList;
- }
- @GetMapping("/add/{pId}")
- @RequiresPermissions("system:sysDept:add")
- String add(@PathVariable("pId") Long pId, Model model) {
- model.addAttribute("pId", pId);
- if (pId == 0) {
- model.addAttribute("pName", "总部门");
- } else {
- model.addAttribute("pName", sysDeptService.get(pId).getName());
- }
- return prefix + "/add";
- }
- @GetMapping("/edit/{deptId}")
- @RequiresPermissions("system:sysDept:edit")
- String edit(@PathVariable("deptId") Long deptId, Model model) {
- DeptDO sysDept = sysDeptService.get(deptId);
- model.addAttribute("sysDept", sysDept);
- if (Constant.DEPT_ROOT_ID.equals(sysDept.getParentId())) {
- model.addAttribute("parentDeptName", "无");
- } else {
- DeptDO parDept = sysDeptService.get(sysDept.getParentId());
- model.addAttribute("parentDeptName", parDept.getName());
- }
- return prefix + "/edit";
- }
- /**
- * 保存
- */
- @ResponseBody
- @PostMapping("/save")
- @RequiresPermissions("system:sysDept:add")
- public R save(DeptDO sysDept) {
- if (Constant.DEMO_ACCOUNT.equals(getUsername())) {
- return R.error(1, "演示系统不允许修改,完整体验请部署程序");
- }
- if (sysDeptService.save(sysDept) > 0) {
- return R.ok();
- }
- return R.error();
- }
- /**
- * 修改
- */
- @ResponseBody
- @RequestMapping("/update")
- @RequiresPermissions("system:sysDept:edit")
- public R update(DeptDO sysDept) {
- if (Constant.DEMO_ACCOUNT.equals(getUsername())) {
- return R.error(1, "演示系统不允许修改,完整体验请部署程序");
- }
- if (sysDeptService.update(sysDept) > 0) {
- return R.ok();
- }
- return R.error();
- }
- /**
- * 删除
- */
- @PostMapping("/remove")
- @ResponseBody
- @RequiresPermissions("system:sysDept:remove")
- public R remove(Long deptId) {
- if (Constant.DEMO_ACCOUNT.equals(getUsername())) {
- return R.error(1, "演示系统不允许删除,完整体验请部署程序");
- }
- Map<String, Object> map = new HashMap<String, Object>();
- map.put("parentId", deptId);
- if (sysDeptService.count(map) > 0) {
- return R.error(1, "包含下级部门,不允许删除");
- }
- if (sysDeptService.checkDeptHasUser(deptId)) {
- if (sysDeptService.remove(deptId) > 0) {
- return R.ok();
- }
- } else {
- return R.error(1, "部门包含用户,不允许删除");
- }
- return R.error();
- }
- /**
- * 删除
- */
- @PostMapping("/batchRemove")
- @ResponseBody
- @RequiresPermissions("system:sysDept:batchRemove")
- public R remove(@RequestParam("ids[]") Long[] deptIds) {
- if (Constant.DEMO_ACCOUNT.equals(getUsername())) {
- return R.error(1, "演示系统不允许修改,完整体验请部署程序");
- }
- sysDeptService.batchRemove(deptIds);
- return R.ok();
- }
- @GetMapping("/tree")
- @ResponseBody
- public Tree<DeptDO> tree() {
- Tree<DeptDO> tree = new Tree<DeptDO>();
- tree = sysDeptService.getTree();
- return tree;
- }
- @GetMapping("/treeView")
- String treeView() {
- return prefix + "/deptTree";
- }
- /**
- * @Description: 获取当前部门平级部门信息
- * @Author: wangp
- * @Date: 2022/3/21 19:55
- * @Return: List<DeptDO>
- */
- @ResponseBody
- @GetMapping("/list/queryDept")
- public List<DeptDO> queryDept() {
- // 用户信息
- UserDO currUser = ShiroUtils.getUser();
- String deptId = "";
- if (null != currUser) {
- deptId = String.valueOf(ShiroUtils.getUser().getDeptId());
- }
- // 查询列表数据
- List<DeptDO> list = sysDeptService.queryDept(deptId);
- return list;
- }
- }
|