/// <summary> /// 添加新班组信息 /// 创建:李东峰 日期:2014-03-12 /// </summary> /// <param name="rName">班组名称</param> /// <returns>返回是否添加成功</returns> public bool AddClass(string _ClassName) { errMsg = ""; bool _flag = false; string sql1 = "select * from T_SYS_CLASSINFO where T_CLASSID='" + ClassId + "'"; DataTable dt = null; dt = dl.RunDataTable(sql1, out errMsg); if (dt == null || dt.Rows.Count == 0) { string sql2 = "insert into T_SYS_CLASSINFO (T_CLASSID,T_CLASSNAME) values ('" + ClassId + "','" + _ClassName + "')"; dl.RunNonQuery(sql2, out errMsg); if (errMsg == "") { _flag = true; } else { _flag = false; } } else { _flag = false; } return(_flag); }
//根据产业获得总电量和负荷(机组累加) private double GetDlFh(string cye, string cName, string time) { string searchTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:00"); string[] zfh = new string[] { "HDXN:00CC0001" }; if (time != "") { searchTime = time; } sql = "SELECT DISTINCT " + cName + " FROM ADMINISTRATOR.T_INFO_UNIT where data_type in (" + cye + ")"; DataTable dt = dl.RunDataTable(sql, out errMsg); string[] tags = new string[dt.Rows.Count]; for (int i = 0; i < dt.Rows.Count; i++) { tags[i] = dt.Rows[i][0].ToString(); } double[] tagValues = null; if (cye == "'总负荷'") { tagValues = pbll.GetPointVal(zfh, searchTime); } else { tagValues = GetPointVal(tags, searchTime); } if (tagValues.Length < 1) { return(0); } return(Math.Round(tagValues.Where(a => a > 0).Sum(), 2)); }
private double GetFDFHValueByTime(string area, string periodName, string time) { string sql = "select DISTINCT PERIOD_TAG from ADMINISTRATOR.T_INFO_UNIT where data_type='风电'"; if (!string.IsNullOrEmpty(area)) { sql += " AND T_AREA='" + area + "'"; } if (!string.IsNullOrEmpty(periodName)) { sql += " AND PERIOD_NAME='" + periodName + "'"; } DataTable dtN = dl.RunDataTable(sql, out errMsg); string[] tags = new string[dtN.Rows.Count]; double[] tagsValues = new double[dtN.Rows.Count]; for (int s = 0; s < dtN.Rows.Count; s++) { tags[s] = dtN.Rows[s][0].ToString(); } //tagsValues = pbll.GetPointVal(tags, time); tagsValues = pbsll.GetSelectValue(tags); double ss = 0; if (tagsValues.Length > 0) { ss = Math.Round(tagsValues.Sum(), 2); } return(ss); }
public string GetDataWZ() { DBLink dl = new DBLink(); string errMsg = ""; string sql = "select * from t_info_graphic where t_graphicid ='2'"; // string sql ="select g.t_controlid,g.t_tag from t_info_histvalue h "+ // "inner join t_info_graphic g on h.t_tag =g.t_tag "+ //"and g.t_graphicid ='1' group by g.t_controlid,g.t_tag"; DataTable dtt = new DataTable();//select * from t_info_graphic where t_graphicid ='1' order by t_controlid asc DataTable dt = dl.RunDataTable(sql, out errMsg); string str = ""; for (int i = 0; i < dt.Rows.Count; i++) {//select * from (select * from t_info_histvalue where T_TAG='GHPV_1_000WG001' order by t_time desc) where ROWNUM =1 order by ROWNUM asc string sql_value = "select * from (select * from t_info_histvalue where T_TAG='" + dt.Rows[i]["t_tag"].ToString() + "' order by t_time desc) where ROWNUM =1 order by ROWNUM asc"; DateTime dt1 = DateTime.Now; dtt = dl.RunDataTable(sql_value, out errMsg); DateTime dt2 = DateTime.Now; double num = (dt2 - dt1).TotalSeconds; if ((dtt.Rows.Count > 0) && (dtt.Rows[0]["D_VALUE"].ToString() != "")) { str += dt.Rows[i]["t_controlid"].ToString() + "," + Convert.ToDouble(dtt.Rows[0]["D_VALUE"].ToString()).ToString("f2") + ";"; } else { str += dt.Rows[i]["t_controlid"].ToString() + ",0;"; } } return(str); }
/// <summary> /// 添加新班次信息 /// 创建:李东峰 日期:2014-03-13 /// </summary> /// <param name="_shiftName">班次名称</param> /// <param name="_startTime">班次名称</param> /// <param name="_endTime">班次名称</param> /// <returns>返回是否添加成功</returns> public bool AddShift(string _shiftName, string _startTime, string _endTime) { errMsg = ""; bool _flag = false; string sql1 = "select * from T_SYS_SHIFTINFO where T_SHIFTID='" + ShfitId + "'"; DataTable dt = null; dt = dl.RunDataTable(sql1, out errMsg); if (dt == null || dt.Rows.Count == 0) { string sql2 = "insert into T_SYS_SHIFTINFO (T_SHIFTID,T_SHIFTNAME,D_STRATTIME,D_ENDTIME) values ('" + ShfitId + "','" + _shiftName + "','2014-01-01 " + _startTime + "','2014-01-01 " + _endTime + "')"; dl.RunNonQuery(sql2, out errMsg); if (errMsg == "") { _flag = true; } else { _flag = false; } } else { _flag = false; } return(_flag); }
/// <summary> /// 获取填报数据信息 /// </summary> /// <param name="treeId">菜单树ID</param> /// <param name="orgId">组织机构ID</param> /// // <param name="formID">表单ID</param> /// <returns></returns> public DataTable GetCreateInfo(string treeId, string orgId, string formID, string type) { sql = "select f.t_formname,f.t_Table,f.T_TIMEFIELD,f.t_orgfield,f.t_timetype,f.i_formtype,fa.t_paraid,fa.t_paradesc,fa.t_Parafield,fa.t_Paratype,fa.t_Formula,fa.t_Formulapara,fa.i_flag,fa.i_Order,fa.i_level,fa.I_INPUTTYPE,fa.T_JUDGESHARE,fa.T_TYPE from T_INFO_FORM f inner join T_INFO_FORMPARA fa on f.t_Formid = fa.t_Formid and f.T_ORGID=fa.T_ORGID and f.T_TREEID=fa.T_TREEID where fa.t_orgid='" + orgId + "' and fa.t_Treeid='" + treeId + "' and f.T_FORMID='" + formID + "' and fa.I_INPUTTYPE in(" + type + ") order by fa.I_ORDER asc"; dt = db.RunDataTable(sql, out errMsg); return(dt); }
/// <summary> /// 获取机组信息 /// </summary> /// <param name="periodId"></param> /// <returns></returns> public DataTable GetUnit(string periodId) { //sql = "select T_UNITID,T_UNITDESC,T_MACHINEID,I_FLAG from Administrator.T_BASE_UNIT where T_PERIODID='" + periodId + "'"; sql = "select u.T_UNITID,u.T_UNITDESC,u.T_MACHINEID,u.I_FLAG,p.T_POWERTAG,p.T_WINDTAG,p.T_WUGONGGLV,p.T_ZHUANZHISUDU,p.T_STATE from Administrator.T_BASE_UNIT u left join ADMINISTRATOR.T_BASE_POINTS p on u.T_UNITID=p.T_UNITID and u.T_PERIODID=p.T_PERIODID where u.T_PERIODID='" + periodId + "'"; dt = db.RunDataTable(sql, out errMsg); return(dt); }
/// <summary> /// 获取机组指定时间内电量集合 /// </summary> /// <param name="st">开始时间</param> /// <param name="et">结束时间</param> /// <param name="unti">机组</param> /// <returns></returns> public DataTable GetDL(string st, string et, string units) { sql = @"select sum(t.D_VALUE) as result ,t.T_UNITDESC from ( select s.D_VALUE,s.T_UNITID,s.T_TIME,u.T_UNITDESC,u.T_PERIODID from Administrator.T_INFO_STATISCS s inner join Administrator.T_BASE_UNIT u on s.T_UNITID=u.T_UNITID where s.T_UNITID in (" + units + ") and s.T_Time >'" + st + "' and s.T_Time<'" + et + "' and s.T_TJID='DL' and u.T_PERIODID='SDFDC-QB') as t group by t.T_UNITDESC"; return(dl.RunDataTable(sql, out errMsg)); }
/// <summary> /// 获取机组对应测点 /// </summary> /// <param name="unit">机组编号</param> /// <returns></returns> public DataTable GetPointsByUnit(string unit) { sql = "select T_POWERTAG,T_WINDTAG,T_ELECTRICTAG,T_STOPTIMETAG,T_FAULTTYPE,T_EXPLAINTYPE,T_CALCTIMETYPE,T_WUGONGGLV,T_GONGLVYINSHU,T_GONGLVYINSHUSHEDINGZHI,"; sql += "T_ZHUANZHISUDU,T_MUXIANPINLV,T_FADIANJISUDUCPU,T_FADIANJISUDUPLC,T_TATONGPIANZHUANJIAODU,T_JICANGWEIZHI,T_CILUNXIANGZHOUCHENGWENDU,T_CHILUNXIANGWENDU,"; sql += "T_JICANGWENDU,T_LIUYAYUYA,T_YEYAYUYA,T_JICANGZHUANDONG,T_10FENGXIANGCHAZHI,T_1MIAOFENGXIAGNCHAZHI,T_ZHUANJUSHIJIZHI,T_ZHUANJUSHEDINGZHI,T_HUANJINGWENDU,"; sql += "T_WEIZHOUZHOUCHENGWENDU,T_FADIANJI1DIANWENDU,T_FADIANJI2DIANWENDU,T_FADIANJILENGQUEKONGQIWENDU,T_ZHOUCHENGAWENDU,T_ZHOUCHENGBWENDU"; sql += " from Administrator.T_BASE_POINTS where T_UNITID='" + unit + "'"; dt = dl.RunDataTable(sql, out errMsg); return(dt); }
/// <summary> /// 根据风场期数获取机组ID和描述 /// </summary> /// <param name="perid"></param> /// <param name="errMsg"></param> /// <returns></returns> public DataTable GetUnitInfoByPID(string perid, out string errMsg) { errMsg = ""; DataTable dt = null; sql = " select u.T_PERIODID,u.T_UNITID,u.T_UNITDESC,u.T_MACHINEID,p.T_FAULTTYPE from Administrator.T_BASE_POINTS as p inner join Administrator.T_BASE_UNIT as u on "; sql += "u.T_UNITID = p.T_UNITID where u.T_PERIODID='" + perid + "'"; dt = dl.RunDataTable(sql, out errMsg); return(dt); }
public string GetData(string id) { BLL.BLLDefault bll_df = new BLL.BLLDefault(); DBLink dl = new DBLink(); string errMsg = ""; string sql = "select * from t_info_graphic where t_graphicid ='" + id + "'"; DataTable dtt = new DataTable();//select * from t_info_graphic where t_graphicid ='1' order by t_controlid asc DataTable dt = dl.RunDataTable(sql, out errMsg); string str = ""; for (int i = 0; i < dt.Rows.Count; i++) {//select * from (select * from t_info_histvalue where T_TAG='GHPV_1_000WG001' order by t_time desc) where ROWNUM =1 order by ROWNUM asc // string sql_value = "select * from (select * from t_info_histvalue where T_TAG='" + dt.Rows[i]["t_tag"].ToString() + "' order by t_time desc) where ROWNUM =1 order by ROWNUM asc"; dtt = bll_df.GetDT(dt.Rows[i]["t_tag"].ToString(), DateTime.Now); if ((dtt.Rows.Count > 0) && (dtt.Rows[0]["D_VALUE"].ToString() != "")) { str += dt.Rows[i]["t_controlid"].ToString() + "," + Convert.ToDouble(dtt.Rows[0]["D_VALUE"].ToString()).ToString("f2") + ";"; } else { str += dt.Rows[i]["t_controlid"].ToString() + ",0;"; } } return(str); }
private DataTable Get_COMID() { DataTable dt = null; string sql = "select T_COMID from t_base_plant group by T_COMID"; dt = dl.RunDataTable(sql, out errMsg); return(dt); }
/// <summary> /// 获取机组信息 /// </summary> /// <param name="periodId"></param> /// <returns></returns> public DataTable GetUnit(string periodId) { sql = "select T_UNITID,T_UNITDESC,T_MACHINEID from Administrator.T_BASE_UNIT where T_PERIODID='" + periodId + "'"; dt = db.RunDataTable(sql, out errMsg); return(dt); }
/// <summary> /// 初始化分页数据 /// </summary> /// <param name="table">数据表</param> /// <param name="startIndex">开始索引</param> /// <param name="endIndex">结束索引</param> /// <returns></returns> public DataTable GetReportTable(string table, int startIndex, int endIndex) { string errMsg = ""; DataTable dt = null; sql = "select * from (select a.*,rownumber() over() as rowid from (select * from Administrator." + table + ") a) tmp where tmp.rowid >=" + startIndex + " and tmp.rowid <= " + endIndex; dt = dl.RunDataTable(sql, out errMsg); sql = ""; return(dt); }
public string GetFHByTimeGF(string pName) { DBLink dl = new DBLink(); string fh = "["; string dtZr = DateTime.Now.ToString("yyyy-MM-dd 0:00:00").ToString(); string dtJr = DateTime.Now.ToString(); string sql = "select max(D_VALUE),to_char(T_time,'HH24') s2 from t_info_histvalue where " + "T_TAG=(select t_base_points_org.T_POWERTAG from t_base_points_org where " + " t_base_points_org.t_orgid='" + pName + "' ) and " + "T_TIME between to_date('" + dtZr + "','yyyy-MM-dd HH24:MI:SS') and " + "to_date('" + dtJr + "','yyyy-MM-dd HH24:MI:SS') group by to_char(T_time,'HH24') order by s2 asc"; string errMsg = ""; DataTable dt = dl.RunDataTable(sql, out errMsg); if (dt.Rows.Count > 0) { for (int i = 0; i < dt.Rows.Count; i++) { if (i == 0) { for (int j = 0; j < Convert.ToDouble(dt.Rows[i][1].ToString()); j++) { fh += "null,"; } fh += Convert.ToDouble(dt.Rows[i][0].ToString()).ToString("f2") + ","; } else { for (int j = 0; j < (Convert.ToDouble(dt.Rows[i][1].ToString()) - Convert.ToDouble(dt.Rows[i - 1][1].ToString())) - 1; j++) { fh += "null,"; } fh += Convert.ToDouble(dt.Rows[i][0].ToString()).ToString("f2") + ","; } if (i == dt.Rows.Count - 1) { for (int j = 0; j < (24 - Convert.ToDouble(dt.Rows[i][1].ToString())) - 1; j++) { fh += "null,"; } } } } fh = fh.TrimEnd(',') + "]"; return("{\"fh\":" + fh + "}"); }
/// <summary> /// 获取机组负荷、主汽流量、主汽压力、主汽温度、再热温度、真空、锅炉效率、热耗、煤耗的最新值 /// </summary> /// <param name="unitId">机组编号</param> /// <returns></returns> public double[] GetVal(string unitId) { sql = "select T_POWERTAG,T_FLOWTAG,T_PRESSURETAG,T_TEMPERATURETAG,T_REHEATTEMPERATURETAG,T_VACUUM,T_EFFICIENCY,T_HEATCONSUMPTION,T_COALCONSUMPTION from T_BASE_POINT_UNIT where T_UNITID='" + unitId + "'"; DataTable dt = db.RunDataTable(sql, out errMsg); string[] _str = new string[9]; double[] _val = new double[9]; for (int i = 0; i < 9; i++) { _str[i] = dt.Rows[0][i].ToString(); } _val = GetPointVal(_str); return(_val); }
//************// /// <summary> /// 判断报表模板名称是否存在 /// </summary> /// <param name="treeID"></param> /// <param name="repName"></param> /// <param name="errMsg"></param> /// <returns></returns> public int GetCountByTreeID(string treeID, string repName, out string errMsg) { errMsg = ""; int count = 0; DataTable dr = null; string sql = "select * from T_INFO_SISREPORT where Treeid='" + treeID + "' and reportname='" + repName + "'"; dr = dl.RunDataTable(sql, out errMsg); //if (dbTypeValue == "SQL") // dr = DBsql.RunDataTable(sql, out errMsg); //else if (dbTypeValue == "DB2") // dr = DBdb2.RunDataTable(sql, out errMsg); //else if (dbTypeValue == "Oracle") // dr = SAC.OracleHelper.OracleHelper.GetDataTable(sql); if (dr.Rows.Count > 0) { count = dr.Rows.Count; } return(count); }
/// <summary> /// 返回所有人员信息 /// 创建:李东峰 日期:2014-03-11 /// </summary> /// <returns>返回查询结果集</returns> public DataTable GetAllMembers() { DataTable _dt = null; string sql = "select T_USERID,T_USERNAME from T_SYS_MEMBERINFO order by ID_KEY asc"; try { _dt = dl.RunDataTable(sql, out errMsg); } catch (Exception ex) { } return(_dt); }
/// <summary> /// 获取全厂机组负荷曲线 /// </summary> /// <param name="st">开始时间</param> /// <param name="et">结束时间</param> /// <param name="count">测点值个数</param> /// <returns></returns> public IList <Hashtable> GetUnitLine(DateTime st, DateTime et, int count) { IList <Hashtable> listdata = new List <Hashtable>(); sql = "SELECT T_UNITID,T_POWERTAG FROM T_BASE_POINT_UNIT;"; dt = db.RunDataTable(sql, out errMsg); if (dt != null && dt.Rows.Count > 0) { Hashtable ht = new Hashtable(); ArrayList ld = new ArrayList(); ArrayList lt = new ArrayList(); double drv = 0; for (int i = 0; i < dt.Rows.Count; i++) { ht = new Hashtable(); lt = new ArrayList(); ht.Add("name", dt.Rows[i][0]); ht.Add("yAxis", i); DateTime _sTime = new DateTime(1970, 1, 1); DateTime dtt = st; dll.OpenPi(); while (dtt < et) { ld = new ArrayList(); dll.GetHisValue(dt.Rows[i][1].ToString(), dtt.ToString("yyyy-MM-dd HH:mm:ss"), ref drv); if (drv > 0) { drv = GetDouble(drv, 3); } string timeStamp = DateTimeToUTC(dtt).ToString(); DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1)); long lTime = long.Parse(timeStamp + "0000000"); TimeSpan toNow = new TimeSpan(lTime); DateTime dtResult = dtStart.Add(toNow); ld.Add(Convert.ToInt64((dtResult - _sTime).TotalMilliseconds.ToString())); ld.Add(drv); lt.Add(ld); dtt = dtt.AddSeconds(count); } ht.Add("data", lt); listdata.Add(ht); } } return(listdata); }
public ArrayList GetPOINTS_UNIT(string id) { ArrayList ld = new ArrayList(); string sql = "select * from t_base_unit where T_PATITIONID ='" + id + "' and t_unittype ='NBQ'"; DataTable dt = dl.RunDataTable(sql, out errMsg); if (dt.Rows.Count > 0) { for (int i = 0; i < dt.Rows.Count; i++) { ld.Add(dt.Rows[i]["T_UNITID"].ToString()); } } return(ld); }
private double GerUnitNum(string id) { double unit_num = 0; string sql_jtzb = "select count(*) from t_base_unit where t_patitionid in " + "(select t_patitionid from t_base_partition where t_plantid " + "in(select T_PLANTID from t_base_plant where " + id + ")) and t_unittype ='NBQ'"; DataTable dt = dl.RunDataTable(sql_jtzb, out errMsg); if (dt.Rows[0][0].ToString().Trim() != "") { unit_num += Convert.ToDouble(dt.Rows[0][0].ToString()); } return(unit_num); }
/// <summary> /// 根据用户所属的角色ID和每页显示多少条数据返回用户信息 /// 创建:李东峰 日期:2014-03-10 /// </summary> /// <param name="_grpId">用户所属的角色ID</param> /// <param name="sCount">起始条数</param> /// <param name="eCount">结束条数</param> /// <returns>返回查询结果集</returns> public DataTable GetUserByRoleId(int sCount, int eCount) { int t1 = eCount - sCount + 1; int t2 = sCount - 1; string rlDBType = dl.init(); string sqlSQL = "select top " + t1 + " * from (select ID_KEY,T_USERID,T_USERNAME from(select T_SYS_MEMBERINFO.ID_KEY,T_SYS_MEMBERINFO.T_USERID,T_SYS_MEMBERINFO.T_USERNAME,T_SYS_MEMBERGRP.T_GRPID from T_SYS_MEMBERINFO left JOIN T_SYS_MEMBERGRP ON T_SYS_MEMBERGRP.T_USERID=T_SYS_MEMBERINFO.T_USERID)as a where a.T_GRPID='" + RoleId + "')as b where (b.ID_KEY not in ( select top " + t2 + " ID_KEY from(select T_SYS_MEMBERINFO.ID_KEY,T_SYS_MEMBERINFO.T_USERID,T_SYS_MEMBERINFO.T_USERNAME,T_SYS_MEMBERGRP.T_GRPID from T_SYS_MEMBERINFO left JOIN T_SYS_MEMBERGRP ON T_SYS_MEMBERGRP.T_USERID=T_SYS_MEMBERINFO.T_USERID)as a where a.T_GRPID='" + RoleId + "'))"; string sqlDB2 = "select * from ( select a.ID_KEY,a.T_USERID,a.T_USERNAME,rownumber() over(order by ID_KEY asc ) as rowid from (select T_SYS_MEMBERINFO.ID_KEY,T_SYS_MEMBERINFO.T_USERID,T_SYS_MEMBERINFO.T_USERNAME,T_SYS_MEMBERGRP.T_GRPID from T_SYS_MEMBERINFO left JOIN T_SYS_MEMBERGRP ON T_SYS_MEMBERGRP.T_USERID=T_SYS_MEMBERINFO.T_USERID ORDER BY T_SYS_MEMBERINFO.ID_KEY)as a where a.T_GRPID='" + RoleId + "') as b where b.rowid between " + sCount + " and " + eCount + ""; string sqlORC = "select * from(select ID_KEY,T_USERID,T_USERNAME,ROWNUM rn from(select T_SYS_MEMBERINFO.ID_KEY,T_SYS_MEMBERINFO.T_USERID,T_SYS_MEMBERINFO.T_USERNAME,T_SYS_MEMBERGRP.T_GRPID from T_SYS_MEMBERINFO left JOIN T_SYS_MEMBERGRP ON T_SYS_MEMBERGRP.T_USERID=T_SYS_MEMBERINFO.T_USERID ORDER BY T_SYS_MEMBERINFO.ID_KEY) where T_GRPID='" + RoleId + "' and ROWNUM <= " + eCount + ")WHERE rn >= " + sCount + ""; string errMsg; DataTable _dt = null; if (rlDBType == "SQL") { try { _dt = dl.RunDataTable(sqlSQL, out errMsg); } catch (Exception ex) { LogHelper.WriteLog(LogHelper.EnLogType.Run, "发生时间:" + DateTime.Now.ToString("yyyy-MM-dd H:mm:ss") + "/n错误信息:" + ex.Message); } } else if (rlDBType == "DB2") { try { _dt = dl.RunDataTable(sqlDB2, out errMsg); } catch (Exception ex) { LogHelper.WriteLog(LogHelper.EnLogType.Run, "发生时间:" + DateTime.Now.ToString("yyyy-MM-dd H:mm:ss") + "/n错误信息:" + ex.Message); } } else if (rlDBType == "ORACLE") { try { _dt = dl.RunDataTable(sqlORC, out errMsg); } catch (Exception ex) { LogHelper.WriteLog(LogHelper.EnLogType.Run, "发生时间:" + DateTime.Now.ToString("yyyy-MM-dd H:mm:ss") + "/n错误信息:" + ex.Message); } } return(_dt); }
/// <summary> /// 值报 /// </summary> /// <param name="repName"></param> /// <param name="unit"></param> /// <returns></returns> public ArrayList GetChartData(string Trendid, string sdate, string edate) { double drvA = 0; int ret = 0; string pName = null; ArrayList list = new ArrayList(); count = pm.GetCountByChart(Trendid); //countKey = pm.GetCountkey(repName, 1); DateTime dtNow = DateTime.Now; string[] de = null; //describe 趋势参数描述 string[] un = null; //单位 string[] dv = null; //值 string[] ma = new string[7]; //mark xy轴刻度 LogHelper.WriteLog(LogHelper.EnLogType.Run, DateTime.Now.ToString("yyyy-MM-dd H:mm:ss") + " 值报开始......."); LogHelper.WriteLog(LogHelper.EnLogType.Run, DateTime.Now.ToString("yyyy-MM-dd H:mm:ss") + " count Value=" + count); try { de = new string[count]; un = new string[count]; dv = new string[count]; //判断是否多y轴,判断是否自动y轴刻度,如果是则取出y轴刻度 sql = "select T_MULITYAXIS, T_YMAX, T_YMIN, T_YAUTO from administrator.T_INFO_CHART_USERTEMPLATE where T_CHARTID='" + Trendid + "'"; DataTable dtInfo = null; //if (rlDBType == "SQL") // dtInfo = DBsql.RunDataTable(sql, out errMsg); //else // dtInfo = DBdb2.RunDataTable(sql, out errMsg); dtInfo = dl.RunDataTable(sql, out errMsg); if (dtInfo != null && dtInfo.Rows.Count > 0) { ma[0] = dtInfo.Rows[0]["T_MULITYAXIS"].ToString(); ma[1] = dtInfo.Rows[0]["T_YAUTO"].ToString(); ma[2] = dtInfo.Rows[0]["T_YMAX"].ToString(); ma[3] = dtInfo.Rows[0]["T_YMIN"].ToString(); } else { LogHelper.WriteLog(LogHelper.EnLogType.Run, DateTime.Now.ToString("yyyy-MM-dd H:mm:ss") + " 读取[xy轴刻度]信息失败......"); } //ID_KEY, CHARTID, PARAID, PARADESC, PARATYPE, SQL, REALTIME, PERIOD, SHIFT, YMAX, YMIN, YAUTO, UNIT sql = "select count(*) from administrator.T_INFO_CHART_CHARTPARA where T_CHARTID = '" + Trendid + "' "; DataTable dtLevBZ = null; int a = 0; //if (rlDBType == "SQL") //{ // dtLevBZ = DBsql.RunDataTable(sql, out errMsg); //} //else //{ // dtLevBZ = DBdb2.RunDataTable(sql, out errMsg); //} dtLevBZ = dl.RunDataTable(sql, out errMsg); if (dtLevBZ != null && Convert.ToInt32(dtLevBZ.Rows[0][0].ToString()) > 0) { #region SQL sql = "select * from administrator.T_INFO_CHART_CHARTPARA where T_CHARTID = '" + Trendid + "' and T_PARATYPE='SQL' "; DataTable dtSQL = null; DataSet dssql = null; //if (rlDBType == "SQL") //{ // dtSQL = DBsql.RunDataTable(sql, out errMsg); //} //else //{ // dtSQL = DBdb2.RunDataTable(sql, out errMsg); //} dtSQL = dl.RunDataTable(sql, out errMsg); if (dtSQL != null && dtSQL.Rows.Count > 0) { for (int i = 0; i < dtSQL.Rows.Count; i++) { de[a] = dtSQL.Rows[i]["T_PARADESC"].ToString(); un[a] = dtSQL.Rows[i]["T_UNIT"].ToString(); ma[4] += dtSQL.Rows[i]["T_YAUTO"].ToString() + ","; ma[5] += dtSQL.Rows[i]["T_YMAX"].ToString() + ","; ma[6] += dtSQL.Rows[i]["T_YMIN"].ToString() + ","; sql = dtSQL.Rows[i]["T_SQL"].ToString(); if (sql.Contains("&bt&") && sql.Contains("&et&")) { sql = sql.Replace("&bt&", DateTime.Parse(sdate).AddSeconds(Convert.ToDouble(dtSQL.Rows[i]["T_SHIFT"].ToString())).ToString()); sql = sql.Replace("&et&", DateTime.Parse(edate).AddSeconds(Convert.ToDouble(dtSQL.Rows[i]["T_SHIFT"].ToString())).ToString()); } //if (rlDBType == "SQL") //{ // dssql = DBsql.RunDataSet(sql, out errMsg); //} //else //{ // dssql = DBdb2.RunDataSet(sql, out errMsg); //} dssql = dl.RunDataSet(sql, out errMsg); for (int j = 0; j < dssql.Tables[0].Rows.Count; j++) { dv[a] += dssql.Tables[0].Rows[j][0].ToString() + "+" + dssql.Tables[0].Rows[j][1].ToString(); if (j != dssql.Tables[0].Rows.Count - 1) { dv[a] += ","; } else { dv[a] += ";"; } } a++; } } #endregion #region 实时数据库 sql = "select * from administrator.T_INFO_CHART_CHARTPARA where T_CHARTID = '" + Trendid + "' and T_PARATYPE='RT' "; DataTable dtAvg = null; DateTime dtsql = DateTime.Now; //if (rlDBType == "SQL") //{ // dtAvg = DBsql.RunDataTable(sql, out errMsg); //} //else //{ // dtAvg = DBdb2.RunDataTable(sql, out errMsg); //} dtAvg = dl.RunDataTable(sql, out errMsg); if (dtAvg != null && dtAvg.Rows.Count > 0) { for (int i = 0; i < dtAvg.Rows.Count; i++) { de[a] = dtAvg.Rows[i]["T_PARADESC"].ToString(); un[a] = dtAvg.Rows[i]["T_UNIT"].ToString(); pName = dtAvg.Rows[i]["T_REALTIME"].ToString(); DateTime date = DateTime.Parse(sdate); while (date < DateTime.Parse(edate)) { if (rtDBType == "EDNA") { //ek.GetHisValueByTime(pName, sdate, ref ret, ref drvA); } else { // pk.GetHisValue(pName, sdate, ref drvA); } dv[a] += sdate + "+" + drvA.ToString() + ","; date = date.AddSeconds(Convert.ToDouble(dtAvg.Rows[i]["T_SHIFT"].ToString())); } a++; } } #endregion } } catch (Exception ce) { LogHelper.WriteLog(LogHelper.EnLogType.Run, DateTime.Now.ToString("yyyy-MM-dd H:mm:ss") + " 程序异常: " + ce.Message); } list.Add(de); list.Add(un); list.Add(dv); list.Add(ma); return(list); }
//获取所有总装机量 public double GetCapacity(DateTime d_time) { double capacity = 0; DataTable dt = null; string sql = "select * from t_base_plant order by ID_KEY asc"; dt = dl.RunDataTable(sql, out errMsg); if (dt.Rows.Count > 0) { for (int i = 0; i < dt.Rows.Count; i++) { DataTable DTT = null; string sql1 = "select 容量 from(select row_number() over(order by T_time desc) seq,t.* from t_info_rl t where T_ORGID='" + dt.Rows[i]["T_PLANTID"].ToString() + "' and T_time <= to_date('" + d_time + "','yyyy-MM-dd HH24:MI:SS') ) where seq=1 order by T_TIME desc"; DTT = dl.RunDataTable(sql1, out errMsg); if (DTT.Rows.Count > 0) { capacity += Convert.ToDouble(DTT.Rows[0][0].ToString()); } } } return(Math.Round(capacity, 2)); }
/// <summary> /// 获取测点 /// </summary> /// <returns></returns> public DataTable GetAllPoints() { sql = "select *From T_BASE_POINT_UNIT"; dt = dl.RunDataTable(sql, out errMsg); return(dt); }
/// <summary> /// 初始化机组信息 /// </summary> private void LoadData() { StringBuilder htmlTable = new StringBuilder(); htmlTable.Append("<table cellSpacing='0' cellPadding='0' width ='1100px' border='1'>"); string strTitle = "<tr style='background-color: #CFE6FC; line-height:35px'><td style='width:100px;'>区域</td><td style='width:100px;'>电站</td><td style='width:120px'>出力(万kw)</td><td style='width:100px'>机型</td><td style='width:920px' colspan='" + colrow + "'>机组</td></tr>"; htmlTable.Append(strTitle); string str = ""; string str2 = ""; string str3 = ""; string str4 = ""; //sql = "select DISTINCT PERIOD_NAME,PERIOD_TAG,T_ORDER,T_AREA from (select * from ADMINISTRATOR.T_INFO_UNIT " + dataType + ") order by T_AREA,T_ORDER"; //DataTable dtNames = dl.RunDataTable(sql, out errMsg); string sqlArea = "select DISTINCT T_AREA from (select T_AREA from ADMINISTRATOR.T_INFO_UNIT " + dataType + ") order by T_AREA "; DataTable dtArea = dl.RunDataTable(sqlArea, out errMsg); for (int a = 0; a < dtArea.Rows.Count; a++) { string areaSql = "select DISTINCT PERIOD_NAME,PERIOD_TAG,T_ORDER,T_AREA from (select * from ADMINISTRATOR.T_INFO_UNIT " + dataType + " and T_AREA='" + dtArea.Rows[a][0].ToString() + "')"; DataTable dtAreas = dl.RunDataTable(areaSql, out errMsg); double areaRows = 0; //具体区域列合并多少行 根据机组数量除以机组的列数 //for (int j = 0; j < dtAreas.Rows.Count; j++) //{ sql = "select DISTINCT PERIOD_NAME,PERIOD_TAG,T_ORDER,T_AREA,UNIT_FACTORY from (select * from ADMINISTRATOR.T_INFO_UNIT " + dataType + " and T_AREA='" + dtArea.Rows[a][0].ToString() + "') order by T_AREA,T_ORDER"; DataTable dtNamesa = dl.RunDataTable(sql, out errMsg); for (int jj = 0; jj < dtNamesa.Rows.Count; jj++) { sql = "select DISTINCT UNIT_FACTORY from (select * from ADMINISTRATOR.T_INFO_UNIT " + dataType + " and T_AREA='" + dtArea.Rows[a][0].ToString() + "' and PERIOD_NAME='" + dtNamesa.Rows[jj][0].ToString() + "') "; DataTable dtUnits = dl.RunDataTable(sql, out errMsg); for (int b = 0; b < dtUnits.Rows.Count; b++) { if (dtUnits.Rows[b]["UNIT_FACTORY"] != DBNull.Value) { sql = "select * from ADMINISTRATOR.T_INFO_UNIT " + dataType + " and T_AREA='" + dtArea.Rows[a][0].ToString() + "' and PERIOD_NAME='" + dtNamesa.Rows[jj][0].ToString() + "' and UNIT_FACTORY='" + dtUnits.Rows[b]["UNIT_FACTORY"].ToString() + "' order by INT(UNIT_ID)"; } else { sql = "select * from ADMINISTRATOR.T_INFO_UNIT " + dataType + " and T_AREA='" + dtArea.Rows[a][0].ToString() + "' and PERIOD_NAME='" + dtNamesa.Rows[jj][0].ToString() + "' and UNIT_FACTORY IS NULL ";//order by INT(UNIT_ID)"; } DataTable dtType = new DataTable(); dtType = dl.RunDataTable(sql, out errMsg); areaRows += (Math.Ceiling((double)dtType.Rows.Count / double.Parse(colrow.ToString()))) * 2; } } //} //风电的区域,场站 可以跳转 if (cyTye == "fd") { str += "<tr><td style='text-align:left' rowspan=\"" + areaRows + "\"><a type='2' href='#' onclick='next(this)'>" + dtArea.Rows[a]["T_AREA"].ToString() + "</a></td>"; } else { str += "<tr><td style='text-align:left' rowspan=\"" + areaRows + "\">" + dtArea.Rows[a]["T_AREA"].ToString() + "</td>"; } sql = "select DISTINCT PERIOD_NAME,PERIOD_TAG,T_ORDER,T_AREA,UNIT_FACTORY from (select * from ADMINISTRATOR.T_INFO_UNIT " + dataType + " and T_AREA='" + dtArea.Rows[a][0].ToString() + "') order by T_AREA,T_ORDER"; DataTable dtNames = dl.RunDataTable(sql, out errMsg); for (int jj = 0; jj < dtNames.Rows.Count; jj++) { //sql = "select * from ADMINISTRATOR.T_INFO_UNIT " + dataType + " and T_AREA='" + dtArea.Rows[a][0].ToString() + "' and PERIOD_NAME='" + dtNames.Rows[j][0].ToString() + "' order by INT(UNIT_ID)"; sql = "select DISTINCT UNIT_FACTORY from (select * from ADMINISTRATOR.T_INFO_UNIT " + dataType + " and T_AREA='" + dtArea.Rows[a][0].ToString() + "' and PERIOD_NAME='" + dtNamesa.Rows[jj][0].ToString() + "') "; DataTable dtUnitss = dl.RunDataTable(sql, out errMsg); double rowspans = 0; for (int d = 0; d < dtUnitss.Rows.Count; d++) { if (dtUnitss.Rows[d]["UNIT_FACTORY"] != DBNull.Value) { sql = "select * from ADMINISTRATOR.T_INFO_UNIT " + dataType + " and T_AREA='" + dtArea.Rows[a][0].ToString() + "' and PERIOD_NAME='" + dtNames.Rows[jj][0].ToString() + "' and UNIT_FACTORY='" + dtUnitss.Rows[d]["UNIT_FACTORY"].ToString() + "' order by INT(UNIT_ID)"; } else { sql = "select * from ADMINISTRATOR.T_INFO_UNIT " + dataType + " and T_AREA='" + dtArea.Rows[a][0].ToString() + "' and PERIOD_NAME='" + dtNames.Rows[jj][0].ToString() + "' and UNIT_FACTORY IS NULL ";// order by INT(UNIT_ID)"; } DataTable dtType = dl.RunDataTable(sql, out errMsg); rowspans += (Math.Ceiling((double)dtType.Rows.Count / double.Parse(colrow.ToString()))) * 2; } //double rowspan = Math.Ceiling((double)dtUnits.Rows.Count / double.Parse(colrow.ToString())); //出力合并行 if (cyTye == "fd") { str += "<td style='text-align:left' rowspan=\"" + rowspans + "\"><a type='3' area='" + dtNames.Rows[jj]["T_AREA"].ToString() + "' href='#' onclick='next(this)'>" + dtNames.Rows[jj][0].ToString() + "</a></td><td style='text-align:right' rowspan=\"" + rowspans + "\">" + Math.Round(PointValuesPerion.ContainsKey(dtNames.Rows[jj][0].ToString())?PointValuesPerion[dtNames.Rows[jj][0].ToString()]:0, 3) + "</td>"; } else { str += "<td style='text-align:left' rowspan=\"" + rowspans + "\">" + dtNames.Rows[jj][0].ToString() + "</td><td style='text-align:right' rowspan=\"" + rowspans + "\">" + Math.Round(PointValuesPerion.ContainsKey(dtNames.Rows[jj][0].ToString())?PointValuesPerion[dtNames.Rows[jj][0].ToString()]:0, 3) + "</td>"; } for (int p = 0; p < dtUnitss.Rows.Count; p++) { double rowspan = 0; string sql2 = string.Empty; if (dtUnitss.Rows[p]["UNIT_FACTORY"] != DBNull.Value) { sql = "select distinct ID_KEY ,UNIT_FACTORY,PERIOD_NAME,UNIT_GL_TAG,UNIT_ID,T_WINDTAG from (select U.I_FLAG, T.*,P.T_WINDTAG from ADMINISTRATOR.T_INFO_UNIT AS T LEFT JOIN ADMINISTRATOR.T_BASE_POINTS AS P ON T.UNIT_GL_TAG=P.T_POWERTAG LEFT JOIN ADMINISTRATOR.T_BASE_UNIT AS U ON P.T_UNITID=U.T_UNITID" + dataType + " and T.T_AREA='" + dtArea.Rows[a][0].ToString() + "' and T.PERIOD_NAME='" + dtNames.Rows[jj][0].ToString() + "' and T.UNIT_FACTORY='" + dtUnitss.Rows[p]["UNIT_FACTORY"].ToString() + "' order by INT(T.UNIT_ID))"; sql2 = "select distinct ID_KEY ,I_FLAG,UNIT_FACTORY,PERIOD_NAME,UNIT_GL_TAG,UNIT_ID from (select U.I_FLAG, T.* from ADMINISTRATOR.T_INFO_UNIT AS T LEFT JOIN ADMINISTRATOR.T_BASE_POINTS AS P ON T.UNIT_GL_TAG=P.T_POWERTAG LEFT JOIN ADMINISTRATOR.T_BASE_UNIT AS U ON P.T_UNITID=U.T_UNITID" + dataType + " and T.T_AREA='" + dtArea.Rows[a][0].ToString() + "' and T.PERIOD_NAME='" + dtNames.Rows[jj][0].ToString() + "' and T.UNIT_FACTORY='" + dtUnitss.Rows[p]["UNIT_FACTORY"].ToString() + "' order by INT(T.UNIT_ID))"; } else { sql = "select distinct ID_KEY,UNIT_FACTORY,PERIOD_NAME,UNIT_GL_TAG,UNIT_ID,T_WINDTAG from ( select U.I_FLAG, T.*,P.T_WINDTAG from ADMINISTRATOR.T_INFO_UNIT AS T LEFT JOIN ADMINISTRATOR.T_BASE_POINTS AS P ON T.UNIT_GL_TAG=P.T_POWERTAG LEFT JOIN ADMINISTRATOR.T_BASE_UNIT AS U ON P.T_UNITID=U.T_UNITID" + dataType + " and T.T_AREA='" + dtArea.Rows[a][0].ToString() + "' and T.PERIOD_NAME='" + dtNames.Rows[jj][0].ToString() + "' and T.UNIT_FACTORY IS NULL order by INT(T.UNIT_ID))"; sql2 = "select distinct ID_KEY ,I_FLAG,UNIT_FACTORY,PERIOD_NAME,UNIT_GL_TAG,UNIT_ID from ( select U.I_FLAG, T.* from ADMINISTRATOR.T_INFO_UNIT AS T LEFT JOIN ADMINISTRATOR.T_BASE_POINTS AS P ON T.UNIT_GL_TAG=P.T_POWERTAG LEFT JOIN ADMINISTRATOR.T_BASE_UNIT AS U ON P.T_UNITID=U.T_UNITID" + dataType + " and T.T_AREA='" + dtArea.Rows[a][0].ToString() + "' and T.PERIOD_NAME='" + dtNames.Rows[jj][0].ToString() + "' and T.UNIT_FACTORY IS NULL order by INT(T.UNIT_ID))"; } DataTable dtType = dl.RunDataTable(sql, out errMsg); //带I_FLAG DataTable dtType2 = dl.RunDataTable(sql2, out errMsg); DataRow[] DDDD = dtType2.Select("I_FLAG=1"); //保存标杆风机的ID_KEY List <string> id = new List <string>(); foreach (DataRow drr in DDDD) { id.Add(drr["ID_KEY"].ToString()); } rowspan = Math.Ceiling(((double)dtType.Rows.Count) / double.Parse(colrow.ToString())); str += "<td style='text-align:left' rowspan=\"" + rowspan * 2 + "\">" + dtUnitss.Rows[p]["UNIT_FACTORY"] + "</td>"; int rows = Int32.Parse((rowspan * double.Parse(colrow.ToString())).ToString()); for (int k = 1; k <= rows; k++) { if (k > dtType.Rows.Count) { if (k % double.Parse(colrow.ToString()) == 0 && k != 0) { str += "<td style='width:41px'> </td></tr>"; str2 += "<td> </td></tr>"; htmlTable.Append(str); htmlTable.Append(str2); str = "<tr>"; str2 = "<tr>"; } else { str += "<td> </td>"; str2 += "<td> </td>"; } } else { if (k % double.Parse(colrow.ToString()) == 0 && k != 0) { if (dtType.Rows[k - 1]["PERIOD_NAME"].ToString() == "南宁华南城" || dtType.Rows[k - 1]["PERIOD_NAME"].ToString() == "天津北辰" || dtType.Rows[k - 1]["PERIOD_NAME"].ToString() == "九江") { str += "<td style='width:41px'> </td></tr>"; str2 += "<td> </td></tr>"; htmlTable.Append(str); htmlTable.Append(str2); str = "<tr>"; str2 = "<tr>"; } else { //风电 if (cyTye == "fd") { //风速 double value = PointValues.ContainsKey(dtType.Rows[k - 1]["T_WINDTAG"].ToString())?PointValues[dtType.Rows[k - 1]["T_WINDTAG"].ToString()]:0; //是否是标杆风机 if (id.Contains(dtType.Rows[k - 1]["ID_KEY"].ToString())) { if (value <= 3) { str += "<td style='width:41px;color:Red;background-color: #B3D6FD;' title='风速:" + value + ";负荷:" + Math.Round(PointValues.ContainsKey(dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString())?PointValues[dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()]:0, 3) + "'><a type='4' idkey='" + dtType.Rows[k - 1]["ID_KEY"].ToString() + "' href='#' style='text-decoration:none;color:Red;' onclick='tc(this)'>#" + dtType.Rows[k - 1]["UNIT_ID"] + "</a> </td></tr>"; } else if (value >= 3 && value <= 12) { str += "<td style='width:41px;color:Red;background-color: #ACE066;' title='风速:" + value + ";负荷:" + Math.Round(PointValues.ContainsKey(dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString())?PointValues[dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()]:0, 3) + "'><a type='4' idkey='" + dtType.Rows[k - 1]["ID_KEY"].ToString() + "' href='#' style='text-decoration:none;color:Red;' onclick='tc(this)'>#" + dtType.Rows[k - 1]["UNIT_ID"] + "</a></td></tr>"; } else if (value > 12 && value <= 25) { str += "<td style='width:41px;color:Red;background-color: #64C45C;' title='风速:" + value + ";负荷:" + Math.Round(PointValues.ContainsKey(dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString())?PointValues[dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()]:0, 3) + "'><a type='4' idkey='" + dtType.Rows[k - 1]["ID_KEY"].ToString() + "' href='#' style='text-decoration:none;color:Red;' onclick='tc(this)'>#" + dtType.Rows[k - 1]["UNIT_ID"] + "</a></td></tr>"; } else if (value > 25) { str += "<td style='width:41px;color:Red;background-color: #9C7DC1;' title='风速:" + value + ";负荷:" + Math.Round(PointValues.ContainsKey(dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()) ? PointValues[dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()] : 0, 3) + "'><a type='4' idkey='" + dtType.Rows[k - 1]["ID_KEY"].ToString() + "' href='#' style='text-decoration:none;color:Red;' onclick='tc(this)'>#" + dtType.Rows[k - 1]["UNIT_ID"] + "</a></td></tr>"; } //str += "<td style='width:41px;color:Red;'>#" + dtType.Rows[k - 1]["UNIT_ID"] + "</td></tr>"; } else { if (value <= 3) { str += "<td style='width:41px; background-color: #B3D6FD;' title='风速:" + value + ";负荷:" + Math.Round(PointValues.ContainsKey(dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString())?PointValues[dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()]:0, 3) + "'><a type='4' idkey='" + dtType.Rows[k - 1]["ID_KEY"].ToString() + "' href='#' style='text-decoration:none;' onclick='tc(this)'>#" + dtType.Rows[k - 1]["UNIT_ID"] + "</a></td></tr>"; } else if (value >= 3 && value <= 12) { str += "<td style='width:41px; background-color: #ACE066;' title='风速:" + value + ";负荷:" + Math.Round(PointValues.ContainsKey(dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString())?PointValues[dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()]:0, 3) + "'><a type='4' idkey='" + dtType.Rows[k - 1]["ID_KEY"].ToString() + "' href='#' style='text-decoration:none;' onclick='tc(this)'>#" + dtType.Rows[k - 1]["UNIT_ID"] + "</a></td></tr>"; } else if (value > 12 && value <= 25) { str += "<td style='width:41px; background-color: #64C45C;' title='风速:" + value + ";负荷:" + Math.Round(PointValues.ContainsKey(dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString())?PointValues[dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()]:0, 3) + "'><a type='4' idkey='" + dtType.Rows[k - 1]["ID_KEY"].ToString() + "' href='#' style='text-decoration:none;' onclick='tc(this)'>#" + dtType.Rows[k - 1]["UNIT_ID"] + "</a></td></tr>"; } else if (value > 25) { str += "<td style='width:41px; background-color: #9C7DC1;' title='风速:" + value + ";负荷:" + Math.Round(PointValues.ContainsKey(dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()) ? PointValues[dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()] : 0, 3) + "'><a type='4' idkey='" + dtType.Rows[k - 1]["ID_KEY"].ToString() + "' href='#' style='text-decoration:none;' onclick='tc(this)'>#" + dtType.Rows[k - 1]["UNIT_ID"] + "</a></td></tr>"; } //str += "<td style='width:41px;'>#" + dtType.Rows[k - 1]["UNIT_ID"].ToString() + "</td></tr>"; } } else { str += "<td style='width:41px; ' >#" + dtType.Rows[k - 1]["UNIT_ID"] + "</td></tr>"; } if (PointValues.ContainsKey(dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString())) { if (PointValues[dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()] < 0) { str2 += "<td style='background-color: yellow;text-align:right'>" + PointValues[dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()] + "</td></tr>"; } else { str2 += "<td >" + Math.Round(PointValues[dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()], 3) + "</td></tr>"; } } else { str2 += "<td >0</td></tr>"; } htmlTable.Append(str); htmlTable.Append(str2); str = "<tr>"; str2 = "<tr>"; } } else { if (dtType.Rows[k - 1]["PERIOD_NAME"].ToString() == "南宁华南城" || dtType.Rows[k - 1]["PERIOD_NAME"].ToString() == "天津北辰" || dtType.Rows[k - 1]["PERIOD_NAME"].ToString() == "九江") { str += "<td style='width:41px'> </td>"; str2 += "<td> </td>"; } else { //风电 if (cyTye == "fd") { //风速 double value = PointValues.ContainsKey(dtType.Rows[k - 1]["T_WINDTAG"].ToString())?PointValues[dtType.Rows[k - 1]["T_WINDTAG"].ToString()]:0; if (id.Contains(dtType.Rows[k - 1]["ID_KEY"].ToString())) { if (value <= 3) { str += "<td style='width:41px;color:Red;background-color: #B3D6FD;' title='风速:" + value + ";负荷:" + Math.Round(PointValues.ContainsKey(dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString())?PointValues[dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()]:0, 3) + "'><a type='4' idkey='" + dtType.Rows[k - 1]["ID_KEY"].ToString() + "' href='#' style='text-decoration:none;color:Red;' onclick='tc(this)'>#" + dtType.Rows[k - 1]["UNIT_ID"] + "</a></td>"; } else if (value >= 3 && value <= 12) { str += "<td style='width:41px;color:Red;background-color: #ACE066;' title='风速:" + value + ";负荷:" + Math.Round(PointValues.ContainsKey(dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString())?PointValues[dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()]:0, 3) + "'><a type='4' idkey='" + dtType.Rows[k - 1]["ID_KEY"].ToString() + "' href='#' style='text-decoration:none;color:Red;' onclick='tc(this)'>#" + dtType.Rows[k - 1]["UNIT_ID"] + "</a></td>"; } else if (value > 12 && value <= 25) { str += "<td style='width:41px;color:Red;background-color: #64C45C;' title='风速:" + value + ";负荷:" + Math.Round(PointValues.ContainsKey(dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString())?PointValues[dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()]:0, 3) + "'><a type='4' idkey='" + dtType.Rows[k - 1]["ID_KEY"].ToString() + "' href='#' style='text-decoration:none;color:Red;' onclick='tc(this)'>#" + dtType.Rows[k - 1]["UNIT_ID"] + "</a></td>"; } else if (value > 25) { str += "<td style='width:41px;color:Red;background-color: #9C7DC1;' title='风速:" + value + ";负荷:" + Math.Round(PointValues.ContainsKey(dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()) ? PointValues[dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()] : 0, 3) + "'><a type='4' idkey='" + dtType.Rows[k - 1]["ID_KEY"].ToString() + "' href='#' style='text-decoration:none;color:Red;' onclick='tc(this)'>#" + dtType.Rows[k - 1]["UNIT_ID"] + "</a></td>"; } //str += "<td style='width:41px;color:Red;'>#" + dtType.Rows[k - 1]["UNIT_ID"] + "</td>"; } else { if (value <= 3) { str += "<td style='width:41px; background-color: #B3D6FD;' title='风速:" + value + ";负荷:" + Math.Round(PointValues.ContainsKey(dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString())?PointValues[dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()]:0, 3) + "'><a type='4' idkey='" + dtType.Rows[k - 1]["ID_KEY"].ToString() + "' href='#' style='text-decoration:none;' onclick='tc(this)'>#" + dtType.Rows[k - 1]["UNIT_ID"] + "</a></td>"; } else if (value >= 3 && value <= 12) { str += "<td style='width:41px; background-color: #ACE066;' title='风速:" + value + ";负荷:" + Math.Round(PointValues.ContainsKey(dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString())?PointValues[dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()]:0, 3) + "'><a type='4' idkey='" + dtType.Rows[k - 1]["ID_KEY"].ToString() + "' href='#' style='text-decoration:none;' onclick='tc(this)'>#" + dtType.Rows[k - 1]["UNIT_ID"] + "</a></td>"; } else if (value > 12 && value <= 25) { str += "<td style='width:41px; background-color: #64C45C;' title='风速:" + value + ";负荷:" + Math.Round(PointValues.ContainsKey(dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString())?PointValues[dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()]:0, 3) + "'><a type='4' idkey='" + dtType.Rows[k - 1]["ID_KEY"].ToString() + "' href='#' style='text-decoration:none;' onclick='tc(this)'>#" + dtType.Rows[k - 1]["UNIT_ID"] + "</a></td>"; } else if (value > 25) { str += "<td style='width:41px; background-color: #9C7DC1;' title='风速:" + value + ";负荷:" + Math.Round(PointValues.ContainsKey(dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()) ? PointValues[dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()] : 0, 3) + "'><a type='4' idkey='" + dtType.Rows[k - 1]["ID_KEY"].ToString() + "' href='#' style='text-decoration:none;' onclick='tc(this)'>#" + dtType.Rows[k - 1]["UNIT_ID"] + "</a></td>"; } //str += "<td style='width:41px;'>#" + dtType.Rows[k - 1]["UNIT_ID"] + "</td>"; } } else { str += "<td style='width:41px;' > #" + dtType.Rows[k - 1]["UNIT_ID"] + "</td>"; } if (PointValues.ContainsKey(dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString())) { if (PointValues[dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()] < 0) { str2 += "<td style='background-color: yellow;text-align:right'>" + PointValues[dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()] + "</td>"; } else { str2 += "<td >" + Math.Round(PointValues[dtType.Rows[k - 1]["UNIT_GL_TAG"].ToString()], 3) + "</td>"; } } else { str2 += "<td >0</td>"; } } } } } } } } htmlTable.Append("</table>"); object _obj = new { data = htmlTable.ToString() }; string result = JsonConvert.SerializeObject(_obj); Response.Write(result); Response.End(); }
/// <summary> /// 入炉煤低位热值 /// </summary> /// <param name="repType"></param> /// <param name="qsrq"></param> /// <param name="jsrq"></param> /// <param name="unit"></param> /// <returns></returns> public string rlmdwfrl(string repType, string qsrq, string jsrq, int unit) { object objML1; object objML2; string val1 = ""; string val2 = ""; double res = 0; string mon = ""; string re = ""; string dwfrl1 = "0"; string dwfrl2 = "0"; string dwfrl3 = "0"; string mz1ml1 = "0"; //煤量1 string mz1ml2 = "0"; string mz1ml3 = "0"; string mz2ml1 = "0"; //煤量2 string mz2ml2 = "0"; string mz2ml3 = "0"; string val = ""; if (repType == "值报") { string sql = "select * from 入炉煤质分析表 where 日期='" + qsrq + "'"; DataTable dtmt = dl.RunDataTable(sql, out errMsg); if (dtmt.Rows.Count > 0) { if (dtmt.Rows.Count == 1) { mz1ml1 = dtmt.Rows[0]["煤量1"].ToString(); mz2ml1 = dtmt.Rows[0]["煤量2"].ToString(); dwfrl1 = dtmt.Rows[0]["低位发热量"].ToString(); } else if (dtmt.Rows.Count == 2) { mz1ml1 = dtmt.Rows[0]["煤量1"].ToString(); mz1ml2 = dtmt.Rows[1]["煤量1"].ToString(); mz2ml1 = dtmt.Rows[0]["煤量2"].ToString(); mz2ml2 = dtmt.Rows[1]["煤量2"].ToString(); dwfrl1 = dtmt.Rows[0]["低位发热量"].ToString(); dwfrl2 = dtmt.Rows[1]["低位发热量"].ToString(); } else if (dtmt.Rows.Count == 3) { mz1ml1 = dtmt.Rows[0]["煤量1"].ToString(); mz1ml2 = dtmt.Rows[1]["煤量1"].ToString(); mz1ml3 = dtmt.Rows[2]["煤量1"].ToString(); mz2ml1 = dtmt.Rows[0]["煤量2"].ToString(); mz2ml2 = dtmt.Rows[1]["煤量2"].ToString(); mz2ml3 = dtmt.Rows[2]["煤量2"].ToString(); dwfrl1 = dtmt.Rows[0]["低位发热量"].ToString(); dwfrl2 = dtmt.Rows[1]["低位发热量"].ToString(); dwfrl3 = dtmt.Rows[2]["低位发热量"].ToString(); } } } else if (repType == "日报") { string sqlCmd = "SELECT 低位热值 FROM 入炉煤质日数据表 where 日期='" + Convert.ToDateTime(qsrq).ToShortDateString() + "'"; object objrlm = DBsql.RunSingle(sqlCmd, out errMsg); if (objrlm == null) { string sql = "select * from 入炉煤质分析表 where 日期='" + qsrq + "'"; DataTable dtmt = DBsql.RunDataTable(sql, out errMsg); #region if (dtmt.Rows.Count > 0) { if (dtmt.Rows.Count == 1) { mz1ml1 = dtmt.Rows[0]["煤量1"].ToString(); mz2ml1 = dtmt.Rows[0]["煤量2"].ToString(); dwfrl1 = dtmt.Rows[0]["低位发热量"].ToString(); } else if (dtmt.Rows.Count == 2) { mz1ml1 = dtmt.Rows[0]["煤量1"].ToString(); mz1ml2 = dtmt.Rows[1]["煤量1"].ToString(); mz2ml1 = dtmt.Rows[0]["煤量2"].ToString(); mz2ml2 = dtmt.Rows[1]["煤量2"].ToString(); dwfrl1 = dtmt.Rows[0]["低位发热量"].ToString(); dwfrl2 = dtmt.Rows[1]["低位发热量"].ToString(); } else if (dtmt.Rows.Count == 3) { mz1ml1 = dtmt.Rows[0]["煤量1"].ToString(); mz1ml2 = dtmt.Rows[1]["煤量1"].ToString(); mz1ml3 = dtmt.Rows[2]["煤量1"].ToString(); mz2ml1 = dtmt.Rows[0]["煤量2"].ToString(); mz2ml2 = dtmt.Rows[1]["煤量2"].ToString(); mz2ml3 = dtmt.Rows[2]["煤量2"].ToString(); dwfrl1 = dtmt.Rows[0]["低位发热量"].ToString(); dwfrl2 = dtmt.Rows[1]["低位发热量"].ToString(); dwfrl3 = dtmt.Rows[2]["低位发热量"].ToString(); } } #endregion try { mon = "((" + dwfrl1 + "*((" + mz1ml1 + ")+(" + mz2ml1 + ")))+(" + dwfrl2 + "*((" + mz1ml2 + ")+(" + mz2ml2 + ")))+(" + dwfrl3 + "*((" + mz1ml3 + ")+(" + mz2ml3 + "))))/((" + mz1ml1 + ") + (" + mz1ml2 + ") + (" + mz1ml3 + ")+(" + mz2ml1 + ") + (" + mz2ml2 + ") + (" + mz2ml3 + "))"; re = StrHelper.Cale(mon); re = StrHelper.checkCatch(re); res = double.Parse(re.ToString()); } catch { res = 0; } } else { res = double.Parse(objrlm.ToString()); } } else if (repType == "月报" || repType == "年报") { string[] date = sh.DateDiff(DateTime.Parse(qsrq), DateTime.Parse(jsrq)); for (int i = 0; i < date.Length - 1; i++) { string sql = "SELECT SUM(低位热值) FROM 入炉煤质日数据表 where 日期>='" + DateTime.Parse(date[i]).ToString("yyyy-MM-dd 0:00:00") + "' and 日期<'" + DateTime.Parse(date[i]).ToString("yyyy-MM-dd 23:59:59") + "'"; object objrlm = dl.RunSingle(sql, out errMsg); if (objrlm == null || objrlm.ToString() == "") { sql = "select * from 入炉煤质分析表 where 日期='" + DateTime.Parse(date[i]).ToString("yyyy-MM-dd 0:00:00") + "'"; DataTable dtmt = dl.RunDataTable(sql, out errMsg); #region if (dtmt.Rows.Count > 0) { if (dtmt.Rows.Count == 1) { mz1ml1 = dtmt.Rows[0]["煤量1"].ToString(); mz2ml1 = dtmt.Rows[0]["煤量2"].ToString(); dwfrl1 = dtmt.Rows[0]["低位发热量"].ToString(); } else if (dtmt.Rows.Count == 2) { mz1ml1 = dtmt.Rows[0]["煤量1"].ToString(); mz1ml2 = dtmt.Rows[1]["煤量1"].ToString(); mz2ml1 = dtmt.Rows[0]["煤量2"].ToString(); mz2ml2 = dtmt.Rows[1]["煤量2"].ToString(); dwfrl1 = dtmt.Rows[0]["低位发热量"].ToString(); dwfrl2 = dtmt.Rows[1]["低位发热量"].ToString(); } else if (dtmt.Rows.Count == 3) { mz1ml1 = dtmt.Rows[0]["煤量1"].ToString(); mz1ml2 = dtmt.Rows[1]["煤量1"].ToString(); mz1ml3 = dtmt.Rows[2]["煤量1"].ToString(); mz2ml1 = dtmt.Rows[0]["煤量2"].ToString(); mz2ml2 = dtmt.Rows[1]["煤量2"].ToString(); mz2ml3 = dtmt.Rows[2]["煤量2"].ToString(); dwfrl1 = dtmt.Rows[0]["低位发热量"].ToString(); dwfrl2 = dtmt.Rows[1]["低位发热量"].ToString(); dwfrl3 = dtmt.Rows[2]["低位发热量"].ToString(); } } #endregion try { mon = "((" + dwfrl1 + "*((" + mz1ml1 + ")+(" + mz2ml1 + ")))+(" + dwfrl2 + "*((" + mz1ml2 + ")+(" + mz2ml2 + ")))+(" + dwfrl3 + "*((" + mz1ml3 + ")+(" + mz2ml3 + "))))/((" + mz1ml1 + ") + (" + mz1ml2 + ") + (" + mz1ml3 + ")+(" + mz2ml1 + ") + (" + mz2ml2 + ") + (" + mz2ml3 + "))"; re = StrHelper.Cale(mon); re = StrHelper.checkCatch(re); } catch { re = "0"; } string re1 = ""; try { mon = "((" + mz1ml1 + ") + (" + mz1ml2 + ") + (" + mz1ml3 + ")+(" + mz2ml1 + ") + (" + mz2ml2 + ") + (" + mz2ml3 + "))"; re1 = StrHelper.Cale(mon); re1 = StrHelper.checkCatch(re1); } catch { re1 = "0"; } val1 += "(" + re + "*" + re1 + ")+"; val2 += "(" + re1 + ")+"; } else { sql = "select sum(煤量1)+sum(煤量2) from 入炉煤质分析表 where 日期='" + DateTime.Parse(date[i]).ToShortDateString() + "'"; objML1 = dl.RunSingle(sql, out errMsg); val1 += "(" + objrlm.ToString() + "*" + objML1.ToString() + ")+"; val2 += "(" + objML1.ToString() + ")+"; } } val = "(" + val1.TrimEnd('+') + ")/(" + val2.TrimEnd('+') + ")"; try { re = StrHelper.Cale(val); re = StrHelper.checkCatch(re); } catch { re = "0"; } res = double.Parse(re); } return(res.ToString()); }
/// <summary> /// 获取电量 时实测点 /// </summary> /// <param name="id"></param> /// <param name="typ">1:风场 2:工期</param> /// <param name="p">1:日 2:月 3:年</param> /// <returns></returns> private double GetDl(string id, string typ, int p, string time) { string where = ""; if (typ == "1") { where = "tt.T_ORGID='" + id + "'"; } else if (typ == "2") { where = "tt.T_PERIODID='" + id + "'"; } else if (typ == "3") { where = "1=1"; } sql = @"select t.T_WINDTAG,t.T_POWERTAG, t.T_ORGID,t.T_DAYDL, t.T_MONTHDL, t.T_YEARDL from ADMINISTRATOR.T_BASE_POINTS_ORG t where t.T_ORGID in (select T_PERIODID from ADMINISTRATOR.T_BASE_PERIOD tt where " + where + ")"; DataTable SSDl = dl.RunDataTable(sql, out errMsg); string dlTyp = ""; string searchTime = ""; if (p == 1) { dlTyp = "T_DAYDL"; searchTime = DateTime.Now.ToString("yyyy-MM-dd 0:00:00"); } if (p == 2) { dlTyp = "T_MONTHDL"; searchTime = DateTime.Now.ToString("yyyy-MM-1 0:00:00"); } if (p == 3) { dlTyp = "T_YEARDL"; searchTime = DateTime.Now.ToString("yyyy-1-1 0:00:00"); } if (p == 4) { dlTyp = "T_POWERTAG"; if (time != "") { searchTime = time; } else { searchTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:00"); } } if (p == 5) { dlTyp = "T_WINDTAG"; searchTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:00"); } string[] tag = new string[SSDl.Rows.Count]; for (int aa = 0; aa < SSDl.Rows.Count; aa++) { tag[aa] = SSDl.Rows[aa][dlTyp].ToString(); } double[] tagValues = null; if (searchTime == "yyyy-MM-dd HH:mm:00") { tagValues = GetPointVal(tag, searchTime); } else { tagValues = pbll.GetPointVal(tag, searchTime); } double v = 0; for (int bb = 0; bb < tagValues.Length; bb++) { v = v + tagValues[bb]; } if (tagValues.Length < 1) { return(0); } else { return(v); } }
public IList <Hashtable> GetChartData(string id, string rating_time) { string errMsg = ""; DataTable dt = null; string sql = ""; if (id == "1") { sql = "select t_base_points_org.t_orgid,t_base_points_org.T_POWERTAG,T_BASE_COMPANY.t_comname,T_BASE_COMPANY.t_comid " + "from t_base_points_org inner join T_BASE_COMPANY on t_base_points_org.t_orgid=T_BASE_COMPANY.t_comid"; } else if (id == "2") { sql = "select t_base_points_org.t_orgid,t_base_points_org.T_POWERTAG,t_base_department.t_depname as t_comname from t_base_points_org inner join t_base_department on " + "t_base_points_org.t_orgid=t_base_department.t_depid"; } else if (id == "3") { sql = " select t_base_points_org.t_orgid,t_base_points_org.T_POWERTAG,t_base_plant.t_plantname as t_comname, " + "t_base_plant.t_plantid as T_COMID from t_base_points_org inner join t_base_plant on " + "t_base_points_org.t_orgid=t_base_plant.t_plantid and t_base_plant.t_comid='C_DIMIAN' " + "order by t_base_plant.t_plantid asc"; } else if (id == "4") { sql = " select t_base_points_org.t_orgid,t_base_points_org.T_POWERTAG,t_base_plant.t_plantname as t_comname, " + "t_base_plant.t_plantid as T_COMID from t_base_points_org inner join t_base_plant on " + "t_base_points_org.t_orgid=t_base_plant.t_plantid and t_base_plant.t_comid='C_BAPV' " + "order by t_base_plant.t_plantid asc"; } dt = dl.RunDataTable(sql, out errMsg); IList <Hashtable> listdata = new List <Hashtable>(); Hashtable ht = new Hashtable(); ArrayList ld = new ArrayList(); ArrayList lt = new ArrayList(); if (dt.Rows.Count > 0) { for (int i = 0; i < dt.Rows.Count; i++) { DataTable DTT = null; ht = new Hashtable(); lt = new ArrayList(); DateTime _sTime = new DateTime(1970, 1, 1); string sql1 = "select D_VALUE,T_TIME from T_INFO_STATISCS where t_orgid=(select t_orgid from t_base_statiscspara t where t_sourcetag ='" + dt.Rows[i]["T_POWERTAG"].ToString() + "' ) and T_TIME between to_date('" + rating_time.Split(',')[0] + "','yyyy-MM-dd HH24:MI:SS') and to_date('" + rating_time.Split(',')[1] + "','yyyy-MM-dd HH24:MI:SS') order by T_TIME asc"; DateTime dt1 = DateTime.Now; DTT = dl.RunDataTable(sql1, out errMsg); DateTime dtt1 = DateTime.Now; double num = (dtt1 - dt1).TotalSeconds; if (DTT.Rows.Count > 400) { for (int j = 0; j < DTT.Rows.Count; j = j + (DTT.Rows.Count / 400)) { ld = new ArrayList(); string timeStamp = DateTimeToUTC(DateTime.Parse(DTT.Rows[j][1].ToString())).ToString(); DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1)); long lTime = long.Parse(timeStamp + "0000000"); TimeSpan toNow = new TimeSpan(lTime); DateTime dtResult = dtStart.Add(toNow); ld.Add(Convert.ToInt64((dtResult - _sTime).TotalMilliseconds.ToString())); ld.Add(Math.Round(Convert.ToDouble(DTT.Rows[j][0].ToString()), 2)); lt.Add(ld); } } else { for (int j = 0; j < DTT.Rows.Count; j++) { ld = new ArrayList(); string timeStamp = DateTimeToUTC(DateTime.Parse(DTT.Rows[j][1].ToString())).ToString(); DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1)); long lTime = long.Parse(timeStamp + "0000000"); TimeSpan toNow = new TimeSpan(lTime); DateTime dtResult = dtStart.Add(toNow); ld.Add(Convert.ToInt64((dtResult - _sTime).TotalMilliseconds.ToString())); ld.Add(Math.Round(Convert.ToDouble(DTT.Rows[j][0].ToString()), 2)); lt.Add(ld); } } ht.Add("name", dt.Rows[i]["t_comname"].ToString()); ht.Add("data", lt); listdata.Add(ht); } } return(listdata); }
private void GetPlant() { string str_sb = ""; string str = "'JSQP_A2_001Q','JSQP_A3_001Q','JSQP_A4_001Q','JSQP_A2_001Q.F','JSQP_A3_001Q.F','JSQP_A4_001Q.F'," + "'JSQP_A2_001Q.P','JSQP_A3_001Q.P','JSQP_A4_001Q.P','JSQP_A2_001Q.G','JSQP_A3_001Q.G','JSQP_A4_001Q.G','JSQP_A2_003NQ001.D','JSQP_A2_003NQ001.S', " + "'JSQP_A2_004NQ001.D','JSQP_A2_004NQ001.S','JSQP_A2_NQ001.D','JSQP_A2_NQ001.S','JSQP_A3_005NQ001.D','JSQP_A3_005NQ001.S','JSQP_A3_006NQ001.D', " + "'JSQP_A3_006NQ001.S','JSQP_A3_NQ001.D','JSQP_A3_NQ001.S','JSQP_A4_NQ001.D','JSQP_A4_NQ001.S','JSQP_A6_001Q','JSQP_A7_001Q','JSQP_A8_001Q'," + "'JSQP_A6_001Q.F','JSQP_A7_001Q.F','JSQP_A8_001Q.F','JSQP_A6_001Q.P','JSQP_A7_001Q.P','JSQP_A8_001Q.P','JSQP_A6_001Q.G','JSQP_A7_001Q.G', " + "'JSQP_A8_001Q.G','JSQP_A6_001NQ001.D','JSQP_A6_001NQ001.S','JSQP_A6_002NQ001.D','JSQP_A6_002NQ001.S','JSQP_A6_NQ001.D','JSQP_A6_NQ001.S', " + "'JSQP_A7_NQ001.D','JSQP_A7_NQ001.S','JSQP_A8_NQ001.D','JSQP_A8_NQ001.S' ,'JSQP_C1_001Q','JSQP_C2_001Q','JSQP_C1_001Q.F','JSQP_C2_001Q.F'," + "'JSQP_C1_001Q.P','JSQP_C2_001Q.P','JSQP_C1_001Q.G','JSQP_C2_001Q.G','JSQP_C1_NQ001.D','JSQP_C1_NQ001.S','JSQP_C2_NQ001.D','JSQP_C2_NQ001.S'," + "'JSQP_C3_001Q','JSQP_C4_001Q','JSQP_C5_001Q','JSQP_C3_001Q.F','JSQP_C4_001Q.F','JSQP_C5_001Q.F','JSQP_C3_001Q.P','JSQP_C4_001Q.P'," + "'JSQP_C5_001Q.P','JSQP_C3_001Q.G','JSQP_C4_001Q.G','JSQP_C5_001Q.G','JSQP_C3_007NQ001.D','JSQP_C3_007NQ001.S','JSQP_C3_008NQ001.D','JSQP_C3_008NQ001.S'," + "'JSQP_C3_NQ001.D','JSQP_C3_NQ001.S','JSQP_C4_NQ001.D','JSQP_C4_NQ001.S','JSQP_C5_NQ001.D','JSQP_C5_NQ001.S'"; string[] str_shuzu = new string[82] { "JSQP_A2_001Q", "JSQP_A3_001Q", "JSQP_A4_001Q", "JSQP_A2_001Q.F", "JSQP_A3_001Q.F", "JSQP_A4_001Q.F", "JSQP_A2_001Q.P", "JSQP_A3_001Q.P", "JSQP_A4_001Q.P", "JSQP_A2_001Q.G", "JSQP_A3_001Q.G", "JSQP_A4_001Q.G", "JSQP_A2_003NQ001.D", "JSQP_A2_003NQ001.S", "JSQP_A2_004NQ001.D", "JSQP_A2_004NQ001.S", "JSQP_A2_NQ001.D", "JSQP_A2_NQ001.S", "JSQP_A3_005NQ001.D", "JSQP_A3_005NQ001.S", "JSQP_A3_006NQ001.D", "JSQP_A3_006NQ001.S", "JSQP_A3_NQ001.D", "JSQP_A3_NQ001.S", "JSQP_A4_NQ001.D", "JSQP_A4_NQ001.S", "JSQP_A6_001Q", "JSQP_A7_001Q", "JSQP_A8_001Q", "JSQP_A6_001Q.F", "JSQP_A7_001Q.F", "JSQP_A8_001Q.F", "JSQP_A6_001Q.P", "JSQP_A7_001Q.P", "JSQP_A8_001Q.P", "JSQP_A6_001Q.G", "JSQP_A7_001Q.G", "JSQP_A8_001Q.G", "JSQP_A6_001NQ001.D", "JSQP_A6_001NQ001.S", "JSQP_A6_002NQ001.D", "JSQP_A6_002NQ001.S", "JSQP_A6_NQ001.D", "JSQP_A6_NQ001.S", "JSQP_A7_NQ001.D", "JSQP_A7_NQ001.S", "JSQP_A8_NQ001.D", "JSQP_A8_NQ001.S", "JSQP_C1_001Q", "JSQP_C2_001Q", "JSQP_C1_001Q.F", "JSQP_C2_001Q.F", "JSQP_C1_001Q.P", "JSQP_C2_001Q.P", "JSQP_C1_001Q.G", "JSQP_C2_001Q.G", "JSQP_C1_NQ001.D", "JSQP_C1_NQ001.S", "JSQP_C2_NQ001.D", "JSQP_C2_NQ001.S", "JSQP_C3_001Q", "JSQP_C4_001Q", "JSQP_C5_001Q", "JSQP_C3_001Q.F", "JSQP_C4_001Q.F", "JSQP_C5_001Q.F", "JSQP_C3_001Q.P", "JSQP_C4_001Q.P", "JSQP_C5_001Q.P", "JSQP_C3_001Q.G", "JSQP_C4_001Q.G", "JSQP_C5_001Q.G", "JSQP_C3_007NQ001.D", "JSQP_C3_007NQ001.S", "JSQP_C3_008NQ001.D", "JSQP_C3_008NQ001.S", "JSQP_C3_NQ001.D", "JSQP_C3_NQ001.S", "JSQP_C4_NQ001.D", "JSQP_C4_NQ001.S", "JSQP_C5_NQ001.D", "JSQP_C5_NQ001.S" }; //T_INFO_REALTIMEVALUE原本是实时表 //string sql = "select D_VALUE,t_tag from T_INFO_HISTVALUE where T_TAG in(" + str + ")"; // string sql = "select D_VALUE,t_tag from T_INFO_HISTVALUE where T_time between to_date('" + DateTime.Now.ToString("yyyy-MM-dd 00:00:00") + "','yyyy-MM-dd HH24:MI:SS') " + //"and to_date('" + DateTime.Now + "','yyyy-MM-dd HH24:MI:SS')"; //dt = dl.RunDataTable(sql, out errMsg); //DataView dtView = new DataView(dt); //DateTime dt1 = DateTime.Now; for (int i = 0; i < str_shuzu.Length; i++) { string sql = "select * from (select * from T_INFO_REALTIMEVALUE where T_TAG='" + str_shuzu[i] + "' and " + "t_time>to_date('" + DateTime.Now.Date + "','yyyy-MM-dd HH24:MI:SS') and t_time<=to_date('" + DateTime.Now + "','yyyy-MM-dd HH24:MI:SS') order by t_time desc) where ROWNUM =1 order by ROWNUM asc"; dt = dl.RunDataTable(sql, out errMsg); if ((dt.Rows.Count > 0) && (dt.Rows[0]["D_VALUE"].ToString().Trim() != "")) { str_sb += Convert.ToDouble(dt.Rows[0]["D_VALUE"].ToString()).ToString("f2") + ","; } else { str_sb += "0.0,"; } } //DateTime dt2 = DateTime.Now; //double num = (dt2 - dt1).TotalSeconds; //if (dt.Rows.Count > 0) //{ // for (int i = 0; i < dt.Rows.Count; i++) // { // for (int j = 0; j < str_shuzu.Length; j++) // { // if (dt.Rows[i][1].ToString() == str_shuzu[j]) // { // str_shuzu[j] = dt.Rows[i][0].ToString(); // break; // } // } // } //for (int k = 0; k < str_shuzu.Length; k++) //{ // str_sb += Convert.ToDouble(str_shuzu[k]).ToString("f2") + ","; //} //} //string[] str = new string[82] { "JSQP_A2_001Q", "JSQP_A3_001Q", "JSQP_A4_001Q", "JSQP_A2_001Q.F", "JSQP_A3_001Q.F", "JSQP_A4_001Q.F", // "JSQP_A2_001Q.P", "JSQP_A3_001Q.P", "JSQP_A4_001Q.P", "JSQP_A2_001Q.G", "JSQP_A3_001Q.G", "JSQP_A4_001Q.G", "JSQP_A2_003NQ001.D", "JSQP_A2_003NQ001.S", // "JSQP_A2_004NQ001.D", "JSQP_A2_004NQ001.S", "JSQP_A2_NQ001.D", "JSQP_A2_NQ001.S", "JSQP_A3_005NQ001.D", "JSQP_A3_005NQ001.S", "JSQP_A3_006NQ001.D", // "JSQP_A3_006NQ001.S", "JSQP_A3_NQ001.D", "JSQP_A3_NQ001.S", "JSQP_A4_NQ001.D", "JSQP_A4_NQ001.S","JSQP_A6_001Q", "JSQP_A7_001Q", "JSQP_A8_001Q", // "JSQP_A6_001Q.F", "JSQP_A7_001Q.F", "JSQP_A8_001Q.F", "JSQP_A6_001Q.P", "JSQP_A7_001Q.P", "JSQP_A8_001Q.P", "JSQP_A6_001Q.G", "JSQP_A7_001Q.G", // "JSQP_A8_001Q.G", "JSQP_A6_001NQ001.D", "JSQP_A6_001NQ001.S", "JSQP_A6_002NQ001.D", "JSQP_A6_002NQ001.S", "JSQP_A6_NQ001.D", "JSQP_A6_NQ001.S", // "JSQP_A7_NQ001.D", "JSQP_A7_NQ001.S", "JSQP_A8_NQ001.D", "JSQP_A8_NQ001.S" ,"JSQP_C1_001Q", "JSQP_C2_001Q", "JSQP_C1_001Q.F", "JSQP_C2_001Q.F", // "JSQP_C1_001Q.P","JSQP_C2_001Q.P", "JSQP_C1_001Q.G", "JSQP_C2_001Q.G", "JSQP_C1_NQ001.D", "JSQP_C1_NQ001.S", "JSQP_C2_NQ001.D", "JSQP_C2_NQ001.S", // "JSQP_C3_001Q", "JSQP_C4_001Q", "JSQP_C5_001Q", "JSQP_C3_001Q.F", "JSQP_C4_001Q.F", "JSQP_C5_001Q.F", "JSQP_C3_001Q.P", "JSQP_C4_001Q.P", // "JSQP_C5_001Q.P", "JSQP_C3_001Q.G", "JSQP_C4_001Q.G", "JSQP_C5_001Q.G", "JSQP_C3_007NQ001.D", "JSQP_C3_007NQ001.S", "JSQP_C3_008NQ001.D", "JSQP_C3_008NQ001.S", // "JSQP_C3_NQ001.D", "JSQP_C3_NQ001.S", "JSQP_C4_NQ001.D", "JSQP_C4_NQ001.S", "JSQP_C5_NQ001.D", "JSQP_C5_NQ001.S"}; //for (int i = 0; i < str.Length; i++) //{ // //str_sb += str[i]+","; // string sql = "select D_VALUE from T_INFO_REALTIMEVALUE where T_TAG='" + str[i] + "' order by T_TIME desc "; // dt = dl.RunDataTable(sql, out errMsg); // if (dt.Rows.Count > 0) // { // str_sb += Convert.ToDouble(dt.Rows[0][0].ToString()).ToString("f2") + ","; // } // else // { // str_sb += "1.0,"; // } //} Response.Write(str_sb.Trim(',')); Response.End(); Response.Clear(); }