//добавляем данные в .dll файл public static void AppendData(Main main) { //инициализация данных string GS = main.tbGS.Text; string type = main.cbType.Text; string volume = main.tbVolume.Text; string cost = main.tbCost.Text; string consumption = main.tbConsumption.Text; string costLitr = null; string transit = null; if (GS == "" || GS == null || GS == Resources.Get(Resources.Names.textGS)) { GS = "Не указано"; } if (type == "Выберите тип используемого бензина") { MessageBox.Show("Вы не выбрали тип топлива", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Warning); } else if (!Exam.NumericExam(volume, "объем топлива", main.tbVolume.DataContext.ToString())) { ; } else if (!Exam.NumericExam(cost, "стоимость заправки", main.tbCost.DataContext.ToString())) { ; } else if (!Exam.NumericExam(consumption, "средний расход топлива", main.tbConsumption.DataContext.ToString())) { ; } else if (!Exam.NamedExam(GS, "наименование АЗС", main.tbGS.DataContext.ToString())) { ; } else { costLitr = Calculate.GetCostLitr(volume, cost); transit = Calculate.GetTransit(consumption, volume); //инициализируем массив данных string[] array = { GS.Trim(' '), type, Formate(volume), Formate(cost, 2), Formate(consumption), Formate(costLitr), Formate(transit) }; //запись данных WriteAndRead.WriteDll(main.Title, array); DataUpdate(main); ResetTextBoxes(main); MessageBox.Show("Данные успешно занесены в учет", "Сообщение", MessageBoxButton.OK, MessageBoxImage.Information); } }
//меняем имя учета public static void Renaming(string name, Main main) { if (Exam.NamedExam(name, "имя учёта", Resources.Get(Resources.Names.textForName))) { //поменяли имя .dll файла File.Move($"{Resources.Get(Resources.Names.Dir)}\\{main.Title}.dll", $"{Resources.Get(Resources.Names.Dir)}\\{name}.dll"); //поменяли имя в acountList.ini WriteAndRead.ChangeFdaPoint(main.Title, name, 0); //меняем заголовок окна Main main.Title = name; DataUpdate(main); MessageBox.Show($"Имя учета было изменено на \"{name}\"", "Сообщение", MessageBoxButton.OK, MessageBoxImage.Information); } }
//заведение нового учета public static void AppendNewAcc(TextBox textBox, ListBox listBox) { string name = textBox.Text; if (Exam.NamedExam(name, "имя учета", Resources.Get(Resources.Names.textForName))) { //инициализация пустого массива string[] array = { }; //создание, заполнение файла пустым массивом File.AppendAllLines($"{Resources.Get(Resources.Names.Dir)}\\{name}.dll", array); //добавляем учет в acountList.ini WriteAndRead.WriteInFda(name, 1); //заполняем listBox AccountsFill(listBox); //очищаем текстовой поле textBox.Text = null; MessageBox.Show($"Новый учет \"{name}\" успешно заведен", "Сообщение", MessageBoxButton.OK, MessageBoxImage.Information); } }
//сохроняет измененные данные public static void ToCorrectOfData(string name, Main main, Customize customize, int e) { //инициализация данных string[][] desposed = WriteAndRead.GetArrayDll(name); string GS = customize.tbGS.Text; string type = customize.cbType.Text; string volume = customize.tbVolume.Text; string cost = customize.tbCost.Text; string consumption = customize.tbConsumption.Text; string date = customize.dpChooiceDate.DataContext.ToString(); if (customize.dpChooiceDate.Text != DateTime.Parse(customize.dpChooiceDate.DataContext.ToString()).ToShortDateString()) { date = customize.dpChooiceDate.Text + " 12:30"; } string costLitr = null; string transit = null; if (GS == "" || GS == null || GS == Resources.Get(Resources.Names.textGS)) { GS = "Не указано"; } else if (!Exam.NumericValidation(volume)) { ; } else if (!Exam.NumericValidation(cost)) { ; } else if (!Exam.NumericValidation(consumption)) { ; } else if (!Exam.NamedExam(GS, "наименование АЗС", Resources.Get(Resources.Names.textGS))) { ; } else { customize.Close(); if ( GS != customize.tbGS.DataContext.ToString() || volume != customize.tbVolume.DataContext.ToString() || cost != customize.tbCost.DataContext.ToString() || consumption != customize.tbConsumption.DataContext.ToString() || type != customize.cbType.DataContext.ToString() || date != DateTime.Parse(customize.dpChooiceDate.DataContext.ToString()).ToShortDateString() + " 12:30" ) { costLitr = Calculate.GetCostLitr(volume, cost); transit = Calculate.GetTransit(consumption, volume); //инициализируем массив данных desposed[e] = new string[] { date, GS.Trim(' '), type, Formate(volume), Formate(cost, 2), Formate(consumption), Formate(costLitr), Formate(transit) }; //запись данных desposed = Calculate.DesposedSort(desposed); WriteAndRead.WriteDll(name, desposed); DataUpdate(main); MessageBox.Show("Данные успешно изменены", "Сообщение", MessageBoxButton.OK, MessageBoxImage.Information); } else { MessageBox.Show("Были сохранены исходные данные", "Сообщение", MessageBoxButton.OK, MessageBoxImage.Warning); } } customize.Close(); }