示例#1
0
        private void SaveNewAppointment(Event newAppointment)
        {
            eventsList.Add(newAppointment);
            TXTFile file = new TXTFile();

            file.SaveEventsToFile(eventsList);
        }
示例#2
0
        static void ManyTables()  //обработка одной таблицы
        {
            string workPath = ""; //рабочая папка (та, где лежат DOC файлы)

            Console.Clear();

            //открыли, прочитали DOC файлы
            DOCFile doc = new DOCFile(
                FileEventProcessor,
                FileEventProcessor);

            doc.ReadManyFiles(out workPath);

            if (doc.filePath == null)
            {
                return;
            }

            CalibrationTable[] CT = new CalibrationTable[0];

            for (int i = 0; i < doc.fileId.Length; i++)
            {
                CalibrationTable tempCT = new CalibrationTable(
                    doc.fileId[i],
                    CTEventProcessor,
                    CTEventProcessor,
                    CTEventProcessor,
                    CTEventProcessor,
                    CTEventProcessor,
                    CTEventProcessor,
                    CTEventProcessor,
                    CTEventProcessor);

                if (tempCT.ReadTable(doc.fileData[i]))
                {
                    tempCT.RepairTable(RepairVolumeInconcictensy);
                }

                if (tempCT.Table.Count == 0)
                {
                    continue;
                }

                Array.Resize(ref CT, CT.Length + 1);
                tempCT.CopyTo(ref CT[CT.Length - 1]);

                CT[CT.Length - 1].ChangeLevelBase(DefaultLevelBase);
            }

            TXTFile txt = new TXTFile(  //создали и записали TXT файлы
                FileEventProcessor,
                FileEventProcessor,
                FileEventProcessor,
                FileEventProcessor);

            txt.WriteManyFiles(CT, workPath, WriteValcomHeader);

            ManyTablesMenu(CT, workPath); //вызываем меню для таблиц
        }
示例#3
0
        public MainForm()
        {
            InitializeComponent();

            TXTFile file = new TXTFile();
            eventsList = file.LoadEventsFromFile();
            displayedList = new Calendar.Events();
            tagsList = GetTagList();
        }
示例#4
0
        public MainForm()
        {
            InitializeComponent();

            TXTFile file = new TXTFile();

            eventsList    = file.LoadEventsFromFile();
            displayedList = new Calendar.Events();
            tagsList      = GetTagList();
        }
示例#5
0
 public static void ExportEvents(string[] args)
 {
     TXTFile files = new TXTFile();
     Events eventsList = files.LoadEventsFromFile();
     eventsList.Sort();
     if (args.Length == 2)
     {
         ExportToHTMLFile(@args[1], eventsList);
     }
     else
     {
         IOConsole evTools = new IOConsole();
         string criteria = Utils.ParseFilteringCriteria(args[1]);
         Events eventsToExport = SimpleDateFiltering(eventsList, criteria, DateTime.Today.ToShortDateString());
         ExportToHTMLFile(@args[2], eventsToExport);
     }
 }
示例#6
0
        static void OneTable()  //обработка одной таблицы
        {
            Console.Clear();

            //открыли, прочитали DOC файл
            DOCFile doc = new DOCFile(
                FileEventProcessor,
                FileEventProcessor);

            doc.ReadOneFile();

            if (doc.filePath == null)
            {
                return;
            }

            CalibrationTable CT = new CalibrationTable( //создаем градуировочную таблицу
                doc.fileId[0],
                CTEventProcessor,
                CTEventProcessor,
                CTEventProcessor,
                CTEventProcessor,
                CTEventProcessor,
                CTEventProcessor,
                CTEventProcessor,
                CTEventProcessor);

            if (CT.ReadTable(doc.fileData[0]))
            {
                CT.RepairTable(RepairVolumeInconcictensy);
            }

            //зададим базу уровней
            CT.ChangeLevelBase(DefaultLevelBase);

            //создали, записали TXT файл
            TXTFile txt = new TXTFile(
                FileEventProcessor,
                FileEventProcessor,
                FileEventProcessor,
                FileEventProcessor);

            txt.WriteFile(CT, doc.filePath[0], WriteValcomHeader);

            OneTableMenu(CT); //вызываем меню для таблицы
        }
示例#7
0
        public static void DisplayEvents(string parameter)
        {
            TXTFile files = new TXTFile();
            Events eventsList = files.LoadEventsFromFile();
            IOConsole display = new IOConsole(eventsList);

            if (parameter == "all")
            {
                display.DisplayEventsToConsole();
            }
            else
            {
                string criteria = Utils.ParseFilteringCriteria(parameter);
                Events eventsToDisplay = SimpleDateFiltering(eventsList, criteria, DateTime.Today.ToShortDateString());
                IOConsole toDisplay = new IOConsole(eventsToDisplay);
                toDisplay.DisplayEventsToConsole();
            }
        }
示例#8
0
        public void GetWordsArrTest()
        {
            TXTFile file = new TXTFile("../../DictionaryHolder/testInput_1.txt");

            string[] actual = file.GetWordsArr();

            StreamReader sr = new StreamReader("../../DictionaryHolder/testOutput_1.txt", Encoding.Default);

            List <string> expected = new List <string>();
            string        line;

            while ((line = sr.ReadLine()) != null)
            {
                expected.Add(line);
            }

            string[] expectedArr;
            expectedArr = expected.Distinct().ToArray();

            Assert.IsTrue(actual.Length == expectedArr.Length);
        }
示例#9
0
        public static void SearchAndExportEvents(string field, string op, string[] val, string path)
        {
            TXTFile files = new TXTFile();
            Events eventsList = files.LoadEventsFromFile();
            Events filteredList = SearchEvents(eventsList, field, op, val);

            if (path != "")
            {
                ExportToHTMLFile(path, filteredList);
            }
        }
示例#10
0
 public static void ListAllTags(string sort)
 {
     TXTFile files = new TXTFile();
     Events eventsList = files.LoadEventsFromFile();
     TagsCounter tags= new TagsCounter(eventsList);
     switch (sort)
     {
         case "byCount":
             {
                 tags.SortTagsDescByCount();
                 break;
             }
         case "byName":
             {
                 tags.SortTagsAscByName();
                 break;
             }
     }
     Tag[] listTodispaly = tags.TagList.ToArray();
     new IOConsole().DisplayTagsAndCountersToConsole(listTodispaly);
 }
示例#11
0
        static void ManyTablesMenu(CalibrationTable[] CT, string path) //меню работы с несколькими таблицами
        {
            int MenuChoice = 0,                                        //выбранное доп. меню
                ItemChoice = 0;                                        //выбранный пункт  меню

            Menu.DoubleColor[] colorScheme = new Menu.DoubleColor[2];
            colorScheme[0] = new Menu.DoubleColor();
            colorScheme[1] = new Menu.DoubleColor(ConsoleColor.Yellow);

            Menu M = new Menu(
                new string[] { "Несколько градуировочных таблиц", "Опции (<Tab> для перехода)" },
                new string[][] { new string[] { }, new string[] { } },
                null,
                0,
                colorScheme);

            do
            {
                M.Items = new string[][]
                {
                    new string[]
                    {
                        "1. Выбрать таблицу для работы",
                        "2. Изменить везде базу уровней на " + ((DefaultLevelBase == LevelBase.Centimeters)?"мм":"см"),
                        "3. Проверить все таблицы",
                        "4. Исправить все таблицы",
                        "5. Сортировать все таблицы",
                        "6. Сохранить все таблицы",
                        "7. Выход"
                    },
                    new string[]
                    {
                        "Исправлять непоследовательность объемов: " + ((RepairVolumeInconcictensy)?"да":"нет")
                    }
                };
                M.MenuCicle(out MenuChoice, out ItemChoice);
                switch (MenuChoice)
                {
                case -1:        //отмена меню
                    break;

                case 0:
                    switch (ItemChoice)
                    {
                    case 0:             //1. Выбрать таблицу для работы
                        ChooseTableMenu(CT, path);
                        break;

                    case 1:             //2. Изменить во всех таблицах базу уровней
                        DefaultLevelBase = (DefaultLevelBase == LevelBase.Centimeters) ? (LevelBase.Millimeters) : (LevelBase.Centimeters);
                        for (int i = 0; i < CT.Length; i++)
                        {
                            CT[i].ChangeLevelBase(DefaultLevelBase);
                        }
                        break;

                    case 2:             //3. Проверить все таблицы
                        for (int i = 0; i < CT.Length; i++)
                        {
                            CT[i].CheckTable();
                        }
                        break;

                    case 3:             //4. Исправить все таблицы
                        for (int i = 0; i < CT.Length; i++)
                        {
                            CT[i].RepairTable(RepairVolumeInconcictensy);
                        }
                        break;

                    case 4:             //5. Сортировать все таблицы
                        for (int i = 0; i < CT.Length; i++)
                        {
                            CT[i].SortTable();
                        }
                        break;

                    case 5:             //6. Сохранить все таблицы
                        TXTFile tf = new TXTFile(
                            FileEventProcessor,
                            FileEventProcessor,
                            FileEventProcessor,
                            FileEventProcessor);
                        tf.WriteManyFiles(CT, path, WriteValcomHeader);
                        break;

                    case 6:             //2. Выход
                        ExitApp = true;
                        break;

                    default:            //ошибка меню
                        Console.Clear();
                        Console.ForegroundColor = ConsoleColor.Red;
                        Console.WriteLine("Ошибка в работе доп. 0 меню нескольких таблиц!!!\n\nНажмите любую клавишу для выхода...");
                        Console.ReadKey(true);
                        ExitApp = true;
                        break;
                    }
                    break;

                case 1:
                    Menu M4 = new Menu(
                        new string[] { "Исправлять непоследовательность объемов?" },
                        new string[][] { new string[] { "Да", "Нет" } },
                        null,
                        0,
                        new Menu.DoubleColor[] { new Menu.DoubleColor(ConsoleColor.Yellow) });
                    int MenuChoice4 = 0,
                        ItemChoice4 = 0;
                    M4.MenuCicle(out MenuChoice4, out ItemChoice4);
                    switch (MenuChoice4)
                    {
                    case 0:
                        switch (ItemChoice4)
                        {
                        case 0:             //Да
                            RepairVolumeInconcictensy = true;
                            break;

                        case 1:             //Нет
                            RepairVolumeInconcictensy = false;
                            break;
                        }
                        break;
                    }
                    break;

                default:
                    Console.Clear();
                    Console.ForegroundColor = ConsoleColor.Red;
                    Console.WriteLine("Ошибка в работе меню нескольких таблиц!!!\n\nНажмите любую клавишу для выхода...");
                    Console.ReadKey(true);
                    ExitApp = true;
                    break;
                }
            } while (!(MenuChoice == -1 || MenuChoice == 0 && ItemChoice == 6) && !ExitApp);
        }
示例#12
0
        static void OneTableMenu(CalibrationTable CT, string path = null, bool ExitIfTrue = true) //меню работы с одной таблицей
        {
            int MenuChoice = 0,                                                                   //выбранное доп. меню
                ItemChoice = 0;                                                                   //выбранный пункт  меню

            Menu.DoubleColor[] colorScheme = new Menu.DoubleColor[2];
            colorScheme[0] = new Menu.DoubleColor();
            colorScheme[1] = new Menu.DoubleColor(ConsoleColor.Yellow);

            Menu M = new Menu(
                new string[] { "Таблица: " + CT.CTid, "Опции (<Tab> для перехода)" },
                new string[][] { new string[] { }, new string[] { } },
                null,
                0,
                colorScheme);

            do
            {
                M.Items = new string[][] {
                    new string[]
                    {
                        "1. Отобразить таблицу",
                        "2. Изменить базу уровней на " + ((CT.levelBase == LevelBase.Centimeters)?"мм":"см"),
                        "3. Правка значений в таблице",
                        "4. Проверить таблицу",
                        "5. Исправить таблицу",
                        "6. Сортировать",
                        "7. Сохранить",
                        "8. " + ((ExitIfTrue)?"Выход":"Назад")
                    },
                    new string[]
                    {
                        "Исправлять непоследовательность объемов: " + ((RepairVolumeInconcictensy)?"да":"нет"),
                        "Записывать заголовок Valcom: " + ((WriteValcomHeader)?"да":"нет")
                    }
                };

                M.MenuCicle(out MenuChoice, out ItemChoice);
                switch (MenuChoice)
                {
                case -1:        //отмена меню
                    break;

                case 0:
                    switch (ItemChoice)
                    {
                    case 0:             //1. Отобразить таблицу
                        CT.ShowTable();
                        break;

                    case 1:             //2. Изменить базу уровней
                        switch (CT.levelBase)
                        {
                        case LevelBase.Millimeters:
                            CT.ChangeLevelBase(LevelBase.Centimeters);
                            break;

                        case LevelBase.Centimeters:
                            CT.ChangeLevelBase(LevelBase.Millimeters);
                            break;
                        }
                        break;

                    case 2:             //3. Правка значений в таблице
                        ChangeTableMenu(CT);
                        break;

                    case 3:             //3. Проверить таблицу
                        CT.CheckTable();
                        Console.BackgroundColor = ConsoleColor.Black;
                        Console.ForegroundColor = ConsoleColor.Yellow;
                        Console.WriteLine("\n\nДля продолжения нажмите любую клавишу...");
                        Console.ReadKey(true);
                        break;

                    case 4:             //4. Исправить таблицу
                        CT.RepairTable(RepairVolumeInconcictensy);
                        Console.BackgroundColor = ConsoleColor.Black;
                        Console.ForegroundColor = ConsoleColor.Yellow;
                        Console.WriteLine("\n\nДля продолжения нажмите любую клавишу...");
                        Console.ReadKey(true);
                        break;

                    case 5:             //5. Сортировать
                        CT.SortTable();
                        Console.BackgroundColor = ConsoleColor.Black;
                        Console.ForegroundColor = ConsoleColor.Yellow;
                        Console.WriteLine("\n\nДля продолжения нажмите любую клавишу...");
                        Console.ReadKey(true);
                        break;

                    case 6:             //6. Сохранить
                        TXTFile tf = new TXTFile(
                            FileEventProcessor,
                            FileEventProcessor,
                            FileEventProcessor,
                            FileEventProcessor);
                        tf.WriteFile(CT, path, WriteValcomHeader);
                        break;

                    case 7:             //7. Выход
                        ExitApp = ExitIfTrue;
                        break;

                    default:            //ошибка меню
                        Console.Clear();
                        Console.ForegroundColor = ConsoleColor.Red;
                        Console.WriteLine("Ошибка в работе доп. 0 меню одной таблицы!!!\n\nНажмите любую клавишу для выхода...");
                        Console.ReadKey(true);
                        ExitApp = true;
                        break;
                    }
                    break;

                case 1:
                    switch (ItemChoice)
                    {
                    case 0:
                        Menu M4 = new Menu(
                            new string[] { "Исправлять непоследовательность объемов?" },
                            new string[][] { new string[] { "Да", "Нет" } },
                            null,
                            0,
                            new Menu.DoubleColor[] { new Menu.DoubleColor(ConsoleColor.Yellow) });
                        int MenuChoice4 = 0,
                            ItemChoice4 = 0;
                        M4.MenuCicle(out MenuChoice4, out ItemChoice4);
                        switch (MenuChoice4)
                        {
                        case 0:
                            switch (ItemChoice4)
                            {
                            case 0:                 //Да
                                RepairVolumeInconcictensy = true;
                                break;

                            case 1:                 //Нет
                                RepairVolumeInconcictensy = false;
                                break;
                            }
                            break;
                        }
                        break;

                    case 1:
                        Menu M2 = new Menu(
                            new string[] { "Записывать в выходные файлы заголовок Valcom?" },
                            new string[][] { new string[] { "Да", "Нет" } },
                            null,
                            0,
                            new Menu.DoubleColor[] { new Menu.DoubleColor(ConsoleColor.Yellow) });
                        int MenuChoice2 = 0,
                            ItemChoice2 = 0;
                        int curItem2    = (WriteValcomHeader) ? 0 : 1;
                        M2.MenuCicle(out MenuChoice2, out ItemChoice2, 0, curItem2);
                        switch (MenuChoice2)
                        {
                        case 0:
                            switch (ItemChoice2)
                            {
                            case 0:                 //Да
                                WriteValcomHeader = true;
                                break;

                            case 1:                 //Нет
                                WriteValcomHeader = false;
                                break;
                            }
                            break;

                        default:
                            Console.Clear();
                            Console.ForegroundColor = ConsoleColor.Red;
                            Console.WriteLine("Ошибка в работе меню опций!!!\n\nНажмите любую клавишу для выхода...");
                            Console.ReadKey(true);
                            ExitApp = true;
                            break;
                        }
                        break;

                    default:
                        Console.Clear();
                        Console.ForegroundColor = ConsoleColor.Red;
                        Console.WriteLine("Ошибка в работе доп. 1 меню одной таблицы!!!\n\nНажмите любую клавишу для выхода...");
                        Console.ReadKey(true);
                        ExitApp = true;
                        break;
                    }
                    break;

                default:
                    Console.Clear();
                    Console.ForegroundColor = ConsoleColor.Red;
                    Console.WriteLine("Ошибка в работе меню одной таблицы!!!\n\nНажмите любую клавишу для выхода...");
                    Console.ReadKey(true);
                    ExitApp = true;
                    break;
                }
            } while (!(MenuChoice == -1 || MenuChoice == 0 && ItemChoice == 7) && !ExitApp);
        }
示例#13
0
 private void SaveNewAppointment(Event newAppointment)
 {
     eventsList.Add(newAppointment);
     TXTFile file = new TXTFile();
     file.SaveEventsToFile(eventsList);
 }