Commit 58b65cb8 authored by 黎博's avatar 黎博

新增权限限制以及优化登录时默认赋予权限

parent f0e1ac13
......@@ -48,11 +48,6 @@ public class UserController {
return JsonResult.buildErrorStateResult("用户名或密码错误", false);
}
User user = userService.getUserByUsername(username);
// 默认赋予一个权限
UserRole userRole = new UserRole();
userRole.setUserId(user.getId());
userRole.setRoleId(3);
userRoleService.save(userRole);
// 生成token,并将信息保存到redis
String token = tokenService.generateToken(user.getId());
Map<String, Object> map = new HashMap<>();
......
package cn.qg.holmes.controller.gitlab;
import cn.qg.holmes.common.JsonResult;
import cn.qg.holmes.config.annotation.RequiresPermissions;
import cn.qg.holmes.entity.gitlab.DingRobotPipelineVo;
import cn.qg.holmes.entity.gitlab.Pipeline;
import cn.qg.holmes.entity.jira.DingRobot;
......@@ -81,6 +82,7 @@ public class PipelineController {
* 新增ding robot 以及对应的pipeline
* @return
*/
@RequiresPermissions("qa:process:add")
@PostMapping("/add")
public JsonResult addRobotAndPipeline(@RequestBody DingRobotPipelineVo dingRobotPipelineVo) {
try {
......@@ -121,6 +123,7 @@ public class PipelineController {
* @param dingRobotPipelineVo
* @return
*/
@RequiresPermissions("qa:process:edit")
@PostMapping("/modify")
public JsonResult modifyPipeline(@RequestBody DingRobotPipelineVo dingRobotPipelineVo) {
try {
......@@ -172,6 +175,7 @@ public class PipelineController {
* @param dingRobotId
* @return
*/
@RequiresPermissions("qa:process:del")
@GetMapping("/delete")
public JsonResult deletePipeline(@RequestParam Integer dingRobotId) {
try {
......
package cn.qg.holmes.controller.jira;
import cn.qg.holmes.common.JsonResult;
import cn.qg.holmes.config.annotation.RequiresPermissions;
import cn.qg.holmes.entity.jira.DingRobot;
import cn.qg.holmes.entity.jira.SendScheduleVo;
import cn.qg.holmes.entity.jira.SendSmokingResultVo;
......@@ -154,6 +155,7 @@ public class JiraController {
* @return
* @throws Exception
*/
@RequiresPermissions("qa:process:schedule")
@PostMapping("/send/schedule")
public JsonResult sendTestReport(@RequestBody SendScheduleVo sendScheduleVo) throws Exception {
String JQL = "project = " + sendScheduleVo.getJiraProjectKey() + " AND resolution = Unresolved AND text ~ \"" + sendScheduleVo.getTestProjectName() + "\" ORDER BY priority DESC, updated DESC";
......@@ -167,6 +169,7 @@ public class JiraController {
* @param sendSmokingResultVo 发送冒烟进度实体
* @return
*/
@RequiresPermissions("qa:process:smoke")
@PostMapping("/send/smoking")
public JsonResult sendSmokingResult(@RequestBody SendSmokingResultVo sendSmokingResultVo) throws Exception {
String JQL = "project = " + sendSmokingResultVo.getJiraProjectKey() + " AND resolution = Unresolved AND text ~ \""
......
package cn.qg.holmes.service.auth.impl;
import cn.qg.holmes.entity.auth.User;
import cn.qg.holmes.entity.auth.UserRole;
import cn.qg.holmes.service.auth.LdapService;
import cn.qg.holmes.service.auth.LoginService;
import cn.qg.holmes.service.auth.UserRoleService;
import cn.qg.holmes.service.auth.UserService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -21,6 +23,9 @@ public class LoginServiceImpl implements LoginService {
@Autowired
UserService userService;
@Autowired
UserRoleService userRoleService;
@Override
public boolean login(String username, String password) {
boolean result = ldapService.authenticate(username, password);
......@@ -36,6 +41,17 @@ public class LoginServiceImpl implements LoginService {
newUser.setEmail(userInfo.get("email"));
newUser.setTitle(userInfo.get("title"));
userService.save(newUser);
// 默认赋予一个权限,权限id在代码里写死
user = userService.getUserByUsername(username);
UserRole userRole = new UserRole();
userRole.setUserId(user.getId());
if (userInfo.get("title").startsWith("测试")) {
userRole.setRoleId(2);
} else {
userRole.setRoleId(3);
}
userRoleService.save(userRole);
}
}
return result;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment