| | |
| | | namespace IStation.Application |
| | | using static IStation.Algorithm.ScheduleHelper; |
| | | |
| | | namespace IStation.Application |
| | | { |
| | | /// <summary> |
| | | /// 陈行输水调度 |
| | |
| | | var station2_flag_list = GlobalHelper.Station2FlagList; |
| | | |
| | | GlobalHelper.GetStationOpenFlagList(zy_scada_list, out List<int> station1_open_flag_list, out List<int> station2_open_flag_list); |
| | | GlobalHelper.GetStationMaintenanceFlagList(zy_scada_list, out List<int> station1_maintenance_flag_list, out List<int> station2_maintenance_flag_list); |
| | | GlobalHelper.GetFlagInletWaterLevelDict(zy_scada_list, out Dictionary<int, double> station1_flag_inlet_water_level_dict, out Dictionary<int, double> station2_flag_inlet_water_level_dict); |
| | | GlobalHelper.GetFlagCumulativeRunTimeDict(out Dictionary<int, double> station1_flag_cumulative_run_time_dict, out Dictionary<int, double> station2_flag_cumulative_run_time_dict); |
| | | |
| | | log_title = "机泵检修"; |
| | | if (station1_maintenance_flag_list != null && station1_maintenance_flag_list.Any()) |
| | | { |
| | | Log.Info(request_id, log_title, $"1输水:{Yw.Untity.IntListHelper.ToString(station1_maintenance_flag_list)}"); |
| | | station1_schedule_config.MustCloseFlagList.AddRange(station1_maintenance_flag_list); |
| | | } |
| | | |
| | | if (station2_maintenance_flag_list != null && station2_maintenance_flag_list.Any()) |
| | | { |
| | | Log.Info(request_id, log_title, $"2输水:{Yw.Untity.IntListHelper.ToString(station2_maintenance_flag_list)}"); |
| | | station2_schedule_config.MustCloseFlagList.AddRange(station2_maintenance_flag_list); |
| | | } |
| | | |
| | | |
| | | log_title = "调度返回"; |
| | | var msg = "计算结束!"; |
| | | var helper = new Algorithm.ScheduleHelper(); |
| | | |
| | | helper.Initial(station1_open_flag_list, station1_schedule_config); |
| | | var optimal_combine1 = helper.GetOptAnaCombine(station1, station1_same_type_flag_group_first, station1_flag_inlet_water_level_dict, target_flow1, target_head1); |
| | | var optimal_combine1 = helper.GetOptAnaCombine(station1, station1_same_type_flag_group_first, station1_flag_inlet_water_level_dict, station1_flag_cumulative_run_time_dict, target_flow1, target_head1); |
| | | |
| | | |
| | | helper.Initial(station2_open_flag_list, station2_schedule_config); |
| | | var optimal_combine2 = helper.GetOptAnaCombine(station2, station2_same_type_flag_group_first, station2_flag_inlet_water_level_dict, target_flow2, target_head2); |
| | | var optimal_combine2 = helper.GetOptAnaCombine(station2, station2_same_type_flag_group_first, station2_flag_inlet_water_level_dict, station2_flag_cumulative_run_time_dict, target_flow2, target_head2); |
| | | |
| | | var schedule_request = new Model.ScheduleRequest |
| | | { |
| | |
| | | List<Model.SchedulePump> schedule_pump_list1 = null; |
| | | List<Model.SchedulePump> schedule_pump_list2 = null; |
| | | |
| | | log_title = "调度返回"; |
| | | var msg = "计算结束!"; |
| | | |
| | | |
| | | var output = new StationScheduleOutput(); |
| | | output.InitObjects(station1_flag_list, station2_flag_list); |