diff --git a/DataServer/BLL/electricity_data.cs b/DataServer/BLL/electricity_data.cs index e77d376..e2731c4 100644 --- a/DataServer/BLL/electricity_data.cs +++ b/DataServer/BLL/electricity_data.cs @@ -252,6 +252,15 @@ namespace DataServer.BLL } return modelList; } + + /// + /// 模糊获得数据列表 + /// + public List GetModelListsDate(string strWhere, string date) + { + DataSet ds = dal.GetListsDate(strWhere, date); + return DataTableToList(ds.Tables[0]); + } #endregion ExtensionMethod } } diff --git a/DataServer/DAL/electricity_data.cs b/DataServer/DAL/electricity_data.cs index 6df5a2e..9868e35 100644 --- a/DataServer/DAL/electricity_data.cs +++ b/DataServer/DAL/electricity_data.cs @@ -614,6 +614,31 @@ namespace DataServer.DAL } return model; } + + /// + /// 获得数据列表 + /// + public DataSet GetListsDate(string strWhere, string date) + { + StringBuilder strSql = new StringBuilder(); + strSql.Append("select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 "); + strSql.Append(" FROM electricity_data_" + date); + // 添加模糊查询条件 + if (strWhere.Trim() != "") + { + strSql.Append(" where "); + string[] keywords = strWhere.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); + for (int i = 0; i < keywords.Length; i++) + { + if (i > 0) + { + strSql.Append(" or "); + } + strSql.Append("DeviceId LIKE '%" + keywords[i] + "'"); + } + } + return DbHelperMySQL.Query(strSql.ToString()); + } #endregion ExtensionMethod } } diff --git a/DataServer/bin/Debug/DataServer.pdb b/DataServer/bin/Debug/DataServer.pdb index de6b962..656ce32 100644 Binary files a/DataServer/bin/Debug/DataServer.pdb and b/DataServer/bin/Debug/DataServer.pdb differ diff --git a/DataServer/obj/Debug/DataServer.dll b/DataServer/obj/Debug/DataServer.dll index db7add6..862289f 100644 Binary files a/DataServer/obj/Debug/DataServer.dll and b/DataServer/obj/Debug/DataServer.dll differ diff --git a/DataServer/obj/Debug/DataServer.pdb b/DataServer/obj/Debug/DataServer.pdb index de6b962..656ce32 100644 Binary files a/DataServer/obj/Debug/DataServer.pdb and b/DataServer/obj/Debug/DataServer.pdb differ diff --git a/DongYingAPI/Controllers/api/EnergyEfficiency/GetClassifiedEnergyController.cs b/DongYingAPI/Controllers/api/EnergyEfficiency/GetClassifiedEnergyController.cs index 8718a57..b9aff40 100644 --- a/DongYingAPI/Controllers/api/EnergyEfficiency/GetClassifiedEnergyController.cs +++ b/DongYingAPI/Controllers/api/EnergyEfficiency/GetClassifiedEnergyController.cs @@ -32,7 +32,263 @@ namespace DongYingAPI.Controllers.api.EnergyEfficiency var res = new get_classified_energy_response(); try { - var date_base = ConfigurationManager.AppSettings["MySQLDataBase"].ToString(); + + var now = DateTime.Now; + #region 旧 + //decimal modern_water = 0; + //decimal upper_water = 0; + + //decimal modern_gas = 0; + //decimal upper_gas = 0; + + //decimal modern_electricity = 0; + //decimal upper_electricity = 0; + //var now = DateTime.Now; + //var modern_start_time = DateTime.Parse(now.ToString("yyyy-MM-dd") + " 00:00:00"); + //var modern_end_time = DateTime.Parse(now.ToString("yyyy-MM-dd HH") + ":00:00"); + //var upper_start_time = DateTime.Parse(now.AddDays(-1).ToString("yyyy-MM-dd") + " 00:00:00"); + //var upper_end_time = DateTime.Parse(now.ToString("yyyy-MM-dd") + " 00:00:00"); + //var list = new List(); + //if (type == "日") + //{ + // modern_start_time = DateTime.Parse(now.ToString("yyyy-MM-dd") + " 00:00:00"); + // modern_end_time = DateTime.Parse(now.ToString("yyyy-MM-dd HH") + ":00:00"); + // upper_start_time = DateTime.Parse(now.AddDays(-1).ToString("yyyy-MM-dd") + " 00:00:00"); + // upper_end_time = DateTime.Parse(now.ToString("yyyy-MM-dd") + " 00:00:00"); + + // var time_count = Tool.GetUsedMonth1("月", upper_start_time, modern_end_time); + // var source = ""; + // for (int i = 0; i <= time_count; i++) + // { + // var time = upper_start_time.AddMonths(i).ToString("yyyyMM"); + // if (bll.IsExistsTable(date_base, "electricity_data_" + time)) + // { + // if (time == upper_start_time.ToString("yyyyMM")) + // { + // source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, upper_start_time); + // } + // else if (time == upper_end_time.ToString("yyyyMM")) + // { + // source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, upper_end_time); + // } + // else if (time == modern_start_time.ToString("yyyyMM")) + // { + // source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, modern_start_time); + // } + // else if (time == modern_end_time.ToString("yyyyMM")) + // { + // source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, modern_end_time); + // } + // } + // } + // if (!string.IsNullOrEmpty(source)) + // { + // source = source.Substring(0, source.Length - 11); + // list = bll.GetList(source, "", ""); + // } + //} + //if (type == "月") + //{ + // modern_start_time = DateTime.Parse(now.ToString("yyyy-MM") + "-01 00:00:00"); + // modern_end_time = DateTime.Parse(now.ToString("yyyy-MM-dd HH") + ":00:00"); + // upper_start_time = DateTime.Parse(now.AddMonths(-1).ToString("yyyy-MM") + "-01 00:00:00"); + // upper_end_time = modern_start_time; + // var time_count = Tool.GetUsedMonth1("月", upper_start_time, modern_end_time); + // var source = ""; + // for (int i = 0; i <= time_count; i++) + // { + // var time = upper_start_time.AddMonths(i).ToString("yyyyMM"); + // if (bll.IsExistsTable(date_base, "electricity_data_" + time)) + // { + // if (time == upper_start_time.ToString("yyyyMM")) + // { + // source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, upper_start_time); + // } + // else if (time == upper_end_time.ToString("yyyyMM")) + // { + // source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, upper_end_time); + // } + // else if (time == modern_start_time.ToString("yyyyMM")) + // { + // source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, modern_start_time); + // } + // else if (time == modern_end_time.ToString("yyyyMM")) + // { + // source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, modern_end_time); + // } + // } + // } + // if (!string.IsNullOrEmpty(source)) + // { + // source = source.Substring(0, source.Length - 11); + // list = bll.GetList(source, "", ""); + // } + //} + //if (type == "年") + //{ + // modern_start_time = DateTime.Parse(now.ToString("yyyy") + "-01-01 00:00:00"); + // modern_end_time = DateTime.Parse(now.ToString("yyyy-MM-dd HH") + ":00:00"); + // upper_start_time = DateTime.Parse(now.AddYears(-1).ToString("yyyy") + "-01-01 00:00:00"); + // upper_end_time = modern_start_time; + // var time_count = Tool.GetUsedMonth1("月", upper_start_time, modern_end_time); + // var source = ""; + // for (int i = 0; i <= time_count; i++) + // { + // // 只处理今年的数据 + // if (DateTime.Now.AddYears(-i).Year != DateTime.Now.Year) + // { + // continue; + // } + // var time = upper_start_time.AddMonths(i).ToString("yyyyMM"); + // if (bll.IsExistsTable(date_base, "electricity_data_" + time)) + // { + // if (time == upper_start_time.ToString("yyyyMM")) + // { + // source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, upper_start_time); + // } + // else if (time == upper_end_time.ToString("yyyyMM")) + // { + // source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, upper_end_time); + // } + // else if (time == modern_start_time.ToString("yyyyMM")) + // { + // source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, modern_start_time); + // } + // else if (time == modern_end_time.ToString("yyyyMM")) + // { + // source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, modern_end_time); + // } + // } + // } + // if (!string.IsNullOrEmpty(source)) + // { + // source = source.Substring(0, source.Length - 11); + // list = bll.GetList(source, "", ""); + // } + //} + + ////水 + //var water_list = water_bll.GetModelList(" EntireTime='" + modern_start_time + "' or EntireTime='" + modern_end_time + "' or EntireTime='" + upper_start_time + "' or EntireTime='" + upper_end_time + "' "); + //if (water_list.Count > 0) + //{ + // var modern_start_data = water_list.Where(a => a.EntireTime.Value == modern_start_time).FirstOrDefault(); + // var modern_end_data = water_list.Where(a => a.EntireTime.Value == modern_end_time).FirstOrDefault(); + // if (modern_start_data != null && modern_end_data != null) + // { + // if (modern_start_data.WaterYield != null && modern_end_data.WaterYield != null) + // { + // decimal water_yield = modern_end_data.WaterYield.Value - modern_start_data.WaterYield.Value; + // modern_water = water_yield; + // } + // } + + // var upper_start_data = water_list.Where(a => a.EntireTime.Value == upper_start_time).FirstOrDefault(); + // var upper_end_data = water_list.Where(a => a.EntireTime.Value == upper_end_time).FirstOrDefault(); + // if (upper_start_data != null && upper_end_data != null) + // { + // if (upper_start_data.WaterYield != null && upper_end_data.WaterYield != null) + // { + // decimal water_yield = upper_end_data.WaterYield.Value - upper_start_data.WaterYield.Value; + // upper_water = water_yield; + // } + // } + //} + + ////天然气 + //var gas_list = gas_bll.GetModelList(" EntireTime='" + modern_start_time + "' or EntireTime='" + modern_end_time + "' or EntireTime='" + upper_start_time + "' or EntireTime='" + upper_end_time + "' "); + //if (gas_list.Count > 0) + //{ + // var modern_start_data = gas_list.Where(a => a.EntireTime.Value == modern_start_time).FirstOrDefault(); + // var modern_end_data = gas_list.Where(a => a.EntireTime.Value == modern_end_time).FirstOrDefault(); + // if (modern_start_data != null && modern_end_data != null) + // { + // if (modern_start_data.GasConsumption != null && modern_end_data.GasConsumption != null) + // { + // decimal gas_consumption = modern_end_data.GasConsumption.Value - modern_start_data.GasConsumption.Value; + // modern_gas = gas_consumption; + // } + // } + + // var upper_start_data = gas_list.Where(a => a.EntireTime.Value == upper_start_time).FirstOrDefault(); + // var upper_end_data = gas_list.Where(a => a.EntireTime.Value == upper_end_time).FirstOrDefault(); + // if (upper_start_data != null && upper_end_data != null) + // { + // if (upper_start_data.GasConsumption != null && upper_end_data.GasConsumption != null) + // { + // decimal gas_consumption = upper_end_data.GasConsumption.Value - upper_start_data.GasConsumption.Value; + // upper_gas = gas_consumption; + // } + // } + //} + + ////电 + //var device_list = device_bll.GetModelList(""); + //var modern_start_list = list.Where(a => a.EntireTime.Value == modern_start_time).ToList(); + //var modern_end_list = list.Where(a => a.EntireTime.Value == modern_end_time).ToList(); + //var upper_start_list = list.Where(a => a.EntireTime.Value == upper_start_time).ToList(); + //var upper_end_list = list.Where(a => a.EntireTime.Value == upper_end_time).ToList(); + //foreach (var item in device_list) + //{ + // var modern_start_data = modern_start_list.Where(a => a.DeviceId == item.DeviceId).FirstOrDefault(); + // var modern_end_data = modern_end_list.Where(a => a.DeviceId == item.DeviceId).FirstOrDefault(); + // if (modern_start_data != null && modern_end_data != null) + // { + // if (modern_start_data.EH != null && modern_end_data.EH != null) + // { + // decimal eh = modern_end_data.EH.Value - modern_start_data.EH.Value; + // modern_electricity += eh; + // } + // } + + // var upper_start_data = upper_start_list.Where(a => a.DeviceId == item.DeviceId).FirstOrDefault(); + // var upper_end_data = upper_end_list.Where(a => a.DeviceId == item.DeviceId).FirstOrDefault(); + // if (upper_start_data != null && upper_end_data != null) + // { + // if (upper_start_data.EH != null && upper_end_data.EH != null) + // { + // decimal eh = upper_end_data.EH.Value - upper_start_data.EH.Value; + // upper_electricity += eh; + // } + // } + //} + //decimal yoy_water = 0; + //decimal yoy_gas = 0; + //decimal yoy_electricity = 0; + //if (upper_water > 0) + //{ + // yoy_water = Math.Round((modern_water - upper_water) / upper_water * 100, 2); + //} + //else + //{ + // if (modern_water > 0) + // { + // yoy_water = 100; + // } + //} + //if (upper_gas > 0) + //{ + // yoy_gas = Math.Round((modern_gas - upper_gas) / upper_gas * 100, 2); + //} + //else + //{ + // if (modern_gas > 0) + // { + // yoy_gas = 100; + // } + //} + //if (upper_electricity > 0) + //{ + // yoy_electricity = Math.Round((modern_electricity - upper_electricity) / upper_electricity * 100, 2); + //} + //else + //{ + // if (modern_electricity > 0) + // { + // yoy_electricity = 100; + // } + //} + #endregion + #region 新 decimal modern_water = 0; decimal upper_water = 0; @@ -41,220 +297,151 @@ namespace DongYingAPI.Controllers.api.EnergyEfficiency decimal modern_electricity = 0; decimal upper_electricity = 0; - var now = DateTime.Now; - var modern_start_time = DateTime.Parse(now.ToString("yyyy-MM-dd") + " 00:00:00"); - var modern_end_time = DateTime.Parse(now.ToString("yyyy-MM-dd HH") + ":00:00"); - var upper_start_time = DateTime.Parse(now.AddDays(-1).ToString("yyyy-MM-dd") + " 00:00:00"); - var upper_end_time = DateTime.Parse(now.ToString("yyyy-MM-dd") + " 00:00:00"); - var list = new List(); + var jdate = now.AddHours(-1).ToString("yyyy-MM-dd HH:00:00"); + var zdate = now.ToString("yyyy-MM-dd 00:00:00"); + var qdate = now.AddDays(-1).ToString("yyy-MM-dd 00:00:00"); if (type == "日") { - modern_start_time = DateTime.Parse(now.ToString("yyyy-MM-dd") + " 00:00:00"); - modern_end_time = DateTime.Parse(now.ToString("yyyy-MM-dd HH") + ":00:00"); - upper_start_time = DateTime.Parse(now.AddDays(-1).ToString("yyyy-MM-dd") + " 00:00:00"); - upper_end_time = DateTime.Parse(now.ToString("yyyy-MM-dd") + " 00:00:00"); - - var time_count = Tool.GetUsedMonth1("月", upper_start_time, modern_end_time); - var source = ""; - for (int i = 0; i <= time_count; i++) - { - var time = upper_start_time.AddMonths(i).ToString("yyyyMM"); - if (bll.IsExistsTable(date_base, "electricity_data_" + time)) - { - if (time == upper_start_time.ToString("yyyyMM")) - { - source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, upper_start_time); - } - else if (time == upper_end_time.ToString("yyyyMM")) - { - source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, upper_end_time); - } - else if (time == modern_start_time.ToString("yyyyMM")) - { - source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, modern_start_time); - } - else if (time == modern_end_time.ToString("yyyyMM")) - { - source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, modern_end_time); - } - } - } - if (!string.IsNullOrEmpty(source)) - { - source = source.Substring(0, source.Length - 11); - list = bll.GetList(source, "", ""); - } - } - if (type == "月") + jdate = Convert.ToDateTime(jdate).ToString("yyyy-MM-dd HH:00:00"); + zdate = Convert.ToDateTime(zdate).ToString("yyyy-MM-dd 00:00:00"); + qdate = Convert.ToDateTime(qdate).ToString("yyyy-MM-dd 00:00:00"); + }else if (type == "月") { - modern_start_time = DateTime.Parse(now.ToString("yyyy-MM") + "-01 00:00:00"); - modern_end_time = DateTime.Parse(now.ToString("yyyy-MM-dd HH") + ":00:00"); - upper_start_time = DateTime.Parse(now.AddMonths(-1).ToString("yyyy-MM") + "-01 00:00:00"); - upper_end_time = modern_start_time; - var time_count = Tool.GetUsedMonth1("月", upper_start_time, modern_end_time); - var source = ""; - for (int i = 0; i <= time_count; i++) - { - var time = upper_start_time.AddMonths(i).ToString("yyyyMM"); - if (bll.IsExistsTable(date_base, "electricity_data_" + time)) - { - if (time == upper_start_time.ToString("yyyyMM")) - { - source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, upper_start_time); - } - else if (time == upper_end_time.ToString("yyyyMM")) - { - source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, upper_end_time); - } - else if (time == modern_start_time.ToString("yyyyMM")) - { - source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, modern_start_time); - } - else if (time == modern_end_time.ToString("yyyyMM")) - { - source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, modern_end_time); - } - } - } - if (!string.IsNullOrEmpty(source)) - { - source = source.Substring(0, source.Length - 11); - list = bll.GetList(source, "", ""); - } - } - if (type == "年") + jdate = Convert.ToDateTime(jdate).ToString("yyyy-MM-dd HH:00:00"); + zdate = Convert.ToDateTime(zdate).ToString("yyyy-MM-01 00:00:00"); + qdate = Convert.ToDateTime(qdate).AddMonths(-1).ToString("yyyy-MM-01 00:00:00"); + }else if (type == "年") { - modern_start_time = DateTime.Parse(now.ToString("yyyy") + "-01-01 00:00:00"); - modern_end_time = DateTime.Parse(now.ToString("yyyy-MM-dd HH") + ":00:00"); - upper_start_time = DateTime.Parse(now.AddYears(-1).ToString("yyyy") + "-01-01 00:00:00"); - upper_end_time = modern_start_time; - var time_count = Tool.GetUsedMonth1("月", upper_start_time, modern_end_time); - var source = ""; - for (int i = 0; i <= time_count; i++) - { - // 只处理今年的数据 - if (DateTime.Now.AddYears(-i).Year != DateTime.Now.Year) - { - continue; - } - var time = upper_start_time.AddMonths(i).ToString("yyyyMM"); - if (bll.IsExistsTable(date_base, "electricity_data_" + time)) - { - if (time == upper_start_time.ToString("yyyyMM")) - { - source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, upper_start_time); - } - else if (time == upper_end_time.ToString("yyyyMM")) - { - source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, upper_end_time); - } - else if (time == modern_start_time.ToString("yyyyMM")) - { - source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, modern_start_time); - } - else if (time == modern_end_time.ToString("yyyyMM")) - { - source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, modern_end_time); - } - } - } - if (!string.IsNullOrEmpty(source)) - { - source = source.Substring(0, source.Length - 11); - list = bll.GetList(source, "", ""); - } + jdate = Convert.ToDateTime(jdate).ToString("yyyy-MM-dd HH:00:00"); + zdate = Convert.ToDateTime(zdate).ToString("yyyy-01-01 00:00:00"); + qdate = Convert.ToDateTime(qdate).AddYears(-1).ToString("yyyy-01-01 00:00:00"); } - + #region 表是否存在 + //表名 + var date_base = ConfigurationManager.AppSettings["MySQLDataBase"].ToString(); + //今月的表是否存在 + var jtime = DateTime.Now.ToString("yyyyMM"); + var a1 = bll.IsExistsTable(date_base, "electricity_data_" + jtime); + if (a1 == false) + { + bll.CreateTable(jtime); + } + //昨月的表是否存在 + var ztime = DateTime.Now.ToString("yyyyMM"); + var a = bll.IsExistsTable(date_base, "electricity_data_" + ztime); + if (a == false) + { + bll.CreateTable(ztime); + } + //前月的表是否存在 + var qtime = DateTime.Now.ToString("yyyyMM"); + var b = bll.IsExistsTable(date_base, "electricity_data_" + qtime); + if (b == false) + { + bll.CreateTable(qtime); + } + #endregion //水 - var water_list = water_bll.GetModelList(" EntireTime='" + modern_start_time + "' or EntireTime='" + modern_end_time + "' or EntireTime='" + upper_start_time + "' or EntireTime='" + upper_end_time + "' "); + var water_list = water_bll.GetModelList(" EntireTime='" + jdate + "' or EntireTime='" + zdate + "' or EntireTime='" + qdate + "' "); if (water_list.Count > 0) { - var modern_start_data = water_list.Where(a => a.EntireTime.Value == modern_start_time).FirstOrDefault(); - var modern_end_data = water_list.Where(a => a.EntireTime.Value == modern_end_time).FirstOrDefault(); - if (modern_start_data != null && modern_end_data != null) + decimal? anum1 = 0; + decimal? anum2 = 0; + decimal? anum3 = 0; + var jmodern = water_list.Where(x => x.EntireTime.Value == Convert.ToDateTime(jdate)).FirstOrDefault(); + var zmodern = water_list.Where(x => x.EntireTime.Value == Convert.ToDateTime(zdate)).FirstOrDefault(); + var qmodern = water_list.Where(x => x.EntireTime.Value == Convert.ToDateTime(qdate)).FirstOrDefault(); + if(jmodern == null) { - if (modern_start_data.WaterYield != null && modern_end_data.WaterYield != null) - { - decimal water_yield = modern_end_data.WaterYield.Value - modern_start_data.WaterYield.Value; - modern_water = water_yield; - } + anum1 = 0; } - - var upper_start_data = water_list.Where(a => a.EntireTime.Value == upper_start_time).FirstOrDefault(); - var upper_end_data = water_list.Where(a => a.EntireTime.Value == upper_end_time).FirstOrDefault(); - if (upper_start_data != null && upper_end_data != null) + else { - if (upper_start_data.WaterYield != null && upper_end_data.WaterYield != null) - { - decimal water_yield = upper_end_data.WaterYield.Value - upper_start_data.WaterYield.Value; - upper_water = water_yield; - } + anum1 = jmodern.WaterYield; } + if(zmodern== null) + { + anum2 = 0; + } + else + { + anum2= zmodern.WaterYield; + } + if(qmodern == null) + { + anum3 = 0; + } + else + { + anum3 = qmodern.WaterYield; + } + modern_water=Convert.ToDecimal(anum1-anum2); + upper_water=Convert.ToDecimal(anum2-anum3); } - //天然气 - var gas_list = gas_bll.GetModelList(" EntireTime='" + modern_start_time + "' or EntireTime='" + modern_end_time + "' or EntireTime='" + upper_start_time + "' or EntireTime='" + upper_end_time + "' "); + var gas_list = gas_bll.GetModelList(" EntireTime='" + jdate + "' or EntireTime='" + zdate + "' or EntireTime='" + qdate + "' "); if (gas_list.Count > 0) { - var modern_start_data = gas_list.Where(a => a.EntireTime.Value == modern_start_time).FirstOrDefault(); - var modern_end_data = gas_list.Where(a => a.EntireTime.Value == modern_end_time).FirstOrDefault(); - if (modern_start_data != null && modern_end_data != null) + decimal? anum1 = 0; + decimal? anum2 = 0; + decimal? anum3 = 0; + var jgas = gas_list.Where(x => x.EntireTime.Value ==Convert.ToDateTime(jdate)).FirstOrDefault(); + var zgas = gas_list.Where(x => x.EntireTime.Value == Convert.ToDateTime(zdate)).FirstOrDefault(); + var qgas=gas_list.Where(x=>x.EntireTime.Value==Convert.ToDateTime(qdate)).FirstOrDefault(); + if(jgas == null) { - if (modern_start_data.GasConsumption != null && modern_end_data.GasConsumption != null) - { - decimal gas_consumption = modern_end_data.GasConsumption.Value - modern_start_data.GasConsumption.Value; - modern_gas = gas_consumption; - } + anum1 = 0; } - - var upper_start_data = gas_list.Where(a => a.EntireTime.Value == upper_start_time).FirstOrDefault(); - var upper_end_data = gas_list.Where(a => a.EntireTime.Value == upper_end_time).FirstOrDefault(); - if (upper_start_data != null && upper_end_data != null) + else { - if (upper_start_data.GasConsumption != null && upper_end_data.GasConsumption != null) - { - decimal gas_consumption = upper_end_data.GasConsumption.Value - upper_start_data.GasConsumption.Value; - upper_gas = gas_consumption; - } + anum1 = jgas.GasConsumption; } + if (zgas == null) + { + anum2 = 0; + } + else + { + anum2=zgas.GasConsumption; + } + if(qgas== null) + { + anum3 = 0; + } + else + { + anum3= qgas.GasConsumption; + } + modern_gas=Convert.ToDecimal(anum1-anum2); + upper_gas=Convert.ToDecimal(anum2-anum3); } - //电 - var device_list = device_bll.GetModelList(""); - var modern_start_list = list.Where(a => a.EntireTime.Value == modern_start_time).ToList(); - var modern_end_list = list.Where(a => a.EntireTime.Value == modern_end_time).ToList(); - var upper_start_list = list.Where(a => a.EntireTime.Value == upper_start_time).ToList(); - var upper_end_list = list.Where(a => a.EntireTime.Value == upper_end_time).ToList(); - foreach (var item in device_list) + var dlist1 = bll.GetModelListDate(" EntireTime='"+jdate+"'", jtime); + var dlist2 = bll.GetModelListDate(" EntireTime='" + zdate + "'", ztime); + var dlist3 = bll.GetModelListDate(" EntireTime='" + qdate + "'", qtime); + decimal? num1 = 0; + decimal? num2 = 0; + decimal? num3 = 0; + foreach (var item in dlist1) { - var modern_start_data = modern_start_list.Where(a => a.DeviceId == item.DeviceId).FirstOrDefault(); - var modern_end_data = modern_end_list.Where(a => a.DeviceId == item.DeviceId).FirstOrDefault(); - if (modern_start_data != null && modern_end_data != null) - { - if (modern_start_data.EH != null && modern_end_data.EH != null) - { - decimal eh = modern_end_data.EH.Value - modern_start_data.EH.Value; - modern_electricity += eh; - } - } - - var upper_start_data = upper_start_list.Where(a => a.DeviceId == item.DeviceId).FirstOrDefault(); - var upper_end_data = upper_end_list.Where(a => a.DeviceId == item.DeviceId).FirstOrDefault(); - if (upper_start_data != null && upper_end_data != null) - { - if (upper_start_data.EH != null && upper_end_data.EH != null) - { - decimal eh = upper_end_data.EH.Value - upper_start_data.EH.Value; - upper_electricity += eh; - } - } + num1 += Convert.ToDecimal(item.EH); } + foreach (var item in dlist2) + { + num2 += Convert.ToDecimal(item.EH); + } + foreach (var item in dlist3) + { + num3+= Convert.ToDecimal(item.EH); + } + modern_electricity =Convert.ToDecimal(Math.Round(Convert.ToDouble(num1 - num2),0)); + upper_electricity=Convert.ToDecimal(Math.Round(Convert.ToDouble(num2- num3),0)); decimal yoy_water = 0; decimal yoy_gas = 0; decimal yoy_electricity = 0; if (upper_water > 0) { - yoy_water = Math.Round((modern_water - upper_water) / upper_water * 100, 2); + yoy_water = Math.Round((modern_water - upper_water) / upper_water * 100, 0); } else { @@ -265,7 +452,7 @@ namespace DongYingAPI.Controllers.api.EnergyEfficiency } if (upper_gas > 0) { - yoy_gas = Math.Round((modern_gas - upper_gas) / upper_gas * 100, 2); + yoy_gas = Math.Round((modern_gas - upper_gas) / upper_gas * 100, 0); } else { @@ -276,7 +463,7 @@ namespace DongYingAPI.Controllers.api.EnergyEfficiency } if (upper_electricity > 0) { - yoy_electricity = Math.Round((modern_electricity - upper_electricity) / upper_electricity * 100, 2); + yoy_electricity = Math.Round((modern_electricity - upper_electricity) / upper_electricity * 100, 0); } else { @@ -285,6 +472,7 @@ namespace DongYingAPI.Controllers.api.EnergyEfficiency yoy_electricity = 100; } } + #endregion res.code = 200; res.msg = "成功"; res.data = new classified_energy() { ModernElectricity = modern_electricity, ModernGas = modern_gas, ModernWater = modern_water, UpperElectricity = upper_electricity, UpperGas = upper_gas, UpperWater = upper_water, YoyElectricity = yoy_electricity, YoyGas = yoy_gas, YoyWater = yoy_water }; diff --git a/DongYingAPI/Controllers/api/EnergyEfficiency/GetEnergyCalendarController.cs b/DongYingAPI/Controllers/api/EnergyEfficiency/GetEnergyCalendarController.cs index c9a10fc..259167f 100644 --- a/DongYingAPI/Controllers/api/EnergyEfficiency/GetEnergyCalendarController.cs +++ b/DongYingAPI/Controllers/api/EnergyEfficiency/GetEnergyCalendarController.cs @@ -42,12 +42,13 @@ namespace DongYingAPI.Controllers.api.EnergyEfficiency var water_data = new List(); var gas_data = new List(); var electricity_data = new List(); + #region 旧 //总水量 decimal total_water = 0; //根据事件查询两条数据,然后值相减为用水量 var water_list = water_bll.GetModelList(" EntireTime>='" + start_time + "' and EntireTime<='" + end_time + "' "); var count = (end_time - start_time).TotalHours; - for (int i = 0; i < count-1; i++) + for (int i = 0; i < count - 1; i++) { var start = start_time.AddHours(i); var end = start.AddHours(1); @@ -72,7 +73,7 @@ namespace DongYingAPI.Controllers.api.EnergyEfficiency //总天然气 decimal total_gas = 0; var gas_list = gas_bll.GetModelList(" EntireTime>='" + start_time + "' and EntireTime<='" + end_time + "' "); - for (int i = 0; i < count-1; i++) + for (int i = 0; i < count - 1; i++) { var start = start_time.AddHours(i); var end = start.AddHours(1); @@ -99,65 +100,24 @@ namespace DongYingAPI.Controllers.api.EnergyEfficiency //判断表是否存在,不存在就创建 var date_base = ConfigurationManager.AppSettings["MySQLDataBase"].ToString(); var list = new List(); - var time_count = Tool.GetUsedMonth1("月", start_time, end_time); - var source = ""; - for (int i = 0; i <= time_count; i++) - { - var time = start_time.AddMonths(i).ToString("yyyyMM"); - if (bll.IsExistsTable(date_base, "electricity_data_" + time)) - { - if (time == start_time.ToString("yyyyMM")) - { - source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, start_time); - } - else if (time == end_time.ToString("yyyyMM")) - { - source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, end_time); - } - } - } - if (!string.IsNullOrEmpty(source)) - { - source = source.Substring(0, source.Length - 11); - list = bll.GetList(source, "", ""); - } - var device_list = device_bll.GetModelList(""); - for (int i = 0; i < count-1; i++) + for (int i = 0; i < count - 1; i++) { var start = start_time.AddHours(i); var end = start.AddHours(1); - decimal electricity = 0; var time = start_time.ToString("yyyyMM"); list = bll.GetModelListDate("", time); var start_list = list.Where(a => a.EntireTime.Value == start).ToList(); var end_list = list.Where(a => a.EntireTime.Value == end).ToList(); - foreach (var item in device_list) - { - var start_data = start_list.Where(a => a.DeviceId == item.DeviceId).FirstOrDefault(); - var end_data = end_list.Where(a => a.DeviceId == item.DeviceId).FirstOrDefault(); - decimal eh = 0; - if (start_data == null && end_data == null) - { - //eh = end_data.EH.Value - start_data.EH.Value; - electricity += eh; - } - else if (start_data == null && end_data != null) - { - eh = end_data.EH.Value - 0; - electricity += eh; - } - else - { - electricity += eh; - } - } + var num1 = start_list.Sum(x => x.EH); + var num2 = end_list.Sum(x => x.EH); + var electricity =Convert.ToDecimal(num2-num1); total_electricity += electricity; var model = new energy_calendar_data(); model.Time = end.ToString("HH:mm"); model.Value = electricity; electricity_data.Add(model); } - + #endregion res.code = 200; res.msg = "成功"; res.data = new energy_calendar() { ElectricityList = new energy_calendar_list() { Total = total_electricity, List = electricity_data }, GasList = new energy_calendar_list() { Total = total_gas, List = gas_data }, WaterList = new energy_calendar_list() { Total = total_water, List = water_data } }; diff --git a/DongYingAPI/Controllers/api/EnergyEfficiency/GetEnergyConsumptionController.cs b/DongYingAPI/Controllers/api/EnergyEfficiency/GetEnergyConsumptionController.cs index b30cf95..07af4b4 100644 --- a/DongYingAPI/Controllers/api/EnergyEfficiency/GetEnergyConsumptionController.cs +++ b/DongYingAPI/Controllers/api/EnergyEfficiency/GetEnergyConsumptionController.cs @@ -185,7 +185,7 @@ namespace DongYingAPI.Controllers.api.EnergyEfficiency DateTime jdate; if (i == 0) { - var jdate1 = now.AddMonths(-i).ToString("yyyy-MM-dd HH:00:00"); + var jdate1 = now.AddMonths(-i).AddHours(-1).ToString("yyyy-MM-dd HH:00:00"); jdate = Convert.ToDateTime(jdate1); } else diff --git a/DongYingAPI/Controllers/api/EnergyEfficiency/GetEnergyTrendController.cs b/DongYingAPI/Controllers/api/EnergyEfficiency/GetEnergyTrendController.cs index 423688c..f25907a 100644 --- a/DongYingAPI/Controllers/api/EnergyEfficiency/GetEnergyTrendController.cs +++ b/DongYingAPI/Controllers/api/EnergyEfficiency/GetEnergyTrendController.cs @@ -37,143 +37,143 @@ namespace DongYingAPI.Controllers.api.EnergyEfficiency try { var now = DateTime.Now; - var start_time = DateTime.Parse(now.ToString("yyyy") + "-01-01 00:00:00"); - var end_time = DateTime.Parse(now.ToString("yyyy-MM-dd HH") + ":00:00"); - var time_count = Tool.GetUsedMonth1("月", start_time, end_time); var data = new List(); var plan_list = plan_bll.GetModelList(" Type='" + type + "' "); if (type == "电") { - var date_base = ConfigurationManager.AppSettings["MySQLDataBase"].ToString(); var list = new List(); - var source = ""; - for (int i = 0; i <= time_count; i++) + var time_count = Convert.ToInt32(now.Month); + for (int i = 0; i < time_count; i++) { - var time = start_time.AddMonths(i).ToString("yyyyMM"); - if (bll.IsExistsTable(date_base, "electricity_data_" + time)) + string sdate; + if (i == 0) { - if (time == start_time.ToString("yyyyMM")) - { - source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, start_time); - } - else if (time == end_time.ToString("yyyyMM")) - { - source += string.Format(" (select ElectricityId,DeviceId,EH,P,Kvar,Ia,Ib,Ic,Ua,Ub,Uc,ServiceRating,CreateTime,EntireTime,Reserve1,Reserve2,Reserve3,Reserve4,Reserve5 from electricity_data_{0} where EntireTime='{1}') UNION all ", time, end_time); - } + sdate = now.AddMonths(-i).AddHours(-1).ToString("yyyy-MM-dd HH:00:00"); } - } - if (!string.IsNullOrEmpty(source)) - { - source = source.Substring(0, source.Length - 11); - list = bll.GetList(source, "", ""); - } - - var device_list = device_bll.GetModelList(""); - for (int i = 0; i <= time_count; i++) - { - var month = start_time.AddMonths(i).Month; - var time = start_time.AddMonths(i); - var end = time.AddMonths(1); - if (time.ToString("yyyy-MM") == end_time.ToString("yyyy-MM")) + else { - end = end_time; + //这月 + var sdate1 = now.AddMonths(-i + 1).ToString("yyyy-MM-01 00:00:00"); + var sdate2 = Convert.ToDateTime(sdate1); + sdate = sdate2.AddDays(-1).ToString("yyyy-MM-dd 00:00:00"); } - var plan_model = plan_list.Where(a => a.Month == month).FirstOrDefault(); - decimal value = 0; - var start_list = list.Where(a => a.EntireTime.Value == time).ToList(); - var end_list = list.Where(a => a.EntireTime.Value == end).ToList(); - foreach (var item in device_list) + var edate = now.AddMonths(-i).ToString("yyyy-MM-01 00:00:00"); + var plan_model = plan_list.Where(a => a.Month == Convert.ToDateTime(sdate).Month).FirstOrDefault(); + #region 表是否存在 + //表名 + var date_base = ConfigurationManager.AppSettings["MySQLDataBase"].ToString(); + //今月的表是否存在 + var stime = Convert.ToDateTime(sdate).ToString("yyyyMM"); + var a1 = bll.IsExistsTable(date_base, "electricity_data_" + stime); + if (a1 == false) { - var start_data = start_list.Where(a => a.DeviceId == item.DeviceId).FirstOrDefault(); - var end_data = end_list.Where(a => a.DeviceId == item.DeviceId).FirstOrDefault(); - if (start_data != null && end_data != null) - { - if (start_data.EH != null && end_data.EH != null) - { - decimal eh = end_data.EH.Value - start_data.EH.Value; - value += eh; - } - } + bll.CreateTable(stime); } - + #endregion + var alist = bll.GetModelListDate("", stime); + var list1 = alist.Where(x => x.EntireTime == Convert.ToDateTime(sdate)).ToList(); + var list2=alist.Where(x=>x.EntireTime==Convert.ToDateTime(edate)).ToList(); + var num1 = list1.Sum(x => x.EH); + var num2 = list2.Sum(x => x.EH); var model = new energy_trend(); - model.Month = month.ToString() + "月"; + model.Month = Convert.ToDateTime(sdate).ToString("MM月"); if (plan_model != null) { model.Plan = plan_model.Plan.Value; } - model.Value = value; + model.Plan = 0; + model.Value =Convert.ToDecimal(num1-num2); + if (model.Value < 0) + { + model.Value = 0; + } data.Add(model); } } else if (type == "水") { - var water_list = water_bll.GetModelList(" EntireTime>='" + start_time + "' and EntireTime<='" + end_time + "' "); - for (int i = 0; i <= time_count; i++) + var list = new List(); + var time_count = Convert.ToInt32(now.Month); + var alist = water_bll.GetModelList(""); + for (int i = 0; i < time_count; i++) { - var month = start_time.AddMonths(i).Month; - var time = start_time.AddMonths(i); - var end = time.AddMonths(1); - if (time.ToString("yyyy-MM") == end_time.ToString("yyyy-MM")) + string sdate; + if (i == 0) { - end = end_time; + sdate = now.AddMonths(-i).AddHours(-1).ToString("yyyy-MM-dd HH:00:00"); } - var plan_model = plan_list.Where(a => a.Month == month).FirstOrDefault(); - var start_data = water_list.Where(a => a.EntireTime.Value == time).FirstOrDefault(); - var end_data = water_list.Where(a => a.EntireTime.Value == end).FirstOrDefault(); - if (start_data != null && end_data != null) + else { - if (start_data.WaterYield != null && end_data.WaterYield != null) - { - decimal water_yield = end_data.WaterYield.Value - start_data.WaterYield.Value; - var model = new energy_trend(); - model.Month = month.ToString() + "月"; - model.Value = water_yield; - if (plan_model != null) - { - model.Plan = plan_model.Plan.Value; - } - data.Add(model); - } + //这月 + var sdate1 = now.AddMonths(-i + 1).ToString("yyyy-MM-01 00:00:00"); + var sdate2 = Convert.ToDateTime(sdate1); + sdate = sdate2.AddDays(-1).ToString("yyyy-MM-dd 00:00:00"); } + var edate = now.AddMonths(-i).ToString("yyyy-MM-01 00:00:00"); + var plan_model = plan_list.Where(a => a.Month == Convert.ToDateTime(sdate).Month).FirstOrDefault(); + var list1 = alist.Where(x => x.EntireTime == Convert.ToDateTime(sdate)).ToList(); + var list2 = alist.Where(x => x.EntireTime == Convert.ToDateTime(edate)).ToList(); + var num1 = list1.Sum(x => x.WaterYield); + var num2 = list2.Sum(x => x.WaterYield); + var model = new energy_trend(); + model.Month = Convert.ToDateTime(sdate).ToString("MM月"); + if (plan_model != null) + { + model.Plan = plan_model.Plan.Value; + } + model.Plan = 0; + model.Value = Convert.ToDecimal(num1 - num2); + if (model.Value < 0) + { + model.Value = 0; + } + data.Add(model); } } else if (type == "天然气") { - var gas_list = gas_bll.GetModelList(" EntireTime>='" + start_time + "' and EntireTime<='" + end_time + "' "); - for (int i = 0; i <= time_count; i++) + var list = new List(); + var time_count = Convert.ToInt32(now.Month); + var alist = gas_bll.GetModelList(""); + for (int i = 0; i < time_count; i++) { - var month = start_time.AddMonths(i).Month; - var time = start_time.AddMonths(i); - var end = time.AddMonths(1); - if (time.ToString("yyyy-MM") == end_time.ToString("yyyy-MM")) + string sdate; + if (i == 0) { - end = end_time; + sdate = now.AddMonths(-i).AddHours(-1).ToString("yyyy-MM-dd HH:00:00"); } - var plan_model = plan_list.Where(a => a.Month == month).FirstOrDefault(); - var start_data = gas_list.Where(a => a.EntireTime.Value == time).FirstOrDefault(); - var end_data = gas_list.Where(a => a.EntireTime.Value == end).FirstOrDefault(); - if (start_data != null && end_data != null) + else { - if (start_data.GasConsumption != null && end_data.GasConsumption != null) - { - decimal gas_consumption = end_data.GasConsumption.Value - start_data.GasConsumption.Value; - var model = new energy_trend(); - model.Month = month.ToString() + "月"; - model.Value = gas_consumption; - if (plan_model != null) - { - model.Plan = plan_model.Plan.Value; - } - data.Add(model); - } + //这月 + var sdate1 = now.AddMonths(-i + 1).ToString("yyyy-MM-01 00:00:00"); + var sdate2 = Convert.ToDateTime(sdate1); + sdate = sdate2.AddDays(-1).ToString("yyyy-MM-dd 00:00:00"); } + var edate = now.AddMonths(-i).ToString("yyyy-MM-01 00:00:00"); + var plan_model = plan_list.Where(a => a.Month == Convert.ToDateTime(sdate).Month).FirstOrDefault(); + var list1 = alist.Where(x => x.EntireTime == Convert.ToDateTime(sdate)).ToList(); + var list2 = alist.Where(x => x.EntireTime == Convert.ToDateTime(edate)).ToList(); + var num1 = list1.Sum(x => x.GasConsumption); + var num2 = list2.Sum(x => x.GasConsumption); + var model = new energy_trend(); + model.Month = Convert.ToDateTime(sdate).ToString("MM月"); + if (plan_model != null) + { + model.Plan = plan_model.Plan.Value; + } + model.Plan = 0; + model.Value = Convert.ToDecimal(num1 - num2); + if (model.Value < 0) + { + model.Value = 0; + } + data.Add(model); } } - + var adata=data.OrderBy(x=>x.Month).ToList(); res.code = 200; res.msg = "成功"; - res.data = data; + res.data = adata; } catch (Exception ex) { diff --git a/DongYingAPI/Controllers/api/EnergyEfficiency/GetItemizeEnergyController.cs b/DongYingAPI/Controllers/api/EnergyEfficiency/GetItemizeEnergyController.cs index c132f7b..d91274c 100644 --- a/DongYingAPI/Controllers/api/EnergyEfficiency/GetItemizeEnergyController.cs +++ b/DongYingAPI/Controllers/api/EnergyEfficiency/GetItemizeEnergyController.cs @@ -44,7 +44,7 @@ namespace DongYingAPI.Controllers.api.EnergyEfficiency } //查询今天0点和当前小时整点的数据出来 var start_time = DateTime.Parse(now.ToString("yyyy-MM-dd") + " 00:00:00"); - var end_time = DateTime.Parse(now.ToString("yyyy-MM-dd HH") + ":00:00"); + var end_time = DateTime.Parse(now.AddHours(-1).ToString("yyyy-MM-dd HH") + ":00:00"); var list = bll.GetModelListDate(" EntireTime='" + start_time + "' or EntireTime='" + end_time + "' ", time); //查询电设备表,计算每个设备的用电量,然后按空调、电梯、照明、其它累加用电量 var device_list = device_bll.GetModelList(""); diff --git a/DongYingAPI/Controllers/api/EnergyEfficiency/GetUnitConsumptionController.cs b/DongYingAPI/Controllers/api/EnergyEfficiency/GetUnitConsumptionController.cs index 2097959..4ed2061 100644 --- a/DongYingAPI/Controllers/api/EnergyEfficiency/GetUnitConsumptionController.cs +++ b/DongYingAPI/Controllers/api/EnergyEfficiency/GetUnitConsumptionController.cs @@ -72,7 +72,7 @@ namespace DongYingAPI.Controllers.api.EnergyEfficiency } } } - + var end_time1 = DateTime.Parse(now.AddHours(-1).ToString("yyyy-MM-dd HH") + ":00:00"); //今日电量 decimal electricity = 0; //判断表是否存在,不存在就创建 @@ -82,12 +82,12 @@ namespace DongYingAPI.Controllers.api.EnergyEfficiency { bll.CreateTable(time); } - var list = bll.GetModelListDate(" EntireTime='" + start_time + "' or EntireTime='" + end_time + "' ", time); + var list = bll.GetModelListDate(" EntireTime='" + start_time + "' or EntireTime='" + end_time1 + "' ", time); var device_list = device_bll.GetModelList(""); foreach (var item in device_list) { var start_data = list.Where(a => a.DeviceId == item.DeviceId && a.EntireTime.Value == start_time).FirstOrDefault(); - var end_data = list.Where(a => a.DeviceId == item.DeviceId && a.EntireTime.Value == end_time).FirstOrDefault(); + var end_data = list.Where(a => a.DeviceId == item.DeviceId && a.EntireTime.Value == end_time1).FirstOrDefault(); if (start_data != null && end_data != null) { if (start_data.EH != null && end_data.EH != null) diff --git a/DongYingAPI/Controllers/api/GetAirConditionerController.cs b/DongYingAPI/Controllers/api/GetAirConditionerController.cs index 7e5a6c5..b8786a6 100644 --- a/DongYingAPI/Controllers/api/GetAirConditionerController.cs +++ b/DongYingAPI/Controllers/api/GetAirConditionerController.cs @@ -31,7 +31,7 @@ namespace DongYingAPI.Controllers.api { var time_count = Convert.ToInt32(DateTime.Now.Hour); - for (int i = 0; i < time_count; i++) + for (int i = 1; i < time_count; i++) { // 只处理今年的数据 if (DateTime.Now.AddHours(-i).Day != DateTime.Now.Day) diff --git a/DongYingAPI/Controllers/api/GetCarbonFluxController.cs b/DongYingAPI/Controllers/api/GetCarbonFluxController.cs index 063ea65..af4fad0 100644 --- a/DongYingAPI/Controllers/api/GetCarbonFluxController.cs +++ b/DongYingAPI/Controllers/api/GetCarbonFluxController.cs @@ -37,10 +37,10 @@ namespace DongYingAPI.Controllers.api #endregion try { - var data = new List(); - var model = new carbon_fluxData(); - var list = bll_info.GetModelList(""); - var now = DateTime.Now; + var data = new List(); + var model = new carbon_fluxData(); + var list = bll_info.GetModelList(""); + var now = DateTime.Now; //这个 var ztime = now.AddHours(-1).ToString("yyyy-MM-dd HH:00:00"); //上个 @@ -52,14 +52,14 @@ namespace DongYingAPI.Controllers.api bll.CreateTable(ltime); } //这个列表 - var alist = bll.GetModelListDate("",time).Where(x => x.EntireTime == Convert.ToDateTime(ztime) ).ToList(); - decimal? num1 = 0; - foreach (var item in alist) - { - num1 +=Convert.ToDecimal(item.EH); - } + var alist = bll.GetModelListDate(" EntireTime='"+ztime+"'", time); + decimal? num1 = 0; + foreach (var item in alist) + { + num1 +=Convert.ToDecimal(item.EH); + } //上个列表 - var alists = bll.GetModelListDate("", ltime).Where(x => x.EntireTime == Convert.ToDateTime(stime)).ToList(); + var alists = bll.GetModelListDate(" EntireTime='"+ stime + "'", ltime); decimal? num2 = 0; foreach (var item in alists) { @@ -68,14 +68,14 @@ namespace DongYingAPI.Controllers.api decimal? num = num1 - num2; #region 一级 model.AggregateName = "总量"; - var e = Math.Round(Convert.ToDecimal(num / 1000 * Convert.ToDecimal(0.5703)), 4); + var e = Math.Round(Convert.ToDecimal(num / 1000 * Convert.ToDecimal(0.5703)), 3); model.AggregateValue = e+Convert.ToDecimal(0.493); #endregion - #region 天然气 + #region 天然气 var alist1 = new List(); var amodel = new secondlevel(); - amodel.SecondName = "天然气"; - amodel.SecondValue =Convert.ToDecimal(0.493); + amodel.SecondName = "天然气"; + amodel.SecondValue =Convert.ToDecimal(0.493); #endregion #region 食堂 var tlist1 = new List(); @@ -86,27 +86,27 @@ namespace DongYingAPI.Controllers.api #endregion #region 电 var amodel1 = new secondlevel(); - amodel1.SecondName = "电"; - amodel1.SecondValue = Math.Round(Convert.ToDecimal(num / 1000 * Convert.ToDecimal(0.5703)), 3); + amodel1.SecondName = "电"; + amodel1.SecondValue = Math.Round(Convert.ToDecimal(num / 1000 * Convert.ToDecimal(0.5703)), 3); alist1.Add(amodel); alist1.Add(amodel1); - model.list= alist1; - #endregion - #region 空调 + model.list= alist1; + #endregion + #region 空调 var tlist= new List(); - var klist = list.Where(x => x.DeviceName.Contains("空调")).ToList(); - var bmodel = new threelevel(); - bmodel.ThreeName = "空调"; - decimal? num3 = 0; + var klist = list.Where(x => x.DeviceName.Contains("空调")).ToList(); + var bmodel = new threelevel(); + bmodel.ThreeName = "空调"; + decimal? num3 = 0; decimal? num4 = 0; - foreach (var item in klist) + foreach (var item in klist) + { + //这个 + var list1 = alist.Where(x => x.DeviceId == item.DeviceId).ToList(); + foreach (var aitem in list1) { - //这个 - var list1 = alist.Where(x => x.DeviceId == item.DeviceId).ToList(); - foreach (var aitem in list1) - { - num3 += aitem.EH; - } + num3 += aitem.EH; + } //上个 var list2 = alists.Where(x => x.DeviceId == item.DeviceId).ToList(); foreach (var aitem in list2) @@ -115,34 +115,33 @@ namespace DongYingAPI.Controllers.api } } decimal? anum = num3 - num4; - bmodel.ThreeValue = Math.Round(Convert.ToDecimal(anum / 1000 * Convert.ToDecimal(0.5703)), 4); - tlist.Add(bmodel); - #endregion - #region 照明 - var bmodel1 = new threelevel(); - bmodel1.ThreeName = "照明"; - var zlist = list.Where(x => x.DeviceName.Contains("照明")).ToList(); - decimal? num5 = 0; + bmodel.ThreeValue = Math.Round(Convert.ToDecimal(anum / 1000 * Convert.ToDecimal(0.5703)), 4); + tlist.Add(bmodel); + #endregion + #region 照明 + var bmodel1 = new threelevel(); + bmodel1.ThreeName = "照明"; + var zlist = list.Where(x => x.DeviceName.Contains("照明")).ToList(); + decimal? num5 = 0; decimal? num6 = 0; foreach (var item in zlist) + { + //这个 + var list1 = alist.Where(x => x.DeviceId == item.DeviceId).ToList(); + foreach (var aitem in list1) { - //这个 - var list1 = alist.Where(x => x.DeviceId == item.DeviceId).ToList(); - foreach (var aitem in list1) - { - num5 += aitem.EH; - } - //上个 - var list2 = alists.Where(x => x.DeviceId == item.DeviceId).ToList(); - foreach (var aitem in list2) - { - num6 += aitem.EH; + num5 += aitem.EH; } + //上个 + var list2 = alists.Where(x => x.DeviceId == item.DeviceId).ToList(); + foreach (var aitem in list2) + { + num6 += aitem.EH; + } } decimal? bnum = num5-num6; - bmodel1.ThreeValue = Math.Round(Convert.ToDecimal(bnum / 1000 * Convert.ToDecimal(0.5703)), 4); - tlist.Add(bmodel1); - + bmodel1.ThreeValue = Math.Round(Convert.ToDecimal(bnum / 1000 * Convert.ToDecimal(0.5703)), 4); + tlist.Add(bmodel1); #endregion #region 电梯 var dmodel1 = new threelevel(); @@ -194,8 +193,8 @@ namespace DongYingAPI.Controllers.api amodel1.list = tlist; data.Add(model); res.code = 200; - res.msg = "成功"; - res.data = data; + res.msg = "成功"; + res.data = data; } catch (Exception ex) { diff --git a/DongYingAPI/Controllers/api/GetCarbonIntensityController.cs b/DongYingAPI/Controllers/api/GetCarbonIntensityController.cs index 19242a4..6a4b12b 100644 --- a/DongYingAPI/Controllers/api/GetCarbonIntensityController.cs +++ b/DongYingAPI/Controllers/api/GetCarbonIntensityController.cs @@ -81,19 +81,12 @@ namespace DongYingAPI.Controllers.api } //这天列表 decimal? num1=0; - var list1 = bll.GetModelListDate("", time).Where(x=>x.EntireTime == Convert.ToDateTime(ztime)).ToList(); - foreach (var aitem in list1) - { - num1 += Convert.ToDecimal(aitem.EH); - } + var list1 = bll.GetModelListDate(" EntireTime='" + ztime + "'", time); + num1 = list1.Sum(x => x.EH); //上个小时 decimal? num2 = 0; - - var list2 = bll.GetModelListDate("", atime).Where(x => x.EntireTime == Convert.ToDateTime(stime)).ToList(); - foreach (var aitem in list2) - { - num2 += Convert.ToDecimal(aitem.EH); - } + var list2 = bll.GetModelListDate(" EntireTime='" + stime + "'", atime); + num2=list2.Sum(x => x.EH); var model = new carbon_intensityData(); model.time = jtime; model.CarbonPer=Convert.ToDecimal(Math.Round(Convert.ToDouble(((num1 - num2) / 1000 * Convert.ToDecimal(0.5703)) / 100000), 3)); @@ -106,8 +99,6 @@ namespace DongYingAPI.Controllers.api model.ArealCarbon = 0; } data.Add(model); - - } res.code = 200; res.msg = "成功"; diff --git a/DongYingAPI/Controllers/api/GetDailyElectricityController.cs b/DongYingAPI/Controllers/api/GetDailyElectricityController.cs index 195e334..bbc99d6 100644 --- a/DongYingAPI/Controllers/api/GetDailyElectricityController.cs +++ b/DongYingAPI/Controllers/api/GetDailyElectricityController.cs @@ -6,8 +6,10 @@ using System.Configuration; using System.Linq; using System.Net; using System.Net.Http; +using System.Security.Policy; using System.Text; using System.Web.Http; +using System.Web.Mvc; namespace DongYingAPI.Controllers.api { @@ -53,28 +55,25 @@ namespace DongYingAPI.Controllers.api decimal? num1 = 0; decimal? num2 = 0; decimal? num3 = 0; - foreach (var aitem in list) + string slist=string.Join(",", list.Select(x=>x.DeviceId)); + //今天列表 + var list1 = bll.GetModelListsDate(slist, time).Where(x => x.EntireTime == Convert.ToDateTime(sdate)).ToList(); + foreach (var item in list1) { - //今天列表 - var list1 = bll.GetModelListDate("", time).Where(x =>x.DeviceId==aitem.DeviceId&& x.EntireTime == Convert.ToDateTime(sdate)).ToList(); - foreach (var item in list1) - { - num1 += item.EH; - } - //昨天列表 - var list2 = bll.GetModelListDate("", stime).Where(x =>x.DeviceId==aitem.DeviceId&& x.EntireTime == Convert.ToDateTime(edate)).ToList(); - foreach (var item in list2) - { - num2 += item.EH; - } - //前天列表 - var list3 = bll.GetModelListDate("", stime).Where(x =>x.DeviceId==aitem.DeviceId&& x.EntireTime == Convert.ToDateTime(qdate)).ToList(); - foreach (var item in list3) - { - num3 += item.EH; - } + num1 += item.EH; + } + //昨天列表 + var list2 = bll.GetModelListsDate(slist, stime).Where(x => x.EntireTime == Convert.ToDateTime(edate)).ToList(); + foreach (var item in list2) + { + num2 += item.EH; + } + //前天列表 + var list3 = bll.GetModelListsDate(slist, stime).Where(x => x.EntireTime == Convert.ToDateTime(qdate)).ToList(); + foreach (var item in list3) + { + num3 += item.EH; } - var model = new daily_electricityData(); model.CurrentDate = num1 - num2; if (model.CurrentDate == 0) diff --git a/DongYingAPI/Controllers/api/GetElectricalConditionController.cs b/DongYingAPI/Controllers/api/GetElectricalConditionController.cs index d538b3f..914f2d2 100644 --- a/DongYingAPI/Controllers/api/GetElectricalConditionController.cs +++ b/DongYingAPI/Controllers/api/GetElectricalConditionController.cs @@ -197,7 +197,7 @@ namespace DongYingAPI.Controllers.api } else { - model.DayDency =Convert.ToDecimal( Math.Round(Convert.ToDouble(model.YearDency /model.ToDay * 100),3)); + model.DayDency =Convert.ToDecimal( Math.Round(Convert.ToDouble(model.YearDay /model.ToDay * 100),3)); if (model.DayDency < 0) { model.DayDency = model.DayDency * -1; @@ -229,7 +229,7 @@ namespace DongYingAPI.Controllers.api } else { - model.YearDency = Convert.ToDecimal(Math.Round(Convert.ToDouble(model.LastYear / model.MonthDency * 100), 3)); + model.YearDency = Convert.ToDecimal(Math.Round(Convert.ToDouble(model.LastYear / model.ThisYear * 100), 3)); if (model.YearDency < 0) { model.YearDency = model.YearDency * -1; diff --git a/DongYingAPI/Controllers/api/GetElectricalRankingController.cs b/DongYingAPI/Controllers/api/GetElectricalRankingController.cs index ffd6216..b7ffdfa 100644 --- a/DongYingAPI/Controllers/api/GetElectricalRankingController.cs +++ b/DongYingAPI/Controllers/api/GetElectricalRankingController.cs @@ -55,10 +55,10 @@ namespace DongYingAPI.Controllers.api { //今天 var list = bll.GetModelListDate(" DeviceId='"+ item.DeviceId + "' and EntireTime='"+ jdate + "'", jtime); - num =Convert.ToDecimal(list.Sum(x => Convert.ToDecimal(x.EH))); + num +=Convert.ToDecimal(list.Sum(x => Convert.ToDecimal(x.EH))); //昨天 var zlist = bll.GetModelListDate(" DeviceId='" + item.DeviceId + "' and EntireTime='" + zdate + "'", jtime); - anum = Convert.ToDecimal(zlist.Sum(x =>Convert.ToDecimal(x.EH))); + anum += Convert.ToDecimal(zlist.Sum(x =>Convert.ToDecimal(x.EH))); } model1.ElectricaValue = num-anum; model1.ElectricaName = "空调系统"; @@ -72,10 +72,10 @@ namespace DongYingAPI.Controllers.api //今天 //今天 var list = bll.GetModelListDate(" DeviceId='" + item.DeviceId + "' and EntireTime='" + jdate + "'", jtime); - num1 = Convert.ToDecimal(list.Sum(x => Convert.ToDecimal(x.EH))); + num1 += Convert.ToDecimal(list.Sum(x => Convert.ToDecimal(x.EH))); //昨天 var zlist = bll.GetModelListDate(" DeviceId='" + item.DeviceId + "' and EntireTime='" + zdate + "'", jtime); - anum1 = Convert.ToDecimal(zlist.Sum(x => Convert.ToDecimal(x.EH))); + anum1 += Convert.ToDecimal(zlist.Sum(x => Convert.ToDecimal(x.EH))); } model2.ElectricaValue = num1-anum1; @@ -89,10 +89,10 @@ namespace DongYingAPI.Controllers.api { //今天 var list = bll.GetModelListDate(" DeviceId='" + item.DeviceId + "' and EntireTime='" + jdate + "'", jtime); - num2 = Convert.ToDecimal(list.Sum(x => Convert.ToDecimal(x.EH))); + num2 += Convert.ToDecimal(list.Sum(x => Convert.ToDecimal(x.EH))); //昨天 var zlist = bll.GetModelListDate(" DeviceId='" + item.DeviceId + "' and EntireTime='" + zdate + "'", jtime); - anum2 = Convert.ToDecimal(zlist.Sum(x => Convert.ToDecimal(x.EH))); + anum2 += Convert.ToDecimal(zlist.Sum(x => Convert.ToDecimal(x.EH))); } model3.ElectricaValue = num2-anum2; diff --git a/DongYingAPI/Controllers/api/GetEnergyTrendsController.cs b/DongYingAPI/Controllers/api/GetEnergyTrendsController.cs index 8bfa360..fd8c9df 100644 --- a/DongYingAPI/Controllers/api/GetEnergyTrendsController.cs +++ b/DongYingAPI/Controllers/api/GetEnergyTrendsController.cs @@ -7,8 +7,10 @@ using System.Configuration; using System.Linq; using System.Net; using System.Net.Http; +using System.Security.Policy; using System.Text; using System.Web.Http; +using WebGrease.Css.Extensions; namespace DongYingAPI.Controllers.api { @@ -30,7 +32,15 @@ namespace DongYingAPI.Controllers.api { var data=new List(); DateTime now=DateTime.Now; + var time = now.ToString("yyyyMM"); + var c = bll.IsExistsTable(date_base, "electricity_data_" + time); + if (c == false) + { + bll.CreateTable(time); + } var list = bll_info.GetModelList(" FloorName='科技馆负一层地源热泵'"); + var lists = string.Join(",", list.Select(x => x.DeviceId)); + var alist = bll.GetModelListsDate(lists, time); if (date == "日") { var time_count = Convert.ToInt32(DateTime.Now.Hour); @@ -43,11 +53,6 @@ namespace DongYingAPI.Controllers.api } var jdate = now.AddHours(-i).ToString("yyyy-MM-dd HH:00:00"); var jtime = now.AddHours(-i).ToString("yyyyMM"); - var a = bll.IsExistsTable(date_base, "electricity_data_" + jtime); - if (a == false) - { - bll.CreateTable(jtime); - } var sdate = now.AddHours(-(i + 1)).ToString("yyyy-MM-dd HH:00:00"); var stime = now.AddHours(-(i + 1)).ToString("yyyyMM"); var b = bll.IsExistsTable(date_base, "electricity_data_" + stime); @@ -57,17 +62,14 @@ namespace DongYingAPI.Controllers.api } decimal? num1 = 0; decimal? num2 = 0; - foreach (var aitem in list) - { - var jlist = bll.GetModelListDate(" DeviceId='"+aitem.DeviceId+ "' and EntireTime='"+jdate+"'", jtime); - var slist = bll.GetModelListDate(" DeviceId='" + aitem.DeviceId + "' and EntireTime='" + sdate + "'", stime); - num1 = jlist.Sum(x => Convert.ToDecimal(x.EH)); - num2=slist.Sum(x=>Convert.ToDecimal(x.EH)); - } + var jlist = alist.Where(x=>x.EntireTime==Convert.ToDateTime(jdate)).ToList(); + var slist = alist.Where(x=>x.EntireTime==Convert.ToDateTime(sdate)).ToList(); + num1 =Convert.ToDecimal(jlist.Sum(x => Convert.ToDecimal(x.EH))); + num2 =Convert.ToDecimal(slist.Sum(x => Convert.ToDecimal(x.EH))); var model = new energy_trendData() { time = DateTime.Now.AddHours(-i).ToString("HH:00"), EH = num1 - num2 - }; + }; if (model.EH < 0) { model.EH = 0; @@ -96,28 +98,13 @@ namespace DongYingAPI.Controllers.api { jdate = now.AddDays(-i + 1).ToString("yyyy-MM-dd 00:00:00"); } - var jtime = now.AddDays(-i + 1).ToString("yyyyMM"); - var a = bll.IsExistsTable(date_base, "electricity_data_" + jtime); - if (a == false) - { - bll.CreateTable(jtime); - } var sdate = now.AddDays(-(i)).ToString("yyyy-MM-dd 00:00:00"); - var stime = now.AddDays(-(i)).ToString("yyyyMM"); - var b = bll.IsExistsTable(date_base, "electricity_data_" + stime); - if (b == false) - { - bll.CreateTable(stime); - } decimal? num1 = 0; decimal? num2 = 0; - foreach (var aitem in list) - { - var jlist = bll.GetModelListDate(" DeviceId='" + aitem.DeviceId + "' and EntireTime='" + jdate + "'", jtime); - var slist = bll.GetModelListDate(" DeviceId='" + aitem.DeviceId + "' and EntireTime='" + sdate + "'", stime); - num1 = jlist.Sum(x => Convert.ToDecimal(x.EH)); - num2 = slist.Sum(x => Convert.ToDecimal(x.EH)); - } + var jlist = alist.Where(x => x.EntireTime == Convert.ToDateTime(jdate)).ToList(); + var slist = alist.Where(x => x.EntireTime == Convert.ToDateTime(sdate)).ToList(); + num1 = Convert.ToDecimal(jlist.Sum(x => Convert.ToDecimal(x.EH))); + num2 = Convert.ToDecimal(slist.Sum(x => Convert.ToDecimal(x.EH))); var model = new energy_trendData() { time = DateTime.Now.AddDays(-i).ToString("MM-dd"), @@ -169,13 +156,10 @@ namespace DongYingAPI.Controllers.api } decimal? num1 = 0; decimal? num2 = 0; - foreach (var aitem in list) - { - var jlist = bll.GetModelListDate(" DeviceId='" + aitem.DeviceId + "' and EntireTime='" + jdate + "'", jtime); - var slist = bll.GetModelListDate(" DeviceId='" + aitem.DeviceId + "' and EntireTime='" + sdate + "'", stime); - num1 = jlist.Sum(x => Convert.ToDecimal(x.EH)); - num2 = slist.Sum(x => Convert.ToDecimal(x.EH)); - } + var jlist = bll.GetModelListsDate(lists, jtime).Where(x => x.EntireTime == Convert.ToDateTime(jdate)).ToList(); + var slist = bll.GetModelListsDate(lists, stime).Where(x => x.EntireTime == Convert.ToDateTime(sdate)).ToList(); + num1 = Convert.ToDecimal(jlist.Sum(x => Convert.ToDecimal(x.EH))); + num2 = Convert.ToDecimal(slist.Sum(x => Convert.ToDecimal(x.EH))); var model = new energy_trendData() { time = jdate.ToString("MM月"), diff --git a/DongYingAPI/Controllers/api/GetGeneralCatalogueController.cs b/DongYingAPI/Controllers/api/GetGeneralCatalogueController.cs index a9e5aa8..d2e2dd0 100644 --- a/DongYingAPI/Controllers/api/GetGeneralCatalogueController.cs +++ b/DongYingAPI/Controllers/api/GetGeneralCatalogueController.cs @@ -54,16 +54,16 @@ namespace DongYingAPI.Controllers.api } decimal? num1 = 0; decimal? num2 = 0; - var jlist = bll.GetModelListDate("", jtime).Where(x => x.EntireTime == Convert.ToDateTime(jdate)).ToList(); - var slist = bll.GetModelListDate("", stime).Where(x => x.EntireTime == Convert.ToDateTime(sdate)).ToList(); - foreach (var item in jlist) - { - num1 += item.EH; - } - foreach (var item in slist) - { - num2 += item.EH; - } + var jlist = bll.GetModelListDate("", jtime).Where(x => x.EntireTime == Convert.ToDateTime(jdate)).ToList(); + var slist = bll.GetModelListDate("", stime).Where(x => x.EntireTime == Convert.ToDateTime(sdate)).ToList(); + foreach (var item in jlist) + { + num1 += Convert.ToDecimal(item.EH); + } + foreach (var item in slist) + { + num2 += Convert.ToDecimal(item.EH); + } var model = new general_catalogueData(); model.TotalRelease=Math.Round(Convert.ToDecimal(num1-num2 / 1000 * Convert.ToDecimal(0.5703)),3)+(4400/1000* Convert.ToDecimal(0.5703)); model.CarbonOffset = 0; @@ -87,28 +87,22 @@ namespace DongYingAPI.Controllers.api bll.CreateTable(jtime); } var sdate1 = now.ToString("yyyy-MM-01 00:00:00"); - var sdate2 = Convert.ToDateTime(sdate1); - var sdate = sdate2.AddDays(-0); - var stime = sdate.ToString("yyyyMM"); - var b = bll.IsExistsTable(date_base, "electricity_data_" + stime); - if (b == false) - { - bll.CreateTable(stime); - } + var sdate = Convert.ToDateTime(sdate1); decimal? num1 = 0; decimal? num2 = 0; - var jlist = bll.GetModelListDate("", jtime).Where(x => x.EntireTime == Convert.ToDateTime(jdate)).ToList(); - var slist = bll.GetModelListDate("", stime).Where(x => x.EntireTime == Convert.ToDateTime(sdate)).ToList(); + var alist = bll.GetModelListsDate("", jtime); + var jlist = alist.Where(x => x.EntireTime == Convert.ToDateTime(jdate)).ToList(); + var slist = alist.Where(x => x.EntireTime == Convert.ToDateTime(sdate)).ToList(); foreach (var item in jlist) { - num1 += item.EH; + num1 +=Convert.ToDecimal(item.EH); } foreach (var item in slist) { - num2 += item.EH; + num2 +=Convert.ToDecimal(item.EH); } var model = new general_catalogueData(); - model.TotalRelease = Math.Round(Convert.ToDecimal((num1-num2) / 1000 * Convert.ToDecimal(0.5703)), 3)+Convert.ToDecimal(4400 /12/ 1000 * Convert.ToDecimal(0.5703)); + model.TotalRelease =Convert.ToDecimal( Math.Round(Convert.ToDecimal((num1-num2) / 1000 * Convert.ToDecimal(0.5703)), 3)+Convert.ToDecimal(4400 /12/ 1000 * Convert.ToDecimal(0.5703))); model.CarbonOffset = 0; model.CarbonReduction =Math.Round( Convert.ToDecimal(742.81)/12,3); model.Electricity = Math.Round(Convert.ToDecimal((num1-num2) / 1000 * Convert.ToDecimal(0.5703)), 3); diff --git a/DongYingAPI/Controllers/api/GetIlluminationLoadController.cs b/DongYingAPI/Controllers/api/GetIlluminationLoadController.cs index e1472a1..fe8318e 100644 --- a/DongYingAPI/Controllers/api/GetIlluminationLoadController.cs +++ b/DongYingAPI/Controllers/api/GetIlluminationLoadController.cs @@ -9,6 +9,7 @@ using System.Net.Http; using System.Text; using System.Web.Http; using System.Web.Mvc; +using System.Xml.Schema; namespace DongYingAPI.Controllers.api { @@ -31,45 +32,20 @@ namespace DongYingAPI.Controllers.api var date_base = ConfigurationManager.AppSettings["MySQLDataBase"].ToString(); //今月的表是否存在 var jtime = DateTime.Now.ToString("yyyyMM"); - var a1 = bll.IsExistsTable(date_base, "electricity_data_" + time); + var a1 = bll.IsExistsTable(date_base, "electricity_data_" + jtime); if (a1 == false) { bll.CreateTable(jtime); } - //昨月的表是否存在 - var ztime = DateTime.Now.AddMonths(-1).ToString("yyyyMM"); - var a = bll.IsExistsTable(date_base, "electricity_data_" + ztime); - if (a == false) - { - bll.CreateTable(ztime); - } - //前月的表是否存在 - var qtime = DateTime.Now.AddMonths(-2).ToString("yyyyMM"); - var b = bll.IsExistsTable(date_base, "electricity_data_" + qtime); - if (b == false) - { - bll.CreateTable(qtime); - } - //昨年的表是否存在 - var zntime = DateTime.Now.AddYears(-1).ToString("yyyy12"); - var an = bll.IsExistsTable(date_base, "electricity_data_" + zntime); - if (an == false) - { - bll.CreateTable(zntime); - } - //前年的表是否存在 - var qntime = DateTime.Now.AddYears(-2).ToString("yyyy12"); - var bn = bll.IsExistsTable(date_base, "electricity_data_" + qntime); - if (bn == false) - { - bll.CreateTable(qntime); - } + #endregion var list = bll_info.GetModelList("").Where(x => x.DeviceName.Contains("照明")).ToList(); + var lists = string.Join(",", list.Select(x => x.DeviceId)); + var alist = bll.GetModelListsDate(lists, time); if (date == "日") { var time_count = Convert.ToInt32(DateTime.Now.Hour); - for (int i = 0; i < time_count; i++) + for (int i = 1; i < time_count; i++) { // 只处理今年的数据 if (DateTime.Now.AddHours(-i).Day != DateTime.Now.Day) @@ -77,29 +53,22 @@ namespace DongYingAPI.Controllers.api continue; } var model = new illumination_loadData(); - - var j = i * 60; string now = ""; - model.time = DateTime.Now.AddMinutes(-j).ToString("HH:00"); + model.time = DateTime.Now.AddHours(-i).ToString("HH:00"); now = DateTime.Now.ToString("yyyy-MM-dd HH:00:00"); var datetime = Convert.ToDateTime(now); var sdate = datetime.AddHours(-i); - var edate = datetime.AddHours(-i + 1); var sdate1=datetime.AddDays(-1).AddHours(-i); - var edate1=datetime.AddDays(-2).AddHours(-i+1); decimal? num3 = 0; decimal? num4 = 0; //var list1 = bll_info.GetModelList("").Where(x =>x.DeviceName.Contains("空调")&& x.EntireTime >= sdate && x.EntireTime < edate).ToList(); - foreach (var item in list) - { - var list1 = bll.GetModelListDate(" DeviceId='"+item.DeviceId+ "' and EntireTime>='"+sdate+ "' and EntireTime<='"+edate+"'", time); - var list2 = bll.GetModelListDate("DeviceId='" + item.DeviceId + "' and EntireTime>='" + sdate1 + "' and EntireTime<='" + edate1 + "'", time); - decimal? num1 = list1.Sum(x=>Convert.ToDecimal(x.P)); - decimal? num2 = list2.Sum(x=>Convert.ToDecimal(x.P)); - num3 += Convert.ToDecimal(num1); - num4+= Convert.ToDecimal(num2); - } + var list1 = alist.Where(x=>x.EntireTime==Convert.ToDateTime(sdate)).ToList(); + var list2 = alist.Where(x => x.EntireTime == Convert.ToDateTime(sdate1)).ToList(); + decimal? num1 = list1.Sum(x => Convert.ToDecimal(x.P)); + decimal? num2 = list2.Sum(x => Convert.ToDecimal(x.P)); + num3 += Convert.ToDecimal(num1); + num4 += Convert.ToDecimal(num2); model.ToDay = num3; model.YearDay =num4; if (model.ToDay > model.YearDay) @@ -134,16 +103,12 @@ namespace DongYingAPI.Controllers.api var edate1 = now.AddMonths(-1).AddDays(+1).ToString("yyyy-MM-dd") + " 00:00:00"; decimal? num3 = 0; decimal? num4 = 0; - foreach (var item in list) - { - var list1 = bll.GetModelListDate(" DeviceId='" + item.DeviceId + "' and EntireTime>='" + sdate + "' and EntireTime<='" + edate + "'", time); - var list2 = bll.GetModelListDate("DeviceId='" + item.DeviceId + "' and EntireTime>='" + sdate1 + "' and EntireTime<='" + edate1 + "'", time); - - decimal? num1 = list1.Sum(x => Convert.ToDecimal(x.P)); - decimal? num2 = list2.Sum(x => Convert.ToDecimal(x.P)); - num3 += Convert.ToDecimal(num1); - num4 += Convert.ToDecimal(num2); - } + var list1 = alist.Where(x=>x.EntireTime>=Convert.ToDateTime(sdate)&&x.EntireTime x.EntireTime >= Convert.ToDateTime(sdate1) && x.EntireTime < Convert.ToDateTime(edate1)).ToList(); + decimal? num1 = list1.Sum(x => Convert.ToDecimal(x.P)); + decimal? num2 = list2.Sum(x => Convert.ToDecimal(x.P)); + num3 += Convert.ToDecimal(num1); + num4 += Convert.ToDecimal(num2); model.ToDay = num3; model.YearDay =num4; if (model.ToDay > model.YearDay) @@ -162,11 +127,6 @@ namespace DongYingAPI.Controllers.api var time_count = Convert.ToInt32(DateTime.Now.Month); for (int i = 0; i < time_count; i++) { - // 只处理今年的数据 - if (DateTime.Now.AddMonths(-i).Year != DateTime.Now.Year) - { - continue; - } var model = new illumination_loadData(); var atime = DateTime.Now.AddMonths(-i).ToString("MM月"); model.time = atime; @@ -175,23 +135,28 @@ namespace DongYingAPI.Controllers.api var edate = now.AddMonths(+1).ToString("yyyy-MM") + "-01 00:00:00"; var sdate1 = now.AddYears(-1).ToString("yyyy-MM") + "-01 00:00:00"; var edate1= now.AddYears(-1).AddMonths(+1).ToString("yyyy-MM") + "-01 00:00:00"; - var ctime = now.ToString("yyyMM"); + var ctime = now.ToString("yyyyMM"); var etime = now.AddYears(-1).ToString("yyyyMM"); + var c = bll.IsExistsTable(date_base, "electricity_data_" + ctime); + if (c == false) + { + bll.CreateTable(ctime); + } + var e= bll.IsExistsTable(date_base, "electricity_data_" + etime); + if (e == false) + { + bll.CreateTable(etime); + } decimal? num3 = 0; decimal? num4 = 0; - decimal? num5 = 0; - foreach (var item in list) - { - var list1 = bll.GetModelListDate(" DeviceId='" + item.DeviceId + "' and EntireTime>='" + sdate + "' and EntireTime<='" + edate + "'", time); - var list2 = bll.GetModelListDate("DeviceId='" + item.DeviceId + "' and EntireTime>='" + sdate1 + "' and EntireTime<='" + edate1 + "'", time); - - decimal? num1 = list1.Sum(x => Convert.ToDecimal(x.P)); - decimal? num2 = list2.Sum(x => Convert.ToDecimal(x.P)); - num3 += Convert.ToDecimal(num1); - num5 += Convert.ToDecimal(num2); - } + var list1 = bll.GetModelListsDate(lists, ctime).Where(x => x.EntireTime >= Convert.ToDateTime(sdate) && x.EntireTime < Convert.ToDateTime(edate)).ToList(); + var list2 = bll.GetModelListsDate(lists, etime).Where(x => x.EntireTime >= Convert.ToDateTime(sdate1) && x.EntireTime < Convert.ToDateTime(edate1)).ToList(); + decimal? num1 = list1.Sum(x => Convert.ToDecimal(x.P)); + decimal? num2 = list2.Sum(x => Convert.ToDecimal(x.P)); + num3 += Convert.ToDecimal(num1); + num4 += Convert.ToDecimal(num2); model.ToDay = num3; - model.YearDay = num5; + model.YearDay = num4; if (model.ToDay > model.YearDay) { model.Tendency = "上升"; diff --git a/DongYingAPI/Controllers/api/GetLightingLoadController.cs b/DongYingAPI/Controllers/api/GetLightingLoadController.cs index 47b116b..f13f996 100644 --- a/DongYingAPI/Controllers/api/GetLightingLoadController.cs +++ b/DongYingAPI/Controllers/api/GetLightingLoadController.cs @@ -32,7 +32,7 @@ namespace DongYingAPI.Controllers.api { var time_count = Convert.ToInt32(DateTime.Now.Hour); - for (int i = 0; i < time_count; i++) + for (int i = 1; i < time_count; i++) { // 只处理今日的数据 if (DateTime.Now.AddHours(-i).Day != DateTime.Now.Day) diff --git a/DongYingAPI/Controllers/api/GetPowerLoadController.cs b/DongYingAPI/Controllers/api/GetPowerLoadController.cs index baf3593..af74da5 100644 --- a/DongYingAPI/Controllers/api/GetPowerLoadController.cs +++ b/DongYingAPI/Controllers/api/GetPowerLoadController.cs @@ -30,7 +30,7 @@ namespace DongYingAPI.Controllers.api if (date == "日") { var time_count = Convert.ToInt32(DateTime.Now.Hour); - for (int i = 0; i < time_count; i++) + for (int i = 1; i < time_count; i++) { // 只处理今年的数据 if (DateTime.Now.AddHours(-i).Day != DateTime.Now.Day) @@ -47,7 +47,7 @@ namespace DongYingAPI.Controllers.api num1 = list1.Sum(x => Convert.ToDecimal(x.P)); var model = new power_loadData() { - time = DateTime.Now.AddMinutes(-i).ToString("HH:00"), + time = DateTime.Now.AddHours(-i).ToString("HH:00"), P= num1 }; data.Add(model); diff --git a/DongYingAPI/DongYingAPI.csproj.user b/DongYingAPI/DongYingAPI.csproj.user index 87c7a36..70f6263 100644 --- a/DongYingAPI/DongYingAPI.csproj.user +++ b/DongYingAPI/DongYingAPI.csproj.user @@ -8,7 +8,7 @@ - Release|Any CPU + Debug|Any CPU E:\林谷项目\东营两馆一宫\后端框架\DongYing\DongYingAPI\Properties\PublishProfiles\FolderProfile1.pubxml ApiControllerEmptyScaffolder root/Common/Web API diff --git a/DongYingAPI/Properties/PublishProfiles/FolderProfile1.pubxml.user b/DongYingAPI/Properties/PublishProfiles/FolderProfile1.pubxml.user index 29fae76..7981e69 100644 --- a/DongYingAPI/Properties/PublishProfiles/FolderProfile1.pubxml.user +++ b/DongYingAPI/Properties/PublishProfiles/FolderProfile1.pubxml.user @@ -5,7 +5,7 @@ https://go.microsoft.com/fwlink/?LinkID=208121. <_PublishTargetUrl>E:\林谷项目\东营两馆一宫\后端框架\DongYing\DongYingAPI\bin\app.publish\ - True|2024-03-20T05:58:42.4555031Z;True|2024-03-19T17:05:11.6998862+08:00;True|2024-03-19T16:15:08.2016341+08:00;True|2024-03-12T13:39:36.5196065+08:00;True|2024-03-08T15:20:13.3402822+08:00;True|2024-03-08T09:32:17.5138435+08:00;True|2024-03-04T10:00:33.0681294+08:00;True|2024-03-01T11:05:46.5158063+08:00;True|2024-03-01T09:20:05.1925139+08:00;True|2024-02-26T14:30:47.0846108+08:00;True|2024-02-26T13:13:41.6324599+08:00;True|2024-02-26T09:47:50.0632719+08:00;True|2024-02-23T16:52:31.5607201+08:00;True|2024-02-21T11:02:12.3544605+08:00;True|2024-02-21T11:02:02.8020234+08:00;True|2024-02-05T17:53:57.0306881+08:00;True|2024-02-05T15:03:29.8538142+08:00;True|2024-02-05T10:05:19.3967649+08:00;True|2024-02-04T14:00:33.8555838+08:00;True|2024-02-02T14:35:29.9414639+08:00;True|2024-02-01T14:38:16.2460751+08:00;True|2024-02-01T13:56:20.6256272+08:00;True|2024-02-01T10:10:55.0739031+08:00;True|2024-02-01T09:46:59.8042783+08:00;True|2024-02-01T09:23:48.9652035+08:00;True|2024-01-31T16:21:08.6583762+08:00;True|2024-01-31T13:41:30.5192673+08:00;True|2024-01-30T15:15:26.7880164+08:00;True|2024-01-30T14:10:09.8489640+08:00;True|2024-01-30T13:16:11.0447202+08:00;True|2024-01-30T09:45:36.4140361+08:00;True|2024-01-29T14:17:38.5560371+08:00;True|2024-01-29T14:16:41.5597407+08:00;True|2024-01-24T17:31:19.5804558+08:00;True|2024-01-20T14:34:47.0539217+08:00;False|2024-01-15T13:49:44.5332318+08:00;True|2024-01-15T11:01:00.7602516+08:00;True|2024-01-15T09:26:27.2161156+08:00;True|2024-01-10T17:34:07.8440850+08:00;False|2024-01-10T17:33:54.1670007+08:00;True|2024-01-10T17:32:39.4867251+08:00;True|2024-01-10T14:45:12.0400450+08:00; + True|2024-03-22T06:35:10.7122317Z;True|2024-03-22T14:23:11.4660337+08:00;True|2024-03-22T14:01:56.5337932+08:00;True|2024-03-22T13:44:39.9603628+08:00;True|2024-03-22T09:09:26.8930206+08:00;True|2024-03-21T10:26:38.9258316+08:00;True|2024-03-21T09:56:54.3444569+08:00;True|2024-03-20T13:58:42.4555031+08:00;True|2024-03-19T17:05:11.6998862+08:00;True|2024-03-19T16:15:08.2016341+08:00;True|2024-03-12T13:39:36.5196065+08:00;True|2024-03-08T15:20:13.3402822+08:00;True|2024-03-08T09:32:17.5138435+08:00;True|2024-03-04T10:00:33.0681294+08:00;True|2024-03-01T11:05:46.5158063+08:00;True|2024-03-01T09:20:05.1925139+08:00;True|2024-02-26T14:30:47.0846108+08:00;True|2024-02-26T13:13:41.6324599+08:00;True|2024-02-26T09:47:50.0632719+08:00;True|2024-02-23T16:52:31.5607201+08:00;True|2024-02-21T11:02:12.3544605+08:00;True|2024-02-21T11:02:02.8020234+08:00;True|2024-02-05T17:53:57.0306881+08:00;True|2024-02-05T15:03:29.8538142+08:00;True|2024-02-05T10:05:19.3967649+08:00;True|2024-02-04T14:00:33.8555838+08:00;True|2024-02-02T14:35:29.9414639+08:00;True|2024-02-01T14:38:16.2460751+08:00;True|2024-02-01T13:56:20.6256272+08:00;True|2024-02-01T10:10:55.0739031+08:00;True|2024-02-01T09:46:59.8042783+08:00;True|2024-02-01T09:23:48.9652035+08:00;True|2024-01-31T16:21:08.6583762+08:00;True|2024-01-31T13:41:30.5192673+08:00;True|2024-01-30T15:15:26.7880164+08:00;True|2024-01-30T14:10:09.8489640+08:00;True|2024-01-30T13:16:11.0447202+08:00;True|2024-01-30T09:45:36.4140361+08:00;True|2024-01-29T14:17:38.5560371+08:00;True|2024-01-29T14:16:41.5597407+08:00;True|2024-01-24T17:31:19.5804558+08:00;True|2024-01-20T14:34:47.0539217+08:00;False|2024-01-15T13:49:44.5332318+08:00;True|2024-01-15T11:01:00.7602516+08:00;True|2024-01-15T09:26:27.2161156+08:00;True|2024-01-10T17:34:07.8440850+08:00;False|2024-01-10T17:33:54.1670007+08:00;True|2024-01-10T17:32:39.4867251+08:00;True|2024-01-10T14:45:12.0400450+08:00; @@ -79,16 +79,16 @@ https://go.microsoft.com/fwlink/?LinkID=208121. 09/10/2013 16:29:20 - 03/04/2024 09:29:28 + 03/21/2024 10:25:22 - 03/04/2024 09:29:28 + 03/21/2024 10:25:22 - 03/20/2024 13:58:41 + 03/22/2024 15:00:49 - 03/20/2024 13:58:41 + 03/22/2024 15:00:49 08/03/2021 14:52:26 @@ -361,7 +361,7 @@ https://go.microsoft.com/fwlink/?LinkID=208121. 01/11/2024 14:56:39 - 02/01/2024 10:10:25 + 03/22/2024 14:41:06 02/20/2024 10:58:53 @@ -373,28 +373,28 @@ https://go.microsoft.com/fwlink/?LinkID=208121. 01/11/2024 14:56:39 - 02/20/2024 14:09:26 + 03/21/2024 14:46:58 - 02/02/2024 14:20:48 + 03/21/2024 15:02:08 02/26/2024 14:25:08 - 01/31/2024 18:10:58 + 03/22/2024 15:00:18 - 01/24/2024 17:21:00 + 03/22/2024 09:03:47 01/11/2024 15:58:43 - 01/10/2024 13:26:12 + 03/22/2024 09:12:06 - 02/01/2024 14:46:23 + 03/21/2024 09:33:32 03/04/2024 09:51:33 @@ -406,10 +406,10 @@ https://go.microsoft.com/fwlink/?LinkID=208121. 03/19/2024 16:06:25 - 03/20/2024 10:50:13 + 03/22/2024 13:57:47 - 03/20/2024 10:54:14 + 03/22/2024 14:01:18 03/20/2024 10:52:07 @@ -430,7 +430,7 @@ https://go.microsoft.com/fwlink/?LinkID=208121. 03/20/2024 13:44:45 - 02/20/2024 17:07:40 + 03/21/2024 10:15:28 02/04/2024 13:59:28 @@ -445,10 +445,10 @@ https://go.microsoft.com/fwlink/?LinkID=208121. 03/01/2024 17:28:21 - 02/20/2024 16:51:15 + 03/21/2024 10:54:32 - 03/19/2024 16:07:07 + 03/22/2024 13:41:01 02/20/2024 15:04:19 @@ -460,7 +460,7 @@ https://go.microsoft.com/fwlink/?LinkID=208121. 02/20/2024 16:01:20 - 03/04/2024 16:46:13 + 03/22/2024 14:53:19 02/20/2024 15:11:54 @@ -478,16 +478,16 @@ https://go.microsoft.com/fwlink/?LinkID=208121. 02/01/2024 15:10:41 - 03/19/2024 16:12:35 + 03/21/2024 13:21:36 03/01/2024 17:07:01 - 03/20/2024 11:09:00 + 03/21/2024 13:06:09 - 02/01/2024 15:10:41 + 03/21/2024 09:44:31 01/10/2024 16:58:07 @@ -499,7 +499,7 @@ https://go.microsoft.com/fwlink/?LinkID=208121. 03/12/2024 13:38:12 - 03/04/2024 18:02:08 + 03/21/2024 09:49:05 03/01/2024 17:25:32 diff --git a/DongYingAPI/bin/DataServer.dll b/DongYingAPI/bin/DataServer.dll index db7add6..862289f 100644 Binary files a/DongYingAPI/bin/DataServer.dll and b/DongYingAPI/bin/DataServer.dll differ diff --git a/DongYingAPI/bin/DataServer.pdb b/DongYingAPI/bin/DataServer.pdb index de6b962..656ce32 100644 Binary files a/DongYingAPI/bin/DataServer.pdb and b/DongYingAPI/bin/DataServer.pdb differ diff --git a/DongYingAPI/bin/DongYingAPI.dll b/DongYingAPI/bin/DongYingAPI.dll index 04d5890..b671073 100644 Binary files a/DongYingAPI/bin/DongYingAPI.dll and b/DongYingAPI/bin/DongYingAPI.dll differ diff --git a/DongYingAPI/bin/DongYingAPI.pdb b/DongYingAPI/bin/DongYingAPI.pdb index 95bd871..81e0881 100644 Binary files a/DongYingAPI/bin/DongYingAPI.pdb and b/DongYingAPI/bin/DongYingAPI.pdb differ diff --git a/DongYingAPI/obj/Debug/DongYingAPI.csproj.AssemblyReference.cache b/DongYingAPI/obj/Debug/DongYingAPI.csproj.AssemblyReference.cache index 2eade79..d3f12b8 100644 Binary files a/DongYingAPI/obj/Debug/DongYingAPI.csproj.AssemblyReference.cache and b/DongYingAPI/obj/Debug/DongYingAPI.csproj.AssemblyReference.cache differ diff --git a/DongYingAPI/obj/Debug/DongYingAPI.dll b/DongYingAPI/obj/Debug/DongYingAPI.dll index 131b28c..b671073 100644 Binary files a/DongYingAPI/obj/Debug/DongYingAPI.dll and b/DongYingAPI/obj/Debug/DongYingAPI.dll differ diff --git a/DongYingAPI/obj/Debug/DongYingAPI.pdb b/DongYingAPI/obj/Debug/DongYingAPI.pdb index 8538bec..81e0881 100644 Binary files a/DongYingAPI/obj/Debug/DongYingAPI.pdb and b/DongYingAPI/obj/Debug/DongYingAPI.pdb differ diff --git a/Security/ServiceSecurity.cs b/Security/ServiceSecurity.cs index a6bb9d6..60127cc 100644 --- a/Security/ServiceSecurity.cs +++ b/Security/ServiceSecurity.cs @@ -372,7 +372,7 @@ namespace Security var vlist = bll.GetModelListDate(" ", date); foreach (var item in delist) { - var svlist = vlist.Where(x => x.DeviceId == item.DeviceId && x.EntireTime == sddate).FirstOrDefault(); + var svlist = vlist.Where(x => x.DeviceId == item.DeviceId).OrderByDescending(x=>x.EntireTime).FirstOrDefault(); var model = new DataServer.Model.electricity_data(); model.ElectricityId = Guid.NewGuid().ToString("N"); model.DeviceId = item.DeviceId; diff --git a/Security/bin/Debug/DataServer.dll b/Security/bin/Debug/DataServer.dll index db7add6..862289f 100644 Binary files a/Security/bin/Debug/DataServer.dll and b/Security/bin/Debug/DataServer.dll differ diff --git a/Security/bin/Debug/DataServer.pdb b/Security/bin/Debug/DataServer.pdb index de6b962..656ce32 100644 Binary files a/Security/bin/Debug/DataServer.pdb and b/Security/bin/Debug/DataServer.pdb differ diff --git a/Security/bin/Debug/ServiceSecurity.application b/Security/bin/Debug/ServiceSecurity.application index bb04719..5166561 100644 --- a/Security/bin/Debug/ServiceSecurity.application +++ b/Security/bin/Debug/ServiceSecurity.application @@ -14,7 +14,7 @@ - F5h6j3t4K8SG8UAHyg0cMkxZEKdnFoVZEHQD/i1M/uw= + KZdyGrAEhq1dCgxCr26jpCEz1tjl3i3x9H4CVz737eg= diff --git a/Security/bin/Debug/ServiceSecurity.exe b/Security/bin/Debug/ServiceSecurity.exe index 9dfe348..890d08b 100644 Binary files a/Security/bin/Debug/ServiceSecurity.exe and b/Security/bin/Debug/ServiceSecurity.exe differ diff --git a/Security/bin/Debug/ServiceSecurity.exe.manifest b/Security/bin/Debug/ServiceSecurity.exe.manifest index 6bb344b..d4360cb 100644 --- a/Security/bin/Debug/ServiceSecurity.exe.manifest +++ b/Security/bin/Debug/ServiceSecurity.exe.manifest @@ -42,14 +42,14 @@ - + - hjzwIwyfCb5eS7rDWu5qgK5iKzlFNLoTH2s2kAySmKI= + BnQ9CsDI0NjLBYwd2/GUpGt235+r/mzuF4SQV9/0fAk= @@ -145,7 +145,7 @@ - DeEXQXhHErrr/HmyjFW3ODFDZSqUM3NqEfhmNWCyOno= + Ti8LGbstmxADnPWIprg1ZA9NbMY3z/WvufxzFWNKEDU= diff --git a/Security/bin/Debug/ServiceSecurity.pdb b/Security/bin/Debug/ServiceSecurity.pdb index edc2990..a1bf3ce 100644 Binary files a/Security/bin/Debug/ServiceSecurity.pdb and b/Security/bin/Debug/ServiceSecurity.pdb differ diff --git a/Security/bin/Debug/app.publish/ServiceSecurity.exe b/Security/bin/Debug/app.publish/ServiceSecurity.exe index 42f6b17..3a40558 100644 Binary files a/Security/bin/Debug/app.publish/ServiceSecurity.exe and b/Security/bin/Debug/app.publish/ServiceSecurity.exe differ diff --git a/Security/obj/Debug/Security.csproj.AssemblyReference.cache b/Security/obj/Debug/Security.csproj.AssemblyReference.cache index b733b0e..2884ced 100644 Binary files a/Security/obj/Debug/Security.csproj.AssemblyReference.cache and b/Security/obj/Debug/Security.csproj.AssemblyReference.cache differ diff --git a/Security/obj/Debug/ServiceSecurity.application b/Security/obj/Debug/ServiceSecurity.application index bb04719..5166561 100644 --- a/Security/obj/Debug/ServiceSecurity.application +++ b/Security/obj/Debug/ServiceSecurity.application @@ -14,7 +14,7 @@ - F5h6j3t4K8SG8UAHyg0cMkxZEKdnFoVZEHQD/i1M/uw= + KZdyGrAEhq1dCgxCr26jpCEz1tjl3i3x9H4CVz737eg= diff --git a/Security/obj/Debug/ServiceSecurity.exe b/Security/obj/Debug/ServiceSecurity.exe index 9dfe348..890d08b 100644 Binary files a/Security/obj/Debug/ServiceSecurity.exe and b/Security/obj/Debug/ServiceSecurity.exe differ diff --git a/Security/obj/Debug/ServiceSecurity.exe.manifest b/Security/obj/Debug/ServiceSecurity.exe.manifest index 6bb344b..d4360cb 100644 --- a/Security/obj/Debug/ServiceSecurity.exe.manifest +++ b/Security/obj/Debug/ServiceSecurity.exe.manifest @@ -42,14 +42,14 @@ - + - hjzwIwyfCb5eS7rDWu5qgK5iKzlFNLoTH2s2kAySmKI= + BnQ9CsDI0NjLBYwd2/GUpGt235+r/mzuF4SQV9/0fAk= @@ -145,7 +145,7 @@ - DeEXQXhHErrr/HmyjFW3ODFDZSqUM3NqEfhmNWCyOno= + Ti8LGbstmxADnPWIprg1ZA9NbMY3z/WvufxzFWNKEDU= diff --git a/Security/obj/Debug/ServiceSecurity.pdb b/Security/obj/Debug/ServiceSecurity.pdb index edc2990..a1bf3ce 100644 Binary files a/Security/obj/Debug/ServiceSecurity.pdb and b/Security/obj/Debug/ServiceSecurity.pdb differ