OutterSysUtil.java 8.42 KB
//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
//

package com.api.integration.util;

import weaver.conn.RecordSet;
import weaver.general.BaseBean;
import weaver.general.Util;
import weaver.hrm.User;
import weaver.outter.OutterDisplayHelper;

import java.util.ArrayList;
import java.util.Calendar;
import java.util.HashMap;
import java.util.Map;

public class OutterSysUtil  {


    public OutterSysUtil() {
    }

    public static Map<String, Object> dealMap(User var0, int var1, int var2, int var3) {
        HashMap var4 = new HashMap();
        ArrayList var5 = new ArrayList();
        OutterDisplayHelper var6 = new OutterDisplayHelper();
        String var7 = var6.getShareOutterSql(var0);
        String var8 = "from outter_sys a where EXISTS (select 1 from (" + var7 + ") b where a.sysid=b.sysid ) and (a.logintype=0 or a.logintype=2) order by a.showorder,a.sysid";
        RecordSet var9 = new RecordSet();
        var9.execute("select 1 " + var8);
        var4.put("totalnum", var9.getCounts());
        String var10 = "";
        if (var3 != 0) {
            var1 = var3;
            if ("sqlserver".equals(var9.getDBType())) {
                if (var2 == 0) {
                    var2 = 2;
                }

                var10 = "select TOP 100 PERCENT * " + var8;
                var10 = "SELECT top " + var3 + " *  FROM outter_sys os1 WHERE sysid  not in     (   SELECT top " + var3 * (var2 - 1) + " sysid FROM (" + var10 + ") os2 ORDER BY os2.showorder,os2.sysid )     and EXISTS (select 1 from (" + var7 + ") b where os1.sysid=b.sysid ) ORDER BY os1.showorder,os1.sysid";
            } else if ("mysql".equals(var9.getDBType())) {
                var10 = "select * " + var8 + " limit " + var3 * (var2 - 1) + "," + var3;
            } else {
                var10 = "select * from (select a.*,rownum row_num from (select * " + var8 + ") a ) b  where b.row_num between " + ((var2 - 1) * var3 + 1) + " and " + ((var2 - 1) * var3 + var3);
            }
        } else {
            var10 = "select * " + var8;
        }

        RecordSet var11 = new RecordSet();
        RecordSet var12 = new RecordSet();
        RecordSet var13 = new RecordSet();
        String var14 = "/page/element/outterSys/resource/image/outterdefaultimag.png";
        String var15 = "/interface/Entrance.jsp?id=";
        (new BaseBean()).writeLog("final sql:" + var10);
        var11.execute(var10);

        for(int var16 = 1; var11.next() && var16 <= var1; ++var16) {
            HashMap var17 = new HashMap();
            String var18 = Util.null2String(var11.getString("urllinkimagid"));
            String var19 = Util.null2String(var11.getString("sysid"));
            String var20 = Util.null2String(var11.getString("name"));
            String var21 = Util.null2String(var11.getString("typename"));
            String var22 = Util.null2String(var11.getString("imagewidth"));
            String var23 = Util.null2String(var11.getString("imageheight"));
            int var24 = Util.getIntValue(var11.getString("basetype1"), 0);
            int var25 = Util.getIntValue(var11.getString("basetype2"), 0);
            String var26 = "";
            if (!"".equals(var18) && !"0".equals(var18)) {
                var26 = "/weaver/weaver.file.FileDownload?fileid=" + var18;
            } else {
                var26 = var14;
            }

            //开始
            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 = var0.getUID();
            String loginName = var0.getLoginid();
            sql = "select count(*) as num from outter_account where SYSID ='"+var19+"'and  USERID= "+uid+"";
            recordSet.execute(sql);
            while (recordSet.next()){
                rsInsert.writeLog("返回 num = "+recordSet.getString("num"));
                if (recordSet.getString("num").equals("0")){
                    //进行插入操作
                    sql = "insert into outter_account(`SYSID`, `USERID`, `LOGINTYPE`, `ACCOUNT`, `PASSWORD`, `CREATEDATE`, `CREATETIME`, `MODIFYDATE`, `MODIFYTIME`) VALUES ('"+var19+"', "+uid+", 1, '"+loginName+"', '1', '"+date+"', '"+time+"', '"+date+"', '"+time+"')";
                    rsInsert.writeLog("insert  sql = "+sql);
                    rsInsert.execute(sql);
                    rsInsert.next();
                }
            }
            //结束

            var17.put("url", var26);
            var17.put("width", var22);
            var17.put("height", var23);
            var17.put("name", var20);
            var17.put("linkUrl", var15 + var19);
            var13.executeSql("select * from outter_sysparam where paramtype=1 and  sysid='" + var19 + "'");
            if (var24 == 1 && var25 == 1 && !var13.next()) {
                var17.put("routeUrl", "");
            } else {
                var12.execute("select * from outter_account where sysid = '" + var19 + "' and userid=" + var0.getUID());
                RecordSet var27 = new RecordSet();
                var27.execute("select * from outter_sys where sysid='" + var19 + "'");
                String var28 = "";
                String var29 = "";
                if (var27.next()) {
                    var28 = Util.null2String(var27.getString("baseparam1"));
                    var29 = Util.null2String(var27.getString("baseparam2"));
                }

                if (!var12.next()) {
                    if ("7".equals(var21) && var24 == 1) {
                        var17.put("routeUrl", "");
                    } else if ("8".equals(var21) && var25 == 1) {
                        var17.put("routeUrl", "");
                    } else if (("11".equals(var21) || "2".equals(var21)) && var24 == 1) {
                        var17.put("routeUrl", "");
                    } else if ("6".equals(var21)) {
                        var17.put("routeUrl", "");
                    } else if ((var24 != 0 || "".equals(var28)) && (var25 != 0 || "".equals(var29))) {
                        var17.put("routeUrl", "");
                    } else {
                        var17.put("routeUrl", "/integration/accountSetting/" + var19);
                    }
                } else {
                    String var30 = Util.null2String(var12.getString("account"));
                    String var31 = Util.null2String(var12.getString("password"));
                    if ("8".equals(var21)) {
                        if (var25 == 0 && "".equals(var31) && !"".equals(var29)) {
                            var17.put("routeUrl", "/integration/accountSetting/" + var19);
                        } else {
                            var17.put("routeUrl", "");
                        }
                    } else if ("7".equals(var21)) {
                        if (var24 == 0 && "".equals(var30) && !"".equals(var28)) {
                            var17.put("routeUrl", "/integration/accountSetting/" + var19);
                        } else {
                            var17.put("routeUrl", "");
                        }
                    } else if (!"11".equals(var21) && !"2".equals(var21)) {
                        if ("6".equals(var21)) {
                            var17.put("routeUrl", "");
                        } else if ((var24 != 0 || !"".equals(var30) || "".equals(var28)) && (var25 != 0 || !"".equals(var31) || "".equals(var29))) {
                            var17.put("routeUrl", "");
                        } else {
                            var17.put("routeUrl", "/integration/accountSetting/" + var19);
                        }
                    } else if (var24 == 0 && "".equals(var30) && !"".equals(var28)) {
                        var17.put("routeUrl", "/integration/accountSetting/" + var19);
                    } else {
                        var17.put("routeUrl", "");
                    }
                }
            }

            var5.add(var17);
        }

        var4.put("outterSys", var5);
        return var4;
    }
}