<%@ page import="org.apache.commons.codec.digest.DigestUtils" %> <%@ page import="weaver.conn.RecordSet" %> <%@ page import="weaver.general.TimeUtil" %> <%@ page import="weaver.general.Util" %> <%@ page import="weaver.interfaces.dito.util.ReadExcel" %> <%@ page import="java.util.HashMap" %> <%@ page import="java.util.List" %> <%@ page import="java.util.Map" %> <%@ page import="java.util.Objects" %> <%-- User: wangj Design Ideas: --%> <%@ page contentType="text/html;charset=UTF-8" %> <% ReadExcel r = new ReadExcel(); RecordSet rs = new RecordSet(); int scount = 0; int fcount = 0; List> deptlists = r.readExcel("/whalecloud/cos", "organization.xlsx", 0, 0, 0); List> hrmlists = r.readExcel("/whalecloud/cos", "staff.xlsx", 0, 0, 0); if (Objects.nonNull(hrmlists)) { for (int i = 0; i < hrmlists.size(); i++) { Map h = hrmlists.get(i); //部门id String ORG_ID = Util.null2String(h.get("org_id")); String STAFF_CODE = Util.null2String(h.get("staff_code")); String pwd = "1"; String creator = "1"; String jobTitleId = "464"; String password = DigestUtils.md5Hex(pwd).toUpperCase(); //MD5加密 String STAFF_NAME = Util.null2String(h.get("staff_name")); Map res = getSubcompanyid1(deptlists,ORG_ID); String deptId = Util.null2String(res.get("deptid")); String subcompanyid1 = Util.null2String(res.get("subcompanyid1")); if("".equals(deptId)) continue; String E_MAIL = Util.null2String(h.get("e_mail")); String MOBILE_PHONE = Util.null2String(h.get("mobile_phone")); String STATUS_CD = Util.null2String(h.get("status_cd")); String status = "1"; if("1100".equals(STATUS_CD) || "1200".equals(STATUS_CD) || "1300".equals(STATUS_CD)){ status = "5"; } String STAFF_ID = Util.null2String(h.get("staff_id")); String systemlanguage = "8" ; String currentDate = TimeUtil.getCurrentDateString();//当前日期 String currentDateTime = TimeUtil.getCurrentTimeString(); //当前时间 String locationid = "2" ; String seclevel = "20" ; String createrid = "1" ; String lastmodid = "1" ; boolean flag = insertHrmresource( STAFF_CODE, password, STAFF_NAME, deptId, subcompanyid1, creator, E_MAIL, MOBILE_PHONE, jobTitleId, status, STAFF_ID, systemlanguage, currentDate, currentDateTime, locationid, seclevel, createrid, lastmodid); if(flag){ scount++; }else{ fcount++; } } } out.print("success:" + scount + ",false:" + fcount); %> <%! private Map getSubcompanyid1(List> lists, String id) { Map res = new HashMap<>(); RecordSet rs = new RecordSet(); String subcompanyid1 = ""; String deptid = ""; for (int i = 0; i < lists.size(); i++) { Map m = lists.get(i); String ORG_ID = m.get("org_id"); String ORG_CODE = m.get("org_code"); if (ORG_ID.equals(id)) { rs.execute("select id,subcompanyid1 from hrmdepartment where departmentcode = '" + ORG_CODE + "'"); while (rs.next()) { deptid = Util.null2String(rs.getString("id")); subcompanyid1 = Util.null2String(rs.getString("subcompanyid1")); res.put("deptid", deptid); res.put("subcompanyid1", subcompanyid1); } } } return res; } %> <%! private boolean insertHrmresource(String STAFF_CODE,String password,String STAFF_NAME,String deptId,String subcompanyid1,String creator,String E_MAIL,String MOBILE_PHONE,String jobTitleId,String status, String STAFF_ID,String systemlanguage,String currentDate,String currentDateTime,String locationid,String seclevel,String createrid,String lastmodid) { RecordSet rs = new RecordSet(); boolean flag = false; String loginid = ""; String sql = " select loginid from hrmresource where workcode=?" ; rs.executeQuery(sql,new Object[]{STAFF_CODE}); if(rs.next()){ loginid = Util.null2String(rs.getString("loginid")); } if(!"".equals(loginid)){ String userUpdateSql = " update hrmresource set lastname=?,departmentid=?,subcompanyid1=?," + " creater=?,email=?,mobile=?,jobtitle=?,status=?,dsporder=?,lastmoddate=?,modified=? where workcode=? "; flag = rs.executeUpdate(userUpdateSql,new Object[]{STAFF_NAME,deptId,subcompanyid1,creator,E_MAIL, MOBILE_PHONE,jobTitleId,status,STAFF_ID,currentDate,currentDateTime,STAFF_CODE}); }else{ rs.executeProc("HrmResourceMaxId_Get", ""); rs.next(); String id = "" + rs.getInt(1); String userInsertSql = " insert into hrmresource(id,loginid,password,workcode,lastname,departmentid,subcompanyid1," + "creater,email,mobile,jobtitle,status,dsporder,systemlanguage,createdate,lastmoddate,created,modified," + "locationid,seclevel,createrid,lastmodid) " + " values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)"; flag = rs.executeUpdate(userInsertSql,new Object[]{id,STAFF_CODE,password,STAFF_CODE,STAFF_NAME,deptId,subcompanyid1, creator,E_MAIL,MOBILE_PHONE,jobTitleId,status,STAFF_ID,systemlanguage,currentDate,currentDate,currentDateTime,currentDateTime, locationid,seclevel,createrid,lastmodid}); } return flag; } %>