协会待办

This commit is contained in:
=
2025-03-11 08:55:04 +08:00
parent c338d21e61
commit 28cdf9f79d
10 changed files with 418 additions and 44 deletions
+44 -44
View File
@@ -57,50 +57,50 @@ public class MsgApi {
* @description
*/
public void sendMsg(List<String> channels, String loginNameStr, Integer mtype, String title, String content, String imageUrl,String link) {
try {
if (!Globals.MyConfig.getBoolean("SendMsg")) {
log.info("发送失败,消息暂未开启!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
return;
}
if (Globals.isEnv(Env.dev)) {
log.info("开发模式不允许发送短信!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
return;
}
if (StrUtil.isBlank(title)||StrUtil.isBlank(content) ||Lang.isEmpty(channels) || Lang.isEmpty(loginNameStr)) {
log.info("发送失败,缺少需要参数请检查!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
return;
}
String msgToken = getMsgToken();
NutMap map = new NutMap();
map.put("channel", String.join(",", channels));
//推送范围(1:普通模式;2:全体教师;3:全体学生;4:全体人员)
map.put("objScope", 1);
map.put("objIds", loginNameStr);
map.put("mtype", mtype);
map.put("sendStatus", 1);
map.put("title", title);
map.put("content", content);
map.put("imageUrl", imageUrl);
map.put("link", link);
HttpRequest request = HttpUtil.createPost(MSG_API)
.header("token", msgToken)
.body(Json.toJson(map));
JSONObject jsonObject = JSON.parseObject(request.execute().body());
int status = jsonObject.getInteger("code");
if (status == 200) {
log.info("发送成功>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
} else {
log.info("发送失败>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
throw new RuntimeException("Message sending failed with status code: " + status + ", Message: " + jsonObject.getString("message"));
}
} catch (Exception e) {
e.printStackTrace();
}
// try {
// if (!Globals.MyConfig.getBoolean("SendMsg")) {
// log.info("发送失败,消息暂未开启!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
// return;
// }
//
// if (Globals.isEnv(Env.dev)) {
// log.info("开发模式不允许发送短信!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
// return;
// }
//
// if (StrUtil.isBlank(title)||StrUtil.isBlank(content) ||Lang.isEmpty(channels) || Lang.isEmpty(loginNameStr)) {
// log.info("发送失败,缺少需要参数请检查!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
// return;
// }
//
// String msgToken = getMsgToken();
// NutMap map = new NutMap();
// map.put("channel", String.join(",", channels));
// //推送范围(1:普通模式;2:全体教师;3:全体学生;4:全体人员)
// map.put("objScope", 1);
// map.put("objIds", loginNameStr);
// map.put("mtype", mtype);
// map.put("sendStatus", 1);
// map.put("title", title);
// map.put("content", content);
// map.put("imageUrl", imageUrl);
// map.put("link", link);
//
// HttpRequest request = HttpUtil.createPost(MSG_API)
// .header("token", msgToken)
// .body(Json.toJson(map));
// JSONObject jsonObject = JSON.parseObject(request.execute().body());
// int status = jsonObject.getInteger("code");
//
// if (status == 200) {
// log.info("发送成功>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
// } else {
// log.info("发送失败>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
// throw new RuntimeException("Message sending failed with status code: " + status + ", Message: " + jsonObject.getString("message"));
// }
// } catch (Exception e) {
// e.printStackTrace();
// }
}
@@ -5,16 +5,22 @@ import io.v.nutz.base.annontation.ViReturn;
import io.v.nutz.base.result.Result;
import io.v.nutz.base.utils.DateUtil;
import io.v.nutz.base.utils.Roles;
import io.v.nutz.base.utils.Vi;
import io.v.nutz.sys.constant.club.ClubRegistAuditState;
import io.v.nutz.sys.controllers.platform.sys.handler.ClubRegisterApplyToDoHandler;
import io.v.nutz.sys.models.*;
import io.v.nutz.sys.services.SysClubService;
import io.v.nutz.sys.services.SysDictService;
import io.v.nutz.web.commons.controller.ViCommonCon;
import io.v.nutz.web.commons.utils.ShiroUtil;
import io.v.nutz.zhgh.staffmanage.member.handle.MemberApplyToDoHandler;
import io.v.nutz.zhgh.staffmanage.member.service.MemberCommonService;
import org.apache.shiro.authz.annotation.RequiresAuthentication;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.nutz.dao.Cnd;
import org.nutz.dao.Dao;
import org.nutz.dao.Sqls;
import org.nutz.dao.sql.Sql;
import org.nutz.ioc.loader.annotation.Inject;
import org.nutz.ioc.loader.annotation.IocBean;
import org.nutz.lang.Lang;
@@ -47,6 +53,9 @@ public class ClubRegistApplyController {
@Inject
private SysDictService sysDictService;
@Inject
private MemberCommonService memberCommonService;
@Inject
private Dao dao;
@@ -94,6 +103,31 @@ public class ClubRegistApplyController {
club.setCreate_time(DateUtil.getDateTime());
Sys_club sysClub = sysClubService.insertWith(club, "sponsors");
// 审核流程开始
ClubRegisterApplyToDoHandler.START_PROCESS.exec(club, null);
if (club.getSponsorType() == 1){
Sql sql = Sqls.create("""
SELECT
u.loginname,
u.username
FROM
`sys_user_role` userRole
LEFT JOIN sys_role role ON role.id = userRole.roleId
LEFT JOIN `user` u ON u.id = userRole.userId
WHERE
role.`code` = 'BranchUnionMemberAdmin' and u.unionid = @unionId
group by u.loginname
""").setParam("unionId", Vi.getUnionId());
List<NutMap> list = memberCommonService.listMap(sql);
List<String> unionLeaderLoginNames = list.stream().map(v -> v.getString("loginname")).toList();
//分工会审核
ClubRegisterApplyToDoHandler.CREATE_UNION_TASK.exec(club, NutMap.NEW().addv("unionLeaderLoginNames", unionLeaderLoginNames));
}else{
//校工会办公室主管审核
ClubRegisterApplyToDoHandler.CREATE_XT_SCHOOL_TASK.exec(club, null);
}
//插入新建协会时填入的理事机构
List<Sys_club_user> clubUsers = new ArrayList<>();
@@ -6,15 +6,18 @@ import io.v.nutz.base.model.Audit;
import io.v.nutz.base.query.PageForm;
import io.v.nutz.base.utils.Vi;
import io.v.nutz.sys.constant.club.ClubRegistAuditState;
import io.v.nutz.sys.controllers.platform.sys.handler.ClubRegisterApplyToDoHandler;
import io.v.nutz.sys.models.Sys_club;
import io.v.nutz.sys.services.SysClubService;
import io.v.nutz.web.commons.utils.ShiroUtil;
import io.v.nutz.zhgh.staffmanage.member.handle.MemberApplyToDoHandler;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.nutz.dao.Chain;
import org.nutz.dao.Cnd;
import org.nutz.dao.Dao;
import org.nutz.ioc.loader.annotation.Inject;
import org.nutz.ioc.loader.annotation.IocBean;
import org.nutz.lang.util.NutMap;
import org.nutz.mvc.annotation.At;
import org.nutz.mvc.annotation.Ok;
import org.nutz.mvc.annotation.Param;
@@ -78,10 +81,16 @@ public class ClubUnitPartAuditController {
if (pass == 1) {
club.setState(ClubRegistAuditState.UNIT_PART_REJECTED);
//分工会审核拒绝
ClubRegisterApplyToDoHandler.REFUSE_UNION_TASK.exec(club, NutMap.NEW().addv("nodeName","分工会拒绝"));
} else if (pass == 2) {
club.setState(ClubRegistAuditState.UNIT_PART_BACK_MODIFY);
//退回修改
ClubRegisterApplyToDoHandler.CREATE_APPLY_RE_MODIFY_TASK.exec(club, NutMap.NEW().addv("nodeName","分工会退回修改"));
} else {
club.setState(ClubRegistAuditState.XT_READY);
//校办公室主管审核
ClubRegisterApplyToDoHandler.CREATE_XT_SCHOOL_TASK.exec(club, null);
}
club.setUnitPartAuditId(audit.getId());
dao.updateIgnoreNull(club);
@@ -6,6 +6,7 @@ import io.v.nutz.base.utils.Roles;
import io.v.nutz.base.model.Audit;
import io.v.nutz.base.query.PageForm;
import io.v.nutz.sys.constant.club.ClubRegistAuditState;
import io.v.nutz.sys.controllers.platform.sys.handler.ClubRegisterApplyToDoHandler;
import io.v.nutz.sys.models.Sys_club;
import io.v.nutz.sys.services.SysClubService;
import io.v.nutz.web.commons.utils.ShiroUtil;
@@ -16,6 +17,7 @@ import org.nutz.dao.Cnd;
import org.nutz.dao.Dao;
import org.nutz.ioc.loader.annotation.Inject;
import org.nutz.ioc.loader.annotation.IocBean;
import org.nutz.lang.util.NutMap;
import org.nutz.mvc.annotation.At;
import org.nutz.mvc.annotation.Ok;
import org.nutz.mvc.annotation.Param;
@@ -76,10 +78,16 @@ public class ClubXTAuditController {
if (pass == 1) {
club.setState(ClubRegistAuditState.XT_REJECTED);
//校工会办公室主管审核拒绝
ClubRegisterApplyToDoHandler.REFUSE_UNION_TASK.exec(club, NutMap.NEW().addv("nodeName","校工会办公室主管拒绝"));
} else if (pass == 2) {
club.setState(ClubRegistAuditState.XT_BACK_MODIFY);
//退回修改
ClubRegisterApplyToDoHandler.CREATE_APPLY_RE_MODIFY_TASK.exec(club, NutMap.NEW().addv("nodeName","校办公室主管退回修改"));
} else {
club.setState(ClubRegistAuditState.XGH_READY);
//校工会审核
ClubRegisterApplyToDoHandler.CREATE_SCHOOL_TASK.exec(club, null);
}
club.setXtAuditId(audit.getId());
club.setSchoolReplyFile(sys_club.getSchoolReplyFile());
@@ -9,6 +9,7 @@ import io.v.nutz.base.utils.Roles;
import io.v.nutz.base.model.Audit;
import io.v.nutz.base.query.PageForm;
import io.v.nutz.sys.constant.club.ClubRegistAuditState;
import io.v.nutz.sys.controllers.platform.sys.handler.ClubRegisterApplyToDoHandler;
import io.v.nutz.sys.models.*;
import io.v.nutz.sys.services.SysClubService;
import io.v.nutz.sys.services.SysRoleService;
@@ -22,6 +23,7 @@ import org.nutz.dao.Dao;
import org.nutz.ioc.loader.annotation.Inject;
import org.nutz.ioc.loader.annotation.IocBean;
import org.nutz.lang.Lang;
import org.nutz.lang.util.NutMap;
import org.nutz.mvc.annotation.At;
import org.nutz.mvc.annotation.Ok;
import org.nutz.mvc.annotation.Param;
@@ -91,12 +93,17 @@ public class ClubXghReplyController {
club.setState(ClubRegistAuditState.XGH_REJECTED);
dao.clear(Sys_user_role.class, Cnd.where("stid", "=", clubId)
.and("roleid", "in", Lang.array(Roles.club01, Roles.club02, Roles.club03, Roles.club04)));
ClubRegisterApplyToDoHandler.REFUSE_UNION_TASK.exec(club, NutMap.NEW().addv("nodeName","校工会批复拒绝"));
} else if (pass == 2) {
club.setState(ClubRegistAuditState.XGH_BACK_MODIFY);
dao.clear(Sys_user_role.class, Cnd.where("stid", "=", clubId)
.and("roleid", "in", Lang.array(Roles.club01, Roles.club02, Roles.club03, Roles.club04)));
//退回修改
ClubRegisterApplyToDoHandler.CREATE_APPLY_RE_MODIFY_TASK.exec(club, NutMap.NEW().addv("nodeName","校工会批复退回修改"));
} else {
club.setState(ClubRegistAuditState.SCHOOL_PASS);
//审核通过
ClubRegisterApplyToDoHandler.COMPLETE_PROCESS.exec(club, null);
//审核通过加角色
List<Sys_user_role> userRoles = new ArrayList<>();
List<Sys_club_user> sysClubUsers = dao.query(Sys_club_user.class,
@@ -0,0 +1,292 @@
package io.v.nutz.sys.controllers.platform.sys.handler;
import io.v.nutz.base.utils.ViResource;
import io.v.nutz.sys.models.Sys_club;
import io.v.nutz.sys.models.Sys_role;
import io.v.nutz.sys.models.User;
import io.v.nutz.sys.services.SysLocalProcessService;
import io.v.nutz.sys.services.SysRoleService;
import io.v.nutz.sys.services.SysUserRoleService;
import io.v.nutz.sys.services.SysUserService;
import io.v.nutz.sys.services.impl.SysLocalProcessServiceImpl;
import io.v.nutz.sys.services.impl.SysRoleServiceImpl;
import io.v.nutz.sys.services.impl.SysUserRoleServiceImpl;
import io.v.nutz.web.commons.utils.ShiroUtil;
import io.v.nutz.zhgh.staffmanage.member.model.MemberApplyRecord;
import io.v.nutz.zhgh.staffmanage.member.service.MemberCommonService;
import io.v.nutz.zhgh.staffmanage.member.service.impl.MemberCommonServiceImpl;
import lombok.Getter;
import org.nutz.dao.Cnd;
import org.nutz.dao.Dao;
import org.nutz.dao.Sqls;
import org.nutz.dao.sql.Sql;
import org.nutz.lang.util.NutMap;
import java.util.ArrayList;
import java.util.List;
/**
* @Author: JyuHsin
* @Date: 2025/3/10 14:50
* @Version: v1.0.0
* @Description: 协会注册申请流程
**/
@Getter
public enum ClubRegisterApplyToDoHandler {
/**
* 流程开始
*/
START_PROCESS() {
@Override
public void exec(Sys_club club, NutMap extra) {
localProcessService.startProcess(
"【协会注册申请】" + club.getName(),
"CLUB_APPLY@" + club.getId(),
"",
club.getUserid(),
"/platform/sys/club/clubMyApply",
"/platform/sys/club/clubMyApply"
);
}
},
/**
* 审核拒绝,重新修改申请
*/
CREATE_APPLY_RE_MODIFY_TASK() {
@Override
public void exec(Sys_club club, NutMap extra) {
Sql sql = Sqls.fetchString(Sqls.create("select loginname from sys_user where id = @id").setParam("id", club.getConcatPerson()).toString());
dao.execute(sql);
String loginname = sql.getString();
localProcessService.createTask(
"CLUB_APPLY@" + club.getId(),
"CLUB_APPLY_BACK",
"退回重新修改",
ShiroUtil.getUserId(),
List.of(loginname),
"/platform/sys/club/clubMyApply",
"/platform/sys/club/clubMyApply",
"/platform/sys/club/clubMyApply",
"/platform/sys/club/clubMyApply"
);
localProcessService.updateProcessNodeName("CLUB_APPLY@" + club.getId(), extra.getString("nodeName"));
}
},
/**
* 退回修改完成后提交
*/
COMPLETE_APPLY_RE_MODIFY_TASK() {
@Override
public void exec(Sys_club club, NutMap extra) {
String nodeName = extra.getString("nodeName");
localProcessService.completeTask(
"CLUB_APPLY_BACK",
"CLUB_APPLY@" + club.getId(),
ShiroUtil.getUserId(),
nodeName
);
localProcessService.updateProcessNodeName("CLUB_APPLY@" + club.getId(), nodeName);
}
},
/**
* 创建分工会任务
*/
CREATE_UNION_TASK() {
@Override
public void exec(Sys_club club, NutMap extra) {
List<String> unionLeaderLoginNames = extra.getAsList("unionLeaderLoginNames", String.class);
localProcessService.createTask(
"CLUB_APPLY@" + club.getId(),
"CLUB_APPLY_UNIT_AUDIT",
"分工会审核",
ShiroUtil.getUserId(),
unionLeaderLoginNames,
"/platform/sys/club/unitPartAudit",
"/platform/sys/club/unitPartAudit",
"/platform/sys/club/unitPartAudit",
"/platform/sys/club/unitPartAudit"
);
localProcessService.updateProcessNodeName("CLUB_APPLY@" + club.getId(), "分工会审核");
}
},
/**
* 分工会完成
*/
COMPLETE_UNION_TASK() {
@Override
public void exec(Sys_club club, NutMap extra) {
String nodeName = extra.getString("nodeName");
localProcessService.completeTask(
"CLUB_APPLY_UNIT_AUDIT",
"CLUB_APPLY@" + club.getId(),
ShiroUtil.getUserId(),
nodeName
);
localProcessService.updateProcessNodeName("CLUB_APPLY@" + club.getId(), nodeName);
}
},
/**
* 创建校工会办公室主任任务
*/
CREATE_XT_SCHOOL_TASK() {
@Override
public void exec(Sys_club club, NutMap extra) {
// 获取校工会办公室主任xcywt
Sys_role sysRole = sysRoleService.getByCode("xcywt");
List<String> assignments = sysUserRoleService.queryRoleUserLogin(sysRole.getId());
localProcessService.createTask(
"CLUB_APPLY@" + club.getId(),
"MEMBER_APPLY_TX_SCHOOL_AUDIT",
"校工会办公室主任审核",
ShiroUtil.getUserId(),
assignments,
"/platform/sys/club/xtAudit",
"/platform/sys/club/xtAudit",
"/platform/sys/club/xtAudit",
"/platform/sys/club/xtAudit"
);
localProcessService.updateProcessNodeName("CLUB_APPLY@" + club.getId(), "校工会办公室主任审核");
}
},
/**
* 校工会办公室主任完成
*/
COMPLETE_XT_SCHOOL_TASK() {
@Override
public void exec(Sys_club club, NutMap extra) {
String nodeName = extra.getString("nodeName");
localProcessService.completeTask(
"MEMBER_APPLY_TX_SCHOOL_AUDIT",
"MEMBER_APPLY@" + club.getId(),
ShiroUtil.getUserId(),
nodeName
);
localProcessService.updateProcessNodeName("CLUB_APPLY@" + club.getId(), nodeName);
}
},
/**
* 创建校工会任务
*/
CREATE_SCHOOL_TASK() {
@Override
public void exec(Sys_club club, NutMap extra) {
// 获取校工会会员管理员
Sys_role sysRole = sysRoleService.getByCode("SchoolUnionAdmin");
List<String> assignments = sysUserRoleService.queryRoleUserLogin(sysRole.getId());
localProcessService.createTask(
"CLUB_APPLY@" + club.getId(),
"MEMBER_APPLY_TX_SCHOOL_AUDIT",
"校工会审核",
ShiroUtil.getUserId(),
assignments,
"/platform/sys/club/xtAudit",
"/platform/sys/club/xtAudit",
"/platform/sys/club/xtAudit",
"/platform/sys/club/xtAudit"
);
localProcessService.updateProcessNodeName("CLUB_APPLY@" + club.getId(), "校工会审核");
}
},
/**
* 校工会完成
*/
COMPLETE_SCHOOL_TASK() {
@Override
public void exec(Sys_club club, NutMap extra) {
String nodeName = extra.getString("nodeName");
localProcessService.completeTask(
"MEMBER_APPLY_TX_SCHOOL_AUDIT",
"MEMBER_APPLY@" + club.getId(),
ShiroUtil.getUserId(),
nodeName
);
localProcessService.updateProcessNodeName("CLUB_APPLY@" + club.getId(), nodeName);
}
},
/**
* 创建协会确认任务
*/
CREATE_CLUB_CONFIRM_TASK() {
@Override
public void exec(Sys_club club, NutMap extra) {
// 获取校工会会员管理员
List<String> schoolLeaderLoginNames = memberService.getSchoolOrBranchUnionMemberAdminLoginNames("school", ShiroUtil.getUserId());
localProcessService.createTask(
"CLUB_APPLY@" + club.getId(),
"MEMBER_APPLY_CONFIRM_AUDIT",
"协会确认",
ShiroUtil.getUserId(),
schoolLeaderLoginNames,
"/platform/sys/club/clubConfirm",
"/platform/sys/club/clubConfirm",
"/platform/sys/club/clubConfirm",
"/platform/sys/club/clubConfirm"
);
localProcessService.updateProcessNodeName("CLUB_APPLY@" + club.getId(), "协会确认");
}
},
/**
* 协会确认完成
*/
COMPLETE_CLUB_CONFIRM_TASK() {
@Override
public void exec(Sys_club club, NutMap extra) {
String nodeName = extra.getString("nodeName");
localProcessService.completeTask(
"CLUB_APPLY_CONFIRM_AUDIT",
"CLUB_APPLY@" + club.getId(),
ShiroUtil.getUserId(),
nodeName
);
localProcessService.updateProcessNodeName("CLUB_APPLY@" + club.getId(), nodeName);
}
},
/**
* 审核拒绝
*/
REFUSE_UNION_TASK(){
@Override
public void exec(Sys_club club, NutMap extra) {
localProcessService.refuseProcess("CLUB_APPLY@" + club.getId(),extra.getString("nodeName"));
}
},
/**
* 流程结束
*/
COMPLETE_PROCESS() {
@Override
public void exec(Sys_club club, NutMap extra) {
localProcessService.completeProcess("CLUB_APPLY@" + club.getId());
localProcessService.updateProcessNodeName("CLUB_APPLY@" + club.getId(), "审核通过");
}
};
public abstract void exec(Sys_club club, NutMap extra);
public Dao dao = ViResource.dao;
public MemberCommonService memberService = ViResource.ioc.get(MemberCommonServiceImpl.class);
public SysRoleService sysRoleService = ViResource.ioc.get(SysRoleServiceImpl.class);
public SysUserRoleService sysUserRoleService = ViResource.ioc.get(SysUserRoleServiceImpl.class);
public SysLocalProcessService localProcessService = ViResource.ioc.get(SysLocalProcessServiceImpl.class);
}
@@ -91,6 +91,8 @@ public interface SysRoleService extends BaseService<Sys_role> {
*/
Pagination userSearch(String roleId, String keyword, boolean isAdmin, Sys_unit sysUnit);
Sys_role getByCode(String code);
/**
* 清空缓存
*/
@@ -3,10 +3,13 @@ package io.v.nutz.sys.services;
import io.v.nutz.base.service.BaseService;
import io.v.nutz.sys.models.Sys_user_role;
import java.util.List;
/**
* 何鹏飞
*
* @Date:Created in 17:14 2019/5/7
*/
public interface SysUserRoleService extends BaseService<Sys_user_role> {
List<String> queryRoleUserLogin(String id);
}
@@ -1,5 +1,7 @@
package io.v.nutz.sys.services.impl;
import cn.hutool.core.lang.Assert;
import cn.hutool.core.util.ObjectUtil;
import io.v.nutz.base.constant.RedisConstant;
import io.v.nutz.base.page.Pagination;
import io.v.nutz.base.service.impl.BaseServiceImpl;
@@ -187,6 +189,13 @@ public class SysRoleServiceImpl extends BaseServiceImpl<Sys_role> implements Sys
return this.listPage(1, 10, sql);
}
@Override
public Sys_role getByCode(String code) {
Assert.notBlank(code);
Sys_role role = fetch(Cnd.where("code", "=", code));
return role;
}
@CacheRemoveAll
public void clearCache() {
@@ -1,11 +1,15 @@
package io.v.nutz.sys.services.impl;
import io.v.nutz.base.service.impl.BaseServiceImpl;
import io.v.nutz.sys.models.Sys_user;
import io.v.nutz.sys.models.Sys_user_role;
import io.v.nutz.sys.services.SysUserRoleService;
import org.nutz.dao.Cnd;
import org.nutz.dao.Dao;
import org.nutz.ioc.loader.annotation.IocBean;
import java.util.List;
/**
* 何鹏飞
*
@@ -16,4 +20,10 @@ public class SysUserRoleServiceImpl extends BaseServiceImpl<Sys_user_role> imple
public SysUserRoleServiceImpl(Dao dao) {
super(dao);
}
@Override
public List<String> queryRoleUserLogin(String id) {
List<String> userIdList = this.dao().query(Sys_user_role.class, Cnd.NEW().and("roleId", "=", id)).stream().map(sysUserRole -> sysUserRole.getUserId()).toList();
return this.dao().query(Sys_user.class, Cnd.NEW().and("id", "in", userIdList)).stream().map(v -> v.getLoginname()).toList();
}
}