Beispiel #1
0
        public DataSet GetProductionData(string unit, string num)
        {
            this.init();
            string  errMsg = "";
            DataSet DS     = new DataSet();
            string  sql    = "";

            if (num == "1")
            {
                sql = "SELECT  D_C_ar,D_H_ar,D_O_ar,D_N_ar,D_S_ar,D_Cfh_c_ulti,D_Clz_c_ulti,D_Qnet_ar_ulti,D_M_AR_ULTI,D_A_AR_ULTI   from T_INFO_PROCPARA_COAL_ULTI " +
                      "where T_INFO_PROCPARA_COAL_ULTI.T_UNITID ='" + unit + "' order by T_INFO_PROCPARA_COAL_ULTI.T_TIME   desc  fetch first 1 rows only";
            }
            else
            {
                sql = "SELECT  D_CFH_C_PROX,D_CLZ_C_PROX,D_M_AD,D_A_AD,D_V_DAF,D_QNET_AR_PROX,D_ST_AD,D_ST_AR,D_M_AR_PROX,D_A_AR_PROX  from T_INFO_PROCPARA_COAL_PROX " +
                      " where T_INFO_PROCPARA_COAL_PROX.T_UNITID ='" + unit + "'   order by  T_INFO_PROCPARA_COAL_PROX.T_TIME desc  fetch first 1 rows only";
            }

            if (rlDBType == "SQL")
            {
            }
            else
            {
                DS = DBdb2.RunDataSet(sql, out errMsg);
            }
            return(DS);
        }
Beispiel #2
0
        //查询数据
        public void getDS()
        {
            string sql = "";

            //  监视设备,记录表,启动限值,停止限值,机组容量,环保机组,数字点
            sql = @"select ROW_NUMBER() OVER(order by ID_KEY) as seqnum,ID_KEY,T_AREAID,T_AREANAME "
                  + " from T_BASE_AREA ";

            ds = DBdb2.RunDataSet(sql, out errMsg);
            GridView1.DataKeyNames = new string[] { "ID_KEY" };
        }
Beispiel #3
0
        /// <summary>
        /// 获取datagridview的值
        /// </summary>
        /// <param name="unit_id"></param>
        /// <returns></returns>
        public DataSet Get_GRID_DATA(string unit_id)
        {
            string[] str = new string[unit_id.Split(',').Length];
            for (int i = 0; i < unit_id.Split(',').Length; i++)
            {
                str[i] = unit_id.Split(',')[i];
            }
            string sql_str = "";

            if (str[2] != "")
            {
                sql_str = "and 超温考核记录表.影响电量 = " + str[2] + "";
            }
            this.init();
            string  errMsg  = "";
            DataSet DS      = new DataSet();
            string  sql_num = "";

            if ((Convert.ToDateTime(str[0].Split(';')[1]).Month == DateTime.Now.Month) && (Convert.ToDateTime(str[0].Split(';')[1]).Year == DateTime.Now.Year))
            {
                sql_num = DateTime.Now.Day.ToString();
            }
            else
            {
                sql_num = DateTime.DaysInMonth(Convert.ToDateTime(str[0].Split(';')[1]).Year, Convert.ToDateTime(str[0].Split(';')[1]).Month).ToString();
            }
            string sql = "select  超温考核记录表.ID_KEY,T_COMPANYDESC,T_PLANTDESC,T_UNITDESC,T_DESC,开始时间, 结束时间,T_CATEGORYDESC,T_PROPERTYDESC,T_PROFESSIONALDESC,T_REASONDESC,影响电量,T_CAPABILITYLEVEL,超温考核记录表.事件描述,超温考核记录表.原因分析,超温考核记录表.处理建议 from " +
                         " T_BASE_UNIT inner join T_BASE_PLANT   on T_BASE_UNIT.T_PLANTID = T_BASE_PLANT.T_PLANTID and  T_BASE_UNIT.T_UNITID= '" + str[1] + "' " +
                         "inner join T_BASE_COMPANY  on T_BASE_PLANT.T_COMPANYID = T_BASE_COMPANY.T_COMPANYID " +
                         "inner join  超温考核记录表  on   超温考核记录表.机组 =T_BASE_UNIT.T_UNITID  and  超温考核记录表.开始时间  between '" + str[0].Split(';')[0] + "-01 00:00:00' and  '" + str[0].Split(';')[1] + "-" + sql_num + " 00:00:00' " +

                         "and 超温考核记录表.预警类别ID ='" + str[3] + "'" + sql_str + " and 超温考核记录表.预警性质ID ='" + str[4] + "' and 超温考核记录表.预警专业分类ID ='" + str[5] + "' and 超温考核记录表.预警原因分类ID ='" + str[6] + "' " +
                         " inner join T_BASE_CALCPARA on 超温考核记录表.考核点ID = T_BASE_CALCPARA.T_PARAID and " +
                         "超温考核记录表.机组 = T_BASE_CALCPARA.T_UNITID " +
                         "inner join T_BASE_FAULTCATEGORY on 超温考核记录表.预警类别ID  = T_BASE_FAULTCATEGORY.T_CATEGORYID " +
                         "inner join T_BASE_FAULTPROPERTY on T_BASE_FAULTPROPERTY.T_PROPERTYID  = 超温考核记录表.预警性质ID " +
                         "inner join T_BASE_FAULTPROFESSIONAL on T_BASE_FAULTPROFESSIONAL.T_PROFESSIONALID= 超温考核记录表.预警专业分类ID " +
                         "inner join T_BASE_FAULTREASON on T_BASE_FAULTREASON.T_REASONID = 超温考核记录表.预警原因分类ID";

            if (rlDBType == "SQL")
            {
            }
            else
            {
                DS = DBdb2.RunDataSet(sql, out errMsg);
            }
            return(DS);
        }
Beispiel #4
0
        /// <summary>
        /// 获取锅炉厂家 T_BASE_BOILER
        /// </summary>
        /// <returns></returns>
        public DataSet GetBOILERDESC()
        {
            this.init();
            string  errMsg = "";
            DataSet DS     = new DataSet();
            string  sql    = "select T_BOILERID,T_BOILERDESC from T_BASE_BOILER";

            if (rlDBType == "SQL")
            {
            }
            else
            {
                DS = DBdb2.RunDataSet(sql, out errMsg);
            }
            return(DS);
        }
Beispiel #5
0
        /// <summary>
        /// 煤质查询
        /// </summary>
        /// <param name="unit">机组编号</param>
        /// <returns></returns>
        public DataSet GetProductionPreData(string stime, string etime, string unit)
        {
            this.init();
            string  errMsg = "";
            DataSet DS     = new DataSet();
            string  sql    = "SELECT  T_UNITID,T_TIME,D_M_AR_PROX,D_M_ad,D_A_ad,D_V_DAF,D_Qnet_ar_PROX,D_St_ad FROM T_INFO_PROCPARA_COAL_PROX  where T_UNITID ='" + unit + "' and T_TIME between '" + stime + "' and '" + etime + "'  order by T_TIME asc";

            if (rlDBType == "SQL")
            {
            }
            else
            {
                DS = DBdb2.RunDataSet(sql, out errMsg);
            }
            return(DS);
        }
Beispiel #6
0
        /// <summary>
        /// 获取文件类别  T_BASE_DATUNM
        /// </summary>
        /// <returns></returns>
        public DataSet Get_Type()
        {
            this.init();
            string  errMsg = "";
            DataSet DS     = new DataSet();
            string  sql    = "select PARA_ID,PARADESC from T_BASE_DATUNM";

            if (rlDBType == "SQL")
            {
            }
            else
            {
                DS = DBdb2.RunDataSet(sql, out errMsg);
            }
            return(DS);
        }
Beispiel #7
0
        /// <summary>
        /// 获取所有机组类型 T_BASE_UNIT
        /// </summary>
        /// <returns></returns>
        public DataSet GetPLANTTYPE()
        {
            this.init();
            string  errMsg = "";
            DataSet DS     = new DataSet();
            string  sql    = "select T_PLANTTYPE from T_BASE_UNIT group by  T_PLANTTYPE";

            if (rlDBType == "SQL")
            {
            }
            else
            {
                DS = DBdb2.RunDataSet(sql, out errMsg);
            }
            return(DS);
        }
Beispiel #8
0
        public DataSet GetBoilerData(string unit)
        {
            this.init();
            string  errMsg = "";
            DataSet DS     = new DataSet();
            string  sql    = "select D_Alpha_fh,D_Alpha_lz,D_D_e,D_CO,D_Tlz,D_Tlk_d,D_RH,D_Tfw_d,D_H2,D_CH4 from T_INFO_PROCPARA_BOILER where T_INFO_PROCPARA_BOILER.T_UNITID ='" + unit + "'   order by  T_INFO_PROCPARA_BOILER.T_TIME desc  fetch first 1 rows only";

            if (rlDBType == "SQL")
            {
            }
            else
            {
                DS = DBdb2.RunDataSet(sql, out errMsg);
            }
            return(DS);
        }
Beispiel #9
0
        public DataSet Get_data(string para)
        {
            this.init();
            string  errMsg = "";
            DataSet DS     = new DataSet();
            string  sql    = "select 开始时间,事件描述,原因分析,处理建议 from 超温考核记录表 where ID_KEY=" + para;

            if (rlDBType == "SQL")
            {
            }
            else
            {
                DS = DBdb2.RunDataSet(sql, out errMsg);
            }
            return(DS);
        }
Beispiel #10
0
        /// <summary>
        /// 获取所有机组容量等级 T_BASE_UNIT
        /// </summary>
        /// <returns></returns>
        public DataSet GetCAPABILITYLEVEL()
        {
            this.init();
            string  errMsg = "";
            DataSet DS     = new DataSet();
            string  sql    = "select T_CAPABILITYLEVEL from T_BASE_UNIT group by  T_CAPABILITYLEVEL";

            if (rlDBType == "SQL")
            {
            }
            else
            {
                DS = DBdb2.RunDataSet(sql, out errMsg);
            }
            return(DS);
        }
Beispiel #11
0
        /// <summary>
        /// 获取预警类别 T_BASE_FAULTCATEGORY
        /// </summary>
        /// <returns></returns>
        public DataSet GetFAULTCATEGORY()
        {
            this.init();
            string  errMsg = "";
            DataSet DS     = new DataSet();
            string  sql    = "select T_CATEGORYID,T_CATEGORYDESC from T_BASE_FAULTCATEGORY";

            if (rlDBType == "SQL")
            {
            }
            else
            {
                DS = DBdb2.RunDataSet(sql, out errMsg);
            }
            return(DS);
        }
Beispiel #12
0
        /// <summary>
        /// 获取预警专业分类 T_BASE_FAULTPROFESSIONAL
        /// </summary>
        /// <returns></returns>
        public DataSet GetFAULTPROFESSIONAL()
        {
            this.init();
            string  errMsg = "";
            DataSet DS     = new DataSet();
            string  sql    = "select T_PROFESSIONALID,T_PROFESSIONALDESC from T_BASE_FAULTPROFESSIONAL";

            if (rlDBType == "SQL")
            {
            }
            else
            {
                DS = DBdb2.RunDataSet(sql, out errMsg);
            }
            return(DS);
        }
Beispiel #13
0
        /// <summary>
        /// 获取考核点描述
        /// </summary>
        public DataSet GETKAOHRDIAN_DESC(string uint_id)
        {
            this.init();
            string  errMsg = "";
            DataSet DS     = new DataSet();

            string sql = "select 考核点ID,考核点描述 from 超温考核测点表  where  超温考核测点表.机组 = '" + uint_id + "'";

            if (rlDBType == "SQL")
            {
            }
            else
            {
                DS = DBdb2.RunDataSet(sql, out errMsg);
            }
            return(DS);
        }
Beispiel #14
0
        /// <summary>
        /// 获取数据库中分公司
        /// </summary>
        /// <returns></returns>
        public DataSet Get_Company_Info(out string errMsg)
        {
            this.init();
            errMsg = "";
            DataSet DS  = new DataSet();
            string  sql = "select T_COMPANYID,T_COMPANYDESC from T_BASE_COMPANY";

            if (rlDBType == "SQL")
            {
            }
            else
            {
                DS = DBdb2.RunDataSet(sql, out errMsg);
            }

            return(DS);
        }
Beispiel #15
0
        /// <summary>
        /// 获取数据库中电厂机组
        /// </summary>
        /// <param name="electric_id">电厂ID</param>
        /// <returns></returns>
        public DataSet Get_Unit_Info(string electric_id, out string errMsg)
        {
            this.init();
            errMsg = "";
            DataSet DS  = new DataSet();
            string  sql = "select T_UNITID,T_UNITDESC from T_BASE_UNIT where T_PLANTID='" + electric_id + "'";

            if (rlDBType == "SQL")
            {
            }
            else
            {
                DS = DBdb2.RunDataSet(sql, out errMsg);
            }

            return(DS);
        }
Beispiel #16
0
        /// <summary>
        /// 获取数据库中机组参数ID
        /// </summary>
        /// <param name="unit_id">机组ID</param>
        /// <returns></returns>
        public DataSet Get_BASE_CRICPARA(string unit_id, out string errMsg)
        {
            this.init();
            errMsg = "";
            DataSet DS  = new DataSet();
            string  sql = "select T_PARAID,T_PARADESC from T_BASE_CRICPARA where T_UNITID	='"+ unit_id + "'";

            if (rlDBType == "SQL")
            {
            }
            else
            {
                DS = DBdb2.RunDataSet(sql, out errMsg);
            }

            return(DS);
        }
Beispiel #17
0
        /// <summary>
        /// 获取datagridview的值
        /// </summary>
        /// <param name="unit_id"></param>
        /// <returns></returns>
        public DataSet Get_GRID_DATA(string unit_id)
        {
            this.init();
            string  errMsg = "";
            DataSet DS     = new DataSet();

            string sql = "select 超温考核故障映射表.ID_KEY,超温考核测点表.考核点描述,超温考核故障类型表.考核下限, 超温考核故障类型表.考核上限,超温考核故障类型表.提示信息,超温考核测点表.机组,超温考核故障类型表.故障类型ID  from 超温考核故障映射表 inner join 超温考核测点表 " +
                         "on 超温考核测点表.考核点ID = 超温考核故障映射表.考核点ID and 超温考核测点表.机组 = '" + unit_id + "'  inner join 超温考核故障类型表 on 超温考核故障映射表.故障类型ID =  超温考核故障类型表.故障类型ID";

            if (rlDBType == "SQL")
            {
            }
            else
            {
                DS = DBdb2.RunDataSet(sql, out errMsg);
            }
            return(DS);
        }
Beispiel #18
0
        public DataSet GetSteamTurbineData(string unit)
        {
            this.init();
            string errMsg = "";

            DataSet DS  = new DataSet();
            string  sql = "select  D_L1, D_L2, D_Delta_dtr, D_Rdtr, D_L_well, D_W_well, D_Eta_p, D_Delta_fdj, D_Delta_gcb, D_Delta_qbb, D_DK_e, D_DB_e, D_DM_e, D_DL_e, D_P_e, D_D_gbmfgs," +
                          "D_D_gbmfhs,D_Dphp_e ,D_DN_e,D_Djc_e,D_A,I_N_pipe,I_N_flow,D_Din,D_Dout,I_N_ball_i,D_V_xb1I,D_V_xb2I,D_Z_xb1I,D_Z_xb2I,D_W_lqt_I,D_Txhs_in_d,D_Wd ,D_Din_xb1O,D_Din_xb2O,T_Type,I_N_ball_o,D_Z_xb1O,D_Z_xb2O,D_Eta_gr_xb1,D_Eta_gr_xb2 " +
                          "from T_INFO_PROCPARA_TURB  where T_INFO_PROCPARA_TURB.T_UNITID ='" + unit + "'   order by  T_INFO_PROCPARA_TURB.T_TIME desc  fetch first 1 rows only";

            if (rlDBType == "SQL")
            {
            }
            else
            {
                DS = DBdb2.RunDataSet(sql, out errMsg);
            }
            return(DS);
        }
Beispiel #19
0
        ///下载文档
        public bool  DownLoadFile(string id)
        {
            string errMsg = "", FileName = "";
            bool   flag = true;

            try
            {
                this.init();


                DataSet DS  = new DataSet();
                string  sql = "select * from T_BASE_DATUNM_DATA where ID_KEY=" + id.Split('|')[0];
                if (rlDBType == "SQL")
                {
                }
                else
                {
                    DS = DBdb2.RunDataSet(sql, out errMsg);
                }
                if (DS.Tables[0].Rows.Count > 0)
                {
                    foreach (DataRow row in DS.Tables[0].Rows)
                    {
                        FileName = row["FILE_DESC"].ToString();
                        byte[]     bytes = (byte[])row["FILE_DATA"];
                        FileStream fs    = new FileStream(id.Split('|')[1] + FileName, FileMode.CreateNew);
                        //FileStream fs = new FileStream(FileName, FileMode.Create, FileAccess.Write);
                        fs.Write(bytes, 0, bytes.Length);
                        fs.Flush();
                        fs.Close();
                        //ht.Add("T_TIME", row["T_TIME"].ToString());
                    }
                }
            }
            catch (Exception ce)
            {
                errMsg = ce.Message;
                flag   = false;
            }
            return(flag);
        }
Beispiel #20
0
        /// <summary>
        /// 通过报表名称,ORGID,TREEID获取报表样式
        /// </summary>
        /// <param name="rptName"></param>
        /// <param name="treeId"></param>
        /// <param name="orgId"></param>
        /// <returns></returns>
        public DataTable GetRptStyle(string rptId, string treeId, string orgId)
        {
            //var query = "SELECT * FROM T_INFO_SISREPORT WHERE REPORTNAME='" + rptName + "' AND ORGID='" + orgId +
            //            "' AND TREEID='" + treeId + "'";

            var query = "";

            //if(treeId !="" && orgId!="")
            //    query="SELECT * FROM T_INFO_SISREPORT WHERE reportid='" + rptId + "' AND ORGID='" + orgId +
            //            "' AND TREEID='" + treeId + "'";
            //else
            query = "SELECT * FROM T_INFO_SISREPORT WHERE reportid='" + rptId + "'";


            var     errMsg = string.Empty;
            DataSet ds;

            if (dbTypeValue == "SQL")
            {
                ds = DBsql.RunDataSet(query, out errMsg);
            }
            else if (dbTypeValue == "ORACLE")
            {
                ds = OracleHelper.Query(query);
            }
            else
            {
                ds = DBdb2.RunDataSet(query, out errMsg);
                //dt = DBdb2.RunDataTable(query, out errMsg);
            }

            if (string.IsNullOrEmpty(errMsg))
            {
                return(ds.Tables[0] ?? new DataTable());
            }
            else
            {
                throw new Exception(errMsg);
            }
        }
Beispiel #21
0
        public IList <Hashtable> Get_All_data(string unit_id)
        {
            this.init();
            ArrayList         list     = new ArrayList();
            DataSet           DS       = new DataSet();
            string            errMsg   = "";
            IList <Hashtable> listdata = new List <Hashtable>();
            Hashtable         ht       = new Hashtable();
            string            sql_str  = "";

            sql_str = "SELECT T_BASE_DATUNM_DATA.ID_KEY,FILE_DESC,PARADESC,T_TIME FROM T_BASE_DATUNM_DATA left join T_BASE_DATUNM  on  T_BASE_DATUNM_DATA.FILE_TYPE=T_BASE_DATUNM.PARA_ID where UNIT_ID ='" + unit_id.Split(',')[0] + "' ";
            if (unit_id.Split(',')[1] != "-请选择-")
            {
                sql_str += " and FILE_TYPE='" + unit_id.Split(',')[1] + "' ";
            }

            if (unit_id.Split(',')[2] != "")
            {
                sql_str += " and FILE_DESC like '" + Fuzzy_Query(unit_id.Split(',')[2]) + "' ";
            }
            sql_str += " order by T_TIME asc";
            DS       = DBdb2.RunDataSet(sql_str, out errMsg);
            if (DS.Tables[0].Rows.Count > 0)
            {
                int num = DS.Tables[0].Rows.Count;
                foreach (DataRow row in DS.Tables[0].Rows)
                {
                    ht = new Hashtable();
                    ht.Add("ID", num);
                    ht.Add("ID_KEY", row["ID_KEY"].ToString());
                    ht.Add("FILE_DESC", row["FILE_DESC"].ToString());
                    ht.Add("PARADESC", row["PARADESC"].ToString());
                    ht.Add("T_TIME", row["T_TIME"].ToString());
                    listdata.Add(ht);
                    num--;
                }
            }
            return(listdata);
        }
Beispiel #22
0
        /// <summary>
        /// 获取队标基准值公式
        /// </summary>
        /// <param name="unit">机组编号</param>
        /// <returns></returns>
        public DataSet GetBoilerData(string unit)
        {
            this.init();
            string  errMsg = "";
            DataSet DS     = new DataSet();

            //"T0_t_el主蒸汽温度(℃),"P0_t_el主蒸汽压力(MPa)",,'Trh_el再热温度(℃)','PLrh_el再热压损(%)','Pdp_el凝汽器压力(kPa)','Dgrjw_el过热减温水流量(t/h)','Dzrjw_el再热减温水流量(t/h)','Dpw_el锅炉连续排污流量(t/h)','DeltaT_gl_el凝汽器过冷度(℃)','Dtur_el小机用汽量(t/h)','O2_el排烟氧量(%)','Tpy_el排烟温度(℃)','Alpha_bs_el补水率(%)','Tfw_el给水温度(℃)','Eta_H_el高压缸效率(%)','Eta_M_el中压缸效率(%)','Theta_1_el#1高加上端差(℃)','Theta_2_el#2高加上端差(℃)','Theta_3_el#3高加上端差(℃)','Theta_5_el#5高加上端差(℃)','Theta_6_el#6高加上端差(℃)','Theta_7_el#7高加上端差(℃)','Theta_8_el#8高加上端差(℃)'

            string sql = "select T_PARAID,T_FORMULA from T_BASE_CALCPARA where T_UNITID = '" + unit + "' and ( T_PARAID= 'T0_t_el_B' or T_PARAID=  'P0_t_el_B' or T_PARAID=  'Trh_el_B' or T_PARAID=  'PLrh_el_B'" +
                         "or T_PARAID=  'Pdp_el_B' or T_PARAID=  'Dgrjw_el_B' or T_PARAID=  'Dzrjw_el_B' or T_PARAID=  'Dpw_el_B' or T_PARAID=  'Del_BtaT_gl_el_B' or T_PARAID=  'Dtur_el_B'" +
                         "or T_PARAID=  'O2_el_B' or T_PARAID=  'Tpy_el_B' or T_PARAID=  'Alpha_bs_el_B' or T_PARAID=  'Tfw_el_B' or T_PARAID=  'Eta_H_el_B' or T_PARAID=  'Eta_M_el_B' or " +
                         "T_PARAID=  'Theta_1_el_B' or T_PARAID=  'Theta_2_el_B' or T_PARAID=  'Theta_3_el_B' or T_PARAID=  'Theta_5_el_B' or T_PARAID=  'Theta_6_el_B' or " +
                         "T_PARAID=  'Theta_7_el_B' or T_PARAID=  'Theta_8_el_B') ";

            if (rlDBType == "SQL")
            {
            }
            else
            {
                DS = DBdb2.RunDataSet(sql, out errMsg);
            }
            return(DS);
        }
Beispiel #23
0
        public IList <Hashtable> Get_Required_data(string unit_id, string[] para_id, string[] per, string hanshu, string stime, string etime, out string[] hanshu_gongshi, out string errMsg)
        {
            this.init();
            errMsg         = "";
            hanshu_gongshi = new string [hanshu.Split(',').Length];
            ArrayList         list     = new ArrayList();
            DataSet           DS       = new DataSet();
            IList <Hashtable> listdata = new List <Hashtable>();
            Hashtable         ht       = new Hashtable();

            for (int i = 0; i < per.Length; i++)
            {
                string sql_Required = "select T_PARAID,T_OUTTABLE from T_BASE_CALCPARA where T_UNITID ='" + unit_id + "' and (T_PARAID ='Pel' or T_PARAID='" + para_id[0] + "' or T_PARAID ='" + para_id[1] + "')";
                //string sql = "select T_TYPE from T_BASE_CALCPARA where T_UNITID =" + unit_id + "' and T_PARAID='" + para_id+",";
                if (rlDBType == "SQL")
                {
                }
                else
                {
                    DS = DBdb2.RunDataSet(sql_Required, out errMsg);
                }
                if ((DS.Tables[0].Rows.Count > 0) && (DS.Tables[0].Rows[0]["T_OUTTABLE"].ToString() != "") && (DS.Tables[0].Rows[1]["T_OUTTABLE"].ToString() != "") && (DS.Tables[0].Rows[2]["T_OUTTABLE"].ToString() != ""))
                {
                    ht = new Hashtable();
                    ArrayList ld = new ArrayList();
                    ArrayList ldd = new ArrayList();
                    ArrayList lt = new ArrayList();
                    ArrayList ltt = new ArrayList();
                    string    str1 = "", str2 = "", str3 = "";

                    for (int j = 0; j < DS.Tables[0].Rows.Count; j++)
                    {
                        if (DS.Tables[0].Rows[j]["T_PARAID"].ToString() == "Pel")
                        {
                            str1 = "select  ss.D_VALUE as " + para_id[0] + ",sss.D_VALUE as " + para_id[1] + " from (select  s.D_VALUE,s. T_DATETIME from (select D_VALUE,T_DATETIME  from " + DS.Tables[0].Rows[j]["T_OUTTABLE"].ToString() + ", " +
                                   "(select T_UNITID,\"D_CAPABILITY\" from T_BASE_UNIT where T_UNITID ='" + unit_id + "') as a where  a.T_UNITID = T_INFO_CALCDATA.T_UNITID  and " +
                                   "T_INFO_CALCDATA.T_PARAID = 'Pel' and  T_INFO_CALCDATA.D_VALUE between a.\"D_CAPABILITY\"*" + Convert.ToDouble(per[i].Split('|')[0]) / 100 +
                                   " and a.\"D_CAPABILITY\"*" + Convert.ToDouble(per[i].Split('|')[1]) / 100 + "   ) as s where s.T_DATETIME between '" + stime + "' and '" + etime +
                                   "' group by  s.D_VALUE,s. T_DATETIME order by s.T_DATETIME asc) as q, ";
                        }
                        else if (DS.Tables[0].Rows[j]["T_PARAID"].ToString() == para_id[0])
                        {
                            str2 = "(select D_VALUE,T_DATETIME  from " + DS.Tables[0].Rows[j]["T_OUTTABLE"].ToString() + " where T_UNITID ='" + unit_id + "' and  T_PARAID='" + para_id[0] + "' ) as ss,";
                        }
                        else if (DS.Tables[0].Rows[j]["T_PARAID"].ToString() == para_id[1])
                        {
                            str3 = "(select D_VALUE,T_DATETIME  from " + DS.Tables[0].Rows[j]["T_OUTTABLE"].ToString() + " where T_UNITID ='" + unit_id + "' and  T_PARAID='" + para_id[1] + "' ) as sss where  q.T_DATETIME = ss.T_DATETIME and  q.T_DATETIME  =sss.T_DATETIME ";
                        }
                    }
                    //string append_sql = "select  ss.D_VALUE as " + para_id[0] + ",sss.D_VALUE as " + para_id[1] + " from (select  s.D_VALUE,s. T_DATETIME from " +
                    //"(select D_VALUE,T_DATETIME  from " + DS.Tables[0].Rows[0]["T_OUTTABLE"].ToString() + ", (select T_UNITID,\"D_CAPABILITY\" from T_BASE_UNIT where T_UNITID ='" + unit_id + "') as a where  a.T_UNITID = T_INFO_CALCDATA.T_UNITID  and "+
                    //"T_INFO_CALCDATA.T_PARAID = 'Pel' and  T_INFO_CALCDATA.D_VALUE between a.\"D_CAPABILITY\"*" + Convert.ToDouble(per[i].Split('|')[0]) / 100 + " and a.\"D_CAPABILITY\"*" + Convert.ToDouble(per[i].Split('|')[1]) / 100 + "   ) as s where s.T_DATETIME between '" + stime + "' and '" + etime + "' group by  s.D_VALUE,s. T_DATETIME " +
                    //"order by s.T_DATETIME asc) as q,(select D_VALUE,T_DATETIME  from "+DS.Tables[0].Rows[1]["T_OUTTABLE"].ToString()+ " where T_UNITID ='"+unit_id+"' and  T_PARAID='"+DS.Tables[0].Rows[1]["T_PARAID"].ToString()+"' ) as ss,"+
                    //"(select D_VALUE,T_DATETIME  from " + DS.Tables[0].Rows[2]["T_OUTTABLE"].ToString() + " where T_UNITID ='" + unit_id + "' and  T_PARAID='" + DS.Tables[0].Rows[2]["T_PARAID"].ToString() + "' ) as sss where  q.T_DATETIME = ss.T_DATETIME and  q.T_DATETIME  =sss.T_DATETIME ";

                    string append_sql = str1 + str2 + str3;
                    if (rlDBType == "SQL")
                    {
                    }
                    else
                    {
                        DS = DBdb2.RunDataSet(append_sql, out errMsg);
                    }
                    if (DS.Tables[0].Rows.Count > 0)
                    {
                        double[] x        = new double[DS.Tables[0].Rows.Count];
                        double[] y        = new double[DS.Tables[0].Rows.Count];
                        double   min_data = Convert.ToDouble(DS.Tables[0].Rows[0][0].ToString());
                        double   max_data = Convert.ToDouble(DS.Tables[0].Rows[0][0].ToString());
                        for (int j = 0; j < DS.Tables[0].Rows.Count; j++)
                        {
                            if ((DS.Tables[0].Rows[j][0].ToString() != "-9999") && (DS.Tables[0].Rows[j][1].ToString() != "-9999"))
                            {
                                ld = new ArrayList();
                                ld.Add(Math.Round(Convert.ToDouble(DS.Tables[0].Rows[j][0].ToString()), 3));
                                if (min_data > Convert.ToDouble(DS.Tables[0].Rows[j][0].ToString()))
                                {
                                    min_data = Convert.ToDouble(DS.Tables[0].Rows[j][0].ToString());
                                }
                                if (max_data < Convert.ToDouble(DS.Tables[0].Rows[j][0].ToString()))
                                {
                                    max_data = Convert.ToDouble(DS.Tables[0].Rows[j][0].ToString());
                                }
                                x[j] = Convert.ToDouble(DS.Tables[0].Rows[j][0].ToString());
                                ld.Add(Math.Round(Convert.ToDouble(DS.Tables[0].Rows[j][1].ToString()), 3));
                                //if (j == 0 || j == DS.Tables[0].Rows.Count-1)
                                //{
                                //    ltt.Add(ld);
                                //}
                                y[j] = Convert.ToDouble(DS.Tables[0].Rows[j][1].ToString());
                                lt.Add(ld);
                            }
                        }
                        if (hanshu.Split(',')[0].Trim() == "多项式")
                        {
                            //double[] xx = new double[8] { 1.1, 1.24, 2.37, 5.12, 8.12, 12.19, 17.97, 24.99 };
                            //double[] yy = new double[8] { 2200.1, 29152.3, 47025.3, 86852.3, 132450.6, 200302.25, 284688.1, 396988.3 };



                            string   gongshi = "";
                            double[] z       = new double[Convert.ToInt32(hanshu.Split(',')[1]) + 1];
                            funPolynomial(x, y, Convert.ToInt32(hanshu.Split(',')[1]), out gongshi, out z);

                            hanshu_gongshi[i] = gongshi;
                            double num = (max_data - min_data) / 20;
                            for (double m = min_data; m < max_data; m = m + num)
                            {
                                ldd = new ArrayList();
                                ldd.Add(Math.Round(m, 2));
                                double y_data = 0;
                                for (int j = z.Length - 1; j >= 0; j--)
                                {
                                    y_data += z[j] * (Math.Pow(m, j));
                                }
                                ldd.Add(Math.Round(y_data, 2));
                                ltt.Add(ldd);
                            }
                        }
                        else if (hanshu.Split(',')[0].Trim() == "线性")
                        {
                            string gongshi = "", a = "", b = "";
                            funXianxing(x, y, out gongshi, out a, out b);
                            hanshu_gongshi[i] = gongshi;
                            double num = (max_data - min_data) / 20;
                            for (double m = min_data; m < max_data; m = m + num)
                            {
                                ldd = new ArrayList();
                                ldd.Add(Math.Round(m, 2));
                                ldd.Add(Math.Round(Convert.ToDouble(a) * m + Convert.ToDouble(b), 2));
                                ltt.Add(ldd);
                            }
                        }
                        else if (hanshu.Split(',')[0].Trim() == "指数")
                        {
                            //y=a*exp(b*x)
                            string gongshi = "", a = "", b = "";
                            funExponent(x, y, out gongshi, out a, out b);
                            hanshu_gongshi[i] = gongshi;
                            double num = (max_data - min_data) / 20;
                            for (double m = min_data; m < max_data; m = m + num)
                            {
                                ldd = new ArrayList();
                                ldd.Add(Math.Round(m, 2));
                                ldd.Add(Math.Round(Convert.ToDouble(a) * (Math.Exp(Convert.ToDouble(b) * m)), 2));
                                ltt.Add(ldd);
                            }
                        }
                        else if (hanshu.Split(',')[0].Trim() == "对数")
                        {
                            //y=a*ln(x)+b
                            string gongshi = "", a = "", b = "";
                            funLogarithm(x, y, out gongshi, out a, out b);
                            hanshu_gongshi[i] = gongshi;
                            double num = (max_data - min_data) / 20;
                            for (double m = min_data; m < max_data; m = m + num)
                            {
                                ldd = new ArrayList();
                                ldd.Add(Math.Round(m, 2));
                                ldd.Add(Math.Round(Convert.ToDouble(a) * Math.Log(m) + Convert.ToDouble(b), 2));
                                ltt.Add(ldd);
                            }
                        }
                        else if (hanshu.Split(',')[0].Trim() == "幂")
                        {
                            //y=a*(x^b)
                            string gongshi = "", a = "", b = "";
                            funPower(x, y, out gongshi, out a, out b);
                            hanshu_gongshi[i] = gongshi;
                            double num = (max_data - min_data) / 20;
                            for (double m = min_data; m < max_data; m = m + num)
                            {
                                ldd = new ArrayList();
                                ldd.Add(Math.Round(m, 2));
                                ldd.Add(Math.Round(Convert.ToDouble(a) * (Math.Pow(m, Convert.ToDouble(b))), 2));
                                ltt.Add(ldd);
                            }
                        }
                        ht.Add("data", lt);
                        ht.Add("type", "scatter");
                        ht.Add("name", "散点图");
                        listdata.Add(ht);
                        ht = new Hashtable();
                        ht.Add("data", ltt);
                        ht.Add("type", "line");
                        ht.Add("name", "拟合公式曲线图");
                        listdata.Add(ht);
                    }
                }
            }
            return(listdata);
        }
Beispiel #24
0
        public IList <Hashtable> GetChartData(string para_id)
        {
            this.init();
            string            errMsg   = "";
            DataSet           DS       = new DataSet();
            DataSet           DDS      = new DataSet();
            IList <Hashtable> listdata = new List <Hashtable>();

            string[] para = new string[0];;
            string   sql  = "select T_UNITID,T_UNITDESC  from T_BASE_UNIT where T_CAPABILITYLEVEL ='" + para_id.Split(',')[0] + "' and T_PLANTTYPE='" + para_id.Split(',')[1] + "'  and T_BOILERID='" + para_id.Split(',')[2] + "' and T_STEAMID ='" + para_id.Split(',')[3] + "'";

            if (rlDBType == "SQL")
            {
            }
            else
            {
                DS   = DBdb2.RunDataSet(sql, out errMsg);
                para = new string[DS.Tables[0].Rows.Count];
            }
            if (DS.Tables[0].Rows.Count > 0)
            {
                string[] str = new string[DS.Tables[0].Rows.Count];
                for (int i = 0; i < DS.Tables[0].Rows.Count; i++)
                {
                    para[i] = DS.Tables[0].Rows[i][1].ToString();
                    string sql_Required = "select T_PARAID,T_OUTTABLE from T_BASE_CALCPARA where T_UNITID ='" + DS.Tables[0].Rows[i][0].ToString() + "' and (T_PARAID ='Pel' or T_PARAID='P0_t_el_B' or T_PARAID='P0_t' or T_PARAID='T0_t' or T_PARAID='T0_t_el_B' or T_PARAID='" + para_id.Trim(',').Split(',')[6] + "')";
                    if (rlDBType == "SQL")
                    {
                    }
                    else
                    {
                        DDS = DBdb2.RunDataSet(sql_Required, out errMsg);
                    }

                    string str_pel = "", str_P0_t = "", str_T0_t = "", append_sql = "";
                    if (DDS.Tables[0].Rows.Count > 0)
                    {
                        for (int j = 0; j < DDS.Tables[0].Rows.Count; j++)
                        {
                            string out_table = "";
                            if (DDS.Tables[0].Rows[j]["T_OUTTABLE"].ToString() == "")
                            {
                                out_table = "T_INFO_CALCDATA";
                            }
                            else
                            {
                                out_table = DDS.Tables[0].Rows[j]["T_OUTTABLE"].ToString();
                            }
                            if (DDS.Tables[0].Rows[j]["T_PARAID"].ToString() == "Pel")
                            {
                                str_pel = "(select D_VALUE,a.D_CAPABILITY,T_DATETIME  from " + out_table + ", (select T_UNITID,\"D_CAPABILITY\" from T_BASE_UNIT where T_UNITID ='" + DS.Tables[0].Rows[i][0].ToString() + "') as a where  a.T_UNITID = T_INFO_CALCDATA.T_UNITID  and   T_INFO_CALCDATA.T_PARAID = 'Pel' ) as s ";
                            }
                            else if ((DDS.Tables[0].Rows[j]["T_PARAID"].ToString() == "P0_t") || (DDS.Tables[0].Rows[j]["T_PARAID"].ToString() == "P0_t_el_B"))
                            {
                                str_P0_t = ",(select " + out_table + ".D_VALUE,b.D_VALUE as b_D_VALUE, " + out_table + ".T_DATETIME  from  " + out_table + " inner join (select D_VALUE,T_DATETIME  from  " + out_table + " where  T_PARAID  ='P0_t_el_B') as b " +
                                           "on  " + out_table + ".T_DATETIME = b.T_DATETIME and " + out_table + ".T_PARAID ='P0_t' and T_UNITID ='" + DS.Tables[0].Rows[i][0].ToString() + "' ) as ss ";
                            }
                            else if ((DDS.Tables[0].Rows[j]["T_PARAID"].ToString() == "T0_t") || (DDS.Tables[0].Rows[j]["T_PARAID"].ToString() == "T0_t_el_B"))
                            {
                                str_T0_t = ",(select " + out_table + ".D_VALUE,c.D_VALUE as c_D_VALUE," + out_table + ".T_DATETIME  from  " + out_table + " inner join (select D_VALUE ,T_DATETIME from  " + out_table + " where  T_PARAID  ='T0_t_el_B') as c" +
                                           " on " + out_table + ".T_DATETIME = c.T_DATETIME and " + out_table + ".T_PARAID ='T0_t' and T_UNITID ='" + DS.Tables[0].Rows[i][0].ToString() + "' ) as sss ";
                            }
                            else
                            {
                                append_sql = ",(select " + out_table + ".D_VALUE," + out_table + ".T_DATETIME from " + out_table + "  where T_PARAID='" + DDS.Tables[0].Rows[j]["T_PARAID"].ToString() + "' and T_UNITID='" + DS.Tables[0].Rows[i][0].ToString() + "') as  ssss ";
                            }
                        }
                        string sql_num = "";
                        if ((Convert.ToDateTime(para_id.Trim(',').Split(',')[5].Split(';')[1]).Month == DateTime.Now.Month) && (Convert.ToDateTime(para_id.Trim(',').Split(',')[5].Split(';')[1]).Year == DateTime.Now.Year))
                        {
                            sql_num = DateTime.Now.Day.ToString();
                        }
                        else
                        {
                            sql_num = DateTime.DaysInMonth(Convert.ToDateTime(para_id.Trim(',').Split(',')[5].Split(';')[1]).Year, Convert.ToDateTime(para_id.Trim(',').Split(',')[5].Split(';')[1]).Month).ToString();
                        }
                        string str_sql = "select s.D_VALUE,s.D_CAPABILITY,ss.D_VALUE,ss.b_D_VALUE,sss.D_VALUE,sss.c_D_VALUE,ssss.D_VALUE,s.T_DATETIME from " + str_pel + str_P0_t + str_T0_t + append_sql + "where  s.T_DATETIME = ss.T_DATETIME and   s.T_DATETIME = sss.T_DATETIME  and  s.T_DATETIME = ssss.T_DATETIME   and  s.T_DATETIME between '" + para_id.Trim(',').Split(',')[5].Split(';')[0] + "-01 00:00:00' and '" + para_id.Trim(',').Split(',')[5].Split(';')[1] + "-" + sql_num + " 00:00:00'  order by s.T_DATETIME asc ";


                        Hashtable ht = new Hashtable();

                        if (rlDBType == "SQL")
                        {
                        }
                        else
                        {
                            ht = new Hashtable();
                            ht.Add("name", para[i]);

                            ArrayList ld = new ArrayList();
                            ArrayList lt = new ArrayList();

                            DataSet DDDDS = DBdb2.RunDataSet(str_sql, out errMsg);
                            double  data_sql = 0; int num = 0;
                            if (DDDDS.Tables[0].Rows.Count > 0)
                            {
                                for (int j = 0; j < DDDDS.Tables[0].Rows.Count; j++)
                                {//(Convert.ToInt32(para_id.Trim(',').Split(',')[4]) + 5) * 0.01
                                    if ((Convert.ToDouble(DDDDS.Tables[0].Rows[j][0].ToString()) / Convert.ToDouble(DDDDS.Tables[0].Rows[j][1].ToString()) > ((Convert.ToInt32(para_id.Trim(',').Split(',')[4]) - 5) * 0.01)) && (Convert.ToDouble(DDDDS.Tables[0].Rows[j][0].ToString()) / Convert.ToDouble(DDDDS.Tables[0].Rows[j][1].ToString()) < ((Convert.ToInt32(para_id.Trim(',').Split(',')[4]) + 5) * 0.01)) && (Math.Abs(Convert.ToDouble(DDDDS.Tables[0].Rows[j][2].ToString()) - Convert.ToDouble(DDDDS.Tables[0].Rows[j][3].ToString())) / Convert.ToDouble(DDDDS.Tables[0].Rows[j][3].ToString()) < 0.05) && (Math.Abs(Convert.ToDouble(DDDDS.Tables[0].Rows[j][4].ToString()) - Convert.ToDouble(DDDDS.Tables[0].Rows[j][5].ToString())) / Convert.ToDouble(DDDDS.Tables[0].Rows[j][5].ToString()) < 0.05))
                                    {
                                        num++;
                                        data_sql += Convert.ToDouble(DDDDS.Tables[0].Rows[j][6]);
                                    }
                                }
                            }
                            ld = new ArrayList();
                            ld.Add(para[i]);
                            if (data_sql == 0)
                            {
                                ld.Add(data_sql);
                            }
                            else
                            {
                                ld.Add(data_sql / num);
                            }

                            lt.Add(ld);
                            ht.Add("data", lt);
                            listdata.Add(ht);
                        }
                    }
                }
            }

            return(listdata);
        }
Beispiel #25
0
        public IList <Hashtable> Get_All_data(string unit_id, string[] para_id, string per, string stime, string etime, out string errMsg)
        {
            this.init();
            ArrayList list = new ArrayList();
            string    str_pel = "", str_P0_t = "", str_T0_t = "";
            DataSet   DS           = new DataSet();
            string    sql_Required = "select T_PARAID,T_OUTTABLE from T_BASE_CALCPARA where T_UNITID ='" + unit_id + "' and (T_PARAID ='Pel' or T_PARAID='P0_t_el_B' or T_PARAID='P0_t' or T_PARAID='T0_t' or T_PARAID='T0_t_el_B'";

            for (int i = 0; i < para_id.Length; i++)
            {
                sql_Required += " or T_PARAID='" + para_id[i].ToString() + "' ";
            }
            sql_Required += ")";
            if (rlDBType == "SQL")
            {
            }
            else
            {
                DS = DBdb2.RunDataSet(sql_Required, out errMsg);
            }

            string[] append_sql = new string[DS.Tables[0].Rows.Count]; //呈现曲线sql语句
            int      num_para = 0, num_add = 0;
            string   para_pin = "";

            for (int i = 0; i < DS.Tables[0].Rows.Count; i++)
            {
                string out_table = "";
                if (DS.Tables[0].Rows[i]["T_OUTTABLE"].ToString() == "")
                {
                    out_table = "T_INFO_CALCDATA";
                }
                else
                {
                    out_table = DS.Tables[0].Rows[i]["T_OUTTABLE"].ToString();
                }

                if (DS.Tables[0].Rows[i]["T_PARAID"].ToString() == "Pel")
                {
                    str_pel = "(select D_VALUE,a.D_CAPABILITY,T_DATETIME  from " + out_table + ", (select T_UNITID,\"D_CAPABILITY\" from T_BASE_UNIT where T_UNITID ='" + unit_id + "') as a where  a.T_UNITID = T_INFO_CALCDATA.T_UNITID  and   T_INFO_CALCDATA.T_PARAID = 'Pel' ) as s ";
                }
                else if ((DS.Tables[0].Rows[i]["T_PARAID"].ToString() == "P0_t") || (DS.Tables[0].Rows[i]["T_PARAID"].ToString() == "P0_t_el_B"))
                {
                    str_P0_t = ",(select " + out_table + ".D_VALUE,b.D_VALUE as b_D_VALUE, " + out_table + ".T_DATETIME  from  " + out_table + " inner join (select D_VALUE,T_DATETIME  from  " + out_table + " where  T_PARAID  ='P0_t_el_B') as b " +
                               "on  " + out_table + ".T_DATETIME = b.T_DATETIME and " + out_table + ".T_PARAID ='P0_t' and T_UNITID ='" + unit_id + "' ) as ss ";
                }
                else if ((DS.Tables[0].Rows[i]["T_PARAID"].ToString() == "T0_t") || (DS.Tables[0].Rows[i]["T_PARAID"].ToString() == "T0_t_el_B"))
                {
                    str_T0_t = ",(select " + out_table + ".D_VALUE,c.D_VALUE as c_D_VALUE," + out_table + ".T_DATETIME  from  " + out_table + " inner join (select D_VALUE ,T_DATETIME from  " + out_table + " where  T_PARAID  ='T0_t_el_B') as c" +
                               " on " + out_table + ".T_DATETIME = c.T_DATETIME and " + out_table + ".T_PARAID ='T0_t' and T_UNITID ='" + unit_id + "' ) as sss ";
                }
                else
                {
                    para_pin += DS.Tables[0].Rows[i]["T_PARAID"].ToString() + ".D_VALUE  as " + DS.Tables[0].Rows[i]["T_PARAID"].ToString() + ",";

                    append_sql[num_add] = "select " + DS.Tables[0].Rows[i]["T_OUTTABLE"].ToString() + ".D_VALUE," + DS.Tables[0].Rows[i]["T_OUTTABLE"].ToString() + ".T_DATETIME  from " + out_table + "  where T_PARAID='" + DS.Tables[0].Rows[i]["T_PARAID"].ToString() + "' and T_UNITID='" + unit_id + "' |" + DS.Tables[0].Rows[i]["T_PARAID"].ToString();
                    num_add++;
                }
            }
            string sql = str_pel + str_P0_t + str_T0_t;

            IList <Hashtable> listdata = new List <Hashtable>();
            int    num_pin = 0;
            string sql_pin = "", str_sql = "", str_where = "";

            Hashtable ht = new Hashtable();

            for (int i = 0; i < append_sql.Length; i++)
            {
                if (append_sql[i] != null)
                {
                    //if (num_pin==0)
                    //{
                    //    //sql_pin = "select " + append_sql[i].Split('|')[2].ToString() + ".D_VALUE as " + append_sql[i].Split('|')[3].ToString() + ",q.D_VALUE as Pel," + append_sql[i].Split('|')[2].ToString() + ".T_DATETIME as T_DATETIME from " + append_sql[i].Split('|')[2].ToString() + " inner join (" + sql + ") as q on " + append_sql[i].Split('|')[2].ToString() + ".T_DATETIME =q.T_DATETIME" + append_sql[i].Split('|')[1].ToString();
                    //    //num_pin++;
                    //}
                    //else
                    //{
                    str_sql += "(" + append_sql[i].Split('|')[0].ToString() + ") as " + append_sql[i].Split('|')[1].ToString() + ",";
                    if (i != append_sql.Length - 1)
                    {
                        str_where += "s.T_DATETIME=" + append_sql[i].Split('|')[1].ToString() + ".T_DATETIME and ";
                    }
                    else
                    {
                        str_where += "s.T_DATETIME=" + append_sql[i].Split('|')[1].ToString() + ".T_DATETIME ";
                    }
                    //}
                }
            }
            if (str_where != "")
            {
                string sql_str = "select s.D_VALUE as Pel,s.D_CAPABILITY,ss.D_VALUE,ss.b_D_VALUE,sss.D_VALUE,sss.c_D_VALUE,Eta_b.D_VALUE as Eta_b, Eta_M.D_VALUE as Eta_M,q_fd.D_VALUE as q_fd,Eta_H.D_VALUE as Eta_H,b_g.D_VALUE as b_g, Rho.D_VALUE as Rho,s.T_DATETIME  as T_DATETIME from " + sql + " ," + str_sql.TrimEnd(',') + " where s.T_DATETIME = ss.T_DATETIME and   s.T_DATETIME = sss.T_DATETIME   and  " + str_where.Remove(str_where.Length - 5, 5) + " and s.T_DATETIME between '" + stime + "' and '" + etime + "'  order by s.T_DATETIME asc ";
                DS = DBdb2.RunDataSet(sql_str, out errMsg);
                foreach (DataRow row in DS.Tables[0].Rows)
                {
                    if ((row["Pel"].ToString() != "-9999") && (row["Eta_b"].ToString() != "-9999") && (row["Eta_M"].ToString() != "-9999") && (row["q_fd"].ToString() != "-9999") && (row["b_g"].ToString() != "-9999") && (row["Eta_b"].ToString() != "-9999") && (row["Rho"].ToString() != "-9999") && (Convert.ToDouble(row["Pel"].ToString()) / Convert.ToDouble(row[1].ToString()) > (Convert.ToDouble(per.Split('|')[0]))) && (Convert.ToDouble(row[0].ToString()) / Convert.ToDouble(row[1].ToString()) < (Convert.ToDouble(per.Split('|')[1]))) && (Math.Abs(Convert.ToDouble(row[2].ToString()) - Convert.ToDouble(row[3].ToString())) / Convert.ToDouble(row[3].ToString()) < 0.05) && (Math.Abs(Convert.ToDouble(row[4].ToString()) - Convert.ToDouble(row[5].ToString())) / Convert.ToDouble(row[5].ToString()) < 0.05))
                    {
                        ht = new Hashtable();
                        ht.Add("Pel", Math.Round(Convert.ToDouble(row["Pel"].ToString()), 3));
                        ht.Add("Eta_b", Math.Round(Convert.ToDouble(row["Eta_b"].ToString()), 3));
                        ht.Add("Eta_M", Math.Round(Convert.ToDouble(row["Eta_M"].ToString()), 3));
                        ht.Add("q_fd", Math.Round(Convert.ToDouble(row["q_fd"].ToString()), 3));
                        ht.Add("b_g", Math.Round(Convert.ToDouble(row["b_g"].ToString()), 3));
                        ht.Add("Eta_H", Math.Round(Convert.ToDouble(row["Eta_H"].ToString()), 3));
                        ht.Add("Rho", Math.Round(Convert.ToDouble(row["Rho"].ToString()), 3));
                        ht.Add("T_DATETIME", row["T_DATETIME"].ToString());
                        listdata.Add(ht);
                    }
                }
            }
            errMsg = "";
            return(listdata);
        }
Beispiel #26
0
        public IList <Hashtable> Get_Required_data(string unit_id, string[] para_id, string per, string stime, string etime, out string errMsg, out string max_data, out string min_data)
        {
            this.init();
            errMsg = ""; max_data = ""; min_data = "";
            ArrayList list = new ArrayList();
            string    str_pel = "", str_P0_t = "", str_T0_t = "";// str_b_g = "", str_q_fd = "", str_Eta_H = "", str_Eta_M = "", str_Rho = "", str_Eta_b = ""
            DataSet   DS = new DataSet();
            //SELECT T_PARAID,T_OUTTABLE FROM ADMINISTRATOR.T_BASE_CALCPARA where T_UNITID ='GZTZ-01' and (T_PARAID ='Pel' or T_PARAID='P0_t_el_B' or T_PARAID='P0_t' or T_PARAID='T0_t' or T_PARAID='T0_t_el_B')
            string sql_Required = "select T_PARAID,T_DESC,T_OUTTABLE from T_BASE_CALCPARA where T_UNITID ='" + unit_id + "' and (T_PARAID ='Pel' or T_PARAID='P0_t_el_B' or T_PARAID='P0_t' or T_PARAID='T0_t' or T_PARAID='T0_t_el_B'";

            for (int i = 0; i < para_id.Length; i++)
            {
                sql_Required += " or T_PARAID='" + para_id[i].ToString() + "' ";
            }
            sql_Required += ")";
            if (rlDBType == "SQL")
            {
            }
            else
            {
                DS = DBdb2.RunDataSet(sql_Required, out errMsg);
            }

            string[] append_sql = new string[DS.Tables[0].Rows.Count]; //呈现曲线sql语句

            for (int i = 0; i < DS.Tables[0].Rows.Count; i++)
            {
                string out_table = "";
                if (DS.Tables[0].Rows[i]["T_OUTTABLE"].ToString() == "")
                {
                    out_table = "T_INFO_CALCDATA";
                }
                else
                {
                    out_table = DS.Tables[0].Rows[i]["T_OUTTABLE"].ToString();
                }

                if (DS.Tables[0].Rows[i]["T_PARAID"].ToString() == "Pel")
                {
                    str_pel = "(select D_VALUE,a.D_CAPABILITY,T_DATETIME  from " + out_table + ", (select T_UNITID,\"D_CAPABILITY\" from T_BASE_UNIT where T_UNITID ='" + unit_id + "') as a where  a.T_UNITID = T_INFO_CALCDATA.T_UNITID  and   T_INFO_CALCDATA.T_PARAID = 'Pel' ) as s ";
                }
                else if ((DS.Tables[0].Rows[i]["T_PARAID"].ToString() == "P0_t") || (DS.Tables[0].Rows[i]["T_PARAID"].ToString() == "P0_t_el_B"))
                {
                    str_P0_t = ",(select " + out_table + ".D_VALUE,b.D_VALUE as b_D_VALUE, " + out_table + ".T_DATETIME  from  " + out_table + " inner join (select D_VALUE,T_DATETIME  from  " + out_table + " where  T_PARAID  ='P0_t_el_B') as b " +
                               "on  " + out_table + ".T_DATETIME = b.T_DATETIME and " + out_table + ".T_PARAID ='P0_t' and T_UNITID ='" + unit_id + "' ) as ss ";
                }
                else if ((DS.Tables[0].Rows[i]["T_PARAID"].ToString() == "T0_t") || (DS.Tables[0].Rows[i]["T_PARAID"].ToString() == "T0_t_el_B"))
                {
                    str_T0_t = ",(select " + out_table + ".D_VALUE,c.D_VALUE as c_D_VALUE," + out_table + ".T_DATETIME  from  " + out_table + " inner join (select D_VALUE ,T_DATETIME from  " + out_table + " where  T_PARAID  ='T0_t_el_B') as c" +
                               " on " + out_table + ".T_DATETIME = c.T_DATETIME and " + out_table + ".T_PARAID ='T0_t' and T_UNITID ='" + unit_id + "' ) as sss ";
                }
                else
                {
                    for (int j = 0; j < para_id.Length; j++)
                    {
                        if (para_id[j] == DS.Tables[0].Rows[i]["T_PARAID"].ToString())
                        {
                            //append_sql[j] = "select " + DS.Tables[0].Rows[i]["T_OUTTABLE"].ToString() + ".D_VALUE," + DS.Tables[0].Rows[i]["T_OUTTABLE"].ToString() + ".T_DATETIME  from " + DS.Tables[0].Rows[i]["T_OUTTABLE"].ToString() + " | where T_PARAID='" + DS.Tables[0].Rows[i]["T_PARAID"].ToString() + "' and T_UNITID='" + unit_id + "' |" + DS.Tables[0].Rows[i]["T_OUTTABLE"].ToString();
                            append_sql[j] = ",(select " + out_table + ".D_VALUE," + out_table + ".T_DATETIME from " + out_table + "  where T_PARAID='" + DS.Tables[0].Rows[i]["T_PARAID"].ToString() + "' and T_UNITID='" + unit_id + "') as  ssss |" + DS.Tables[0].Rows[i]["T_DESC"].ToString();

                            break;
                        }
                    }
                }
            }
            //string sql = "select s.D_VALUE,s.T_DATETIME from "+str_pel+str_P0_t+str_T0_t;
            string str_sql = "";

            str_sql = "select s.D_VALUE,s.D_CAPABILITY,ss.D_VALUE,ss.b_D_VALUE,sss.D_VALUE,sss.c_D_VALUE,s.T_DATETIME from " + str_pel + str_P0_t + str_T0_t + "where  s.T_DATETIME = ss.T_DATETIME and   s.T_DATETIME = sss.T_DATETIME   and  s.T_DATETIME between '" + stime + "' and '" + etime + "'  order by s.T_DATETIME asc ";

            IList <Hashtable> listdata = new List <Hashtable>();

            Hashtable ht = new Hashtable();

            for (int i = 0; i < para_id.Length; i++)
            {
                if (para_id[i].ToString() == "Pel")
                {
                    ht = new Hashtable();
                    ht.Add("name", "机组负荷");
                    ht.Add("yAxis", i);
                    ArrayList ld = new ArrayList();
                    ArrayList lt = new ArrayList();
                    DS = DBdb2.RunDataSet(str_sql, out errMsg);
                    if (DS.Tables[0].Rows.Count > 0)
                    {
                        double max_data1 = Convert.ToDouble(DS.Tables[0].Rows[0][0].ToString());
                        double min_data1 = Convert.ToDouble(DS.Tables[0].Rows[0][0].ToString());
                        for (int j = 0; j < DS.Tables[0].Rows.Count; j++)
                        {
                            if ((DS.Tables[0].Rows[j][0].ToString() != "- 9999") && (Convert.ToDouble(DS.Tables[0].Rows[j][0].ToString()) / Convert.ToDouble(DS.Tables[0].Rows[j][1].ToString()) > (Convert.ToDouble(per.Split('|')[0]))) && (Convert.ToDouble(DS.Tables[0].Rows[j][0].ToString()) / Convert.ToDouble(DS.Tables[0].Rows[j][1].ToString()) < (Convert.ToDouble(per.Split('|')[1]))) && (Math.Abs(Convert.ToDouble(DS.Tables[0].Rows[j][2].ToString()) - Convert.ToDouble(DS.Tables[0].Rows[j][3].ToString())) / Convert.ToDouble(DS.Tables[0].Rows[j][3].ToString()) < 0.05) && (Math.Abs(Convert.ToDouble(DS.Tables[0].Rows[j][4].ToString()) - Convert.ToDouble(DS.Tables[0].Rows[j][5].ToString())) / Convert.ToDouble(DS.Tables[0].Rows[j][5].ToString()) < 0.05))
                            {
                                ld = new ArrayList();

                                ld.Add(DateTimeToUTC(DateTime.Parse(DS.Tables[0].Rows[j][6].ToString())));

                                ld.Add(Math.Round(Convert.ToDouble(DS.Tables[0].Rows[j][0].ToString()), 3));

                                lt.Add(ld);

                                if (max_data1 < Convert.ToDouble(DS.Tables[0].Rows[j][0].ToString()))
                                {
                                    max_data1 = Convert.ToDouble(DS.Tables[0].Rows[j][0].ToString());
                                }
                                if (min_data1 > Convert.ToDouble(DS.Tables[0].Rows[j][0].ToString()))
                                {
                                    min_data1 = Convert.ToDouble(DS.Tables[0].Rows[j][0].ToString());
                                }
                            }
                        }
                        max_data = max_data1.ToString();
                        min_data = min_data1.ToString();
                    }
                    ht.Add("data", lt);
                    listdata.Add(ht);
                }
            }



            for (int i = 0; i < append_sql.Length; i++)
            {
                if (append_sql[i] != null)
                {
                    str_sql = "select s.D_VALUE,s.D_CAPABILITY,ss.D_VALUE,ss.b_D_VALUE,sss.D_VALUE,sss.c_D_VALUE,ssss.D_VALUE,s.T_DATETIME from " + str_pel + str_P0_t + str_T0_t + append_sql[i].Split('|')[0] + "where  s.T_DATETIME = ss.T_DATETIME and   s.T_DATETIME = sss.T_DATETIME  and  s.T_DATETIME = ssss.T_DATETIME and  s.T_DATETIME between '" + stime + "' and '" + etime + "'  order by s.T_DATETIME asc ";


                    if (rlDBType == "SQL")
                    {
                    }
                    else
                    {
                        ht = new Hashtable();
                        if (i < para_id.Length)
                        {
                            ht.Add("name", append_sql[i].Split('|')[1]);

                            //ht.Add("step", "left");
                            ht.Add("yAxis", i);
                        }

                        ArrayList ld = new ArrayList();
                        ArrayList lt = new ArrayList();

                        DS = DBdb2.RunDataSet(str_sql, out errMsg);

                        if (DS.Tables[0].Rows.Count > 0)
                        {
                            double max_data1 = Convert.ToDouble(DS.Tables[0].Rows[0][6].ToString());
                            double min_data1 = Convert.ToDouble(DS.Tables[0].Rows[0][6].ToString());
                            for (int j = 0; j < DS.Tables[0].Rows.Count; j++)
                            {
                                if ((DS.Tables[0].Rows[j][6].ToString() != "- 9999") && (Convert.ToDouble(DS.Tables[0].Rows[j][0].ToString()) / Convert.ToDouble(DS.Tables[0].Rows[j][1].ToString()) > (Convert.ToDouble(per.Split('|')[0]))) && (Convert.ToDouble(DS.Tables[0].Rows[j][0].ToString()) / Convert.ToDouble(DS.Tables[0].Rows[j][1].ToString()) < (Convert.ToDouble(per.Split('|')[1]))) && (Math.Abs(Convert.ToDouble(DS.Tables[0].Rows[j][2].ToString()) - Convert.ToDouble(DS.Tables[0].Rows[j][3].ToString())) / Convert.ToDouble(DS.Tables[0].Rows[j][3].ToString()) < 0.05) && (Math.Abs(Convert.ToDouble(DS.Tables[0].Rows[j][4].ToString()) - Convert.ToDouble(DS.Tables[0].Rows[j][5].ToString())) / Convert.ToDouble(DS.Tables[0].Rows[j][5].ToString()) < 0.05))
                                {
                                    ld = new ArrayList();

                                    ld.Add(DateTimeToUTC(DateTime.Parse(DS.Tables[0].Rows[j][7].ToString())));

                                    ld.Add(Convert.ToDouble(DS.Tables[0].Rows[j][6].ToString()));

                                    lt.Add(ld);

                                    if (max_data1 < Convert.ToDouble(DS.Tables[0].Rows[j][6].ToString()))
                                    {
                                        max_data1 = Convert.ToDouble(DS.Tables[0].Rows[j][6].ToString());
                                    }
                                    if (min_data1 > Convert.ToDouble(DS.Tables[0].Rows[j][6].ToString()))
                                    {
                                        min_data1 = Convert.ToDouble(DS.Tables[0].Rows[j][6].ToString());
                                    }
                                }
                            }
                            max_data += max_data1.ToString() + ",";
                            min_data += min_data1.ToString() + ",";
                        }
                        ht.Add("data", lt);
                        listdata.Add(ht);
                    }
                }
            }
            return(listdata);
            //return str_append;
        }
Beispiel #27
0
        public void Insert_data(string para)
        {
            this.init();
            string  errMsg = "";
            DataSet DS     = new DataSet();
            string  sql    = "select * from  超温考核故障类型表 where 考核上限 =" + para.Split(',')[0] + " and 考核下限=" + para.Split(',')[1];

            if (rlDBType == "SQL")
            {
            }
            else
            {
                DS = DBdb2.RunDataSet(sql, out errMsg);
            }

            if (DS.Tables[0].Rows.Count > 0)
            {
                string sql1 = "update 超温考核故障类型表 set 提示信息 = '" + para.Split(',')[2] + "' where 考核上限 =" + para.Split(',')[0] + " and  考核下限=" + para.Split(',')[1];
                if (rlDBType == "SQL")
                {
                }
                else
                {
                    bool falg = DBdb2.RunNonQuery(sql1, out errMsg);
                }
                string sql2  = "insert into 超温考核故障映射表(考核点ID,故障类型ID) values('" + para.Split(',')[3] + "','" + DS.Tables[0].Rows[0]["故障类型ID"].ToString() + "')";
                bool   falg1 = DBdb2.RunNonQuery(sql2, out errMsg);
            }
            else
            {
                string  sql3 = "select 故障类型ID from 超温考核故障类型表 order by 故障类型ID desc  fetch first 1 rows only";
                DataSet DDS  = new DataSet();
                if (rlDBType == "SQL")
                {
                }
                else
                {
                    DDS = DBdb2.RunDataSet(sql3, out errMsg);
                }
                string str_sql3 = "";
                if (DDS.Tables[0].Rows.Count > 0)
                {
                    str_sql3 = (Convert.ToInt32(DDS.Tables[0].Rows[0][0].ToString()) + 1).ToString();
                }
                else
                {
                    str_sql3 = "1";
                }
                string sql4 = "insert into 超温考核故障类型表(故障类型ID,考核下限,考核上限,过滤公式,公式参数,提示信息) values('" + str_sql3 + "'," + para.Split(',')[1] + "," + para.Split(',')[0] + ",'0','0','" + para.Split(',')[2] + "')";
                string sql5 = "insert into 超温考核故障映射表(考核点ID,故障类型ID) values('" + para.Split(',')[3] + "','" + str_sql3 + "')";

                if (rlDBType == "SQL")
                {
                }
                else
                {
                    bool falg2 = DBdb2.RunNonQuery(sql4, out errMsg);
                    bool falg3 = DBdb2.RunNonQuery(sql5, out errMsg);
                }
            }
        }