コード例 #1
0
ファイル: GetPubValue.cs プロジェクト: ikvm/test
        public override object calculate()
        {
            if (base.paramList.Count != 1)
            {
                throw new ReportError("getpubvalue函数的参数应该为1个");
            }
            ExpParse parse = (ExpParse)base.paramList[0];

            if (parse == null)
            {
                throw new ReportError("getpubvalue函数出现无效参数");
            }
            object obj2 = ConvertTool.getValue(parse.calculate());

            if (!(obj2 is string))
            {
                throw new ReportError("getpubvalue函数出现无效参数");
            }
            string sname = (string)obj2;

            return(EformRole.getPubParamValue(base.env.Session, sname));
        }
コード例 #2
0
 public bool checkPermit(HttpRequest Request, HttpResponse Response, DBOperator oDbTmp)
 {
     if ((EformRole.orgName != "北京方成公司") || (EformRole.itemName != "示例演示管理系统"))
     {
         HttpSessionState session = this.session;
         bool             flag2   = true;
         if ((session["eformPubValue"] == null) && (Request.Cookies["fc_user_id"] != null))
         {
             string str = Escape.unescape(Escape.unescape(Request.Cookies["fc_user_id"].Value));
             Logger.debug("cookies:" + str);
             string[] strArray = str.Split(new char[] { ',' });
             string   str2     = null;
             if (strArray.Length != 6)
             {
                 str2 = "登录的信息格式不正确!";
             }
             try
             {
                 if (DateTime.ParseExact(strArray[3], "yyyy-MM-dd HH:mm:ss", null) < DateTime.Now)
                 {
                     str2 = "登录的时间已过期!";
                 }
             }
             catch (Exception)
             {
                 str2 = "登录的信息格式不正确!";
             }
             string str3 = strArray[2];
             if (str2 == null)
             {
                 Hashtable hashtable = new Hashtable();
                 if ((EformRole.orgName != ConfigFix.fc_org_name) && (str3 != "systemadmin"))
                 {
                     hashtable.Add("用户.ID", strArray[0]);
                     hashtable.Add("用户.名称", strArray[1]);
                     hashtable.Add("用户简档.ID", "systemadmin");
                     session["eformPubValue"] = hashtable;
                     flag2 = false;
                 }
                 if ((EformRole.orgName == ConfigFix.fc_org_name) && (str3 == "systemadmin"))
                 {
                     oDbTmp.Open();
                     IDataReader reader = oDbTmp.exeSql("select fcbug_user_id from fcq_bug_user where org_name='" + strArray[0] + "' and item_name='" + strArray[4] + "' and user_id='" + strArray[1] + "'");
                     if (reader.Read())
                     {
                         string str4 = reader.GetString(0);
                         reader.Close();
                         reader = oDbTmp.exeSql("select username,profileid from fcq_user where userid='" + str4 + "'");
                         if (reader.Read())
                         {
                             hashtable.Add("用户.ID", str4);
                             hashtable.Add("用户.名称", reader.GetString(0));
                             hashtable.Add("用户简档.ID", reader.GetString(1));
                             session["eformPubValue"] = hashtable;
                             Logger.debug("转换成fcbug上的用户ID=" + str4);
                             session["userid"]    = hashtable["用户.ID"];
                             session["username"]  = hashtable["用户.名称"];
                             session["grantorid"] = "";
                             flag2 = false;
                         }
                         else
                         {
                             str2 = "此单位的用户在fcbug服务器上的用户表中不存在!";
                         }
                     }
                     else
                     {
                         str2 = "此单位没有在fcbug服务器上注册!";
                     }
                 }
             }
             if (str2 != null)
             {
                 Response.ContentType = ("text/html;charset=UTF-8");
                 Response.Write(str2);
                 return(true);
             }
         }
         EformRole role = new EformRole {
             session = this.session
         };
         if (flag2 && ((session["eformPubValue"] == null) || !role.sessionIdIsSame()))
         {
             string str5 = "你的帐号已在其它服务器上登录,请重新登录!";
             if (session["eformPubValue"] == null)
             {
                 str5 = "你还没成功登录,或session失效";
             }
             Response.ContentType = ("text/html;charset=UTF-8");
             Response.Write(str5);
             return(true);
         }
     }
     return(false);
 }
コード例 #3
0
        public string zkLoadMod()
        {
            string sTag = this.req["unitid"];
            bool   flag = false;
            string str2 = "ok";

            if (this.session["eformPubValue"] != null)
            {
                string str3 = (string)((Hashtable)this.session["eformPubValue"])["用户简档.ID"];
                if (str3 != "systemadmin")
                {
                    if ((sTag != null) && (sTag.Length > 0))
                    {
                        this.oDb = this.connConfig.getDBOperator();
                        this.oDb.Open();
                        string strSql = "select profileid from fcq_profilesub where  profileid='" + str3 + "'and detail='" + sTag + "'";
                        try
                        {
                            IDataReader reader = this.oDb.exeSql(strSql);
                            flag = reader.Read();
                            reader.Close();
                        }
                        catch (Exception exception)
                        {
                            return(exception.Message);
                        }
                        finally
                        {
                            try
                            {
                                this.oDb.Close();
                            }
                            catch (Exception)
                            {
                            }
                        }
                    }
                    if (!flag)
                    {
                        str2 = "<script>alert('你没有打开此表单的权限')</script>";
                    }
                    else
                    {
                        EformRole role = new EformRole {
                            session = this.session
                        };
                        if (role.sessionIdIsSame())
                        {
                            string userId = EformRole.getPubParamValue(this.session, "用户.ID");
                            this.writeLog(userId, sTag);
                        }
                        else
                        {
                            str2 = "<script>alert('你的帐号已在其它服务器上登录,请重新登录!'); top.location.replace('../../zk/main/login.htm')</script> ";
                        }
                    }
                }
                return(str2);
            }
            return("<script>alert('你还没成功登录,或session失效'); top.location.replace('../../zk/main/login.htm') </script> ");
        }
コード例 #4
0
        private void Page_Load(object sender, EventArgs e)
        {
            string      url  = null;
            string      str2 = null;
            XmlDocument xdoc = null;

            try
            {
                string    str8;
                QuerySql  sql;
                SqlToTree tree;
                str2 = base.Request.Params["key"];
                if ((str2 == null) || (str2.Length == 0))
                {
                    str2 = base.Request.QueryString.ToString();
                }
                if (str2 == "HelloWorld")
                {
                    base.Response.ContentType = ("text/html;charset=UTF-8");
                    base.Response.Write("HelloWorld");
                    return;
                }
                Logger.debug("后台 key=" + str2);
                if (str2 == "logger")
                {
                    string src = new StreamReader(base.Request.InputStream).ReadToEnd();
                    Logger.debug("前台:" + Escape.unescape(src));
                    return;
                }
                this.initConfigFileEbiao(base.Request);
                ConnectionConfig.initConfigFile(base.Request, this.Session);
                string           str4       = null;
                string           dsName     = base.Request.Params["datasourceName"];
                ConnectionConfig connConfig = null;
                connConfig = new ConnectionConfig(dsName);
                if (str2 == "DbToFile")
                {
                    new DbStru(connConfig, null, base.Request).DbToFile(base.Response);
                    return;
                }
                bool flag = ((((str2 == "loadFileStream") || (str2 == "getTempImage")) ||
                              ((str2 == "saveasExcelAll") || (str2 == "saveasExcel"))) ||
                             (((str2 == "saveasPdf") || (str2 == "run")) ||
                              ((str2 == "calcStr") || (str2 == "importExcel")))) || (str2 == "genHtmlFile");
                RunReport report = new RunReport(base.Request, this.Session, connConfig.getDBOperator());
                switch (str2)
                {
                case "loadFileStream":
                    report.loadFileStream(base.Request, base.Response);
                    return;

                case "getTempImage":
                    report.getTempImage(base.Request, base.Response);
                    return;

                case "saveasExcelAll":
                    report.saveasExcel(base.Request, base.Response, false);
                    return;

                case "saveasExcel":
                    report.saveasExcel(base.Request, base.Response, true);
                    return;

                case "saveasPdf":
                    report.saveasPdf(base.Request, base.Response);
                    return;

                case "run":
                    url = report.run(base.Request);
                    break;

                case "calcStr":
                    url = report.calcStr(base.Request);
                    break;

                case "importExcel":
                {
                    string sDest = base.Request["excelfile"];
                    sDest = PathTool.getRealPath(base.Request, FileAction.basePath + sDest);
                    string str7 = base.Request["spath"];
                    url = ImportExcel.FileConvert(PathTool.getRealPath(base.Request, FileAction.basePath + str7),
                                                  sDest);
                    break;
                }

                case "genHtmlFile":
                    Logger.debug("开始成批运算报表:");
                    url = report.genHtmlFile(base.Request);
                    break;
                }
                if (flag)
                {
                    goto Label_0BE9;
                }
                if (((((str2 != "setSession") && (str2 != "getSession")) &&
                      ((str2 != "uploadFile") && (str2 != "readImage"))) &&
                     ((str2 != "readClob") && (str2 != "saveFile"))) && (str2 != "zkLoadMod"))
                {
                    str4 = new StreamReader(base.Request.InputStream).ReadToEnd();
                    Logger.debug("XML串: " + str4);
                    if ((str2 != "saveRunInfo") && (str2 != "readDomainRes"))
                    {
                        xdoc = new XmlDocument();
                        xdoc.LoadXml(str4);
                    }
                }
                if (str2 != "loadingBatchAction")
                {
                    goto Label_05FE;
                }
                StringBuilder builder = new StringBuilder("<root>");
                int           num     = 0;
Label_041D:
                if (num >= xdoc.DocumentElement.ChildNodes.Count)
                {
                    goto Label_05E9;
                }
                XmlDocument document2 = new XmlDocument();
                document2.LoadXml(xdoc.DocumentElement.ChildNodes.Item(num).OuterXml);
                try
                {
                    dsName = xdoc.DocumentElement.ChildNodes.Item(num).Attributes["datasourceName"].Value;
                }
                catch (Exception)
                {
                }
                goto Label_0573;
Label_048C:
                builder.Append(sql.fillcombox());
                goto Label_055B;
Label_04A0:
                if (str8 == "getDsns")
                {
                    builder.Append(connConfig.getDsns());
                }
                else if (str8 == "fc_select")
                {
                    builder.Append(sql.fc_select());
                }
                else if (str8 == "dataset_fields1")
                {
                    builder.Append(sql.dataset_fields1());
                }
                else if (str8 == "dataset_select")
                {
                    builder.Append(sql.dataset_select());
                }
                else if (str8 == "sqltotreedata")
                {
                    builder.Append(tree.sqltotreedata());
                }
                else if (str8 == "getTreeXml")
                {
                    builder.Append(tree.getTreeXml());
                }
Label_055B:
                builder.Append("</root>");
                num++;
                goto Label_041D;
Label_0573:
                str8       = xdoc.DocumentElement.ChildNodes.Item(num).Attributes["key"].Value;
                connConfig = new ConnectionConfig(dsName);
                sql        = new QuerySql(connConfig, document2, base.Request, this.Session);
                tree       = new SqlToTree(connConfig, document2);
                builder.Append("<root>");
                if (str8 != "fillcombox")
                {
                    goto Label_04A0;
                }
                goto Label_048C;
Label_05E9:
                builder.Append("</root>");
                url = builder.ToString();
Label_05FE:
                if (str2 == "getDsns")
                {
                    url = connConfig.getDsns();
                }
                if (str2 == "isRunForm")
                {
                    url = PermitForm.isRunForm(base.Request, this.Session, connConfig.getDBOperator());
                }
                if (str2 == "isRunReport")
                {
                    url = PermitReport.isRunReport(base.Request, this.Session, connConfig.getDBOperator());
                }
                EbiaoFile file = new EbiaoFile(connConfig.getDBOperator(), xdoc, base.Request);
                if (str2 == "saveFile")
                {
                    url = file.saveFile();
                }
                if (str2 == "loadFile")
                {
                    url = file.loadFile();
                }
                if (str2 == "ToInDs")
                {
                    url = file.ToInDs();
                }
                QuerySql sql2 = new QuerySql(connConfig, xdoc, base.Request, this.Session);
                if (str2 == "fillcombox")
                {
                    url = sql2.fillcombox();
                }
                if (str2 == "sqltoxml")
                {
                    url = sql2.sqltoxml();
                }
                if (str2 == "SqlToField")
                {
                    url = sql2.SqlToField();
                }
                if (str2 == "fc_select")
                {
                    url = sql2.fc_select();
                }
                if (str2 == "dataset_fields1")
                {
                    url = sql2.dataset_fields1();
                }
                if (str2 == "dataset_select")
                {
                    url = sql2.dataset_select();
                }
                if (str2 == "doUploadInfo")
                {
                    url = sql2.doUploadInfo();
                }
                if (str2 == "crosstab")
                {
                    url = sql2.crosstab();
                }
                ExportData data = new ExportData(xdoc, base.Request, this.Session);
                if (str2 == "exportData")
                {
                    data.run();
                }
                ImportData data2 = new ImportData(base.Request, this.Session, connConfig);
                if (str2 == "importData")
                {
                    url = data2.run();
                }
                WebDesign design = new WebDesign(connConfig, xdoc, base.Request);
                if (str2 == "designdjsave")
                {
                    url = design.designdjsave();
                }
                if (str2 == "loadClob")
                {
                    url = design.loadClob();
                }
                cn.com.fcsoft.ajax.PathFile file2 = new cn.com.fcsoft.ajax.PathFile(xdoc);
                if (str2 == "GetUrl")
                {
                    url = file2.GetUrl(base.Request);
                }
                DbStru stru2 = new DbStru(connConfig, xdoc, base.Request);
                if (str2 == "GetAllTables")
                {
                    url = stru2.GetAllTables();
                }
                if (str2 == "GetFieldName")
                {
                    url = stru2.GetFieldName();
                }
                if (str2 == "setDbStru")
                {
                    url = stru2.setDbStru();
                }
                SubmitData data3 = new SubmitData(connConfig, xdoc, base.Request, this.Session);
                if (str2 == "doSaveData")
                {
                    url = data3.doSaveData();
                }
                FileAction action = new FileAction(xdoc, base.Request);
                if (str2 == "readdesignhtml")
                {
                    url = action.readdesignhtml();
                }
                if (str2 == "savedesignhtml")
                {
                    url = action.savedesignhtml();
                }
                if (str2 == "genDjHtmlFile")
                {
                    url = action.genDjHtmlFile();
                }
                if (str2 == "GetFileContent")
                {
                    url = action.GetFileContent();
                }
                if (str2 == "DelUploadFile")
                {
                    url = action.DelUploadFile();
                }
                if (str2 == "uploadFile")
                {
                    url = action.uploadFile();
                }
                if (str2 == "fileExist")
                {
                    url = action.fileExist();
                }
                MaxNo no = new MaxNo(connConfig, xdoc, this.Session);
                if (str2 == "getMaxIntNo")
                {
                    url = no.getMaxIntNo();
                }
                if (str2 == "getRecnum")
                {
                    url = no.getRecnum();
                }
                if (str2 == "getAutoNum")
                {
                    url = no.getAutoNum();
                }
                SqlToTree tree2 = new SqlToTree(connConfig, xdoc);
                if (str2 == "sqltotreedata")
                {
                    url = tree2.sqltotreedata();
                }
                if (str2 == "getTreeXml")
                {
                    url = tree2.getTreeXml();
                }
                DoSession session = new DoSession(base.Request, this.Session);
                if (str2 == "setSession")
                {
                    url = session.setSession();
                }
                if (str2 == "getSession")
                {
                    url = session.getSession();
                }
                cn.com.fcsoft.ajax.ImageField field = new cn.com.fcsoft.ajax.ImageField(connConfig, base.Request);
                if (str2 == "readImage")
                {
                    field.readImage(base.Response);
                }
                if (str2 == "writeImage")
                {
                    url = field.writeImage();
                }
                ClobField field2 = new ClobField(connConfig, base.Request);
                if (str2 == "readClob")
                {
                    url = field2.readClob();
                }
                if (str2 == "writeClob")
                {
                    url = field2.writeClob();
                }
                EformRole role = new EformRole
                {
                    session = this.Session,
                    request = base.Request,
                    xdoc    = xdoc,
                    oDb     = connConfig.getDBOperator()
                };
                if (str2 == "roleSet")
                {
                    url = role.roleSet();
                }
                if (str2 == "roleCheckEmployee")
                {
                    url = role.roleCheckEmployee();
                }
                if (str2 == "getAllPubParamValue")
                {
                    url = role.getAllPubParamValue();
                }
                if (str2 == "batchExecSql")
                {
                    if (EformRole.getPubParamValue(this.Session, "用户.ID") != "systemadmin")
                    {
                        throw new Exception("只有用户 admin 才有权做此操作!");
                    }
                    string         str10       = xdoc.DocumentElement.ChildNodes.Item(0).InnerText;
                    DBOperator     @operator   = null;
                    IDbCommand     command     = null;
                    IDbTransaction transaction = null;
                    try
                    {
                        @operator = connConfig.getDBOperator();
                        @operator.Open();
                        command             = @operator.Connection.CreateCommand();
                        command.Connection  = (@operator.Connection);
                        transaction         = @operator.Connection.BeginTransaction();
                        command.Transaction = (transaction);
                        command.CommandText = (str10);
                        command.ExecuteNonQuery();
                        transaction.Commit();
                        command.Dispose();
                        @operator.Close();
                    }
                    catch (Exception exception)
                    {
                        try
                        {
                            transaction.Rollback();
                        }
                        catch (Exception)
                        {
                        }
                        throw exception;
                    }
                    finally
                    {
                        try
                        {
                            @operator.Close();
                        }
                        catch (Exception)
                        {
                        }
                    }
                }
            }
            catch (Exception exception2)
            {
                Logger.error(exception2.StackTrace);
                url = JSON.errInfoToJson(exception2);
            }
Label_0BE9:
            if ((url != null) || (str2 != "readImage"))
            {
                /*
                 *  Bill.aspx?key=run&spath=/rpt/s_simplelist.htm&tempfilepath=/tmp/file/&pageno=1&cacheid=&e_paramid=
                 *  ebrun.htm?name=s_simplelist
                 */
                base.Response.ContentType = ("text/html;charset=UTF-8");
                File.WriteAllText(@"E:\DB\PlatForm\FlexCell.NET\ebiao\bin\cleaned\src\Web\" + str2 + "_test.htm", url);
                base.Response.Write(url);
            }
        }
コード例 #5
0
        public string getAutoNum(IDbCommand myComm)
        {
            string str = this.xmlDocument_0.DocumentElement.ChildNodes.Item(0).InnerText;

            for (int i = 1; i < this.xmlDocument_0.DocumentElement.ChildNodes.Count; i++)
            {
                string str10 = this.xmlDocument_0.DocumentElement.ChildNodes.Item(i).ChildNodes.Item(0).InnerText;
                string str11 = this.xmlDocument_0.DocumentElement.ChildNodes.Item(i).ChildNodes.Item(1).InnerText;
                str = str.Replace("{" + str10 + "}", str11);
            }
            string str9 = Convert.ToString(DateTime.Now.Year);

            str = str.Replace("{YYYY}", str9).Replace("{YY}", str9.Substring(2));
            string str8 = Convert.ToString(DateTime.Now.Month);

            if (str8.Length == 1)
            {
                str8 = "0" + str8;
            }
            str  = str.Replace("{MM}", str8);
            str8 = Convert.ToString(DateTime.Now.Day);
            if (str8.Length == 1)
            {
                str8 = "0" + str8;
            }
            str = str.Replace("{DD}", str8);
            string pubparam = EformRole.pubparam;

            if ((pubparam != null) && (pubparam.Trim().Length > 0))
            {
                string[] strArray = pubparam.Split(new char[] { ',' });
                for (int j = 0; j < strArray.Length; j++)
                {
                    string str7 = "{" + strArray[j] + "}";
                    if (str.IndexOf(str7) >= 0)
                    {
                        str = str.Replace(str7, EformRole.getPubParamValue(this.httpSessionState_0, strArray[j]));
                    }
                }
            }
            int index = str.IndexOf("{0");

            if (index < 0)
            {
                return(str);
            }
            int num3 = str.IndexOf("0}", index);

            if (num3 < 0)
            {
                return(str);
            }
            int    num4 = this.getRecNumNo(str.Substring(0, index), myComm);
            string str4 = "00000000000000000000";
            string str5 = Convert.ToString(num4);
            string str3 = str5;

            if (((num3 - index) + 1) > str5.Length)
            {
                str3 = str4.Substring(0, ((num3 - index) + 1) - str5.Length) + str5;
            }
            return(str.Substring(0, index) + str3 + str.Substring(num3 + 2));
        }