Beispiel #1
0
        /// <summary>
        /// 获取某个设备下点检项所有ID_KEY
        /// </summary>
        /// <param name="sbID"></param>
        /// <param name="errMsg"></param>
        /// <returns></returns>
        public string RetStrItemsBySbID(string sbID, out string errMsg)
        {
            errMsg = "";
            string    str        = "";
            string    strName    = "";
            string    strDevName = "";
            DataTable dt         = null;

            //sql = "select * from (select rank() over(partition by T_ITEMID order by T_STARTTIME desc) rk,b.* from T_BASE_ITEM as b where b.T_DeviceID ='"+sbID+"') as y where y.rk<=1;";

            //try
            //{
            //    if (int.Parse(sbID) > 0)
            //        sql = "select * from (select rank() over(partition by T_ITEMID order by T_STARTTIME desc) rk,b.* from T_BASE_ITEM as b where b.T_DeviceID =(select T_NODEID from T_INFO_ROUTE where T_NODEKEY='" + sbID + "')) as y where y.rk<=1;";
            //}
            //catch
            //{
            //    sql = "select * from (select rank() over(partition by T_ITEMID order by T_STARTTIME desc) rk,b.* from T_BASE_ITEM as b where b.T_DeviceID ='" + sbID + "') as y where y.rk<=1;";
            //}

            sql = "select * from  (select rank() over( partition by T_ITEMID order by T_STARTTIME desc ) rk,b.* from (SELECT * FROM T_INFO_ROUTE as i INNER JOIN T_BASE_ITEM as b ON b.T_ITEMID =i.T_NODEID where i.T_DESC ='DJX' and i.T_PARAENTID='" + sbID + "' ) as b) as y where y.rk<=1;";

            dt = DBdb2.RunDataTable(sql, out errMsg);

            if (dt != null && dt.Rows.Count > 0)
            {
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    str     += dt.Rows[i]["ID_KEY1"].ToString() + ',';
                    strName += dt.Rows[i]["T_ITEMDESC"].ToString() + ',';
                }
            }

            return(str + ";" + strName);
        }
Beispiel #2
0
        /// <summary>
        /// 添加点检项
        /// </summary>
        /// <param name="nodeKey"></param>
        /// <param name="itemID"></param>
        /// <param name="itemBw"></param>
        /// <param name="itemDesc"></param>
        /// <param name="itemContent"></param>
        /// <param name="itemObserve"></param>
        /// <param name="itemUnit"></param>
        /// <param name="itemType"></param>
        /// <param name="itemStatus"></param>
        /// <param name="itemStatusQJ"></param>
        /// <param name="itemUpper"></param>
        /// <param name="itemLower"></param>
        /// <param name="itemSpectrum"></param>
        /// <param name="itemStartTime"></param>
        /// <param name="itemPerValue"></param>
        /// <param name="itemPerType"></param>
        /// <returns></returns>
        public bool AddItem(string nodeKey, string itemBw, string itemDesc, string itemContent, string itemObserve, string itemUnit, string itemType, string itemStatus, string itemStatusQJ, string itemUpper, string itemLower, string itemSpectrum, string itemStartTime, string itemPerValue, string itemPerType, out string errMsg)
        {
            object obj   = null;
            bool   flag  = false;
            int    count = 0;

            errMsg = "";

            sql = "select T_ITEMID from T_BASE_ITEM where T_DEVICEID='" + nodeKey + "' order by ID_KEY DESC fetch first 1 rows only ";

            obj = DBdb2.GetSingle(sql);

            if (obj != null && obj.ToString() != "")
            {
                count = int.Parse(obj.ToString()) + 1;
            }
            else
            {
                count = 1;
            }

            sql  = "insert into T_BASE_ITEM ";
            sql += "(T_ITEMID,T_ITEMPOSITION,T_ITEMDESC,T_CONTENT,T_TYPE,I_STATUS,T_OBSERVE,T_UNIT,F_LOWER,F_UPPER,I_SPECTRUM,T_DEVICEID,T_STARTTIME,T_PERIODTYPE,T_PERIODVALUE,T_STATUS)";
            sql += " values ";
            sql += "('" + count + "','" + itemBw + "','" + itemDesc + "','" + itemContent + "','" + itemType + "'," + itemStatus + ",'" + itemObserve + "','" + itemUnit + "'," + double.Parse(itemLower) + "," + double.Parse(itemUpper) + "," + int.Parse(itemSpectrum) + ",'" + nodeKey + "','" + DateTime.Parse(itemStartTime).ToString("yyyy-MM-dd 0:00:00") + "'," + int.Parse(itemPerType) + "," + int.Parse(itemPerValue) + "," + int.Parse(itemStatusQJ) + ")";

            flag = DBdb2.RunNonQuery(sql, out errMsg);

            if (flag != true)
            {
                errMsg = "新建点检项失败!";
            }

            return(flag);
        }
Beispiel #3
0
        /// <summary>
        /// 编辑点检项
        /// </summary>
        /// <param name="nodeKey"></param>
        /// <param name="itemID"></param>
        /// <param name="itemBw"></param>
        /// <param name="itemDesc"></param>
        /// <param name="itemContent"></param>
        /// <param name="itemObserve"></param>
        /// <param name="itemUnit"></param>
        /// <param name="itemType"></param>
        /// <param name="itemStatus"></param>
        /// <param name="itemStatusQJ"></param>
        /// <param name="itemUpper"></param>
        /// <param name="itemLower"></param>
        /// <param name="itemSpectrum"></param>
        /// <param name="itemStartTime"></param>
        /// <param name="itemPerValue"></param>
        /// <param name="itemPerType"></param>
        /// <returns></returns>
        public bool EditItem(string idkey, string itemBw, string itemDesc, string itemContent, string itemObserve, string itemUnit, string itemType, string itemStatus, string itemStatusQJ, string itemUpper, string itemLower, string itemSpectrum, string itemStartTime, string itemPerValue, string itemPerType, out string errMsg)
        {
            object obj   = null;
            bool   flag  = false;
            int    count = 0;

            //sql = "insert into T_BASE_ITEM ";
            //sql += "(T_ITEMID,T_ITEMPOSITION,T_ITEMDESC,T_CONTENT,T_TYPE,I_STATUS,T_OBSERVE,T_UNIT,F_LOWER,F_UPPER,I_SPECTRUM,T_DEVICEID,T_STARTTIME,T_PERIODTYPE,T_PERIODVALUE,T_STATUS)";
            //sql += " values ";
            //sql += "('" + count + "','" + itemBw + "','" + itemDesc + "','" + itemContent + "','" + itemType + "'," + itemStatus + ",'" + itemObserve + "','" + itemUnit + "'," + double.Parse(itemLower) + "," + double.Parse(itemUpper) + "," + int.Parse(itemSpectrum) + ",'" + nodeKey + "','" + DateTime.Parse(itemStartTime).ToString("yyyy-MM-dd 0:00:00") + "'," + int.Parse(itemPerType) + "," + int.Parse(itemPerValue) + "," + int.Parse(itemStatusQJ) + ")";

            sql += "update T_BASE_ITEM set ";
            sql += "T_ITEMPOSITION='" + itemBw + "',T_ITEMDESC='" + itemDesc + "',T_CONTENT='" + itemContent + "',T_TYPE='" + itemType + "',I_STATUS=" + itemStatus + ",T_OBSERVE='" + itemObserve + "',";
            sql += "T_UNIT='" + itemUnit + "',F_LOWER=" + double.Parse(itemLower) + ",F_UPPER= " + double.Parse(itemUpper) + ",I_SPECTRUM=" + int.Parse(itemSpectrum) + ",T_STARTTIME='" + DateTime.Parse(itemStartTime).ToString("yyyy-MM-dd 0:00:00") + "',";
            sql += "T_PERIODTYPE=" + int.Parse(itemPerType) + ",T_PERIODVALUE=" + int.Parse(itemPerValue) + ",T_STATUS=" + int.Parse(itemStatusQJ) + " where id_key=" + idkey;

            flag = DBdb2.RunNonQuery(sql, out errMsg);

            if (flag != true)
            {
                errMsg = "编辑点检项失败!";
            }

            return(flag);
        }
Beispiel #4
0
        /// <summary>
        /// 附件下载
        /// </summary>
        /// <param name="sbID"></param>
        /// <param name="sbName"></param>
        /// <param name="errMsg"></param>
        /// <returns></returns>
        public byte[] RetBoolDownFile(string sbID, string sbName, out string errMsg)
        {
            byte[] File = null;

            DataRow dr = null;

            string fileName = sbName + ".doc";

            sql = "select B_ATTACHMENT from T_BASE_DEVICE where T_DEVICEID='" + sbID + "'";

            dr = DBdb2.RunDataRow(sql, out errMsg);

            try
            {
                if (dr != null)
                {
                    File = (byte[])dr[0];
                }
                else
                {
                    errMsg = "没有查询到相关纪录!";
                }
            }
            catch
            {
                errMsg = "此设备无附件可供下载!";
            }
            return(File);
        }
Beispiel #5
0
        /// <summary>
        /// 点检项分页
        /// </summary>
        /// <param name="sbID"></param>
        /// <param name="sCount"></param>
        /// <param name="eCount"></param>
        /// <returns></returns>
        public DataTable RetTabItemByDevID(string sbID, int sCount, int eCount)
        {
            //sql = "select * from (select b.*,rownumber() over(order by b.T_TIME desc ) as rowid  from ( select * from T_BASE_STATUS as s inner join (SELECT i.ID_KEY,b.T_DEVICEID,b.T_DEVICEDESC,i.T_TIME,i.I_STATUS FROM T_INFO_DEVICE as i inner join T_BASE_DEVICE as b on i.T_DEVICEID=b.T_DEVICEID where i.T_DEVICEID='" + sbID + "' order by i.T_TIME desc) as t on s.I_STATUSID=t.I_STATUS)  as b )as a where a.rowid BETWEEN " + sCount + " AND " + eCount;

            try
            {
                //什么时候调用此方法分页 需要重新确定
                if (int.Parse(sbID) > 0)
                {     //sql ="select * from (select rank() over(partition by T_ITEMID order by T_STARTTIME desc) rk,b.* from T_BASE_ITEM as b where b.T_DeviceID =(select T_NODEID from T_INFO_ROUTE where T_NODEKEY='" + sbID + "')) as y where y.rk<=1;";
                    sql = "select * from (select z.* , rownumber() over (order by z.id_key asc ) as rowid from ";

                    sql += " (select * from (select rank() over(partition by T_ITEMID order by T_STARTTIME desc) rk,b.* from T_BASE_ITEM as b where b.T_DeviceID =(select T_NODEID from T_INFO_ROUTE where T_NODEKEY='" + sbID + "')) as y where y.rk<=1) as z)";

                    sql += " as f where f.rowid between " + sCount + " and " + eCount;
                }
            }
            catch
            {
                //sql = "select * from (select rank() over(partition by T_ITEMID order by T_STARTTIME desc) rk,b.* from T_BASE_ITEM as b where b.T_DeviceID ='" + sbID + "') as y where y.rk<=1;";
                sql  = "select * from ( select c.*,rownumber() over(order by c.id_key asc ) as rowid from ";
                sql += "(select * from (select rank() over(partition by T_ITEMID order by T_STARTTIME desc) rk,b.* from T_BASE_ITEM as b where b.T_DeviceID ='" + sbID + "') as y where y.rk<=1) as c) as d ";
                sql += "where d.rowid BETWEEN " + sCount + " AND " + eCount;
            }

            dt = DBdb2.RunDataTable(sql, out errMsg);

            return(dt);
        }
Beispiel #6
0
        /// <summary>
        ///根据时间段取得 参数描述(指标名称),平均基准值。取得的paraId留着使用。注:paraId+_el_B为实际值,paraId+_B为耗差值
        /// </summary>
        /// <param name="errMsg"></param>
        /// <returns></returns>
        public DataTable GetValueByPara(string tableName, string beginTime, string endTime, string unitId, string paraId, out string errMsg)
        {
            this.init();
            errMsg = "";
            string sql = "select c.T_PARAID, b.T_DESC,b.I_TARGETTYPE,b.I_CONSUMETYPE,avg(c.D_VALUE) AS counts  from " + tableName + "  as c  left   join  T_BASE_CONSUMEPARA  as b on  c.T_UNITID=b.T_UNITID  and  c.T_PARAID=b.T_PARAID WHERE 1=1";

            DataTable dt = null;

            if (!string.IsNullOrEmpty(beginTime) && !string.IsNullOrEmpty(endTime))
            {
                sql += " AND  c.T_DATETIME between " + beginTime + "' and " + endTime + "";
            }

            if (!string.IsNullOrEmpty(unitId) && unitId != "0")
            {
                sql += " AND  c.T_UNITID='" + unitId + "'";
            }

            if (!string.IsNullOrEmpty(paraId))
            {
                sql += " AND  c.T_PARAID='" + paraId + "'";
            }

            sql += " group by c.T_PARAID,b.T_DESC,b.I_TARGETTYPE,b.I_CONSUMETYPE ";
            if (rlDBType == "SQL")
            {
                // sql = "select ID_KEY,班次名,起始时间,结束时间 from 班次时间表 order by ID_KEY";
                //dt = DBsql.RunDataTable(sql, out errMsg);
            }
            else
            {
                dt = DBdb2.RunDataTable(sql, out errMsg);
            }
            return(dt);
        }
Beispiel #7
0
        /// <summary>
        ///根据unitId 从T_BASE_CALCPARA表(趋势分析表)中 获取不同(unitId和paraId)唯一的表名。数据存储在了不同的表中,耗差类型为0或1。
        /// </summary>
        /// <param name="errMsg"></param>
        /// <returns></returns>
        public DataTable GetTableName(string unitId, string paraId, out string errMsg)
        {
            this.init();
            errMsg = "";
            string sql = "select c1.T_OUTTABLE,t.T_UNITID,t.T_PARAID,t.T_UNIT,t.I_TARGETTYPE,t.I_CONSUMETYPE,t.I_ORDER  from T_BASE_CONSUMEPARA as t left  join T_BASE_CALCPARA as c1 on t.T_UNITID=c1.T_UNITID and t.T_PARAID=c1.T_PARAID where 1=1";

            DataTable dt = null;

            if (!string.IsNullOrEmpty(unitId))
            {
                sql += " AND  t.T_UNITID='" + unitId + "'";
            }
            if (!string.IsNullOrEmpty(paraId))
            {
                sql += " AND t.T_PARAID='" + paraId + "'";
            }
            if (rlDBType == "SQL")
            {
                // sql = "select ID_KEY,班次名,起始时间,结束时间 from 班次时间表 order by ID_KEY";
                //dt = DBsql.RunDataTable(sql, out errMsg);
            }
            else
            {
                dt = DBdb2.RunDataTable(sql, out errMsg);
            }
            return(dt);
        }
Beispiel #8
0
        /// <summary>
        /// 判断某个职位是否有子节点
        /// </summary>
        /// <param name="id">职位编号</param>
        /// <returns></returns>
        public int getSun(string id)
        {
            sql = "select count(*) from T_SYS_ORGANIZE where T_PARENTID='" + id + "'";

            try
            {
                if (DBdb2.RunRowCount(sql, out errMsg) > 0)
                {
                    count = 1;
                }
                else
                {
                    sql = "select count(*) from T_SYS_MEMBERRELATION where T_ORGID='" + id + "'";
                    if (DBdb2.RunRowCount(sql, out errMsg) > 0)
                    {
                        count = 1;
                    }
                }
            }
            catch (Exception ex)
            {
                LogHelper.WriteLog(LogHelper.EnLogType.Run, "发生时间:" + DateTime.Now.ToString("yyyy-MM-dd H:mm:ss") + "/n错误信息:" + ex.Message);
            }

            return(count);
        }
Beispiel #9
0
        /// <summary>
        /// 附件上传
        /// </summary>
        /// <param name="SBID"></param>
        /// <param name="fileBytes"></param>
        /// <param name="errMsg"></param>
        /// <returns></returns>
        public bool RetBoolUpFile(string SBID, byte[] fileBytes, out string errMsg)
        {
            errMsg = "";

            bool flag = false;

            if (fileBytes.Length > 0)
            {
                sql = "update T_BASE_DEVICE set B_ATTACHMENT=? where T_DEVICEID='" + SBID + "'";

                OleDbConnection con = new OleDbConnection(DBdb2.SetConString());
                try
                {
                    con.Open();
                    OleDbCommand oledbcom = new OleDbCommand(sql, con);

                    oledbcom.Parameters.Add("?", fileBytes);

                    if (oledbcom.ExecuteNonQuery() > 0)
                    {
                        flag = true;
                    }

                    con.Close();
                }
                catch (Exception ex)
                {
                    errMsg = ex.Message;
                }
                finally { con.Close(); }
            }

            return(flag);
        }
Beispiel #10
0
        public DataTable ReadItemByIdKey(string id_key)
        {
            DataTable dt = null;


            //IList<Hashtable> Ilist = new List<Hashtable>();
            sql = "select ID_KEY,T_ITEMID,T_ITEMPOSITION, T_ITEMDESC,T_CONTENT,T_TYPE,I_STATUS,T_OBSERVE,T_UNIT,F_LOWER,F_UPPER,F_UPPER,I_SPECTRUM,T_DEVICEID,to_char(T_STARTTIME,'yyyy-mm-dd hh24:mi:ss') as T_STARTTIME,T_PERIODTYPE,T_PERIODVALUE,T_STATUS from T_BASE_ITEM  where ID_KEY=" + id_key + "";
            dt  = DBdb2.RunDataTable(sql, out errMsg);
            //if (dt != null && dt.Rows.Count > 0)
            //{
            //    foreach (DataRow dr in dt.Rows)
            //    {
            //        Hashtable ht = new Hashtable();

            //        foreach (DataColumn col in dt.Columns)
            //        {
            //            ht.Add(col.ColumnName, dr[col.ColumnNameT_STATUS
            //            Ilist.Add(ht);
            //        }

            //    }
            //}

            return(dt);
        }
Beispiel #11
0
        private void SaveArea(string areaName, string areaCd)
        {
            int    count;
            string info = "";
            bool   flag = false;

            //判断射频卡ID 是否重复
            sql = "select count(*) from T_BASE_AREA where T_AREACD='" + areaCd + "'";

            object obj = DBdb2.RunSingle(sql, out errMsg);

            sql = "select count(*) from T_BASE_AREA where T_AREANAME='" + areaName + "'";

            object obj1 = DBdb2.RunSingle(sql, out errMsg);

            if (obj.ToString() == "0" && obj1.ToString() == "0")
            {
                sql = "select T_AREAID from T_BASE_AREA order by ID_KEY desc FETCH FIRST 1 ROWS ONLY";

                obj = DBdb2.RunSingle(sql, out errMsg);

                if (obj != null && obj.ToString() != "")
                {
                    count = int.Parse(obj.ToString()) + 1;
                }
                else
                {
                    count = 1;
                }

                sql = @"insert into T_BASE_AREA (T_AREAID,T_AREANAME,T_AREACD) values('"
                      + count + "','"
                      + areaName + "','"
                      + areaCd + "')";

                flag = DBdb2.RunNonQuery(sql, out errMsg);

                if (errMsg == "")
                {
                    info = "新增区域成功!";
                }
                else
                {
                    info = "新增区域失败!";
                }
            }
            else
            {
                info = "射频卡编码和区域名称已存在";
            }

            obj = new
            {
                msg = info
            };
            string result = JsonConvert.SerializeObject(obj);

            Response.Write(result);
            Response.End();
        }
Beispiel #12
0
        /// <summary>
        /// 根据条件获取数据,可靠性分析(强迫停运次数分析(按容量分类))。
        /// </summary>
        /// <param name="errMsg"></param>
        /// <returns></returns>
        public DataTable GetInitByCapality(string time, out string errMsg)
        {
            this.init();
            errMsg = "";
            string sql = "SELECT SUM(I_FOT) AS FOH ,B.D_CAPABILITY  FROM T_INFO_UNIT AS I LEFT JOIN T_BASE_UNIT AS  B ON B.T_UNITID=I.T_CODE ";

            DataTable dt = null;

            if (!string.IsNullOrEmpty(time))
            {
                sql += " WHERE  I.T_TIME='" + time + "'";
            }

            sql += "  GROUP BY B.D_CAPABILITY  ";
            if (rlDBType == "SQL")
            {
                // sql = "select ID_KEY,班次名,起始时间,结束时间 from 班次时间表 order by ID_KEY";
                //dt = DBsql.RunDataTable(sql, out errMsg);
            }
            else
            {
                dt = DBdb2.RunDataTable(sql, out errMsg);
            }
            return(dt);
        }
Beispiel #13
0
        private void EditArea(string idkey, string areaName, string areaCd)
        {
            int    count = 0;
            string info  = "";

            sql = @"update T_BASE_AREA set T_AREACD='" + areaCd + "',T_AREANAME = '" + areaName + "' where ID_KEY =  " + idkey;

            bool falg = DBdb2.RunNonQuery(sql, out errMsg);

            if (errMsg == "")
            {
                info = "区域修改成功!";
            }
            else
            {
                info = "区域修改失败!";
            }

            obj = new
            {
                count = count,
                info  = info
            };
            string result = JsonConvert.SerializeObject(obj);

            Response.Write(result);
            Response.End();
        }
Beispiel #14
0
        public IList <Hashtable> ReadItmes(string deviceId)
        {
            DataTable dt = null;


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

            sql = "select * from T_BASE_ITEM  where T_DEVICEID='" + deviceId + "'";
            dt  = DBdb2.RunDataTable(sql, out errMsg);
            if (dt != null && dt.Rows.Count > 0)
            {
                foreach (DataRow dr in dt.Rows)
                {
                    Hashtable ht = new Hashtable();

                    foreach (DataColumn col in dt.Columns)
                    {
                        ht.Add(col.ColumnName, dr[col.ColumnName]);
                        Ilist.Add(ht);
                    }
                }
            }

            return(Ilist);
        }
Beispiel #15
0
        ///// <summary>
        ///// 根据条件获取数据。
        ///// </summary>
        ///// <param name="errMsg"></param>
        ///// <returns></returns>
        //public DataTable GetInitByCondition(string companyId, string plantId, string unitId, string beginTime, string endTime, int sCount, int eCount, out int count, out string errMsg)
        //{
        //    this.init();
        //    errMsg = "";
        //    count = 0;

        //    string sql = "SELECT T_CODE,T_UNITDESC,D_CAPABILITY,I_UTH,D_EAF,D_FOF,D_FOR,D_UOF,D_UOR,I_GAAG,I_PH,I_AH,I_SH,I_UOH,I_FOH,I_EUNDH,  rownumber() over(order by  I.ID_KEY asc ) as rowid  FROM T_INFO_UNIT AS I LEFT JOIN T_BASE_UNIT AS B ON  I.T_CODE=B.T_UNITID LEFT JOIN T_BASE_PLANT AS P ON P.T_PLANTID=B.T_PLANTID LEFT JOIN T_BASE_COMPANY  AS C ON  P.T_COMPANYID= C.T_COMPANYID WHERE 1=1";
        //    if ((!string.IsNullOrEmpty(companyId)) && companyId != "0")
        //    {
        //        sql += " AND C.T_COMPANYID='" + companyId + "'";
        //    }

        //    if ((!string.IsNullOrEmpty(plantId)) && plantId != "0")
        //    {
        //        sql += " AND P.T_PLANTID='" + plantId + "'";
        //    }

        //    if ((!string.IsNullOrEmpty(unitId)) && unitId != "0")
        //    {
        //        sql += " AND B.T_UNITID='" + unitId + "'";
        //    }

        //    if (!string.IsNullOrEmpty(beginTime))
        //    {
        //        sql += " AND  I.BEGINTIME>='" + beginTime + " 00:00:00.000" + "'";
        //    }
        //    if (!string.IsNullOrEmpty(endTime))
        //    {
        //        sql += " AND I.ENDTIME<='" + endTime + " 00:00:00.000" + "'";
        //    }

        //    string sqlStr = "select * from (" + sql + ") as a where a.rowid between " + sCount + " and " + eCount + "";
        //    DataTable dt = null;

        //    if (rlDBType == "SQL")
        //    {
        //        // sql = "select ID_KEY,班次名,起始时间,结束时间 from 班次时间表 order by ID_KEY";
        //        //dt = DBsql.RunDataTable(sql, out errMsg);
        //    }
        //    else
        //    {
        //        dt = DBdb2.RunDataTable(sqlStr, out errMsg);
        //        count = DBdb2.RunDataTable(sql, out errMsg).Rows.Count;
        //    }
        //    return dt;
        //}

        /// <summary>
        /// 根据条件获取数据,可靠性分析。
        /// </summary>
        /// <param name="errMsg"></param>
        /// <returns></returns>
        public DataTable GetInitByCondition(string time, out string errMsg)
        {
            this.init();
            errMsg = "";
            //string sql1 = "select min(ID_KEY) as ID_KEY,UGROUP from WebUser group by UGROUP order by ID_KEY";
            //string sql = "SELECT I_FOT,I.ID_KEY,T_PLANTDESC,T_UNITDESC,D_CAPABILITY,T_BEGINTIME,T_ENDTIME,I_PH,T_PROFESSIONALDESC,T_REASONDESC,  rownumber() over(order by  I.ID_KEY asc ) as rowid  FROM T_INFO_UNIT AS I LEFT JOIN T_BASE_UNIT AS B ON  I.T_CODE=B.T_UNITID LEFT JOIN T_BASE_PLANT AS P ON P.T_PLANTID=B.T_PLANTID LEFT JOIN T_BASE_COMPANY  AS C ON  P.T_COMPANYID= C.T_COMPANYID LEFT JOIN T_BASE_FAULTPROFESSIONAL AS BF ON I.T_FPROFEESIOID=BF.T_PROFESSIONALID  LEFT JOIN T_BASE_FAULTREASON  AS BR ON I.T_FREASONID=BR.T_REASONID   WHERE 1=1";
            string sql = "SELECT SUM(I_FOT) AS fot,SUM(I_FOH) AS foh  FROM T_INFO_UNIT WHERE 1=1";

            DataTable dt = null;

            if (!string.IsNullOrEmpty(time))
            {
                sql += " AND  T_TIME='" + time + "'";
            }

            if (rlDBType == "SQL")
            {
                // sql = "select ID_KEY,班次名,起始时间,结束时间 from 班次时间表 order by ID_KEY";
                //dt = DBsql.RunDataTable(sql, out errMsg);
            }
            else
            {
                dt = DBdb2.RunDataTable(sql, out errMsg);
            }
            return(dt);
        }
Beispiel #16
0
        public bool updateBoiler(string unit)
        {
            this.init();
            string errMsg = "";
            bool   flag   = false;



            //"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[] str = new string[23] {
                "T0_t_el_B", "P0_t_el_B", "Trh_el_B", "PLrh_el_B", "Pdp_el_B", "Dgrjw_el_B", "Dzrjw_el_B", "Dpw_el_B", "Del_BtaT_gl_el_B", "Dtur_el_B", "O2_el_B", "Tpy_el_B", "Alpha_bs_el_B", "Tfw_el_B", "Eta_H_el_B", "Eta_M_el_B", "Theta_1_el_B", "Theta_2_el_B", "Theta_3_el_B", "Theta_5_el_B", "Theta_6_el_B", "Theta_7_el_B", "Theta_8_el_B"
            };
            for (int i = 0; i < unit.Split(',')[1].Split('|').Length; i++)
            {
                string sql = "update T_BASE_CALCPARA set T_FORMULA ='" + unit.Split(',')[1].Split('|')[i] + "' where T_UNITID = '" + unit.Split(',')[0] + "' and T_PARAID ='" + str[i] + "'";
                if (rlDBType == "SQL")
                {
                }
                else
                {
                    flag = DBdb2.RunNonQuery(sql, out errMsg);
                }
            }



            return(flag);
        }
Beispiel #17
0
        /// <summary>
        /// 新建线路
        /// </summary>
        /// <param name="lID">线路ID</param>
        /// <param name="lName">线路名称</param>
        /// <param name="lType">线路类型</param>
        /// <param name="lGw">线路岗位</param>
        /// <param name="lPID">线路父ID</param>
        public bool AddLineInfo(string lID, string lName, string lType, string lGw, string lPID, out string errMsg)
        {
            int    count = 1;
            object obj   = null;
            bool   flag  = false;

            //判断线路ID是否已被加入

            sql = "select * from T_BASE_ROUTE where T_ROUTEID='" + lID + "'";

            DataRow drBaseRoute = DBdb2.RunDataRow(sql, out errMsg);

            if (drBaseRoute != null)
            {
                errMsg = "此线路ID已被添加";
            }
            else
            {
                sql = "select count(*) from T_BASE_DEVICE";

                obj = DBdb2.GetSingle(sql);

                if (obj != null && obj.ToString() != "")
                {
                    count = int.Parse(obj.ToString()) + 1;
                }

                sql  = "insert into T_BASE_ROUTE (T_ROUTEID,T_ROUTENAME,T_ORGID,I_TYPE) values ('" + lID + "','" + lName + "','" + lGw + "'," + lType + ");";
                sql += "insert into T_BASE_DEVICE (T_NODEID,T_NODEKEY,T_PARAENTID) values ('" + lID + "','" + count.ToString() + "','" + lPID + "')";

                flag = DBdb2.RunNonQuery(sql, out errMsg);
            }

            return(flag);
        }
Beispiel #18
0
        /// <summary>
        /// 获取ParaId及对应的数据表名。(已过滤)
        /// </summary>
        /// <returns></returns>
        public List <ParaTableInfo> GetInfo(string capacityLevel, string unitType, string BoilerId, string SteamId, out string errMsg)
        {
            this.init();
            errMsg = "";
            List <ParaTableInfo> infoList = new List <ParaTableInfo>();
            string sql = "select b.T_PARAID,c.T_DESC,c.T_OUTTABLE,b.T_UNITID,p.T_PLANTDESC ,u.T_UNITDESC from T_BASE_CONSUMEPARA as b left join T_BASE_CALCPARA as c on b.T_PARAID=c.T_PARAID left join T_BASE_UNIT as u on b.T_UNITID=u.T_UNITID left join  T_BASE_BOILER as j on u.T_BOILERID = j.T_BOILERID left  join T_BASE_STEAM as s on u.T_STEAMID=s.T_STEAMID  left join T_BASE_PLANT as p on  u.T_PLANTID=p.T_PLANTID where c.I_CONSUMETYPE  is not null  and c.I_TARGETTYPE IS NOT NULL";

            if (!String.IsNullOrEmpty(capacityLevel) && capacityLevel != "0")
            {
                sql += " and  u.T_CAPABILITYLEVEL='" + capacityLevel + "'";
            }

            if (!String.IsNullOrEmpty(unitType) && unitType != "0")
            {
                sql += " and u.T_PLANTTYPE='" + unitType + "'";
            }

            if (!String.IsNullOrEmpty(BoilerId) && BoilerId != "0")
            {
                sql += " and   u.T_BOILERID='" + BoilerId + "'";
            }

            if (!String.IsNullOrEmpty(SteamId) && SteamId != "0")
            {
                sql += " and u.T_STEAMID='" + SteamId + "'";
            }
            DataTable dt = null;


            if (rlDBType == "SQL")
            {
                // sql = "select ID_KEY,班次名,起始时间,结束时间 from 班次时间表 order by ID_KEY";
                //dt = DBsql.RunDataTable(sql, out errMsg);
            }
            else
            {
                dt = DBdb2.RunDataTable(sql, out errMsg);
            }

            if (dt != null)
            {
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    if (!String.IsNullOrEmpty(dt.Rows[i]["T_OUTTABLE"].ToString()))
                    {
                        ParaTableInfo info = new ParaTableInfo();
                        info.ParaId       = String.IsNullOrEmpty(dt.Rows[i]["T_PARAID"].ToString()) ? String.Empty : dt.Rows[i]["T_PARAID"].ToString();
                        info.ParaDesc     = String.IsNullOrEmpty(dt.Rows[i]["T_DESC"].ToString()) ? String.Empty : dt.Rows[i]["T_DESC"].ToString();
                        info.OutTableName = dt.Rows[i]["T_OUTTABLE"].ToString();
                        info.UnitId       = dt.Rows[i]["T_UNITID"].ToString();
                        info.UnitName     = dt.Rows[i]["T_PLANTDESC"].ToString() + dt.Rows[i]["T_UNITDESC"].ToString();
                        infoList.Add(info);
                    }
                }
            }
            //去掉重复。
            //return infoList.Distinct(new EqualCompare<ParaTableInfo>((x, y) => (x != null && y != null) &&(x.OutTableName == y.OutTableName))).ToList();
            //不能过滤,因为会把ParaId过滤掉。以ParaId来取值的。
            return(infoList);
        }
Beispiel #19
0
        /// <summary>
        /// 获取所有的ParaId
        /// </summary>
        /// <param name="counts">返回ParaId总数,计算平均值使用</param>
        /// <returns></returns>
        public string GetParaId(out int counts, out string errMsg)
        {
            this.init();
            errMsg = "";
            counts = 0;
            string sql = "select T_PARAID from T_BASE_ALLCONSUMEPARA ";

            DataTable dt = null;

            if (rlDBType == "SQL")
            {
                // sql = "select ID_KEY,班次名,起始时间,结束时间 from 班次时间表 order by ID_KEY";
                //dt = DBsql.RunDataTable(sql, out errMsg);
            }
            else
            {
                dt = DBdb2.RunDataTable(sql, out errMsg);
            }
            StringBuilder sb = new StringBuilder();

            counts = dt.Rows.Count;
            if (counts > 0)
            {
                for (int i = 0; i < counts; i++)
                {
                    sb.Append(dt.Rows[i]["T_PARAID"].ToString());
                    sb.Append(",");
                }
                sb.Remove(sb.Length - 1, 1);
            }
            return(sb.ToString());
        }
Beispiel #20
0
        /// <summary>
        /// 根据条件获取数据,可靠性分析(强迫停运次数分析(按故障原因分类))。
        /// </summary>
        /// <param name="errMsg"></param>
        /// <returns></returns>
        public DataTable GetInitByReason(string time, out string errMsg)
        {
            this.init();
            errMsg = "";
            string sql = "SELECT SUM(I_FOT) AS FOH ,R.T_REASONDESC  FROM T_INFO_UNIT AS I LEFT JOIN T_BASE_FAULTREASON AS  R ON R.T_REASONID=I.T_FREASONID ";

            DataTable dt = null;

            if (!string.IsNullOrEmpty(time))
            {
                sql += " WHERE  I.T_TIME='" + time + "'";
            }

            sql += "  GROUP BY R.T_REASONDESC ";
            if (rlDBType == "SQL")
            {
                // sql = "select ID_KEY,班次名,起始时间,结束时间 from 班次时间表 order by ID_KEY";
                //dt = DBsql.RunDataTable(sql, out errMsg);
            }
            else
            {
                dt = DBdb2.RunDataTable(sql, out errMsg);
            }
            return(dt);
        }
Beispiel #21
0
        /// <summary>
        /// 根据时间获取四类信息(首页使用)。
        /// </summary>
        /// <param name="times"></param>
        /// <param name="errMsg"></param>
        /// <returns></returns>
        public DataTable GetHomeByTime(string times, out string errMsg)
        {
            this.init();
            errMsg = "";
            string sql = "select * from T_INFO_STATISTIC where 1=1";

            DataTable dt = null;

            if (!string.IsNullOrEmpty(times))
            {
                sql += " AND  T_TIME='" + times + "'";
            }

            if (rlDBType == "SQL")
            {
                // sql = "select ID_KEY,班次名,起始时间,结束时间 from 班次时间表 order by ID_KEY";
                //dt = DBsql.RunDataTable(sql, out errMsg);
            }
            else
            {
                dt = DBdb2.RunDataTable(sql, out errMsg);
            }

            return(dt);
        }
Beispiel #22
0
        /// <summary>
        /// 根据报表名称获取报表样式
        /// </summary>
        /// <param name="rptName">报表NAME</param>
        /// <returns></returns>
        public DataTable GetRptStyleByName(string rptName)
        {
            var query  = "SELECT * FROM T_INFO_SISREPORT WHERE REPORTNAME='" + rptName + "'";
            var errMsg = string.Empty;
            var dt     = new DataTable();

            if (dbTypeValue == "SQL")
            {
                dt = DBsql.RunDataTable(query, out errMsg);
            }
            else if (dbTypeValue == "ORACLE")
            {
                dt = OracleHelper.Query(query).Tables[0];
            }
            else
            {
                dt = DBdb2.RunDataTable(query, out errMsg);
            }

            if (errMsg != string.Empty)
            {
                throw new Exception(errMsg);
            }
            else
            {
                return(dt);
            }
        }
Beispiel #23
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 #24
0
        /// <summary>
        /// 根据测点获取T_INFO_VALUE表中指定测点集合的信息
        /// </summary>
        /// <param name="pointsName">测点集合的名称</param>
        /// <returns></returns>
        public DataTable GetValueByPoints(string pointsName)
        {
            sql = "SELECT T_POINT,T_VALUE FROM ADMINISTRATOR.T_INFO_VALUE where T_POINT in (" + pointsName + ")";
            dt  = DBdb2.RunDataTable(sql, out errMsg);

            return(dt);
        }
Beispiel #25
0
 /// <summary>
 /// 获取设备信息  某个区域下面
 /// </summary>
 /// <param name="AreaID">区域编号</param>
 /// <returns></returns>
 public IList <Hashtable> GetDevices(string AreaID)
 {
     sql  = "select T_DEVICEID,T_DEVICEDESC from T_BASE_DEVICE where T_DEVICEID in( select T_NODEID from T_INFO_ROUTE where T_PARAENTID in(select T_NODEKEY from T_INFO_ROUTE where T_NODEID='" + AreaID + "'))";
     dt   = DBdb2.RunDataTable(sql, out errMsg);
     list = dh.DataTableToList(dt);
     return(list);
 }
Beispiel #26
0
 /// <summary>
 /// 获取某个线路下面的区域
 /// </summary>
 /// <param name="routeID">线路编号</param>
 /// <returns></returns>
 public IList <Hashtable> GetAreas(string routeID)
 {
     sql  = "select T_AREAID,T_AREANAME from T_BASE_AREA where T_AREAID in( select T_NODEID from T_INFO_ROUTE where T_PARAENTID in(select T_NODEKEY from T_INFO_ROUTE where T_NODEID='" + routeID + "'))";
     dt   = DBdb2.RunDataTable(sql, out errMsg);
     list = dh.DataTableToList(dt);
     return(list);
 }
Beispiel #27
0
        /// <summary>
        /// 从T_ORIGINAL_POINT表中得到不同类型条件的测点(实时数据读到关系数据库表T_INFO_VALUE中)
        /// </summary>
        /// <param name="companyType">电类型(风电,水电...)</param>
        /// <param name="type">点所属层次(电厂,机组)</param>
        /// <param name="pointType">点类型(负荷,风速,日电量,月电量,年电量)</param>
        /// <param name="?"></param>
        /// <returns></returns>
        public DataTable GetTagByKind(string companyType, string type, string pointType)
        {
            sql = "select * from Administrator.T_ORIGINAL_POINT where  T_COMPANY_TYPE='" + companyType + "' and T_TYPE='" + type + "' and T_POINT_TYPE='" + pointType + "'";

            dt = DBdb2.RunDataTable(sql, out errMsg);

            return(dt);
        }
Beispiel #28
0
        /// <summary>
        /// 区域数据分页查询
        /// </summary>
        /// <param name="sCount"></param>
        /// <param name="eCount"></param>
        /// <returns></returns>
        public DataTable RetTabAreas(int sCount, int eCount)
        {
            sql = "select * from (select b.* ,rownumber() over(order by b.id_key asc ) as rowid from (SELECT * FROM ADMINISTRATOR.T_BASE_AREA) as b) as c where c.rowid between " + sCount + " and " + eCount;

            dt = DBdb2.RunDataTable(sql, out errMsg);

            return(dt);
        }
Beispiel #29
0
        /// <summary>
        /// 获取区域表信息
        /// </summary>
        /// <returns></returns>
        public DataTable RetTable()
        {
            sql = "SELECT a.T_AREAID,a.T_AREANAME,r.T_ROUTENAME FROM T_BASE_AREA as a left join T_BASE_ROUTE as r on a.T_ROUTEID =r.T_ROUTEID order by  a.T_ROUTEID";

            dt = DBdb2.RunDataTable(sql, out errMsg);

            return(dt);
        }
Beispiel #30
0
        /// <summary>
        /// 获取设备和区域关联记录
        /// </summary>
        /// <param name="errMsg"></param>
        /// <returns></returns>
        public DataTable GetTableDevAndItemInfo(out string errMsg)
        {
            //sql = "SELECT * FROM T_INFO_ROUTE as i INNER JOIN T_BASE_ITEM as b ON b.T_ITEMID =i.T_NODEID where i.T_DESC ='DJX' ";

            sql = "select * from  (select rank() over( partition by T_ITEMID order by T_STARTTIME desc ) rk,b.* from (SELECT * FROM T_INFO_ROUTE as i INNER JOIN T_BASE_ITEM as b ON b.T_ITEMID =i.T_NODEID where i.T_DESC ='DJX') as b) as y where y.rk<=1;";

            return(DBdb2.RunDataTable(sql, out errMsg));
        }