DeptController.java
4.35 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
package com.huaheng.pc.system.dept.controller;
import java.util.List;
import java.util.Map;
import io.swagger.annotations.ApiModelProperty;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import com.huaheng.common.utils.StringUtils;
import com.huaheng.framework.aspectj.lang.annotation.Log;
import com.huaheng.framework.aspectj.lang.constant.BusinessType;
import com.huaheng.framework.web.controller.BaseController;
import com.huaheng.framework.web.domain.AjaxResult;
import com.huaheng.pc.system.dept.domain.Dept;
import com.huaheng.pc.system.dept.service.IDeptService;
/**
* 部门信息
*
* @author huaheng
*/
@Controller
@RequestMapping("/system/dept")
public class DeptController extends BaseController
{
private String prefix = "system/dept";
@Autowired
private IDeptService deptService;
@RequiresPermissions("system:dept:view")
@GetMapping()
public String dept()
{
return prefix + "/dept";
}
@ApiModelProperty
@RequiresPermissions("system:dept:list")
@GetMapping("/list")
@ResponseBody
public List<Dept> list(Dept dept)
{
List<Dept> deptList = deptService.selectDeptList(dept);
return deptList;
}
/**
* 查看部门
*/
@Log(title = "系统管理-部门管理",operating = "查看部门信息", action = BusinessType.GRANT)
@GetMapping("/add/{parentId}")
public String add(@PathVariable("parentId") Integer parentId, ModelMap mmap)
{
mmap.put("dept", deptService.selectDeptById(parentId));
return prefix + "/add";
}
/**
* 新增保存部门
*/
@Log(title = "系统管理-部门管理",operating = "新增部门", action = BusinessType.INSERT)
@RequiresPermissions("system:dept:add")
@PostMapping("/add")
@ResponseBody
public AjaxResult addSave(Dept dept)
{
return toAjax(deptService.insertDept(dept));
}
/**
* 修改
*/
@GetMapping("/edit/{id}")
public String edit(@PathVariable("id") Integer id, ModelMap mmap)
{
mmap.put("dept", deptService.selectDeptById(id));
return prefix + "/edit";
}
/**
* 修改
*/
@Log(title = "系统管理-部门管理",operating = "修改部门信息", action = BusinessType.UPDATE)
@RequiresPermissions("system:dept:edit")
@PostMapping("/edit")
@ResponseBody
public AjaxResult editSave(Dept dept)
{
return toAjax(deptService.updateDept(dept));
}
/**
* 删除
*/
@Log(title = "系统管理-部门管理",operating = "删除部门", action = BusinessType.DELETE)
@RequiresPermissions("system:dept:remove")
@PostMapping("/remove/{id}")
@ResponseBody
public AjaxResult remove(@PathVariable("id") Integer id)
{
if (deptService.selectDeptCount(id) > 0)
{
return AjaxResult.error("存在下级部门,不允许删除");
}
if (deptService.checkDeptExistUser(id))
{
return AjaxResult.error("部门存在用户,不允许删除");
}
return toAjax(deptService.deleteDeptById(id));
}
/**
* 校验部门名称
*/
@PostMapping("/checkDeptNameUnique")
@ResponseBody
public String checkDeptNameUnique(Dept dept)
{
String uniqueFlag = "0";
if (StringUtils.isNotNull(dept))
{
uniqueFlag = deptService.checkDeptNameUnique(dept);
}
return uniqueFlag;
}
/**
* 选择部门树
*/
@GetMapping("/selectDeptTree/{id}")
public String selectDeptTree(@PathVariable("id") Integer id, ModelMap mmap)
{
mmap.put("dept", deptService.selectDeptById(id));
return prefix + "/tree";
}
/**
* 加载部门列表树
*/
@GetMapping("/treeData")
@ResponseBody
public List<Map<String, Object>> treeData()
{
List<Map<String, Object>> tree = deptService.selectDeptTree();
return tree;
}
}