From 2f1cbec203dcff25df7a5c2b51b13ec558f2c3db Mon Sep 17 00:00:00 2001 From: Shuxia Ning <NingShuxia0927@outlook.com> Date: 星期四, 13 二月 2025 11:15:00 +0800 Subject: [PATCH] 泵状态更新 --- 01-api/_Expand/IStation.Test/Program.cs | 132 +++++++++++++++++-------------------------- 1 files changed, 53 insertions(+), 79 deletions(-) diff --git a/01-api/_Expand/IStation.Test/Program.cs b/01-api/_Expand/IStation.Test/Program.cs index 64048a2..4e55942 100644 --- a/01-api/_Expand/IStation.Test/Program.cs +++ b/01-api/_Expand/IStation.Test/Program.cs @@ -2,88 +2,62 @@ using IStation; -using NPOI.HSSF.UserModel; -using NPOI.SS.Formula.Functions; -using NPOI.SS.UserModel; +using Microsoft.IdentityModel.Logging; +using Yw; -//var dt_now = DateTime.Now; -//var dt_next = new DateTime(dt_now.Year, dt_now.Month, dt_now.Day, dt_now.Hour, dt_now.Minute + 1, 0); -//var dt_space = dt_next - dt_now; -//Console.WriteLine($"鍒濆鍖�({dt_space.TotalSeconds})..."); -//Thread.Sleep(dt_space); -//IStation.Service.MonitorRecord _service_monitor_record = new(); -//IStation.Settings.ParasHelper.DataBase.SQLite.AnalysisConnectString = "DataSource=" + IStation.Settings.ParasHelper.LocalFile.DataFolderDirectory + "\\analysis.db"; -IStation.Settings.ParasHelper.DataBase.SQLite.ScheduleConnectString = "DataSource=" + IStation.Settings.ParasHelper.LocalFile.DataFolderDirectory + "\\schedule.db"; -//IStation.Settings.ParasHelper.DataBase.SQLite.HydraulicConnectString = "DataSource=" + IStation.Settings.ParasHelper.LocalFile.DataFolderDirectory + "\\hydraulic.db"; -//IStation.Settings.ParasHelper.DataBase.SQLite.MonitorConnectString = "DataSource=" + IStation.Settings.ParasHelper.LocalFile.DataFolderDirectory + "\\monitor.db"; -IStation.Settings.ParasHelper.Save(); +IStation.Service.Station _service_station = new(); +IStation.Service.ScheduleConfig _service_schedule_config = new(); -//Console.WriteLine("鍚姩瀹炴椂鏁版嵁閲囬泦..."); -//var timer = new System.Timers.Timer(); -//timer.Interval = 10 * 1000; -//timer.Elapsed += (s, e) => -//{ -// dt_now = DateTime.Now; -// var dt_now_str = dt_now.ToString("G"); -// var get_msg = GlobalHelper.GetMonitorRecordList(dt_now, out List<IStation.Model.MonitorRecord> monitor_record_list, false); -// if (!string.IsNullOrEmpty(get_msg)) -// { -// Console.WriteLine($"{dt_now_str}:{get_msg}"); -// } -// else -// { -// var bol = _service_monitor_record.Inserts(monitor_record_list); -// if (bol) -// { -// Console.WriteLine($"{dt_now_str}:閲囬泦鎴愬姛!"); -// } -// else -// { -// Console.WriteLine($"{dt_now_str}:閲囬泦澶辫触!"); -// } -// } -//}; -//timer.AutoReset = true; -//timer.Start(); -var list = new IStation.Service.ScheduleRequest().GetAll(); -Export2Excel(list); -bool Export2Excel(List<IStation.Model.ScheduleRequest> list) + +var receipt_time = DateTime.Now; +var log_title = string.Empty; + +Console.WriteLine("鍒濆鍖栧熀纭�淇℃伅鏂囦欢"); +var station_info = _service_station.Get(); +var is_monitor_record_debug = true; +Console.WriteLine("瀹炴椂ZyScada璇锋眰"); +var get_msg = GlobalHelper.GetMonitorRecordList(receipt_time, out List<IStation.Model.MonitorRecord> monitor_record_list, is_monitor_record_debug); + +Console.WriteLine(Yw.JsonHelper.Object2Json(monitor_record_list)); + + +var station1 = station_info.Station1; +var station2 = station_info.Station2; +var station1_schedule_config = _service_schedule_config.GetStation1(); +var station2_schedule_config = _service_schedule_config.GetStation2(); +var station1_flag_list = GlobalHelper.Station1FlagList; +var station2_flag_list = GlobalHelper.Station2FlagList; + +GlobalHelper.GetStationOpenFlagList(monitor_record_list, out List<int> station1_open_flag_list, out List<int> station2_open_flag_list); +GlobalHelper.GetStationFlagStateList(monitor_record_list, out List<int> station1_flag_maintenance_list, out List<int> station2_maintenance_flag_list, out List<int> station1_priority_flag_list, out List<int> station2_priority_flag_list); +GlobalHelper.GetFlagInletWaterLevelDict(monitor_record_list, out Dictionary<int, double> station1_flag_inlet_water_level_dict, out Dictionary<int, double> station2_flag_inlet_water_level_dict); + +Console.WriteLine("鏈烘车妫�淇�"); +if (station1_flag_maintenance_list != null && station1_flag_maintenance_list.Any()) { - - HSSFWorkbook theBook = new HSSFWorkbook(); - var theSheet1 = theBook.CreateSheet("Sheet1"); - - IRow rowTile = theSheet1.CreateRow(0); - - rowTile.CreateCell(0).SetCellValue("鏃堕棿"); - rowTile.CreateCell(1).SetCellValue("鐩爣娴侀噺"); - rowTile.CreateCell(2).SetCellValue("鐩爣鍘嬪姏"); - - - var count = list.Count(); - for (int i = 1; i < count; i++) - { - var x = list[i]; - var row = theSheet1.CreateRow(i); - row.CreateCell(0).SetCellValue(x.ReceptionTime.ToString("G")); - row.CreateCell(1).SetCellValue(x.TargetFlow2); - row.CreateCell(2).SetCellValue(x.TargetPressure2); - } - - var root_folder = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "闂鎺掓煡"); - if (!Directory.Exists(root_folder)) - { - Directory.CreateDirectory(root_folder); - } - var file_name = root_folder + "\\" + $"璋冨害鏁版嵁.xls"; - theSheet1.ForceFormulaRecalculation = true; - using (FileStream fs = File.OpenWrite(file_name)) - { - theBook.Write(fs); - } - - return true; + Console.WriteLine($"1杈撴按:{Yw.Untity.IntListHelper.ToString(station1_flag_maintenance_list)}"); + station1_schedule_config.MustCloseFlagList.AddRange(station1_flag_maintenance_list); } -Console.ReadKey(); \ No newline at end of file +if (station2_maintenance_flag_list != null && station2_maintenance_flag_list.Any()) +{ + Console.WriteLine($"2杈撴按:{Yw.Untity.IntListHelper.ToString(station2_maintenance_flag_list)}"); + station2_schedule_config.MustCloseFlagList.AddRange(station2_maintenance_flag_list); +} + +Console.WriteLine("鏈烘车浼樺厛"); +if (station1_priority_flag_list != null && station1_priority_flag_list.Any()) +{ + Console.WriteLine($"1杈撴按:{Yw.Untity.IntListHelper.ToString(station1_priority_flag_list)}"); + station1_schedule_config.PriorityOpenFlagList.AddRange(station1_priority_flag_list); +} +if (station2_priority_flag_list != null && station2_priority_flag_list.Any()) +{ + Console.WriteLine($"2杈撴按:{Yw.Untity.IntListHelper.ToString(station2_priority_flag_list)}"); + station2_schedule_config.PriorityOpenFlagList.AddRange(station2_priority_flag_list); +} + + + +Console.ReadKey(); \ No newline at end of file -- Gitblit v1.9.3