修改获取当前登录用户所在单位党委书记流程
修改为获取当前登录用户所在单位党委书记,若是机关就找出机关分下的党委书记。因为机关只有一个党委书记
This commit is contained in:
@@ -6,8 +6,10 @@ import com.budwk.app.flow.engine.core.Execution;
|
|||||||
import com.budwk.app.flow.engine.core.ServiceContext;
|
import com.budwk.app.flow.engine.core.ServiceContext;
|
||||||
import com.budwk.app.flow.engine.model.TaskModel;
|
import com.budwk.app.flow.engine.model.TaskModel;
|
||||||
import com.budwk.app.sys.models.Sys_role;
|
import com.budwk.app.sys.models.Sys_role;
|
||||||
|
import com.budwk.app.sys.models.Sys_unit;
|
||||||
import com.budwk.app.sys.models.Sys_user_role;
|
import com.budwk.app.sys.models.Sys_user_role;
|
||||||
import com.budwk.app.sys.services.SysRoleService;
|
import com.budwk.app.sys.services.SysRoleService;
|
||||||
|
import com.budwk.app.sys.views.View_user;
|
||||||
import com.budwk.app.web.commons.auth.utils.SecurityUtil;
|
import com.budwk.app.web.commons.auth.utils.SecurityUtil;
|
||||||
import org.nutz.dao.Cnd;
|
import org.nutz.dao.Cnd;
|
||||||
import org.nutz.dao.Dao;
|
import org.nutz.dao.Dao;
|
||||||
@@ -31,11 +33,23 @@ public class FlowUnitPartySecretaryHandler implements AssignmentHandler {
|
|||||||
SysRoleService sysRoleService = ServiceContext.find(SysRoleService.class);
|
SysRoleService sysRoleService = ServiceContext.find(SysRoleService.class);
|
||||||
Sys_role role = sysRoleService.getByCode(RoleConstant.UNIT_PARTY_SECRETARY);
|
Sys_role role = sysRoleService.getByCode(RoleConstant.UNIT_PARTY_SECRETARY);
|
||||||
|
|
||||||
List<Sys_user_role> roles = ServiceContext.find(Dao.class).query(
|
View_user user = ServiceContext.find(Dao.class).fetch(View_user.class, Cnd.where(View_user::getId, "=", SecurityUtil.getUserId()));
|
||||||
|
List<Sys_user_role> roles;
|
||||||
|
if(user.getUnionName().contains("机关")){
|
||||||
|
List<Sys_unit> unitList = ServiceContext.find(Dao.class).query(Sys_unit.class, Cnd.where(Sys_unit::getUnionId, "=", user.getUnionId()));
|
||||||
|
List<String> unitIds = unitList.stream().map(Sys_unit::getId).toList();
|
||||||
|
roles = ServiceContext.find(Dao.class).query(
|
||||||
|
Sys_user_role.class,
|
||||||
|
Cnd.where(Sys_user_role::getRoleId, "=", role.getId())
|
||||||
|
.and(Sys_user_role::getUnitId, "in", unitIds)
|
||||||
|
);
|
||||||
|
}else{
|
||||||
|
roles = ServiceContext.find(Dao.class).query(
|
||||||
Sys_user_role.class,
|
Sys_user_role.class,
|
||||||
Cnd.where(Sys_user_role::getRoleId, "=", role.getId())
|
Cnd.where(Sys_user_role::getRoleId, "=", role.getId())
|
||||||
.and(Sys_user_role::getUnitId, "=", unitId)
|
.and(Sys_user_role::getUnitId, "=", unitId)
|
||||||
);
|
);
|
||||||
|
}
|
||||||
|
|
||||||
if (Lang.isEmpty(roles)) {
|
if (Lang.isEmpty(roles)) {
|
||||||
throw new RuntimeException("当前登录用户所在单位未设置单位党委书记,请联系校工会进行设置。");
|
throw new RuntimeException("当前登录用户所在单位未设置单位党委书记,请联系校工会进行设置。");
|
||||||
@@ -45,7 +59,7 @@ public class FlowUnitPartySecretaryHandler implements AssignmentHandler {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getMessage() {
|
public String getMessage() {
|
||||||
return "获取当前登录用户所在单位党委书记";
|
return "获取当前登录用户所在单位党委书记,若是机关就找出机关分下的党委书记。因为机关只有一个党委书记";
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -17,7 +17,6 @@ layout("/layouts/platform.html"){
|
|||||||
label: 'name'
|
label: 'name'
|
||||||
}"
|
}"
|
||||||
node-key="id"
|
node-key="id"
|
||||||
default-expand-all
|
|
||||||
@node-click="treeNodeClick"
|
@node-click="treeNodeClick"
|
||||||
:filter-node-method="filterNode"
|
:filter-node-method="filterNode"
|
||||||
highlight-current
|
highlight-current
|
||||||
|
|||||||
Reference in New Issue
Block a user