|
|
@@ -2,17 +2,16 @@ package com.sundot.airport.web.controller.check;
|
|
2
|
2
|
|
|
3
|
3
|
import java.util.Collections;
|
|
4
|
4
|
import java.util.List;
|
|
5
|
|
-import java.util.stream.Collectors;
|
|
6
|
5
|
import javax.servlet.http.HttpServletResponse;
|
|
7
|
6
|
|
|
8
|
7
|
import cn.hutool.core.collection.CollUtil;
|
|
9
|
8
|
import cn.hutool.core.util.StrUtil;
|
|
10
|
|
-import com.sundot.airport.common.core.domain.entity.SysRole;
|
|
|
9
|
+import com.sundot.airport.common.core.domain.DataPermissionResult;
|
|
11
|
10
|
import com.sundot.airport.common.enums.CheckLevelEnum;
|
|
12
|
11
|
import com.sundot.airport.common.enums.CheckTaskStatusEnum;
|
|
13
|
|
-import com.sundot.airport.common.enums.RoleTypeEnum;
|
|
14
|
12
|
import com.sundot.airport.common.enums.SourceTypeEnum;
|
|
15
|
13
|
import com.sundot.airport.common.utils.SecurityUtils;
|
|
|
14
|
+import com.sundot.airport.web.core.utils.DataPermissionUtils;
|
|
16
|
15
|
import org.springframework.security.access.prepost.PreAuthorize;
|
|
17
|
16
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
18
|
17
|
import org.springframework.web.bind.annotation.GetMapping;
|
|
|
@@ -51,45 +50,47 @@ public class CheckTaskController extends BaseController {
|
|
51
|
50
|
@PreAuthorize("@ss.hasPermi('check:checkTask:list')")
|
|
52
|
51
|
@GetMapping("/list")
|
|
53
|
52
|
public TableDataInfo list(CheckTask checkTask, @RequestHeader(value = "X-Request-Source", defaultValue = "mobile") String source) {
|
|
|
53
|
+ DataPermissionResult dataPermission = DataPermissionUtils.getDataPermission(getUserId(), getDeptId(), getLoginUser());
|
|
54
|
54
|
startPage();
|
|
55
|
55
|
List<CheckTask> list;
|
|
56
|
|
- List<SysRole> roles = SecurityUtils.getLoginUser().getUser().getRoles();
|
|
57
|
|
- if (CollUtil.isEmpty(roles)) {
|
|
58
|
|
- return getDataTable(Collections.emptyList());
|
|
59
|
|
- }
|
|
60
|
|
- List<String> roleKeyList = roles.stream().map(SysRole::getRoleKey).collect(Collectors.toList());
|
|
61
|
56
|
if (StrUtil.equals(SourceTypeEnum.mobile.getCode(), source)) {
|
|
62
|
|
- if (roleKeyList.contains(RoleTypeEnum.admin.getCode())) {
|
|
63
|
|
- checkTask.setCheckLevel(null);
|
|
64
|
|
- } else if (roleKeyList.contains(RoleTypeEnum.test.getCode()) || roleKeyList.contains(RoleTypeEnum.zhijianke.getCode())) {
|
|
65
|
|
- checkTask.setCheckLevel(CheckLevelEnum.STATION_LEVEL.getCode());
|
|
66
|
|
- } else if (roleKeyList.contains(RoleTypeEnum.jingli.getCode()) || roleKeyList.contains(RoleTypeEnum.xingzheng.getCode())) {
|
|
67
|
|
- checkTask.setCheckLevel(CheckLevelEnum.BRIGADE_LEVEL.getCode());
|
|
68
|
|
- } else if (roleKeyList.contains(RoleTypeEnum.kezhang.getCode())) {
|
|
69
|
|
- checkTask.setCheckLevel(CheckLevelEnum.DEPARTMENT_LEVEL.getCode());
|
|
70
|
|
- checkTask.setSelfCheckDeptId(SecurityUtils.getLoginUser().getUser().getDept().getDeptId());
|
|
71
|
|
- } else if (roleKeyList.contains(RoleTypeEnum.banzuzhang.getCode())) {
|
|
72
|
|
- checkTask.setCheckLevel(CheckLevelEnum.TEAM_LEVEL.getCode());
|
|
73
|
|
- checkTask.setSelfCheckDeptId(SecurityUtils.getLoginUser().getUser().getDept().getParentId());
|
|
74
|
|
- } else {
|
|
75
|
|
- return getDataTable(Collections.emptyList());
|
|
|
57
|
+ switch (dataPermission.getPermissionType()) {
|
|
|
58
|
+ case ALL:
|
|
|
59
|
+ checkTask.setCheckLevel(null);
|
|
|
60
|
+ break;
|
|
|
61
|
+ case STATION:
|
|
|
62
|
+ checkTask.setCheckLevel(CheckLevelEnum.STATION_LEVEL.getCode());
|
|
|
63
|
+ break;
|
|
|
64
|
+ case BRIGADE:
|
|
|
65
|
+ checkTask.setCheckLevel(CheckLevelEnum.BRIGADE_LEVEL.getCode());
|
|
|
66
|
+ break;
|
|
|
67
|
+ case DEPARTMENT:
|
|
|
68
|
+ checkTask.setCheckLevel(CheckLevelEnum.DEPARTMENT_LEVEL.getCode());
|
|
|
69
|
+ checkTask.setSelfCheckDeptId(SecurityUtils.getLoginUser().getUser().getDept().getDeptId());
|
|
|
70
|
+ break;
|
|
|
71
|
+ case TEAM:
|
|
|
72
|
+ checkTask.setCheckLevel(CheckLevelEnum.TEAM_LEVEL.getCode());
|
|
|
73
|
+ checkTask.setSelfCheckDeptId(SecurityUtils.getLoginUser().getUser().getDept().getParentId());
|
|
|
74
|
+ break;
|
|
|
75
|
+ default:
|
|
|
76
|
+ return getDataTable(Collections.emptyList());
|
|
76
|
77
|
}
|
|
77
|
78
|
list = checkTaskService.selectCheckTaskList(checkTask);
|
|
78
|
79
|
} else if (StrUtil.equals(SourceTypeEnum.web.getCode(), source)) {
|
|
79
|
|
- if (roleKeyList.contains(RoleTypeEnum.admin.getCode())) {
|
|
80
|
|
- list = checkTaskService.selectCheckTaskList(checkTask);
|
|
81
|
|
- } else if (roleKeyList.contains(RoleTypeEnum.test.getCode()) || roleKeyList.contains(RoleTypeEnum.zhijianke.getCode())) {
|
|
82
|
|
- list = checkTaskService.selectCheckTaskList(checkTask);
|
|
83
|
|
- } else if (roleKeyList.contains(RoleTypeEnum.jingli.getCode()) || roleKeyList.contains(RoleTypeEnum.xingzheng.getCode())) {
|
|
84
|
|
- checkTask.setCheckLevel(CheckLevelEnum.BRIGADE_LEVEL.getCode());
|
|
85
|
|
- list = checkTaskService.selectCheckTaskList(checkTask);
|
|
86
|
|
- } else if (roleKeyList.contains(RoleTypeEnum.kezhang.getCode())) {
|
|
87
|
|
- checkTask.setSelfCheckDeptId(SecurityUtils.getLoginUser().getUser().getDept().getDeptId());
|
|
88
|
|
- list = checkTaskService.selectCheckTaskListWeb(checkTask);
|
|
89
|
|
- } else if (roleKeyList.contains(RoleTypeEnum.banzuzhang.getCode())) {
|
|
90
|
|
- return getDataTable(Collections.emptyList());
|
|
91
|
|
- } else {
|
|
92
|
|
- return getDataTable(Collections.emptyList());
|
|
|
80
|
+ switch (dataPermission.getPermissionType()) {
|
|
|
81
|
+ case ALL:
|
|
|
82
|
+ case STATION:
|
|
|
83
|
+ list = checkTaskService.selectCheckTaskList(checkTask);
|
|
|
84
|
+ break;
|
|
|
85
|
+ case BRIGADE:
|
|
|
86
|
+ list = checkTaskService.selectCheckTaskListBrigadeWeb(checkTask);
|
|
|
87
|
+ break;
|
|
|
88
|
+ case DEPARTMENT:
|
|
|
89
|
+ checkTask.setSelfCheckDeptId(SecurityUtils.getLoginUser().getUser().getDept().getDeptId());
|
|
|
90
|
+ list = checkTaskService.selectCheckTaskListWeb(checkTask);
|
|
|
91
|
+ break;
|
|
|
92
|
+ default:
|
|
|
93
|
+ return getDataTable(Collections.emptyList());
|
|
93
|
94
|
}
|
|
94
|
95
|
} else {
|
|
95
|
96
|
return getDataTable(Collections.emptyList());
|
|
|
@@ -104,25 +105,23 @@ public class CheckTaskController extends BaseController {
|
|
104
|
105
|
@Log(title = "检查任务", businessType = BusinessType.EXPORT)
|
|
105
|
106
|
@PostMapping("/export")
|
|
106
|
107
|
public void export(HttpServletResponse response, CheckTask checkTask) {
|
|
107
|
|
- List<CheckTask> list = Collections.emptyList();
|
|
108
|
|
- List<SysRole> roles = SecurityUtils.getLoginUser().getUser().getRoles();
|
|
109
|
|
- if (CollUtil.isNotEmpty(roles)) {
|
|
110
|
|
- List<String> roleKeyList = roles.stream().map(SysRole::getRoleKey).collect(Collectors.toList());
|
|
111
|
|
- if (roleKeyList.contains(RoleTypeEnum.admin.getCode())) {
|
|
112
|
|
- list = checkTaskService.selectCheckTaskList(checkTask);
|
|
113
|
|
- } else if (roleKeyList.contains(RoleTypeEnum.test.getCode()) || roleKeyList.contains(RoleTypeEnum.zhijianke.getCode())) {
|
|
114
|
|
- list = checkTaskService.selectCheckTaskList(checkTask);
|
|
115
|
|
- } else if (roleKeyList.contains(RoleTypeEnum.jingli.getCode()) || roleKeyList.contains(RoleTypeEnum.xingzheng.getCode())) {
|
|
116
|
|
- checkTask.setCheckLevel(CheckLevelEnum.BRIGADE_LEVEL.getCode());
|
|
|
108
|
+ DataPermissionResult dataPermission = DataPermissionUtils.getDataPermission(getUserId(), getDeptId(), getLoginUser());
|
|
|
109
|
+ List<CheckTask> list;
|
|
|
110
|
+ switch (dataPermission.getPermissionType()) {
|
|
|
111
|
+ case ALL:
|
|
|
112
|
+ case STATION:
|
|
117
|
113
|
list = checkTaskService.selectCheckTaskList(checkTask);
|
|
118
|
|
- } else if (roleKeyList.contains(RoleTypeEnum.kezhang.getCode())) {
|
|
119
|
|
- checkTask.setSelfCheckDeptId(SecurityUtils.getLoginUser().getDeptId());
|
|
|
114
|
+ break;
|
|
|
115
|
+ case BRIGADE:
|
|
|
116
|
+ list = checkTaskService.selectCheckTaskListBrigadeWeb(checkTask);
|
|
|
117
|
+ break;
|
|
|
118
|
+ case DEPARTMENT:
|
|
|
119
|
+ checkTask.setSelfCheckDeptId(SecurityUtils.getLoginUser().getUser().getDept().getDeptId());
|
|
120
|
120
|
list = checkTaskService.selectCheckTaskListWeb(checkTask);
|
|
121
|
|
- } else if (roleKeyList.contains(RoleTypeEnum.banzuzhang.getCode())) {
|
|
122
|
|
- list = Collections.emptyList();
|
|
123
|
|
- } else {
|
|
|
121
|
+ break;
|
|
|
122
|
+ default:
|
|
124
|
123
|
list = Collections.emptyList();
|
|
125
|
|
- }
|
|
|
124
|
+ break;
|
|
126
|
125
|
}
|
|
127
|
126
|
ExcelUtil<CheckTask> util = new ExcelUtil<CheckTask>(CheckTask.class);
|
|
128
|
127
|
util.exportExcel(response, list, "检查任务数据");
|
|
|
@@ -177,27 +176,29 @@ public class CheckTaskController extends BaseController {
|
|
177
|
176
|
@PreAuthorize("@ss.hasPermi('check:checkTask:list')")
|
|
178
|
177
|
@GetMapping("/unReadNum")
|
|
179
|
178
|
public AjaxResult unReadNum() {
|
|
180
|
|
- List<SysRole> roles = SecurityUtils.getLoginUser().getUser().getRoles();
|
|
181
|
|
- if (CollUtil.isEmpty(roles)) {
|
|
182
|
|
- return success(0);
|
|
183
|
|
- }
|
|
|
179
|
+ DataPermissionResult dataPermission = DataPermissionUtils.getDataPermission(getUserId(), getDeptId(), getLoginUser());
|
|
184
|
180
|
CheckTask checkTask = new CheckTask();
|
|
185
|
181
|
checkTask.setStatus(CheckTaskStatusEnum.IN_PROGRESS.getCode());
|
|
186
|
|
- List<String> roleKeyList = roles.stream().map(SysRole::getRoleKey).collect(Collectors.toList());
|
|
187
|
|
- if (roleKeyList.contains(RoleTypeEnum.admin.getCode())) {
|
|
188
|
|
- checkTask.setCheckLevel(null);
|
|
189
|
|
- } else if (roleKeyList.contains(RoleTypeEnum.test.getCode()) || roleKeyList.contains(RoleTypeEnum.zhijianke.getCode())) {
|
|
190
|
|
- checkTask.setCheckLevel(CheckLevelEnum.STATION_LEVEL.getCode());
|
|
191
|
|
- } else if (roleKeyList.contains(RoleTypeEnum.jingli.getCode()) || roleKeyList.contains(RoleTypeEnum.xingzheng.getCode())) {
|
|
192
|
|
- checkTask.setCheckLevel(CheckLevelEnum.BRIGADE_LEVEL.getCode());
|
|
193
|
|
- } else if (roleKeyList.contains(RoleTypeEnum.kezhang.getCode())) {
|
|
194
|
|
- checkTask.setCheckLevel(CheckLevelEnum.DEPARTMENT_LEVEL.getCode());
|
|
195
|
|
- checkTask.setSelfCheckDeptId(SecurityUtils.getLoginUser().getDeptId());
|
|
196
|
|
- } else if (roleKeyList.contains(RoleTypeEnum.banzuzhang.getCode())) {
|
|
197
|
|
- checkTask.setCheckLevel(CheckLevelEnum.TEAM_LEVEL.getCode());
|
|
198
|
|
- checkTask.setSelfCheckDeptId(SecurityUtils.getLoginUser().getUser().getDept().getParentId());
|
|
199
|
|
- } else {
|
|
200
|
|
- return success(0);
|
|
|
182
|
+ switch (dataPermission.getPermissionType()) {
|
|
|
183
|
+ case ALL:
|
|
|
184
|
+ checkTask.setCheckLevel(null);
|
|
|
185
|
+ break;
|
|
|
186
|
+ case STATION:
|
|
|
187
|
+ checkTask.setCheckLevel(CheckLevelEnum.STATION_LEVEL.getCode());
|
|
|
188
|
+ break;
|
|
|
189
|
+ case BRIGADE:
|
|
|
190
|
+ checkTask.setCheckLevel(CheckLevelEnum.BRIGADE_LEVEL.getCode());
|
|
|
191
|
+ break;
|
|
|
192
|
+ case DEPARTMENT:
|
|
|
193
|
+ checkTask.setCheckLevel(CheckLevelEnum.DEPARTMENT_LEVEL.getCode());
|
|
|
194
|
+ checkTask.setSelfCheckDeptId(SecurityUtils.getLoginUser().getUser().getDept().getDeptId());
|
|
|
195
|
+ break;
|
|
|
196
|
+ case TEAM:
|
|
|
197
|
+ checkTask.setCheckLevel(CheckLevelEnum.TEAM_LEVEL.getCode());
|
|
|
198
|
+ checkTask.setSelfCheckDeptId(SecurityUtils.getLoginUser().getUser().getDept().getParentId());
|
|
|
199
|
+ break;
|
|
|
200
|
+ default:
|
|
|
201
|
+ return success(0);
|
|
201
|
202
|
}
|
|
202
|
203
|
List<CheckTask> list = checkTaskService.selectCheckTaskList(checkTask);
|
|
203
|
204
|
if (CollUtil.isEmpty(list)) {
|