From 4ba35bbb78f9c6ac186a4f209f7d5fca8a8ea4c1 Mon Sep 17 00:00:00 2001 From: shilei Date: Tue, 11 Oct 2022 16:53:18 +0800 Subject: [PATCH] =?UTF-8?q?#EC-HJ-5#=20=E7=A7=BB=E5=8A=A8=E7=AB=AF?= =?UTF-8?q?=E8=B7=B3=E8=BD=AC=E5=9C=B0=E5=9D=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- interface/mobilelogin/loginsso.jsp | 217 +++++++++++++++++++++++++++++ 1 file changed, 217 insertions(+) create mode 100644 interface/mobilelogin/loginsso.jsp diff --git a/interface/mobilelogin/loginsso.jsp b/interface/mobilelogin/loginsso.jsp new file mode 100644 index 00000000..52be7da1 --- /dev/null +++ b/interface/mobilelogin/loginsso.jsp @@ -0,0 +1,217 @@ +<%@ page language="java" contentType="text/html; charset=UTF-8" %> +<%@ page import="weaver.general.Util,weaver.hrm.*" %> +<%@ page import="weaver.general.BaseBean" %> +<%@ page import="java.net.URLDecoder" %> + +<% +// response.setHeader("Cache-Control","no-cache"); //HTTP 1.1 +// response.setHeader("Pragma","no-cache"); //HTTP 1.0 +// response.setDateHeader ("Expires", 0); //prevents caching at the proxy server +%> +<% + + BaseBean bb = new BaseBean(); + bb.writeLog("loginsso.jsp"); + + String em_auth_usercode = Util.null2String(request.getParameter("em_auth_usercode")); + String forwardurl = Util.null2String(request.getParameter("forwardurl")); + + + if(!"".equals(forwardurl)){ + forwardurl = URLDecoder.decode(forwardurl,"UTF-8"); + }else{ + forwardurl = "/bpm/spa/coms/static4mobile/index.html#/menu-preview?id=appDefaultPage&checkAccess=1"; + } + + + BaseBean log=new BaseBean(); + log.writeLog("em_auth_usercode = "+em_auth_usercode); + + String user_id = "" ; + + if("admin".equals(em_auth_usercode)){ + String sql = " select id from hrmresourcemanager where loginid=?" ; + bb.writeLog("sql:"+sql); + rs.executeQuery(sql,new Object[]{"sysadmin"}); + if(rs.next()) { + user_id = Util.null2String(rs.getString("id")); + } + }else{ + String sql = " select id from hrmresource where loginid=?" ; + bb.writeLog("sql:"+sql); + rs.executeQuery(sql,new Object[]{em_auth_usercode}); + if(rs.next()) { + user_id = Util.null2String(rs.getString("id")); + } + } + + + String languageidweaver = "8"; + if(!"".equals(user_id)) + { + User loginuser = (User) request.getSession(true).getAttribute("weaver_user@bean"); + if (loginuser == null) { + if("admin".equals(em_auth_usercode)) + { + String sql = " select * from hrmresource where loginid=?"; + bb.writeLog("sql:" + sql); + rs.executeQuery(sql,new Object[]{"sysadmin"}); + }else{ + String sql = " select * from hrmresource where loginid=?"; + bb.writeLog("sql:" + sql); + rs.executeQuery(sql, new Object[]{em_auth_usercode}); + } + + if (rs.next()) { + User user = new User(); + user.setUid(rs.getInt("id")); + user.setLoginid(rs.getString("loginid")); + user.setFirstname(rs.getString("firstname")); + user.setLastname(rs.getString("lastname")); + user.setAliasname(rs.getString("aliasname")); + user.setTitle(rs.getString("title")); + user.setTitlelocation(rs.getString("titlelocation")); + user.setSex(rs.getString("sex")); + user.setPwd(rs.getString("password")); + languageidweaver = rs.getString("systemlanguage"); + user.setLanguage(Util.getIntValue(languageidweaver, 0)); + + user.setTelephone(rs.getString("telephone")); + user.setMobile(rs.getString("mobile")); + user.setMobilecall(rs.getString("mobilecall")); + user.setEmail(rs.getString("email")); + user.setCountryid(rs.getString("countryid")); + user.setLocationid(rs.getString("locationid")); + user.setResourcetype(rs.getString("resourcetype")); + user.setStartdate(rs.getString("startdate")); + user.setEnddate(rs.getString("enddate")); + user.setContractdate(rs.getString("contractdate")); + user.setJobtitle(rs.getString("jobtitle")); + user.setJobgroup(rs.getString("jobgroup")); + user.setJobactivity(rs.getString("jobactivity")); + user.setJoblevel(rs.getString("joblevel")); + user.setSeclevel(rs.getString("seclevel")); + user.setUserDepartment(Util.getIntValue(rs.getString("departmentid"), 0)); + user.setUserSubCompany1(Util.getIntValue(rs.getString("subcompanyid1"), 0)); + user.setUserSubCompany2(Util.getIntValue(rs.getString("subcompanyid2"), 0)); + user.setUserSubCompany3(Util.getIntValue(rs.getString("subcompanyid3"), 0)); + user.setUserSubCompany4(Util.getIntValue(rs.getString("subcompanyid4"), 0)); + user.setManagerid(rs.getString("managerid")); + user.setAssistantid(rs.getString("assistantid")); + user.setPurchaselimit(rs.getString("purchaselimit")); + user.setCurrencyid(rs.getString("currencyid")); + user.setLastlogindate(rs.getString("currentdate")); + user.setLogintype("1"); + user.setAccount(rs.getString("account")); + + user.setLoginip(request.getRemoteAddr()); + request.getSession(true).setMaxInactiveInterval(60 * 60 * 24); + request.getSession(true).setAttribute("weaver_user@bean", user); + request.getSession(true).setAttribute("moniter", new OnLineMonitor("" + user.getUID(), user.getLoginip())); + + + request.getSession(true).setAttribute("browser_isie", getisIE(request)); + + Util.setCookie(response, "loginfileweaver", "/login/Login.jsp?logintype=1", 172800); + Util.setCookie(response, "loginidweaver", "" + user.getUID(), 172800); + Util.setCookie(response, "languageidweaver", languageidweaver, 172800); + + } + } else { + String usercode = loginuser.getLoginid(); + if (!(usercode).equals(em_auth_usercode)) { + String sql = " select * from hrmresource where loginid=? "; + bb.writeLog("sql:" + sql); + rs.executeQuery(sql, new Object[]{em_auth_usercode}); + if (rs.next()) { + User user = new User(); + user.setUid(rs.getInt("id")); + user.setLoginid(rs.getString("loginid")); + user.setFirstname(rs.getString("firstname")); + user.setLastname(rs.getString("lastname")); + user.setAliasname(rs.getString("aliasname")); + user.setTitle(rs.getString("title")); + user.setTitlelocation(rs.getString("titlelocation")); + user.setSex(rs.getString("sex")); + user.setPwd(rs.getString("password")); + languageidweaver = rs.getString("systemlanguage"); + user.setLanguage(Util.getIntValue(languageidweaver, 0)); + + user.setTelephone(rs.getString("telephone")); + user.setMobile(rs.getString("mobile")); + user.setMobilecall(rs.getString("mobilecall")); + user.setEmail(rs.getString("email")); + user.setCountryid(rs.getString("countryid")); + user.setLocationid(rs.getString("locationid")); + user.setResourcetype(rs.getString("resourcetype")); + user.setStartdate(rs.getString("startdate")); + user.setEnddate(rs.getString("enddate")); + user.setContractdate(rs.getString("contractdate")); + user.setJobtitle(rs.getString("jobtitle")); + user.setJobgroup(rs.getString("jobgroup")); + user.setJobactivity(rs.getString("jobactivity")); + user.setJoblevel(rs.getString("joblevel")); + user.setSeclevel(rs.getString("seclevel")); + user.setUserDepartment(Util.getIntValue(rs.getString("departmentid"), 0)); + user.setUserSubCompany1(Util.getIntValue(rs.getString("subcompanyid1"), 0)); + user.setUserSubCompany2(Util.getIntValue(rs.getString("subcompanyid2"), 0)); + user.setUserSubCompany3(Util.getIntValue(rs.getString("subcompanyid3"), 0)); + user.setUserSubCompany4(Util.getIntValue(rs.getString("subcompanyid4"), 0)); + user.setManagerid(rs.getString("managerid")); + user.setAssistantid(rs.getString("assistantid")); + user.setPurchaselimit(rs.getString("purchaselimit")); + user.setCurrencyid(rs.getString("currencyid")); + user.setLastlogindate(rs.getString("currentdate")); + user.setLogintype("1"); + user.setAccount(rs.getString("account")); + + user.setLoginip(request.getRemoteAddr()); + request.getSession(true).setMaxInactiveInterval(60 * 60 * 24); + request.getSession(true).setAttribute("weaver_user@bean", user); + request.getSession(true).setAttribute("moniter", new OnLineMonitor("" + user.getUID(), user.getLoginip())); + + + + request.getSession(true).setAttribute("browser_isie", getisIE(request)); + + Util.setCookie(response, "loginfileweaver", "/login/Login.jsp?logintype=1", 172800); + Util.setCookie(response, "loginidweaver", "" + user.getUID(), 172800); + Util.setCookie(response, "languageidweaver", languageidweaver, 172800); + } + } + } + } +%> + +<%! + // 判断浏览器是否为IE + private String getisIE(HttpServletRequest request) { + String isIE = "true"; + String agent = request.getHeader("User-Agent").toLowerCase(); + if (agent.indexOf("rv:11") == -1 && agent.indexOf("msie") == -1) { + isIE = "false"; + } + if (agent.indexOf("rv:11") > -1 || agent.indexOf("msie") > -1) { + isIE = "true"; + } + return isIE; + } + +%> +