Entrance.jsp 8.16 KB
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page import="com.alibaba.fastjson.JSONObject" %>
<%@ page import="org.apache.commons.logging.Log" %>
<%@ page import="org.apache.commons.logging.LogFactory" %>
<%@ page import="weaver.conn.RecordSet" %>
<%@ page import="weaver.general.Util" %>
<%@ page import="weaver.hrm.HrmUserVarify" %>
<%@ page import="weaver.hrm.User" %>
<%@ page import="weaver.integration.entrance.bean.OutterLoginBean" %>
<%@ page import="weaver.integration.entrance.exceptions.AccountOrPasswordEncryptException" %>
<%@ page import="weaver.integration.entrance.exceptions.OtherParamsEncryptException" %>
<%@ page import="weaver.integration.entrance.service.EntranceService" %>
<%@ page import="weaver.integration.entrance.service.IOutterSysServer" %>
<%@ page import="weaver.integration.entrance.service.OutterSysServer" %>
<%@ page import="weaver.integration.entrance.service.permission.IPermissionService" %>
<%@ page import="weaver.integration.entrance.service.permission.PermissionService" %>
<%@ page import="weaver.integration.entrance.utils.StringUtils" %>
<%@ page import="weaver.integration.logging.Logger" %>
<%@ page import="weaver.integration.logging.LoggerFactory" %>
<%@ page import="weaver.systeminfo.SystemEnv" %>
<%@ page import="java.text.SimpleDateFormat" %>
<%@ page import="java.util.Calendar" %>
<%@ page import="java.util.HashMap" %>
<%@ page import="java.util.Map" %>
<%@ page import="java.util.Objects" %>

<%--<%@ include file="/systeminfo/init_wev8.jsp" %>--%>

<jsp:useBean id="rs" class="weaver.conn.RecordSet" scope="page"/>
<jsp:useBean id="RecordSet" class="weaver.conn.RecordSet" scope="page"/>
<jsp:useBean id="RecordSet1" class="weaver.conn.RecordSet" scope="page"/>

<%

    Logger logger = LoggerFactory.getLogger();
    writeLog("----------=================================");

    User user = HrmUserVarify.getUser(request,response);
    writeLog("user=========================" + JSONObject.toJSONString(user));

    IPermissionService permissionService=new PermissionService();
    String operationType = permissionService.getOperationType(request);

    String sysid = Util.null2String(request.getParameter("id"));// 系统标识

    writeLog("sysid=========================" + sysid);
    writeLog("operationType=========================" + operationType);

    if ("".equals(operationType)) {
        // 权限判断
        // 得到有权限查看的集成登录
        String access = permissionService.isAccess(sysid, request, response);
        writeLog("access========================"+ access);
        if (!StringUtils.isBlank(access)){
            response.sendRedirect(access);
            return;
        }
    }



    Calendar cal = Calendar.getInstance();
    int year = cal.get(Calendar.YEAR);
    int month = cal.get(Calendar.MONTH);
    int day = cal.get(Calendar.DATE);

    int hour = cal.get(Calendar.HOUR);
    int minute = cal.get(Calendar.MINUTE);
    int second = cal.get(Calendar.SECOND);

    String date = year + "-" + month + "-" + day;
    String time = hour + ":" + minute + ":" + second;


    //判断用户是否已经登录过,否则就直接插入一个默认账户,防止多次登录
    RecordSet recordSet = new RecordSet();
    RecordSet rsInsert = new RecordSet();
    String sql ="";
    int uid = user.getUID();
    String loginName = user.getLoginid();
    sql = "select count(*) as num from outter_account where SYSID ='"+sysid+"'and  USERID= "+uid+"";
    writeLog("查询sql   = "+sql );
    recordSet.execute(sql);
    while (recordSet.next()){
        writeLog("返回 num = "+recordSet.getString("num"));
        if (recordSet.getString("num").equals("0")){
            writeLog("进行插入操作=========");
            //进行插入操作
            sql = "insert into outter_account(`SYSID`, `USERID`, `LOGINTYPE`, `ACCOUNT`, `PASSWORD`, `CREATEDATE`, `CREATETIME`, `MODIFYDATE`, `MODIFYTIME`) VALUES ('"+sysid+"', "+uid+", 1, '"+loginName+"', '1', '"+date+"', '"+time+"', '"+date+"', '"+time+"')";
            writeLog("insert  sql = "+sql);
            rsInsert.execute(sql);
            rsInsert.next();
        }
    }
    EntranceService entranceService = new EntranceService();
    IOutterSysServer   outterSysServer = new OutterSysServer();
    OutterLoginBean loginBean = null;
    Map<String, Object> map = new HashMap<String, Object>();
    try {
        loginBean = entranceService.getLoginBean(outterSysServer, sysid, operationType, request, response);
        writeLog("loginBean=========================" + JSONObject.toJSONString(loginBean));
        map = entranceService.getUrl(outterSysServer, loginBean, operationType, request, response);
        writeLog("map=========================" + JSONObject.toJSONString(map));
    } catch (ClassNotFoundException e) {
        %>
        <script language=javascript>
            top.Dialog.alert("<%= SystemEnv.getHtmlLabelNames("508601",user.getLanguage()) %>", function () {
                window.close();
            }, 420, 130);
        </script>
        <%
    }catch (NoSuchMethodException e){
        e.printStackTrace();
        %>
        <script language=javascript>
            top.Dialog.alert("<%= SystemEnv.getHtmlLabelNames("508602",user.getLanguage()) %>", function () {
                window.close();
            }, 420, 130);
        </script>
        <%
    }catch (IllegalAccessException e){
        %>
        <script language=javascript>
            top.Dialog.alert("<%=SystemEnv.getHtmlLabelNames("508603",user.getLanguage()) %>", function () {
                window.close();
            }, 420, 130);
        </script>
        <%
    }catch (InstantiationException e){
        %>
        <script language=javascript>
            top.Dialog.alert("<%= SystemEnv.getHtmlLabelNames("508604",user.getLanguage())%>", function () {
                window.close();
            }, 420, 130);
        </script>
        <%
    }catch (NoClassDefFoundError e){
        %>
        <script language=javascript>
            top.Dialog.alert("<%= SystemEnv.getHtmlLabelNames("508605",user.getLanguage())%>", function () {
                window.close();
            }, 420, 130);
        </script>
        <%
    }catch (OtherParamsEncryptException e) {
        %>
        <script language=javascript>
            top.Dialog.alert("<%= SystemEnv.getHtmlLabelNames("508614",user.getLanguage())%>", function () {
                window.close();
            }, 420, 130);
        </script>
        <%

    } catch (AccountOrPasswordEncryptException e) {
        %>
        <script language=javascript>
            top.Dialog.alert("<%= SystemEnv.getHtmlLabelNames("508615",user.getLanguage())%>", function () {
                window.close();
            }, 420, 130);
        </script>
        <%
    }catch (Exception e){
        %>
        <script language=javascript>
            top.Dialog.alert("系统异常,请联系管理员", function () {
                window.close();
            }, 420, 130);
        </script>
        <%
    }

    if (Objects.nonNull(map)){
        if (map.get("isError")!= null&&"true".equals(map.get("isError"))){
            %>
                <script language=javascript>
                    top.Dialog.alert("<%= map.get("errorMsg") %>", function () {
                        window.close();
                    }, 420, 130);
                </script>
            <%
            return;
        }
        if (map.get("isRedirect")!=null && "true".equals(map.get("isRedirect"))){
            writeLog("+++++++++++++++++++++++++++++++=================+++++++++++++++++++");
            response.sendRedirect(map.get("redirectUrl").toString());
            return;
        }
        if (map.get("isRedirect")!=null && "false".equals(map.get("isRedirect"))){
            writeLog("+++++++++++++++++++++++++++++++");
            out.println(map.get("redirectUrl").toString());
            return;
        }
    }else {
        logger.error("map is null ====================================================");
    }

%>
<%!
    private void writeLog(Object o) {
        Log var3 = LogFactory.getLog(this.getClass().getName());
        if(o instanceof Exception) {
            var3.info(this.getClass().getName(), (Exception)o);
        } else {
            var3.info(o);
        }
    }
%>