/// <summary> /// Перенести состав в систему IDS /// </summary> public void MTTransfer_InsertIDSArrivalSostav() { MTTransfer mtt = new MTTransfer(); mtt.InsertIDSArrivalSostav(19587); mtt.InsertIDSArrivalSostav(19588); }
public void MTTransfer_TransferApproaches() { MTTransfer mtt = new MTTransfer(); mtt.FromPath = @"D:\txt_new"; mtt.DeleteFile = true; int res_transfer = mtt.TransferApproaches(); }
public void MTTransfer_TransferArrivalAPI() { MTTransfer mtt = new MTTransfer(service.Test); //mtt.DayRangeArrivalCars = 10; //mtt.ArrivalToRailWay = false; //mtt.FromPath = @"D:\xlm_new"; //mtt.DeleteFile = true; int res_transfer = mtt.TransferArrivalAPI("https://inform.metrans.com.ua", "Arcelor1", "12345678-", "/api/TrainNaturList"); }
public void MTTransfer_TransferArrival() { MTTransfer mtt = new MTTransfer(); mtt.DayRangeArrivalCars = 10; mtt.ArrivalToRailWay = false; mtt.FromPath = @"D:\xlm_new"; mtt.DeleteFile = true; int res_transfer = mtt.TransferArrival(); }
/// <summary> /// Поток переноса вагонов по прибытию /// </summary> private static void APITransferArrival() { service service = service.Metrans_APITransferArrival; DateTime dt_start = DateTime.Now; try { string url_wagons_tracking = @"https://inform.umtrans.com.ua"; string user_wagons_tracking = "Arcelor1"; string psw_wagons_tracking = "12345678-"; string api_wagons_tracking = @"/api/TrainNaturList"; bool arrivalToRailWay = true; int dayrangeArrivalCars = 10; // считать настройки try { // Прочтем подключение url_wagons_tracking = ConfigurationManager.AppSettings["WebApiMTURL"].ToString(); user_wagons_tracking = ConfigurationManager.AppSettings["WebApiMTUser"].ToString(); psw_wagons_tracking = ConfigurationManager.AppSettings["WebApiMTPSW"].ToString(); api_wagons_tracking = ConfigurationManager.AppSettings["WebApiMTArrivalApi"].ToString(); // перенос данных в прибытие arrivalToRailWay = bool.Parse(ConfigurationManager.AppSettings["ArrivalToRailWay"].ToString()); // Период для определения незакрытого состава и вагона dayrangeArrivalCars = int.Parse(ConfigurationManager.AppSettings["DayRangeArrivalCars"].ToString()); } catch (Exception ex) { ex.ExceptionLog(String.Format("Ошибка выполнения считывания настроек потока {0}, сервиса {1}", service.ToString(), servece_owner), servece_owner, eventID); } int res_transfer = 0; //lock (locker_xml_file) //{ MTTransfer mtt = new MTTransfer(service); mtt.DayRangeArrivalCars = dayrangeArrivalCars; mtt.ArrivalToRailWay = arrivalToRailWay; res_transfer = mtt.TransferArrivalAPI(url_wagons_tracking, user_wagons_tracking, psw_wagons_tracking, api_wagons_tracking); //} TimeSpan ts = DateTime.Now - dt_start; string mes_service_exec = String.Format("Поток {0} сервиса {1} - время выполнения: {2}:{3}:{4}({5}), код выполнения: res_transfer:{6}.", service.ToString(), servece_owner, ts.Hours, ts.Minutes, ts.Seconds, ts.Milliseconds, res_transfer); mes_service_exec.InformationLog(servece_owner, eventID); service.ServicesToLog(service.ToString() + " - выполнен.", dt_start, DateTime.Now, res_transfer); } catch (ThreadAbortException exc) { String.Format("Поток {0} сервиса {1} - прерван по событию ThreadAbortException={2}", service.ToString(), servece_owner, exc).WarningLog(servece_owner, eventID); } catch (Exception ex) { ex.ExceptionLog(String.Format("Ошибка выполнения цикла переноса, потока {0} сервис {1}", service.ToString(), servece_owner), servece_owner, eventID); service.ServicesToLog(service.ToString() + " - завершен с ошибкой.", dt_start, DateTime.Now, -1); } }
/// <summary> /// Поток переноса информации об вагонах по которым установленно слижение в MT и формирование циклограммы /// </summary> private static void TransferWT() { service service = service.Metrans_TransferWT; DateTime dt_start = DateTime.Now; try { DateTime datetime_start_new_tracking = new DateTime(2019, 01, 01, 0, 0, 0); string url_wagons_tracking = @"https://inform.umtrans.com.ua"; string user_wagons_tracking = "Arcelor1"; string psw_wagons_tracking = "12345678-"; string api_wagons_tracking = @"/api/WagonsTracking"; // считать настройки try { // Если нет перенесем настройки в БД datetime_start_new_tracking = DateTime.Parse(ConfigurationManager.AppSettings["DateTimeStartNewTracking"].ToString()); url_wagons_tracking = ConfigurationManager.AppSettings["WebApiMTURL"].ToString(); user_wagons_tracking = ConfigurationManager.AppSettings["WebApiMTUser"].ToString(); psw_wagons_tracking = ConfigurationManager.AppSettings["WebApiMTPSW"].ToString(); api_wagons_tracking = ConfigurationManager.AppSettings["WebApiMTApi"].ToString(); } catch (Exception ex) { ex.ExceptionLog(String.Format("Ошибка выполнения считывания настроек потока {0}, сервиса {1}", service.ToString(), servece_owner), servece_owner, eventID); } int res_transfer = 0; int res_transfer_motion_signals = 0; MTTransfer mtt = new MTTransfer(service); mtt.DateTimeStartNewTracking = datetime_start_new_tracking; mtt.URLWagonsTracking = url_wagons_tracking; mtt.UserWagonsTracking = user_wagons_tracking; mtt.PSWWagonsTracking = psw_wagons_tracking; mtt.APIWagonsTracking = api_wagons_tracking; res_transfer = mtt.TransferWagonsTracking(); // Перенос данных res_transfer_motion_signals = mtt.TransferWagonsMotionSignals(); // TODO: Добавить Формироание циклограмм TimeSpan ts = DateTime.Now - dt_start; string mes_service_exec = String.Format("Поток {0} сервиса {1} - время выполнения: {2}:{3}:{4}({5}), код выполнения: res_transfer:{6}, res_transfer_motion_signals:{7}.", service.ToString(), servece_owner, ts.Hours, ts.Minutes, ts.Seconds, ts.Milliseconds, res_transfer, res_transfer_motion_signals); mes_service_exec.InformationLog(servece_owner, eventID); service.ServicesToLog(service.ToString() + " - выполнен.", dt_start, DateTime.Now, res_transfer); } catch (ThreadAbortException exc) { String.Format("Поток {0} сервиса {1} - прерван по событию ThreadAbortException={2}", service.ToString(), servece_owner, exc).WarningLog(servece_owner, eventID); } catch (Exception ex) { ex.ExceptionLog(String.Format("Ошибка выполнения цикла переноса, потока {0} сервис {1}", service.ToString(), servece_owner), servece_owner, eventID); service.ServicesToLog(service.ToString() + " - завершен с ошибкой.", dt_start, DateTime.Now, -1); } }
/// <summary> /// Поток переноса вагонов по прибытию /// </summary> private static void TransferArrival() { service service = service.Metrans_TransferArrival; DateTime dt_start = DateTime.Now; try { bool arrivalToRailWay = true; string toTMPDirPath = @"C:\RailWay\temp_xml"; bool deleteFileMT = true; int dayrangeArrivalCars = 10; // считать настройки try { arrivalToRailWay = bool.Parse(ConfigurationManager.AppSettings["ArrivalToRailWay"].ToString()); // Путь к временной папки для записи файлов из host для дальнейшей обработки toTMPDirPath = ConfigurationManager.AppSettings["toTMPDirPathTransferArrival"].ToString(); // Признак удалять файлы после переноса deleteFileMT = bool.Parse(ConfigurationManager.AppSettings["DeleteFileTransferArrival"].ToString()); // Период для определения незакрытого состава и вагона dayrangeArrivalCars = int.Parse(ConfigurationManager.AppSettings["DayRangeArrivalCars"].ToString()); } catch (Exception ex) { ex.ExceptionLog(String.Format("Ошибка выполнения считывания настроек потока {0}, сервиса {1}", service.ToString(), servece_owner), servece_owner, eventID); } int res_transfer = 0; lock (locker_xml_file) { MTTransfer mtt = new MTTransfer(service); mtt.DayRangeArrivalCars = dayrangeArrivalCars; mtt.ArrivalToRailWay = arrivalToRailWay; mtt.FromPath = toTMPDirPath; mtt.DeleteFile = deleteFileMT; res_transfer = mtt.TransferArrival(); } TimeSpan ts = DateTime.Now - dt_start; string mes_service_exec = String.Format("Поток {0} сервиса {1} - время выполнения: {2}:{3}:{4}({5}), код выполнения: res_transfer:{6}.", service.ToString(), servece_owner, ts.Hours, ts.Minutes, ts.Seconds, ts.Milliseconds, res_transfer); mes_service_exec.InformationLog(servece_owner, eventID); service.ServicesToLog(service.ToString() + " - выполнен.", dt_start, DateTime.Now, res_transfer); } catch (ThreadAbortException exc) { String.Format("Поток {0} сервиса {1} - прерван по событию ThreadAbortException={2}", service.ToString(), servece_owner, exc).WarningLog(servece_owner, eventID); } catch (Exception ex) { ex.ExceptionLog(String.Format("Ошибка выполнения цикла переноса, потока {0} сервис {1}", service.ToString(), servece_owner), servece_owner, eventID); service.ServicesToLog(service.ToString() + " - завершен с ошибкой.", dt_start, DateTime.Now, -1); } }
/// <summary> /// Переписать в прибытие системы ИДС составы и вагоны старт с id_arrived /// </summary> public void MTTransfer_RewriteIDSArrivalSostav() { MTTransfer mtt = new MTTransfer(); long id_arrived_start = 3124; EFMT.Concrete.EFArrivalSostav ef_as = new EFMT.Concrete.EFArrivalSostav(new EFMT.Concrete.EFDbContext()); EFIDS.Concrete.EFArrivalSostav ef_ids_as = new EFIDS.Concrete.EFArrivalSostav(new EFIDS.Concrete.EFDbContext()); EFIDS.Concrete.EFArrivalCars ef_ids_ac = new EFIDS.Concrete.EFArrivalCars(new EFIDS.Concrete.EFDbContext()); List <EFMT.Entities.ArrivalSostav> list = ef_as.Context.Where(s => s.id_arrived >= id_arrived_start && s.close == null).OrderBy(c => c.id_arrived).ToList(); // Удалим сотавы и вагоны foreach (EFMT.Entities.ArrivalSostav mt_sost in list) { EFIDS.Entities.ArrivalSostav ids_st = ef_ids_as.Context.Where(s => s.id_sostav == mt_sost.id).FirstOrDefault(); if (ids_st != null) { List <EFIDS.Entities.ArrivalCars> list_ids_car = ef_ids_ac.Context.Where(c => c.id_arrival == ids_st.id).ToList(); List <long> list_id_car = list_ids_car.Select(c => c.id).ToList(); ef_ids_ac.Delete(list_id_car); int res_del_cars = ef_ids_ac.Save(); ef_ids_as.Delete(ids_st.id); int res_del_sost = ef_ids_as.Save(); Console.WriteLine("Удалил вагоны {0}, удалил состав {1}", res_del_cars, res_del_sost); } else { Console.WriteLine("Состава {0}, нет в системе ИДС", mt_sost.id); } } // Перезапишим составы и вагоны foreach (EFMT.Entities.ArrivalSostav mt_sost in list) { int res_rew = mtt.InsertIDSArrivalSostav(mt_sost.id); Console.WriteLine("Состав {0}, перезаписан в системе ИДС, результат {1}", mt_sost.id, res_rew); } }
public void MTTransfer_TransferWagonsMotionSignalsOfNum() { MTTransfer mtt = new MTTransfer(); int result = mtt.TransferWagonsMotionSignals(63664585); }
public void MTTransfer_TransferWagonsMotionSignals() { MTTransfer mtt = new MTTransfer(); mtt.TransferWagonsMotionSignals(); }