Explorar el Código

:bug: oauth 封装,直接获取用户名为空问题修复

lengleng hace 6 años
padre
commit
e0d9cce2fd

+ 0 - 26
pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/util/SecurityUtils.java

@@ -62,37 +62,11 @@ public class SecurityUtils {
 		return null;
 	}
 
-	/**
-	 * 获取当前用名
-	 *
-	 * @return String
-	 */
-	public String getUsername() {
-		Object principal = getAuthentication().getPrincipal();
-		if (principal instanceof String) {
-			return principal.toString();
-		}
-		return null;
-	}
-
-
-	public String getClientId() {
-		Authentication authentication = getAuthentication();
-		if (authentication instanceof OAuth2Authentication) {
-			OAuth2Authentication auth2Authentication = (OAuth2Authentication) authentication;
-			return auth2Authentication.getOAuth2Request().getClientId();
-		}
-		return null;
-	}
-
 	/**
 	 * 获取用户
 	 */
 	public PigxUser getUser() {
 		Authentication authentication = getAuthentication();
-		if (authentication == null) {
-			return null;
-		}
 		return getUser(authentication);
 	}
 

+ 1 - 1
pigx-common/pigx-common-security/src/main/java/org/springframework/cloud/openfeign/PigxFeignFallback.java

@@ -34,7 +34,7 @@ import java.util.Objects;
 /**
  * @author lengleng
  * <p>
- * fallBack 代理处理
+ * fallback 代理处理
  */
 @Slf4j
 @AllArgsConstructor

+ 1 - 1
pigx-visual/pigx-activiti/src/main/java/com/pig4cloud/pigx/act/controller/LeaveBillController.java

@@ -74,7 +74,7 @@ public class LeaveBillController {
 	 */
 	@PostMapping
 	public R save(@RequestBody LeaveBill leaveBill) {
-		leaveBill.setUsername(SecurityUtils.getUsername());
+		leaveBill.setUsername(SecurityUtils.getUser().getUsername());
 		leaveBill.setState(TaskStatusEnum.UNSUBMIT.getStatus());
 		return new R<>(leaveBillService.save(leaveBill));
 	}

+ 1 - 1
pigx-visual/pigx-activiti/src/main/java/com/pig4cloud/pigx/act/controller/TaskController.java

@@ -44,7 +44,7 @@ public class TaskController {
 
 	@GetMapping("/todo")
 	public R todo(@RequestParam Map<String, Object> params) {
-		return new R<>(actTaskService.getTaskByName(params, SecurityUtils.getUsername()));
+		return new R<>(actTaskService.getTaskByName(params, SecurityUtils.getUser().getUsername()));
 	}
 
 	@GetMapping("/{id}")

+ 5 - 5
pigx-visual/pigx-activiti/src/main/java/com/pig4cloud/pigx/act/listener/LeaveProcessTaskListener.java

@@ -51,13 +51,13 @@ public class LeaveProcessTaskListener implements TaskListener {
 		SimpMessagingTemplate simpMessagingTemplate = SpringContextHolder.getBean(SimpMessagingTemplate.class);
 		RemoteUserService userService = SpringContextHolder.getBean(RemoteUserService.class);
 
-		R<List<SysUser>> result = userService.ancestorUsers(SecurityUtils.getUsername());
+		R<List<SysUser>> result = userService.ancestorUsers(SecurityUtils.getUser().getUsername());
 		List<String> remindUserList = new ArrayList<>();
 
 		if (CollUtil.isEmpty(result.getData())) {
-			log.info("用户 {} 不存在上级,任务单由当前用户审批", SecurityUtils.getUsername());
-			delegateTask.addCandidateUser(SecurityUtils.getUsername());
-			remindUserList.add(SecurityUtils.getUsername());
+			log.info("用户 {} 不存在上级,任务单由当前用户审批", SecurityUtils.getUser().getUsername());
+			delegateTask.addCandidateUser(SecurityUtils.getUser().getUsername());
+			remindUserList.add(SecurityUtils.getUser().getUsername());
 		} else {
 			List<String> userList = result.getData().stream().map(SysUser::getUsername).collect(Collectors.toList());
 			log.info("当前任务 {},由 {}处理", delegateTask.getId(), userList);
@@ -66,7 +66,7 @@ public class LeaveProcessTaskListener implements TaskListener {
 		}
 
 		remindUserList.forEach(user -> {
-			String target = String.format("%s-%s", SecurityUtils.getUsername(), TenantContextHolder.getTenantId());
+			String target = String.format("%s-%s", SecurityUtils.getUser().getUsername(), TenantContextHolder.getTenantId());
 			simpMessagingTemplate.convertAndSendToUser(target, "/remind", delegateTask.getName());
 		});
 	}

+ 1 - 1
pigx-visual/pigx-activiti/src/main/java/com/pig4cloud/pigx/act/service/impl/ActTaskServiceImpl.java

@@ -146,7 +146,7 @@ public class ActTaskServiceImpl implements ActTaskService {
 			.singleResult();
 
 		String processInstanceId = task.getProcessInstanceId();
-		Authentication.setAuthenticatedUserId(SecurityUtils.getUsername());
+		Authentication.setAuthenticatedUserId(SecurityUtils.getUser().getUsername());
 		taskService.addComment(taskId, processInstanceId, message);
 
 		Map<String, Object> variables = new HashMap<>(1);