commit
This commit is contained in:
+17
-3
@@ -1,8 +1,12 @@
|
||||
package com.budwk.app.flow.handler;
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.hutool.json.JSON;
|
||||
import cn.hutool.json.JSONObject;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.budwk.app.base.constant.RoleConstant;
|
||||
import com.budwk.app.base.exception.BaseException;
|
||||
import com.budwk.app.flow.constant.FlowConst;
|
||||
import com.budwk.app.flow.engine.AssignmentHandler;
|
||||
import com.budwk.app.flow.engine.core.Execution;
|
||||
import com.budwk.app.flow.engine.core.ServiceContext;
|
||||
@@ -10,6 +14,10 @@ import com.budwk.app.flow.engine.model.TaskModel;
|
||||
import com.budwk.app.sys.models.Sys_user;
|
||||
import com.budwk.app.sys.models.Sys_user_role;
|
||||
import com.budwk.app.web.controllers.open.commons.service.CommonService;
|
||||
import com.budwk.app.zhgh.club.model.SysClubManager;
|
||||
import org.nutz.json.Json;
|
||||
import org.nutz.lang.Lang;
|
||||
import org.nutz.lang.util.NutMap;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -19,14 +27,20 @@ import java.util.List;
|
||||
public class FlowClubPresidentByArgsAssignmentHandler implements AssignmentHandler {
|
||||
@Override
|
||||
public List<String> assign(TaskModel model, Execution execution) {
|
||||
String clubId = execution.getArgs().getStr("clubId");
|
||||
if (StrUtil.isBlank(clubId)) {
|
||||
String clubId = execution.getArgs().getStr("clubId");
|
||||
|
||||
if (StrUtil.isBlank(clubId)) {
|
||||
throw new BaseException("参数 clubId 不能为空");
|
||||
}
|
||||
|
||||
CommonService commonService = ServiceContext.find(CommonService.class);
|
||||
List<Sys_user> users = commonService.findUserInfoByRoleCode(Sys_user_role::getClubId, clubId, RoleConstant.CLUB_PRESIDENT);
|
||||
return users.stream().map(Sys_user::getId).toList();
|
||||
|
||||
if(Lang.isEmpty(users)) {
|
||||
throw new BaseException("未查询到相关审批人");
|
||||
}
|
||||
|
||||
return users.stream().map(Sys_user::getId).toList();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -5,6 +5,7 @@ import com.budwk.app.base.service.BaseService;
|
||||
import com.budwk.app.sys.models.Sys_user;
|
||||
import com.budwk.app.sys.models.Sys_user_role;
|
||||
import org.nutz.dao.Cnd;
|
||||
import org.nutz.dao.util.lambda.PFun;
|
||||
|
||||
import javax.validation.Valid;
|
||||
import java.util.List;
|
||||
@@ -62,7 +63,7 @@ public interface CommonService extends BaseService {
|
||||
*/
|
||||
List<String> findUserRoleByRoleCode(@Valid List<String> roleCode);
|
||||
|
||||
List<Sys_user> findUserInfoByRoleCode(Function<Sys_user_role, String> column, String columnValue, RoleConstant... roleConstants);
|
||||
<T> List<Sys_user> findUserInfoByRoleCode(PFun<T, ?> name, String columnValue, RoleConstant... roleConstants);
|
||||
|
||||
|
||||
/**
|
||||
|
||||
+11
-2
@@ -14,10 +14,13 @@ import org.nutz.dao.Cnd;
|
||||
import org.nutz.dao.Dao;
|
||||
import org.nutz.dao.Sqls;
|
||||
import org.nutz.dao.sql.Sql;
|
||||
import org.nutz.dao.util.lambda.LambdaQuery;
|
||||
import org.nutz.dao.util.lambda.PFun;
|
||||
import org.nutz.ioc.loader.annotation.Inject;
|
||||
import org.nutz.ioc.loader.annotation.IocBean;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.function.Function;
|
||||
@@ -85,9 +88,15 @@ public class CommonServiceImpl extends BaseServiceImpl implements CommonService
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Sys_user> findUserInfoByRoleCode(Function<Sys_user_role, String> column, String columnValue, RoleConstant... roleConstant) {
|
||||
public <T> List<Sys_user> findUserInfoByRoleCode(PFun<T, ?> name, String columnValue, RoleConstant... roleConstant) {
|
||||
String column = LambdaQuery.resolve(name);
|
||||
|
||||
return null;
|
||||
List<String> list = Arrays.stream(roleConstant).map(o -> {
|
||||
Sys_role role = sysRoleService.getByCode(o.name());
|
||||
return role.getId();
|
||||
}).toList();
|
||||
|
||||
return findUserInfoByRoleCode(column, columnValue, list);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+1
@@ -128,6 +128,7 @@ public class ClubUserJoinApplyController {
|
||||
Dict args = Dict.create();
|
||||
args.set(FlowConst.SUBMIT_TYPE, ProcessSubmitTypeEnum.APPLY.getCode());
|
||||
args.set(FlowConst.FORM_DATA, clubUserApply);
|
||||
args.set("clubId", clubUserApply.getClubId());
|
||||
ProcessInstance instance = flowEngine.startProcessInstanceByKey("XHRH", clubUserApply.getId(), SecurityUtil.getUserId(), args);
|
||||
|
||||
// 自动完成第一个申请任务
|
||||
|
||||
Reference in New Issue
Block a user