Exemplo n.º 1
0
        public string ToString(string format)
        {
            string timeStart = TimeStart.ToString(format);
            string timeStep  = TimeStep.ToString(format);

            return(GetType().Name + $"{{{timeStart}, {timeStep}, {Count}}}");
        }
        public override string ToString()
        {
            var result = new Dictionary <string, string>();

            result.Add("time_sched_name", Name);
            result.Add("day_type", Days == AccessDays.All ? "1" : "0");

            if (Days != AccessDays.All)
            {
                if (Days.HasFlag(AccessDays.Monday))
                {
                    result.Add("Mon_select", "on");
                }
                if (Days.HasFlag(AccessDays.Tuesday))
                {
                    result.Add("Tue_select", "on");
                }
                if (Days.HasFlag(AccessDays.Wednesday))
                {
                    result.Add("Wed_select", "on");
                }
                if (Days.HasFlag(AccessDays.Thursday))
                {
                    result.Add("Thu_select", "on");
                }
                if (Days.HasFlag(AccessDays.Friday))
                {
                    result.Add("Fri_select", "on");
                }
                if (Days.HasFlag(AccessDays.Saturday))
                {
                    result.Add("Sat_select", "on");
                }
                if (Days.HasFlag(AccessDays.Sunday))
                {
                    result.Add("Sun_select", "on");
                }
            }

            if (AllHours)
            {
                result.Add("all_hours", "on");
            }
            else
            {
                result.Add("time_sched_start_time", TimeStart.ToString("hhmm"));
                result.Add("time_sched_end_time", TimeEnd.ToString("hhmm"));
            }

            result.Add("Changed", "0");
            result.Add("SelIndex", "0");
            result.Add("fromAdd", "0");
            result.Add("Page", "1");
            result.Add("Save", "Save");

            return(string.Join("&", result.Select(x => x.Key + "=" + x.Value)));
        }
Exemplo n.º 3
0
            public async Task <bool> RecordAlive()
            {
                await Master._redis.HashSetAsync(RedisKeyAlive,
                                                 new[] {
                    new HashEntry("conf_master", Master.IsMaster),
                    new HashEntry("running_as_master", Master.RunningAsMaster),
                    new HashEntry("enabled", Master.Enabled),
                    new HashEntry("round", CurrRound),
                    new HashEntry("server", ServerInfo.IPAggregateString),
                    new HashEntry("time_start", TimeStart.ToString()),
                    new HashEntry("time_triggered", TimeStart.ToString())
                });

                return(await Master._redis.KeyExpireAsync(RedisKeyAlive, Master.Interval + TimeSpan.FromSeconds(1)));
            }
Exemplo n.º 4
0
        private void FillElectronicNotificatorForm()
        {
            var    list    = ElectricNotificators.Split(new[] { '\r', '\n' });
            string ECHZone = "";
            int    IndexOf;
            var    tmp = "";

            string   TimeRange          = DateTime.Today.ToString();
            DateTime DateInaccssibility = DateTime.Today.AddDays(1);
            bool     DateIsChange       = false;

            DateTime      TimeStart;
            DateTime      TimeEnd;
            List <string> Stations = new List <string>();

            foreach (string tmpstr in list)
            {
                if (tmpstr != "")
                {
                    /// Удаляю пунктуацию в конце строки
                    Regex regex = new Regex(@"\W");
                    tmp = tmpstr;
                    for (int i = tmp.Length - 1; i >= 0; i--)
                    {
                        if (!(regex.Match(tmp[i].ToString()).Success))
                        {
                            tmp = tmp.Substring(0, i + 1).ToString();
                            i   = -1;
                        }
                    }
                    /// Дата начала простоя
                    regex = new Regex(@"\d\d\.\d\d\.\d\d");
                    if (regex.Match(tmp).Success)
                    {
                        DateInaccssibility = Convert.ToDateTime((tmp.Split(' ').AsEnumerable().Where(obj => regex.Match(obj).Success)).First());
                        DateIsChange       = true;
                    }
                    if (tmpstr == list[list.Length - 1] && !DateIsChange)
                    {
                        MessageBox.Show("Отсутсвтует дата простоя: " + Environment.NewLine + "Будет -> " + DateInaccssibility.ToString("dd.MM.yy"));
                    }

                    DateTime DateInaccssibilityEnd = DateInaccssibility.AddDays(1);

                    textBox_StartActive.Text = DateInaccssibility.ToString("dd'/'MM'/'yy HH:mm:ss");
                    textBox_EndActive.Text   = DateInaccssibility.AddDays(1).ToString("dd'/'MM'/'yy HH:mm:ss");


                    /// ЭЧ зона
                    if (tmp.Contains("ЭЧ-"))
                    {
                        IndexOf = tmp.IndexOf("ЭЧ-");
                        ECHZone = tmp.Substring(IndexOf, 4);
                    }

                    regex = new Regex(@"\A-");
                    if (regex.Match(tmp.Replace(" ", "").Replace("\t", "")).Success)
                    {
                        if (tmp.Contains("ё"))
                        {
                            tmp = tmp.Replace("ё", "е");
                        }

                        regex = new Regex(@"\sдо\s");
                        if (regex.Match(tmp).Success)
                        {
                            IndexOf = tmp.IndexOf(" до ");
                            tmp     = tmp.Substring(0, IndexOf) + "-" + tmp.Substring(IndexOf + 4, tmp.Length - IndexOf - 4);
                        }

                        try
                        {
                            string       line;
                            StreamReader sr = new StreamReader(".\\Glossary.txt", Encoding.Default);
                            while ((line = sr.ReadLine()) != null)
                            {
                                var Glossary = line.Replace("-", " ");
                                if (tmp.Contains(Glossary))
                                {
                                    //MessageBox.Show(tmp);
                                    regex = new Regex(@"\d:\d\d-\d");
                                    if (regex.Match(tmp).Success)
                                    {
                                        TimeRange = (tmp.Split(' ', '.', ',').AsEnumerable().Where(obj => regex.Match(obj).Success)).Last();
                                        TimeStart = DateInaccssibility + TimeSpan.Parse(TimeRange.Split('-')[0]) + TimeSpan.Parse("04:00");
                                        TimeEnd   = DateInaccssibility + TimeSpan.Parse(TimeRange.Split('-')[TimeRange.Split('-').Length - 1]) + TimeSpan.Parse("04:00");
                                    }
                                    else
                                    {
                                        TimeStart = DateInaccssibility + TimeSpan.Parse("08:00");
                                        TimeEnd   = DateInaccssibility + TimeSpan.Parse("17:00");
                                    }

                                    if (TimeStart > TimeEnd)
                                    {
                                        TimeEnd = TimeEnd.AddDays(1);
                                    }

                                    if (Convert.ToDateTime(textBox_EndActive.Text) < TimeEnd)
                                    {
                                        textBox_EndActive.Text = TimeEnd.ToString("dd'/'MM'/'yy HH:mm:ss");
                                    }

                                    dataGridView_Inaccessibility.Rows.Add(TimeStart.ToString("dd'/'MM'/'yy HH:mm:ss"),
                                                                          TimeEnd.ToString("dd'/'MM'/'yy HH:mm:ss"),
                                                                          "*" + Glossary.Replace(" ", "") + "*КРАСН");

                                    Stations.Add(Glossary);
                                }
                            }
                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show(ex.Message);
                        }
                    }
                }
            }

            textBox_Description.Text = "Плановые работы " + ECHZone + " cо снятием напряжения на "
                                       + DateInaccssibility.ToString("dd.MM.yy") + ":" + Environment.NewLine;

            if (Stations.Count > 0)
            {
                var result = from obj in Stations.AsEnumerable()
                             group obj by obj into grp
                             select new
                {
                    FilterObject = grp.Key,
                    MemberCount  = grp.Count()
                };
                foreach (var item in result)
                {
                    textBox_Description.Text += item.FilterObject + ", ";
                }
            }
        }
 public override string ToString()
 {
     return(TypeExcursion + " " + TimeStart.ToString());
 }