public Dictionary <string, List <ChartSubModel> > GetSubChartJson(DbConn PubConn, List <string> day, string key, string columnname)
 {
     return(SqlHelper.Visit(ps =>
     {
         ps.Add("key", key);
         Dictionary <string, List <ChartSubModel> > dic = new Dictionary <string, List <ChartSubModel> >();
         foreach (string d in day)
         {
             string zq = Convert.ToDateTime(d).ToString("yyyyMMdd");
             List <ChartSubModel> model = new List <ChartSubModel>();
             string sqlColumnName = "";
             if (columnname.IndexOf("avg") == 0)
             {
                 string sqlDayTableKey = columnname.Replace("avg", "");
                 sqlColumnName = "AVG(" + sqlDayTableKey + ") " + columnname;
             }
             else if (columnname.IndexOf("max") == 0)
             {
                 string sqlDayTableKey = columnname.Replace("max", "");
                 sqlColumnName = "MAX(" + sqlDayTableKey + ") " + columnname;
             }
             else
             {
                 string sqlDayTableKey = columnname.Replace("min", "");
                 sqlColumnName = "MIN(" + sqlDayTableKey + ") " + columnname;
             }
             string sql = @"select id,ISNULL(" + columnname + ",0) " + columnname + " from tb_hour H left join (select DATENAME(hour,createtime) hour," + sqlColumnName + " from tb_performance_collect" + zq + " where serverid=@key group by DATENAME(hour,createtime)) D on H.id=D.hour ";
             DataTable dt = PubConn.SqlToDataTable(sql, ps.ToParameters());
             foreach (DataRow dr in dt.Rows)
             {
                 ChartSubModel m = new ChartSubModel();
                 m.Tkey = dr["id"].ToString();
                 m.Tvalue = Convert.ToDecimal(dr[columnname]);
                 model.Add(m);
             }
             dic.Add(d, model);
         }
         return dic;
     }));
 }
Ejemplo n.º 2
0
 public Dictionary <string, List <ChartSubModel> > GetSubChartJson(DbConn PubConn, List <string> day, string key, string columnname)
 {
     return(SqlHelper.Visit(ps =>
     {
         ps.Add("key", key);
         Dictionary <string, List <ChartSubModel> > dic = new Dictionary <string, List <ChartSubModel> >();
         foreach (string d in day)
         {
             string zq = Convert.ToDateTime(d).ToString("yyyyMMdd");
             List <ChartSubModel> model = new List <ChartSubModel>();
             string sql = "select id,ISNULL(avgtime,0) avgtime,ISNULL(maxtime,0) maxtime,ISNULL(mintime,0) mintime from tb_Hour H left join (select AVG(time) avgtime, Max(time) maxtime,Min(time) mintime,DATENAME(hour,logcreatetime) hour from tb_timewatchlog" + zq + " where logtag=@key group by DATENAME(hour,logcreatetime)) D on H.id=D.hour ";
             DataTable dt = PubConn.SqlToDataTable(sql, ps.ToParameters());
             foreach (DataRow dr in dt.Rows)
             {
                 ChartSubModel m = new ChartSubModel();
                 m.Tkey = dr["id"].ToString();
                 m.Tvalue = Convert.ToDecimal(dr[columnname]);
                 model.Add(m);
             }
             dic.Add(d, model);
         }
         return dic;
     }));
 }