Commit c186d279ba040f7d02e1d44ce98c84e589321967

Authored by YunaiV
1 parent cc56a663

code review 工作流的相关代码

yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/controller/workflow/vo/TodoTaskRespVO.java
... ... @@ -2,7 +2,6 @@ package cn.iocoder.yudao.adminserver.modules.activiti.controller.workflow.vo;
2 2  
3 3 import io.swagger.annotations.ApiModel;
4 4 import lombok.Data;
5   -import lombok.EqualsAndHashCode;
6 5 import lombok.ToString;
7 6  
8 7 @ApiModel("待办任务 Response VO")
... ... @@ -10,6 +9,8 @@ import lombok.ToString;
10 9 @ToString
11 10 public class TodoTaskRespVO {
12 11  
  12 + // TODO @jason:swagger 注解。这样接口文档才完整哈
  13 +
13 14 private String id;
14 15  
15 16 /**
... ...
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/service/oa/ReportBackEndProcessor.java
... ... @@ -9,13 +9,13 @@ import org.springframework.transaction.annotation.Transactional;
9 9  
10 10 import javax.annotation.Resource;
11 11  
  12 +// TODO @jason:类注释
12 13 @Component
13 14 public class ReportBackEndProcessor implements ExecutionListener {
14 15  
15 16 @Resource
16 17 private OaLeaveMapper leaveMapper;
17 18  
18   -
19 19 @Override
20 20 @Transactional(rollbackFor = Exception.class)
21 21 public void notify(DelegateExecution delegateExecution) {
... ...
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/service/oa/impl/OaLeaveServiceImpl.java
... ... @@ -52,6 +52,7 @@ public class OALeaveServiceImpl implements OALeaveService {
52 52 // 插入 OA 请假单
53 53 OALeaveDO leave = OALeaveConvert.INSTANCE.convert(createReqVO);
54 54 leave.setStatus(1);
  55 + // TODO @jason:应该是存储 userId??
55 56 leave.setUserId(SecurityFrameworkUtils.getLoginUser().getUsername());
56 57 leaveMapper.insert(leave);
57 58  
... ...
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/service/workflow/TaskService.java
... ... @@ -6,6 +6,7 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult;
6 6 import java.util.List;
7 7  
8 8 // TODO @芋艿:前缀,注释
  9 +// TODO @json:类和方法的注释。咱是开源项目,有注释,大家才能更容易读懂
9 10 public interface TaskService {
10 11  
11 12 PageResult<TodoTaskRespVO> getTodoTaskPage(TodoTaskPageReqVO pageReqVO);
... ...
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/service/workflow/impl/TaskServiceImpl.java
... ... @@ -5,7 +5,6 @@ import cn.iocoder.yudao.adminserver.modules.activiti.controller.workflow.vo.*;
5 5 import cn.iocoder.yudao.adminserver.modules.activiti.convert.workflow.TaskConvert;
6 6 import cn.iocoder.yudao.adminserver.modules.activiti.service.workflow.TaskService;
7 7 import cn.iocoder.yudao.framework.common.pojo.PageResult;
8   -import cn.iocoder.yudao.framework.security.core.LoginUser;
9 8 import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
10 9 import org.activiti.api.runtime.shared.query.Page;
11 10 import org.activiti.api.runtime.shared.query.Pageable;
... ... @@ -42,11 +41,6 @@ public class TaskServiceImpl implements TaskService {
42 41 @Resource
43 42 private RepositoryService repositoryService;
44 43  
45   -
46   - public TaskServiceImpl() {
47   -
48   - }
49   -
50 44 @Override
51 45 public PageResult<TodoTaskRespVO> getTodoTaskPage(TodoTaskPageReqVO pageReqVO) {
52 46 // TODO @jason:封装一个方法,用于转换成 activiti 的分页对象
... ... @@ -129,9 +123,11 @@ public class TaskServiceImpl implements TaskService {
129 123 List<TaskStepVO> steps = new ArrayList<>();
130 124 finished.forEach(instance -> {
131 125 TaskStepVO stepVO = TaskConvert.INSTANCE.convert(instance);
132   - stepVO.setStatus(1);
  126 + stepVO.setStatus(1); // TODO @jason:1 这个 magic number 要枚举起来。
  127 + // TODO @jason:可以考虑把 comments 读取后,在统一调用 convert 拼接。另外 Comment 是废弃的类,有没其它可以使用的哈?
133 128 List<Comment> comments = activitiTaskService.getTaskComments(instance.getTaskId());
134 129 if (!CollUtil.isEmpty(comments)) {
  130 + // TODO @jason:IDEA 在 t.getFullMessage() 有提示告警,可以解决下。
135 131 stepVO.setComment(Optional.ofNullable(comments.get(0)).map(t->t.getFullMessage()).orElse(""));
136 132 }
137 133 steps.add(stepVO);
... ...
yudao-framework/yudao-spring-boot-starter-security/src/main/java/cn/iocoder/yudao/framework/security/core/util/SecurityFrameworkUtils.java
... ... @@ -101,6 +101,7 @@ public class SecurityFrameworkUtils {
101 101 WebFrameworkUtils.setLoginUserType(request, loginUser.getUserType());
102 102 // TODO @jason:使用 userId 会不会更合适哈?
103 103 // TODO @芋道源码 该值被赋值给 user task 中assignee , username 显示更直白一点
  104 + // TODO @jason:有办法设置 userId,然后 activiti 有地方读取到 username 么?毕竟 username 只是 User 的登陆账号,并不能绝对像 userId 代表一个用户
104 105 org.activiti.engine.impl.identity.Authentication.setAuthenticatedUserId(loginUser.getUsername());
105 106 }
106 107  
... ...