You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
haojing/interface/hjkj/updateRoleUser.jsp

125 lines
4.2 KiB
Plaintext

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<%@ page import="weaver.conn.RecordSet" %>
<%@ page import="weaver.general.Util" %>
<%@ page import="weaver.interfaces.dito.util.ReadExcel" %>
<%@ page import="java.util.List" %>
<%@ page import="java.util.Map" %>
<%@ page import="java.util.Objects" %>
<%@ page import="java.util.UUID" %>
<%--
User: wangj
Design Ideas
--%>
<%@ page contentType="text/html;charset=UTF-8" %>
<%
ReadExcel r = new ReadExcel();
int scount = 0;
int fcount = 0;
List<Map<String, String>> rolelists = r.readExcel("/whalecloud/cos", "system_roles.xlsx", 0, 0, 0);
List<Map<String, String>> userlists = r.readExcel("/whalecloud/cos", "system_roles.xlsx", 0, 0, 0);
List<Map<String, String>> lists = r.readExcel("/whalecloud/cos", "system_user_role.xlsx", 0, 0, 0);
if (Objects.nonNull(lists)) {
for (int i = 0; i < lists.size(); i++) {
Map<String, String> m = lists.get(i);
String SYS_ROLE_ID = Util.null2String(m.get("SYS_ROLE_ID"));
String SYS_USER_ID = Util.null2String(m.get("SYS_USER_ID"));
String SYS_ROLE_CODE = getRoleCode(rolelists,SYS_ROLE_ID);
String SYS_USER_CODE = getUserCode(userlists,SYS_USER_ID);
if (!"".equals(SYS_ROLE_CODE) && !"".equals(SYS_USER_CODE)) {
boolean flag = insertRoleUser(SYS_ROLE_CODE, SYS_USER_CODE);
if (flag) {
scount++;
} else {
fcount++;
}
}
}
}
out.print("success:" + scount + ",false:" + fcount);
%>
<%!
private boolean insertRoleUser(String systemUserCode, String roleCode) {
boolean flag = false;
RecordSet rs = new RecordSet();
String userId = "";
String roleId = "";
String rolelevel = "2"; //总部=2;分部=1;部门=0
String resourcetype = "1"; //1=人力资源
String sql = " select id from hrmresource where loginid=?";
rs.executeQuery(sql, new Object[]{systemUserCode});
if (rs.next()) {
userId = Util.null2String(rs.getString("id"));
}
String queryRoleIdSql = "select id from hrmroles where ecology_pinyin_search=?";
rs.executeQuery(queryRoleIdSql, roleCode);
if (rs.next()) {
roleId = rs.getString("id");
}
if (!"".equals(userId) && !"".equals(roleId)) {
//查看是否已存在角色用户关系
String releationId = "";
String ifExistSql = "select id from hrmrolemembers where roleid=? and resourceid=?";
rs.executeQuery(ifExistSql, roleId, userId);
if (rs.next()) {
releationId = rs.getString("id");
}
if (!"".equals(releationId)) {
String delHrmrolemembersSql = " delete from hrmrolemembers where id = ?";
flag = rs.executeUpdate(delHrmrolemembersSql, releationId);
} else {
String insertHrmrolemembersSql = "insert into hrmrolemembers(roleid,resourceid,rolelevel,resourcetype,uuid) values(?,?,?,?,?)";
flag = rs.executeUpdate(insertHrmrolemembersSql, roleId, userId, rolelevel, resourcetype, UUID.randomUUID().toString());
}
}
return flag;
}
%>
<%!
private String getUserCode(List<Map<String, String>> lists, String id) {
String code = "";
RecordSet rs = new RecordSet();
for (int i = 0; i < lists.size(); i++) {
Map<String, String> m = lists.get(i);
String STAFF_ID = Util.null2String(m.get("STAFF_ID"));
String STAFF_CODE = Util.null2String(m.get("STAFF_CODE"));
if (STAFF_ID.equals(id)) {
code= STAFF_CODE;
}
}
return code;
}
%>
<%!
private String getRoleCode(List<Map<String, String>> lists, String id) {
String code = "";
RecordSet rs = new RecordSet();
for (int i = 0; i < lists.size(); i++) {
Map<String, String> m = lists.get(i);
String SYS_ROLE_ID = Util.null2String(m.get("SYS_ROLE_ID"));
String SYS_ROLE_CODE = Util.null2String(m.get("SYS_ROLE_CODE"));
if (SYS_ROLE_ID.equals(id)) {
code= SYS_ROLE_CODE;
}
}
return code;
}
%>