| | |
| | | using System.Threading.Tasks; |
| | | using System.Windows.Forms; |
| | | using static System.Windows.Forms.VisualStyles.VisualStyleElement.TaskbarClock; |
| | | using IStation.BLL; |
| | | |
| | | namespace IStation.WinFrmUI.Monitor |
| | | { |
| | |
| | | /// <param name="datetime"></param> |
| | | public void SetBindingData(DateTime datetime) |
| | | { |
| | | _currentModel.Clear(); |
| | | HistoryDataAPiHelper historyDataHelper = new HistoryDataAPiHelper(); |
| | | var result = historyDataHelper.getPumpIsOpen(); |
| | | var time = new DateTime(2022, 11, 6); |
| | | foreach (var item in result) |
| | | { |
| | | var currentmodel = new CurrentModel |
| | | { |
| | | Name = "方案", |
| | | Time = item.Item1.ToString("HH:mm") + "----" + item.Item2.ToString("HH:mm"), |
| | | PumpCount = item.Item3.ToString() + "台", |
| | | water = Math.Round(GetWaterdata(item.Item1, item.Item2), 2), |
| | | electricity = GetElectrityData(item.Item1, item.Item2), |
| | | Electricity = electricityPirce(item.Item1, item.Item2, GetElectrityData(item.Item1, item.Item2)) |
| | | }; |
| | | _currentModel.Add(currentmodel); |
| | | } |
| | | this.bindingSource1.DataSource = _currentModel; |
| | | PumpRunHelper pumpRunHelper = new PumpRunHelper(); |
| | | pumpRunHelper.GetPumpRunParasOneDay(datetime,out string error1); |
| | | pumpRunHelper.GetByHistoryOneData(new DateTime(2023,2,5),out string error); |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | private double GetWaterdata(DateTime Str, DateTime end) |
| | | { |
| | | HistoryDataAPiHelper historyDataHelper = new HistoryDataAPiHelper(); |
| | | var waterData = historyDataHelper.GetWaterData(); |
| | | var pump1 = WaterData(waterData.Where(x => x.Tag == "二取水1号主水泵.日累计").ToList(), Str, end); |
| | | var pump2 = WaterData(waterData.Where(x => x.Tag == "二取水2号主水泵.日累计").ToList(), Str, end); |
| | | var pump3 = WaterData(waterData.Where(x => x.Tag == "二取水3号主水泵.日累计").ToList(), Str, end); |
| | | var pump4 = WaterData(waterData.Where(x => x.Tag == "二取水4号主水泵.日累计").ToList(), Str, end); |
| | | var pump5 = WaterData(waterData.Where(x => x.Tag == "二取水5号主水泵.日累计").ToList(), Str, end); |
| | | return pump1 + pump2 + pump3 + pump4 + pump5; |
| | | } |
| | | |
| | | |
| | | private double WaterData(List<Model.PumpWater> waterData, DateTime Str, DateTime end) |
| | | { |
| | | double result = 0; |
| | | for (int i = 0; i < waterData.Count; i++) |
| | | { |
| | | if (waterData[i].Values[0].DateTime == Str) |
| | | { |
| | | double startValue; |
| | | double endValue; |
| | | startValue = waterData[i].Values[0].SingleWater; |
| | | for (int j = i + 1; j < waterData.Count; j++) |
| | | { |
| | | if (waterData[j].Values[0].DateTime == end) |
| | | { |
| | | endValue = waterData[j].Values[0].SingleWater; |
| | | result = endValue - startValue; |
| | | return result; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | return result; |
| | | } |
| | | |
| | | |
| | | //电费计算 |
| | |
| | | |
| | | private double GetElectrityData(DateTime Str, DateTime end) |
| | | { |
| | | HistoryDataAPiHelper historyDataHelper = new HistoryDataAPiHelper(); |
| | | var Ele = historyDataHelper.GetEleData(); |
| | | var pump1 = ElectricityData(Ele.Where(x => x.Tag == "_0402010204040193046").ToList(), Str, end); |
| | | var pump2 = ElectricityData(Ele.Where(x => x.Tag == "_0402010204040193047").ToList(), Str, end); |
| | | var pump3 = ElectricityData(Ele.Where(x => x.Tag == "_0402010204012308007").ToList(), Str, end); |
| | | var pump4 = ElectricityData(Ele.Where(x => x.Tag == "_0402010204012408007").ToList(), Str, end); |
| | | var pump5 = ElectricityData(Ele.Where(x => x.Tag == "_0402010204012508007").ToList(), Str, end); |
| | | return Math.Round(pump1 + pump2 + pump3 + pump4 + pump5, 2); |
| | | return 0; |
| | | } |
| | | |
| | | |
| | | private double ElectricityData(List<Model.electricity> EleData, DateTime Str, DateTime end) |
| | | { |
| | | double result = 0; |
| | | for (int i = 0; i < EleData.Count; i++) |
| | | { |
| | | if (EleData[i].TotalEle[0].DateTime == Str) |
| | | { |
| | | double startValue; |
| | | double endValue; |
| | | startValue = EleData[i].TotalEle[0].Value; |
| | | for (int j = i + 1; j < EleData.Count; j++) |
| | | { |
| | | if (EleData[j].TotalEle[0].DateTime == end) |
| | | { |
| | | endValue = EleData[j].TotalEle[0].Value; |
| | | result = endValue - startValue; |
| | | return result; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | return result; |
| | | } |
| | | |
| | | |
| | | |
| | | |