AdministerController.java
5.95 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
package com.zhongzhi.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zhongzhi.common.constant.Platform;
import com.zhongzhi.common.utils.LoginRequired;
import com.zhongzhi.common.utils.ResponseData;
import com.zhongzhi.dto.administer.AdministerPageDTO;
import com.zhongzhi.dto.administer.CreateAdministerDTO;
import com.zhongzhi.dto.administer.LoginDTO;
import com.zhongzhi.model.AdministerDO;
import com.zhongzhi.model.AdministerPermissionDO;
import com.zhongzhi.model.AdministerTrackMappingDO;
import com.zhongzhi.service.AdministerPermissionService;
import com.zhongzhi.service.AdministerService;
import com.zhongzhi.service.AdministerTrackMappingService;
import com.zhongzhi.vo.ResponseVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* <p>
* 中心管理账户表 前端控制器
* </p>
*
* @author DengMin
* @since 2021-04-28
*/
@RestController
@Api(tags = "中心管理账户")
@RequestMapping("/administer")
public class AdministerController {
@Autowired
private AdministerService administerService;
@Autowired
private AdministerTrackMappingService administerTrackMappingService;
@Autowired
private AdministerPermissionService administerPermissionService;
@PostMapping(value = "/login")
@ApiOperation("中心端 --- 登录:手机号/telephone, code/验证码")
public ResponseVO login(@RequestBody LoginDTO loginDTO) {
return ResponseData.generateCreatedResponse(0, administerService.login(loginDTO));
}
@PostMapping(value = "/getAdministerPage")
@ApiOperation("[立信]中心端 --- 成员管理分页查询:listItem/角色、 username/搜索名称、pageNo/当前页数、pageSize/每页显示条数")
public ResponseVO getAdministerPage(@RequestBody AdministerPageDTO administerPageDTO) {
return ResponseData.generateCreatedResponse(0, administerService.getAdministerPage(administerPageDTO));
}
@PostMapping(value = "/createAdminister")
@ApiOperation("[立信]中心端 --- 新增成员:username/名称、telephone/手机号、avatar/头像、role/角色 trackIds[] 赛道ids permissionIds[] 权限ids")
public ResponseVO createAdminister(@RequestBody CreateAdministerDTO createAdministerDTO) {
administerService.save(createAdministerDTO);
List<Long> trackIds = createAdministerDTO.getTrackIds();
if (null != trackIds){
for (Long id : trackIds){
AdministerTrackMappingDO administerTrackMappingDO = new AdministerTrackMappingDO();
administerTrackMappingDO.setAdministerId(createAdministerDTO.getId());
administerTrackMappingDO.setTrackId(id);
administerTrackMappingService.save(administerTrackMappingDO);
}
}
List<Long> permissionIds = createAdministerDTO.getPermissionIds();
if (null != permissionIds){
for (Long id : permissionIds){
AdministerPermissionDO administerPermissionDO = new AdministerPermissionDO();
administerPermissionDO.setAdministerId(createAdministerDTO.getId());
administerPermissionDO.setPermissionId(id);
administerPermissionService.save(administerPermissionDO);
}
}
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/updateAdminister")
@ApiOperation("[立信]中心端 --- 编辑成员:id/成员ID、username/名称、telephone/手机号、avatar/头像、role/角色 trackIds[] 赛道ids permissionIds[] 权限ids")
public ResponseVO updateAdminister(@RequestBody CreateAdministerDTO createAdministerDTO) {
administerService.updateAdminister(createAdministerDTO);
List<Long> trackIds = createAdministerDTO.getTrackIds();
if (null != trackIds){
administerTrackMappingService.remove(new QueryWrapper<AdministerTrackMappingDO>()
.lambda()
.eq(AdministerTrackMappingDO::getAdministerId,createAdministerDTO.getId()));
for (Long id : trackIds){
AdministerTrackMappingDO administerTrackMappingDO = new AdministerTrackMappingDO();
administerTrackMappingDO.setAdministerId(createAdministerDTO.getId());
administerTrackMappingDO.setTrackId(id);
administerTrackMappingService.save(administerTrackMappingDO);
}
}
List<Long> permissionIds = createAdministerDTO.getPermissionIds();
if (null != permissionIds) {
administerPermissionService.remove(new QueryWrapper<AdministerPermissionDO>()
.lambda()
.eq(AdministerPermissionDO::getAdministerId,createAdministerDTO.getId()));
for (Long id : permissionIds){
AdministerPermissionDO administerPermissionDO = new AdministerPermissionDO();
administerPermissionDO.setAdministerId(createAdministerDTO.getId());
administerPermissionDO.setPermissionId(id);
administerPermissionService.save(administerPermissionDO);
}
}
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/deleteById")
@ApiOperation("[立信]中心端 --- 删除成员:id/成员ID")
public ResponseVO delete(@RequestBody AdministerDO administerDO) {
administerService.removeById(administerDO.getId());
administerTrackMappingService.remove(new QueryWrapper<AdministerTrackMappingDO>()
.lambda()
.eq(AdministerTrackMappingDO::getAdministerId,administerDO.getId()));
return ResponseData.generateCreatedResponse(0);
}
}