protected virtual void RaisedChoosed(Telecast epg, Channel ch) { if (Choosed != null) { Choosed(epg, ch); } }
private void FeelEpgForChannel(Channel channel, TreeNode parent) { var res = _proxy.Device.RecordsProvider.GetListOfEpg(channel.epg_id); if (res.Count == 0) { var curepg = new Telecast { name = "Весь эфир", StartTime = DateTime.Now, EndTime = DateTime.Today.AddDays(1).AddTicks(-1), epg_id = 0 }; TreeNode node = new TreeNode(String.Format("{0} - {1} {2}", curepg.StartTime.ToShortTimeString(), curepg.EndTime.ToShortTimeString(), curepg.name)) { Tag = curepg }; treeView1.Invoke(new MethodInvoker(() => parent.Nodes.Add(node))); } else { foreach (var curepg in res.Where(e => e.EndTime >= DateTime.Now)) { TreeNode node = new TreeNode(String.Format("{0} - {1} {2}", curepg.StartTime.ToShortTimeString(), curepg.EndTime.ToShortTimeString(), curepg.name)) { Tag = curepg }; parent.Nodes.Add(node); } } treeView1.Invoke(new MethodInvoker(parent.Toggle)); }
private void FeelEpgForChannel(Channel channel, TreeNode parent) { var res = _proxy.Device.RecordsProvider.GetListOfEpg(channel.epg_id); if (res.Count == 0) { var curepg = new Telecast { name = "Весь эфир", StartTime = DateTime.Now, EndTime = DateTime.Today.AddDays(1).AddTicks(-1), epg_id = 0 }; TreeNode node = new TreeNode(String.Format("{0} - {1} {2}", curepg.StartTime.ToShortTimeString(), curepg.EndTime.ToShortTimeString(), curepg.name)) {Tag = curepg}; treeView1.Invoke(new MethodInvoker(() => parent.Nodes.Add(node))); } else { foreach (var curepg in res.Where(e => e.EndTime >= DateTime.Now)) { TreeNode node = new TreeNode(String.Format("{0} - {1} {2}", curepg.StartTime.ToShortTimeString(), curepg.EndTime.ToShortTimeString(), curepg.name)) {Tag = curepg}; parent.Nodes.Add(node); } } treeView1.Invoke(new MethodInvoker(parent.Toggle)); }
protected virtual void RaisedChoosed(Telecast epg, Channel ch) { if (Choosed != null) { Choosed(epg, ch); } }
private void FrmOnChoosed(Telecast epg, Channel ch) { Records rec = new Records("http://127.0.0.1:" + _app.Device.Web.Port, _app.Device.Records.RecordsPath) { Name = string.Format("{0}", epg.name), Id = Guid.NewGuid().ToString(), Start = epg.StartTime, End = epg.EndTime, Status = RecordStatus.Init, TorrentId = ch.id }; _app.Device.Records.Add(rec); }
static async Task Main(string[] args) { Telecast[] table = new Telecast[50]; Log[] log = new Log[50]; int l = 0; DateTime time1 = DateTime.Now; DateTime time2 = DateTime.Now; TimeSpan interval = time2 - time1; string PathTextFile = @"C:\Users\alisa\source\repos\Lab6\lab.dat"; int i = 0; using (StreamReader readTextFile = new StreamReader(PathTextFile)) { while (readTextFile.Peek() > -1) { string telecast = await readTextFile.ReadLineAsync(); string key = await readTextFile.ReadLineAsync(); int top = Convert.ToInt32(await readTextFile.ReadLineAsync()); string typeText = await readTextFile.ReadLineAsync(); Type type; type = Type.А; if (typeText == "A" || typeText == "А") { type = Type.А; } else if (typeText == "И") { type = Type.И; } else if (typeText == "T" || typeText == "Т") { type = Type.Т; } Telecast newTelecast = new Telecast(); newTelecast.telecast = telecast; newTelecast.key = key; newTelecast.top = top; newTelecast.type = type; table[i] = newTelecast; i++; } } bool errorOption = true; do { Console.WriteLine("1 - Просмотр таблицы\n2 - Добавить запись\n3 - Удалить запись\n4 - Обновить запись\n5 - Поиск записей\n6 - Просмотреть лог\n7 - Выход"); int option = int.Parse(Console.ReadLine()); switch (option) { case 1: for (int k = 0; k < i; k++) { table[k].Print(); } break; case 2: Console.WriteLine("Введите название передачи"); string telecast = Console.ReadLine(); Console.WriteLine("Введите имя ведущего"); string key = Console.ReadLine(); bool errorTop = false; int top = 0; do { Console.WriteLine("Введите рейтинг"); try { top = int.Parse(Console.ReadLine()); errorTop = false; } catch { Console.WriteLine("Введите верный рейтинг"); errorTop = true; } }while (errorTop); Console.WriteLine("Введите тип передачи(И-Игровая, А - Аналитическая, Т - Ток-шоу)"); bool errorType = false; Type type = Type.А; do { string s_type = Console.ReadLine(); if (s_type == "И") { type = Type.И; errorType = false; } else if (s_type == "Т") { type = Type.Т; errorType = false; } else if (s_type == "А") { type = Type.А; errorType = false; } else { Console.WriteLine("Введите верный тип : А или И или Т"); errorType = true; } }while (errorType); Telecast newTelecast = new Telecast(); newTelecast.telecast = telecast; newTelecast.key = key; newTelecast.top = top; newTelecast.type = type; table[i] = newTelecast; i++; Log ADD = new Log(); ADD.time = DateTime.Now; ADD.operation = "Добавлена запись"; ADD.name = telecast; log[l] = ADD; l++; time1 = DateTime.Now; TimeSpan interval2 = time1 - time2; if (interval < interval2) { interval = interval2; } time2 = ADD.time; break; case 3: Console.WriteLine("Введите номер записи, которую нужно удалить"); bool errorDelete = false; do { try { int iForDelete = int.Parse(Console.ReadLine()); if (iForDelete < table.Length && iForDelete > 0) { Log DELETE = new Log(); DELETE.time = DateTime.Now; DELETE.operation = "Запись удалена"; DELETE.name = table[iForDelete - 1].telecast; log[l] = DELETE; l++; for (int k = iForDelete - 1; k < table.Length - 1; k++) { table[k] = table[k + 1]; } i--; interval2 = time1 - time2; if (interval < interval2) { interval = interval2; } time2 = DELETE.time; errorDelete = false; } else { Console.WriteLine("Введите верный номер строки"); errorDelete = true; } } catch { Console.WriteLine("Введите верный номер строки"); errorDelete = true; } }while (errorDelete); break; case 4: Console.WriteLine("Введите номер строки для обновления"); bool errorEdit = false; int iForEdit = 0; do { try { iForEdit = int.Parse(Console.ReadLine()); if (iForEdit < table.Length && iForEdit > 0) { errorEdit = false; } else { Console.WriteLine("Введите верный номер строки"); errorEdit = true; } } catch { Console.WriteLine("Введите верный номер строки"); errorEdit = true; } }while (errorEdit); Console.WriteLine("Введите название передачи"); string oldTelecast = Console.ReadLine(); Console.WriteLine("Введите имя ведущего"); string oldKey = Console.ReadLine(); int oldTop = 0; do { Console.WriteLine("Введите рейтинг"); try { oldTop = int.Parse(Console.ReadLine()); errorTop = false; } catch { Console.WriteLine("Введите верный рейтинг"); errorTop = true; } }while (errorTop); Console.WriteLine("Введите тип передачи(И-Игровая, А - Аналитическая, Т - Ток-шоу)"); errorType = false; Type oldType = Type.А; do { string s_type = Console.ReadLine(); if (s_type == "И") { oldType = Type.И; errorType = false; } else if (s_type == "Т") { oldType = Type.Т; errorType = false; } else if (s_type == "А") { oldType = Type.А; errorType = false; } else { Console.WriteLine("Введите верный тип : А или И или Т"); errorType = true; } }while (errorType); Telecast EditTelecast = new Telecast(); EditTelecast.telecast = oldTelecast; EditTelecast.key = oldKey; EditTelecast.top = oldTop; EditTelecast.type = oldType; table[iForEdit - 1] = EditTelecast; Log UPDATE = new Log(); UPDATE.time = DateTime.Now; UPDATE.operation = "Измненена запись"; UPDATE.name = oldTelecast; log[l] = UPDATE; l++; time1 = UPDATE.time; interval2 = time1 - time2; if (interval < interval2) { interval = interval2; } time2 = UPDATE.time; break; case 5: Console.WriteLine("Выберите пункт:"); int iOfChoise = 0; bool errorChoise = false; Console.WriteLine("1 - Вывести игровые передачи \n2 - Вывести Аналитические передачи \n3 - Вывести ток-шоу"); do { try { iOfChoise = int.Parse(Console.ReadLine()); if (iOfChoise == 1) { for (int t = 0; t < i; t++) { if (table[t].type == Type.И) { table[t].Print(); } } errorChoise = false; } else if (iOfChoise == 2) { for (int t = 0; t < i; t++) { if (table[t].type == Type.А) { table[t].Print(); } } errorChoise = false; } else if (iOfChoise == 3) { for (int t = 0; t < i; t++) { if (table[t].type == Type.Т) { table[t].Print(); } } errorChoise = false; } else { errorChoise = true; } } catch { Console.WriteLine("Введите верный пункт"); errorChoise = true; } }while (errorChoise); break; case 6: for (int k = 0; k < l; k++) { log[k].Print(); } Console.WriteLine(); Console.WriteLine("{0} - Самый долгий период бездействия пользователя", interval); break; case 7: errorOption = false; using (StreamWriter sw = new StreamWriter(PathTextFile, false)) { for (int r = 0; r < i; r++) { await sw.WriteLineAsync(table[r].telecast + "\n" + table[r].key + "\n" + table[r].top + "\n" + table[r].type); } sw.Close(); } break; default: Console.WriteLine("Введите верную операцию"); errorOption = true; break; } }while (errorOption); }
private void FrmOnChoosed(Telecast epg, Channel ch) { Records rec = new Records("http://127.0.0.1:" + _app.Device.Web.Port, _app.Device.Records.RecordsPath) { Name = string.Format("{0}", epg.name), Id = Guid.NewGuid().ToString(), Start = epg.StartTime, End = epg.EndTime, Status = RecordStatus.Init, TorrentId = ch.id }; _app.Device.Records.Add(rec); }