机缘
主要是为了记录自己以前没接触过的然后自主学习一些技术框架。
收获
记录一篇会让自己的记忆更加深刻,并且可以收集一些典型的问题分享给大家。
日常
一般是在工作中需要新的技术时。自主学习之后进行记录。
成就
这是最近写的一个activiti的一个任务监听器的代码。
@SneakyThrows
@Override
public void notify(DelegateExecution delegateExecution) {
SpringSecurityActiveUser activeUser = SpringSecurityUtils.getCurrentActiveUser();
OrgEntity groupEntity = activeUser.getGroupEntity();
List<RoleEntity> sysRoles = activeUser.getSysRoles();
runtimeService.setVariableLocal(delegateExecution.getProcessInstanceId(),"startAssignee",activeUser.getUserId().toString());
if(groupEntity!=null){//有小组id
if(sysRoles.stream().anyMatch(roleEntity -> roleEntity.getRoleId() == RoleConstants.ORG_GROUP_LEADER)){//是部门主管
runtimeService.setVariableLocal(delegateExecution.getProcessInstanceId(),"lczt","2");
//根据部门id查询部门经理
UserEntity userEntity = this.performanceAppraisalService.getOrgManageByOrgId(activeUser.getOrgEntity().getOrgId(), RoleConstants.ORG_MANAGER);
runtimeService.setVariableLocal(delegateExecution.getProcessInstanceId(),"managerAssignee",userEntity.getUserId().toString());
}else{
runtimeService.setVariableLocal(delegateExecution.getProcessInstanceId(),"lczt","1");
//根据部门id查询部门经理
UserEntity userEntity = this.performanceAppraisalService.getOrgManageByOrgId(activeUser.getOrgEntity().getOrgId(), RoleConstants.ORG_MANAGER);
runtimeService.setVariableLocal(delegateExecution.getProcessInstanceId(),"managerAssignee",userEntity.getUserId().toString());
//根据部门id和组id查询部门主管
UserEntity userEntity2 = this.performanceAppraisalService.getOrgGroupLeaderByOrgIdAndGroupId(activeUser.getOrgEntity().getOrgId(),groupEntity.getOrgId(), RoleConstants.ORG_GROUP_LEADER);
runtimeService.setVariableLocal(delegateExecution.getProcessInstanceId(),"supervisorAssignee",userEntity2.getUserId().toString());
}
}else{//无小组id
if(sysRoles.stream().anyMatch(roleEntity -> roleEntity.getRoleId() == RoleConstants.ORG_MANAGER)||sysRoles.stream().anyMatch(roleEntity -> roleEntity.getRoleId() == RoleConstants.ORG_DEPUTY_MANAGER)) {//是部门经理或者副部门经理
runtimeService.setVariableLocal(delegateExecution.getProcessInstanceId(),"lczt","3");
}else{
runtimeService.setVariableLocal(delegateExecution.getProcessInstanceId(),"lczt","2");
//根据部门id查询部门经理
UserEntity userEntity = this.performanceAppraisalService.getOrgManageByOrgId(activeUser.getOrgEntity().getOrgId(), RoleConstants.ORG_MANAGER);
runtimeService.setVariableLocal(delegateExecution.getProcessInstanceId(),"managerAssignee",userEntity.getUserId().toString());
}
}
}
憧憬
能更多的学习更多的记录,一起成长!