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

<%@ page import="weaver.conn.RecordSet" %>
<%@ page import="weaver.general.Util" %>
2 years ago
<%@ 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;
}
%>