/// <summary> /// Записує об'єкт у текстовий файл /// і виводить повідомлення про стан процесу /// </summary> private void WriteTextFile() { if (model.Length > 0) { try { model.WriteToTextFile(StringConstants.DefaultTextFileName); Console.WriteLine(StringConstants.WriteAccept + StringConstants.DefaultTextFileName); Console.ReadKey(); } catch (IOException) { ReadFromConsole.WriteError(StringConstants.FileIOError); } catch (UnauthorizedAccessException) { ReadFromConsole.WriteError(StringConstants.AccessException); } } else { ReadFromConsole.WriteError(StringConstants.EmptyList); } }
/// <summary> /// Зчитує список операцій з бінарного файлу /// і виводить повідомлення про стан процесу /// </summary> private void ReadFromBinaryFile() { List <Sale> read; try { read = Balance.ReadFromBinaryFile(StringConstants.DefaultBinaryFileName); int count = model.Length; foreach (Sale element in read) { model.Add(element); } Console.WriteLine(StringConstants.ReadAccept + StringConstants.DefaultBinaryFileName); PrintSimilarsCount(count, read.Count); PrintTableModel(model); } catch (FileNotFoundException) { ReadFromConsole.WriteError(StringConstants.FileNotFound); } catch (IOException) { ReadFromConsole.WriteError(StringConstants.FileIOError); } }
private void SearchByPrice() { Console.Write(StringConstants.GoodsPrice); Balance searched = model.Search(model.CompareByPrice, ReadFromConsole.ReadDouble(StringConstants.PositiveNumRegex)); PrintResults(searched); }
/// <summary> /// Забезпечує безпечне ввдееня даних операції продажу користувачем /// </summary> /// <returns>Ініціалзований користувацькими даними об'єкт</returns> public Sale Input() { Seller seller = InputSeller(); Date saleDate = InputDate(StringConstants.DaySell, StringConstants.MonthSell); Goods goods = InputGoods(); Console.Write(StringConstants.Amount); double amount = ReadFromConsole.ReadDouble(StringConstants.PositiveNumRegex); return(new Sale(seller, goods, saleDate, amount)); }
private void SearchByName() { Console.Write(StringConstants.GoodsName); Balance searched = null; try { searched = (model.Search(model.CompareByName, ReadFromConsole.ReadStringAndReaction( StringConstants.GoodsNameRegex, StringConstants.OnlyCharactersAndNumbersError, RegexOptions.IgnoreCase))); } finally { PrintResults(searched); } }
/// <summary> /// Забезпечує безпечне введеня даних продавця користувачем /// </summary> /// <returns>ініціалізований об'єкт введеними користувачем значеннями</returns> public Seller InputSeller() { Date recruited = InputDate(StringConstants.SellerEmployeDay, StringConstants.SellerEmployeMonth); Console.Write(StringConstants.SellerName); string name = ReadFromConsole.ReadStringAndReaction( StringConstants.NameSurnameRegex, StringConstants.OnlyCharactersError, RegexOptions.IgnoreCase); Console.Write(StringConstants.SellerSurname); string surname = ReadFromConsole.ReadStringAndReaction( StringConstants.NameSurnameRegex, StringConstants.OnlyCharactersError, RegexOptions.IgnoreCase); return(new Seller(name, surname, recruited)); }
/// <summary> /// Забезпечує безпечне введення даних товару користувачем /// </summary> /// <returns>Ініціалізований користувачем об'єкт</returns> public Goods InputGoods() { Date receiving = InputDate(StringConstants.GoodsReceiptDay, StringConstants.GoodsReceiptMonth); Console.Write(StringConstants.GoodsName); string name = ReadFromConsole.ReadStringAndReaction( StringConstants.GoodsNameRegex, StringConstants.OnlyCharactersAndNumbersError, RegexOptions.IgnoreCase); Console.Write(StringConstants.GoodsPrice); double price = ReadFromConsole.ReadDouble(StringConstants.PositiveNumRegex); Console.Write(StringConstants.GoodsType); GoodsType type = UpDownChoice(); return(new Goods(name, price, receiving, type)); }