From 2c0f5dee6378b882a983441ba83c12ea34979ad7 Mon Sep 17 00:00:00 2001 From: Yunusov_Niyaz Date: Thu, 14 Mar 2024 18:26:11 +0400 Subject: [PATCH] Revert --- .../CarRepairShop/FormMain.Designer.cs | 20 +- CarRepairShop/CarRepairShop/FormMain.cs | 16 -- .../CarRepairShop/FormShop.Designer.cs | 203 ------------------ CarRepairShop/CarRepairShop/FormShop.cs | 114 ---------- CarRepairShop/CarRepairShop/FormShop.resx | 120 ----------- .../CarRepairShop/FormShops.Designer.cs | 126 ----------- CarRepairShop/CarRepairShop/FormShops.cs | 118 ---------- CarRepairShop/CarRepairShop/FormShops.resx | 120 ----------- .../CarRepairShop/FormSupply.Designer.cs | 150 ------------- CarRepairShop/CarRepairShop/FormSupply.cs | 142 ------------ CarRepairShop/CarRepairShop/FormSupply.resx | 120 ----------- CarRepairShop/CarRepairShop/Program.cs | 5 - .../CarRepairShopBusinessLogic/ShopLogic.cs | 166 -------------- .../BindingModels/ShopBindingModel.cs | 14 -- .../BusinessLogicsContracts/IShopLogic.cs | 17 -- .../SearchModels/ShopSearchModel.cs | 14 -- .../StoragesContracts/IShopStorage.cs | 17 -- .../ViewModels/ShopViewModel.cs | 18 -- .../CarRepairShopDataModels/IShopModel.cs | 12 -- .../DataListSingleton.cs | 2 - .../Implements/ShopStorage.cs | 104 --------- .../CarRepairShopListImplement/Models/Shop.cs | 51 ----- 22 files changed, 1 insertion(+), 1668 deletions(-) delete mode 100644 CarRepairShop/CarRepairShop/FormShop.Designer.cs delete mode 100644 CarRepairShop/CarRepairShop/FormShop.cs delete mode 100644 CarRepairShop/CarRepairShop/FormShop.resx delete mode 100644 CarRepairShop/CarRepairShop/FormShops.Designer.cs delete mode 100644 CarRepairShop/CarRepairShop/FormShops.cs delete mode 100644 CarRepairShop/CarRepairShop/FormShops.resx delete mode 100644 CarRepairShop/CarRepairShop/FormSupply.Designer.cs delete mode 100644 CarRepairShop/CarRepairShop/FormSupply.cs delete mode 100644 CarRepairShop/CarRepairShop/FormSupply.resx delete mode 100644 CarRepairShop/CarRepairShopBusinessLogic/ShopLogic.cs delete mode 100644 CarRepairShop/CarRepairShopContracts/BindingModels/ShopBindingModel.cs delete mode 100644 CarRepairShop/CarRepairShopContracts/BusinessLogicsContracts/IShopLogic.cs delete mode 100644 CarRepairShop/CarRepairShopContracts/SearchModels/ShopSearchModel.cs delete mode 100644 CarRepairShop/CarRepairShopContracts/StoragesContracts/IShopStorage.cs delete mode 100644 CarRepairShop/CarRepairShopContracts/ViewModels/ShopViewModel.cs delete mode 100644 CarRepairShop/CarRepairShopDataModels/IShopModel.cs delete mode 100644 CarRepairShop/CarRepairShopListImplement/Implements/ShopStorage.cs delete mode 100644 CarRepairShop/CarRepairShopListImplement/Models/Shop.cs diff --git a/CarRepairShop/CarRepairShop/FormMain.Designer.cs b/CarRepairShop/CarRepairShop/FormMain.Designer.cs index fd31f01..eb2ee1b 100644 --- a/CarRepairShop/CarRepairShop/FormMain.Designer.cs +++ b/CarRepairShop/CarRepairShop/FormMain.Designer.cs @@ -32,8 +32,6 @@ справочникиToolStripMenuItem = new ToolStripMenuItem(); компонентыToolStripMenuItem = new ToolStripMenuItem(); ремонтToolStripMenuItem = new ToolStripMenuItem(); - ShopsToolStripMenuItem = new ToolStripMenuItem(); - SupplyToolStripMenuItem = new ToolStripMenuItem(); dataGridView = new DataGridView(); buttonCreateOrder = new Button(); buttonTakeOrderInWork = new Button(); @@ -56,7 +54,7 @@ // // справочникиToolStripMenuItem // - справочникиToolStripMenuItem.DropDownItems.AddRange(new ToolStripItem[] { компонентыToolStripMenuItem, ремонтToolStripMenuItem, ShopsToolStripMenuItem, SupplyToolStripMenuItem }); + справочникиToolStripMenuItem.DropDownItems.AddRange(new ToolStripItem[] { компонентыToolStripMenuItem, ремонтToolStripMenuItem }); справочникиToolStripMenuItem.Name = "справочникиToolStripMenuItem"; справочникиToolStripMenuItem.Size = new Size(117, 24); справочникиToolStripMenuItem.Text = "Справочники"; @@ -75,20 +73,6 @@ ремонтToolStripMenuItem.Text = "Ремонт"; ремонтToolStripMenuItem.Click += RepairToolStripMenuItem_Click; // - // ShopsToolStripMenuItem - // - ShopsToolStripMenuItem.Name = "ShopsToolStripMenuItem"; - ShopsToolStripMenuItem.Size = new Size(182, 26); - ShopsToolStripMenuItem.Text = "Магазины"; - ShopsToolStripMenuItem.Click += ShopsToolStripMenuItem_Click; - // - // SupplyToolStripMenuItem - // - SupplyToolStripMenuItem.Name = "SupplyToolStripMenuItem"; - SupplyToolStripMenuItem.Size = new Size(182, 26); - SupplyToolStripMenuItem.Text = "Поставки"; - SupplyToolStripMenuItem.Click += SupplyToolStripMenuItem_Click; - // // dataGridView // dataGridView.AllowUserToAddRows = false; @@ -187,7 +171,5 @@ private Button buttonOrderReady; private Button buttonIssuedOrder; private Button buttonRefresh; - private ToolStripMenuItem ShopsToolStripMenuItem; - private ToolStripMenuItem SupplyToolStripMenuItem; } } \ No newline at end of file diff --git a/CarRepairShop/CarRepairShop/FormMain.cs b/CarRepairShop/CarRepairShop/FormMain.cs index 0aab82e..893ec0f 100644 --- a/CarRepairShop/CarRepairShop/FormMain.cs +++ b/CarRepairShop/CarRepairShop/FormMain.cs @@ -156,21 +156,5 @@ namespace CarRepairShop { LoadData(); } - private void ShopsToolStripMenuItem_Click(object sender, EventArgs e) - { - var service = Program.ServiceProvider?.GetService(typeof(FormShops)); - if (service is FormShops form) - { - form.ShowDialog(); - } - } - private void SupplyToolStripMenuItem_Click(object sender, EventArgs e) - { - var service = Program.ServiceProvider?.GetService(typeof(FormSupply)); - if (service is FormSupply form) - { - form.ShowDialog(); - } - } } } diff --git a/CarRepairShop/CarRepairShop/FormShop.Designer.cs b/CarRepairShop/CarRepairShop/FormShop.Designer.cs deleted file mode 100644 index c45f18f..0000000 --- a/CarRepairShop/CarRepairShop/FormShop.Designer.cs +++ /dev/null @@ -1,203 +0,0 @@ -namespace CarRepairShop -{ - partial class FormShop - { - /// - /// Required designer variable. - /// - private System.ComponentModel.IContainer components = null; - - /// - /// Clean up any resources being used. - /// - /// true if managed resources should be disposed; otherwise, false. - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Windows Form Designer generated code - - /// - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// - private void InitializeComponent() - { - dateTimePicker = new DateTimePicker(); - textBoxName = new TextBox(); - textBoxAdress = new TextBox(); - labelName = new Label(); - labelAdress = new Label(); - labelDate = new Label(); - buttonSave = new Button(); - buttonCancel = new Button(); - dataGridView = new DataGridView(); - ColumnId = new DataGridViewTextBoxColumn(); - ShopName = new DataGridViewTextBoxColumn(); - ColumnCost = new DataGridViewTextBoxColumn(); - ColumnCount = new DataGridViewTextBoxColumn(); - ((System.ComponentModel.ISupportInitialize)dataGridView).BeginInit(); - SuspendLayout(); - // - // dateTimePicker - // - dateTimePicker.Location = new Point(97, 93); - dateTimePicker.Margin = new Padding(3, 4, 3, 4); - dateTimePicker.Name = "dateTimePicker"; - dateTimePicker.Size = new Size(363, 27); - dateTimePicker.TabIndex = 0; - // - // textBoxName - // - textBoxName.Location = new Point(97, 16); - textBoxName.Margin = new Padding(3, 4, 3, 4); - textBoxName.Name = "textBoxName"; - textBoxName.Size = new Size(363, 27); - textBoxName.TabIndex = 1; - // - // textBoxAdress - // - textBoxAdress.Location = new Point(97, 55); - textBoxAdress.Margin = new Padding(3, 4, 3, 4); - textBoxAdress.Name = "textBoxAdress"; - textBoxAdress.Size = new Size(363, 27); - textBoxAdress.TabIndex = 2; - // - // labelName - // - labelName.AutoSize = true; - labelName.Location = new Point(14, 20); - labelName.Name = "labelName"; - labelName.Size = new Size(77, 20); - labelName.TabIndex = 3; - labelName.Text = "Название"; - // - // labelAdress - // - labelAdress.AutoSize = true; - labelAdress.Location = new Point(14, 59); - labelAdress.Name = "labelAdress"; - labelAdress.Size = new Size(51, 20); - labelAdress.TabIndex = 4; - labelAdress.Text = "Адрес"; - // - // labelDate - // - labelDate.AutoSize = true; - labelDate.Location = new Point(14, 101); - labelDate.Name = "labelDate"; - labelDate.Size = new Size(41, 20); - labelDate.TabIndex = 5; - labelDate.Text = "Дата"; - // - // buttonSave - // - buttonSave.Location = new Point(277, 340); - buttonSave.Margin = new Padding(3, 4, 3, 4); - buttonSave.Name = "buttonSave"; - buttonSave.Size = new Size(91, 31); - buttonSave.TabIndex = 6; - buttonSave.Text = "Сохранить"; - buttonSave.UseVisualStyleBackColor = true; - buttonSave.Click += SaveButton_Click; - // - // buttonCancel - // - buttonCancel.Location = new Point(375, 340); - buttonCancel.Margin = new Padding(3, 4, 3, 4); - buttonCancel.Name = "buttonCancel"; - buttonCancel.Size = new Size(86, 31); - buttonCancel.TabIndex = 7; - buttonCancel.Text = "Отмена"; - buttonCancel.UseVisualStyleBackColor = true; - buttonCancel.Click += CancelButton_Click; - // - // dataGridView - // - dataGridView.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize; - dataGridView.Columns.AddRange(new DataGridViewColumn[] { ColumnId, ShopName, ColumnCost, ColumnCount }); - dataGridView.Location = new Point(14, 132); - dataGridView.Margin = new Padding(3, 4, 3, 4); - dataGridView.Name = "dataGridView"; - dataGridView.RowHeadersWidth = 51; - dataGridView.Size = new Size(447, 200); - dataGridView.TabIndex = 8; - // - // ColumnId - // - ColumnId.HeaderText = "Идентификатор"; - ColumnId.MinimumWidth = 6; - ColumnId.Name = "ColumnId"; - ColumnId.Visible = false; - ColumnId.Width = 125; - // - // ShopName - // - ShopName.HeaderText = "Название"; - ShopName.MinimumWidth = 6; - ShopName.Name = "ShopName"; - ShopName.ReadOnly = true; - ShopName.Width = 150; - // - // ColumnCost - // - ColumnCost.HeaderText = "Цена"; - ColumnCost.MinimumWidth = 6; - ColumnCost.Name = "ColumnCost"; - ColumnCost.ReadOnly = true; - ColumnCost.Width = 125; - // - // ColumnCount - // - ColumnCount.HeaderText = "Количество"; - ColumnCount.MinimumWidth = 6; - ColumnCount.Name = "ColumnCount"; - ColumnCount.ReadOnly = true; - ColumnCount.Width = 125; - // - // FormShop - // - AutoScaleDimensions = new SizeF(8F, 20F); - AutoScaleMode = AutoScaleMode.Font; - ClientSize = new Size(470, 380); - Controls.Add(dataGridView); - Controls.Add(buttonCancel); - Controls.Add(buttonSave); - Controls.Add(labelDate); - Controls.Add(labelAdress); - Controls.Add(labelName); - Controls.Add(textBoxAdress); - Controls.Add(textBoxName); - Controls.Add(dateTimePicker); - Margin = new Padding(3, 4, 3, 4); - Name = "FormShop"; - StartPosition = FormStartPosition.CenterScreen; - Text = "Магазин"; - Load += FormShop_Load; - ((System.ComponentModel.ISupportInitialize)dataGridView).EndInit(); - ResumeLayout(false); - PerformLayout(); - } - - #endregion - - private DateTimePicker dateTimePicker; - private TextBox textBoxName; - private TextBox textBoxAdress; - private Label labelName; - private Label labelAdress; - private Label labelDate; - private Button buttonSave; - private Button buttonCancel; - private DataGridView dataGridView; - private DataGridViewTextBoxColumn ColumnId; - private DataGridViewTextBoxColumn ShopName; - private DataGridViewTextBoxColumn ColumnCost; - private DataGridViewTextBoxColumn ColumnCount; - } -} \ No newline at end of file diff --git a/CarRepairShop/CarRepairShop/FormShop.cs b/CarRepairShop/CarRepairShop/FormShop.cs deleted file mode 100644 index ebe31b1..0000000 --- a/CarRepairShop/CarRepairShop/FormShop.cs +++ /dev/null @@ -1,114 +0,0 @@ -using CarRepairShopContracts.BindingModels; -using CarRepairShopContracts.BusinessLogicsContracts; -using CarRepairShopContracts.SearchModels; -using CarRepairShopDataModels.Models; -using Microsoft.Extensions.Logging; - -namespace CarRepairShop -{ - public partial class FormShop : Form - { - private readonly ILogger _logger; - private readonly IShopLogic _logic; - public int? _id; - private Dictionary _repairs; - public FormShop(ILogger logger, IShopLogic logic) - { - InitializeComponent(); - _logger = logger; - _logic = logic; - } - - private void FormShop_Load(object sender, EventArgs e) - { - if (_id.HasValue) - { - _logger.LogInformation("Загрузка магазина"); - try - { - var shop = _logic.ReadElement(new ShopSearchModel { Id = _id }); - if (shop != null) - { - textBoxName.Text = shop.ShopName; - textBoxAdress.Text = shop.Address; - dateTimePicker.Text = shop.DateOpen.ToString(); - _repairs = shop.ShopRepairs; - } - LoadData(); - } - catch (Exception ex) - { - _logger.LogError(ex, "Ошибка загрузки магазина"); - MessageBox.Show(ex.Message, "Ошибка", MessageBoxButtons.OK, - MessageBoxIcon.Error); - } - } - } - - private void LoadData() - { - _logger.LogInformation("Загрузка товаров магазина"); - try - { - if (_repairs != null) - { - foreach (var repair in _repairs) - { - dataGridView.Rows.Add(new object[] { repair.Key, repair.Value.Item1.RepairName, repair.Value.Item1.Price, repair.Value.Item2 }); - } - } - } - catch (Exception ex) - { - _logger.LogError(ex, "Ошибка загрузки ремонтов магазина"); - MessageBox.Show(ex.Message, "Ошибка", MessageBoxButtons.OK, - MessageBoxIcon.Error); - } - } - - private void CancelButton_Click(object sender, EventArgs e) - { - DialogResult = DialogResult.Cancel; - Close(); - } - - private void SaveButton_Click(object sender, EventArgs e) - { - if (string.IsNullOrEmpty(textBoxName.Text)) - { - MessageBox.Show("Заполните название", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); - return; - } - if (string.IsNullOrEmpty(textBoxAdress.Text)) - { - MessageBox.Show("Заполните адрес", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); - return; - } - _logger.LogInformation("Сохранение магазина"); - try - { - var model = new ShopBindingModel - { - Id = _id ?? 0, - ShopName = textBoxName.Text, - Address = textBoxAdress.Text, - DateOpen = dateTimePicker.Value.Date, - ShopRepairs = _repairs - }; - var operationResult = _id.HasValue ? _logic.Update(model) : _logic.Create(model); - if (!operationResult) - { - throw new Exception("Ошибка при сохранении. Дополнительная информация в логах."); - } - MessageBox.Show("Сохранение прошло успешно", "Сообщение", MessageBoxButtons.OK, MessageBoxIcon.Information); - DialogResult = DialogResult.OK; - Close(); - } - catch (Exception ex) - { - _logger.LogError(ex, "Ошибка сохранения магазина"); - MessageBox.Show(ex.Message, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); - } - } - } -} diff --git a/CarRepairShop/CarRepairShop/FormShop.resx b/CarRepairShop/CarRepairShop/FormShop.resx deleted file mode 100644 index af32865..0000000 --- a/CarRepairShop/CarRepairShop/FormShop.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/CarRepairShop/CarRepairShop/FormShops.Designer.cs b/CarRepairShop/CarRepairShop/FormShops.Designer.cs deleted file mode 100644 index a98bfcd..0000000 --- a/CarRepairShop/CarRepairShop/FormShops.Designer.cs +++ /dev/null @@ -1,126 +0,0 @@ -namespace CarRepairShop -{ - partial class FormShops - { - /// - /// Required designer variable. - /// - private System.ComponentModel.IContainer components = null; - - /// - /// Clean up any resources being used. - /// - /// true if managed resources should be disposed; otherwise, false. - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Windows Form Designer generated code - - /// - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// - private void InitializeComponent() - { - dataGridView = new DataGridView(); - buttonAdd = new Button(); - buttonUpdate = new Button(); - buttonRefresh = new Button(); - buttonDelete = new Button(); - ((System.ComponentModel.ISupportInitialize)dataGridView).BeginInit(); - SuspendLayout(); - // - // dataGridView - // - dataGridView.BackgroundColor = Color.White; - dataGridView.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize; - dataGridView.Location = new Point(14, 16); - dataGridView.Margin = new Padding(3, 4, 3, 4); - dataGridView.Name = "dataGridView"; - dataGridView.RowHeadersWidth = 51; - dataGridView.Size = new Size(449, 499); - dataGridView.TabIndex = 0; - // - // buttonAdd - // - buttonAdd.Location = new Point(470, 16); - buttonAdd.Margin = new Padding(3, 4, 3, 4); - buttonAdd.Name = "buttonAdd"; - buttonAdd.Size = new Size(130, 31); - buttonAdd.TabIndex = 1; - buttonAdd.Text = "Добавить"; - buttonAdd.UseVisualStyleBackColor = true; - buttonAdd.Click += ButtonAdd_Click; - // - // buttonUpdate - // - buttonUpdate.Location = new Point(470, 55); - buttonUpdate.Margin = new Padding(3, 4, 3, 4); - buttonUpdate.Name = "buttonUpdate"; - buttonUpdate.Size = new Size(130, 31); - buttonUpdate.TabIndex = 2; - buttonUpdate.Text = "Изменить"; - buttonUpdate.UseVisualStyleBackColor = true; - buttonUpdate.Click += ButtonUpdate_Click; - // - // buttonRefresh - // - buttonRefresh.Location = new Point(470, 93); - buttonRefresh.Margin = new Padding(3, 4, 3, 4); - buttonRefresh.Name = "buttonRefresh"; - buttonRefresh.Size = new Size(130, 31); - buttonRefresh.TabIndex = 3; - buttonRefresh.Text = "Обновить"; - buttonRefresh.UseVisualStyleBackColor = true; - buttonRefresh.Click += ButtonRefresh_Click; - // - // buttonDelete - // - buttonDelete.Location = new Point(470, 132); - buttonDelete.Margin = new Padding(3, 4, 3, 4); - buttonDelete.Name = "buttonDelete"; - buttonDelete.Size = new Size(130, 31); - buttonDelete.TabIndex = 4; - buttonDelete.Text = "Удалить"; - buttonDelete.UseVisualStyleBackColor = true; - buttonDelete.Click += ButtonDelete_Click; - // - // FormShops - // - AutoScaleDimensions = new SizeF(8F, 20F); - AutoScaleMode = AutoScaleMode.Font; - ClientSize = new Size(616, 537); - Controls.Add(buttonDelete); - Controls.Add(buttonRefresh); - Controls.Add(buttonUpdate); - Controls.Add(buttonAdd); - Controls.Add(dataGridView); - Margin = new Padding(3, 4, 3, 4); - Name = "FormShops"; - StartPosition = FormStartPosition.CenterScreen; - Text = "Магазины"; - Load += FormShops_Load; - ((System.ComponentModel.ISupportInitialize)dataGridView).EndInit(); - ResumeLayout(false); - } - - #endregion - - private DataGridView dataGridView; - private Button buttonAdd; - private Button buttonUpdate; - private Button buttonRefresh; - private Button buttonDelete; - private DataGridViewTextBoxColumn Column1; - private DataGridViewTextBoxColumn Column2; - private DataGridViewTextBoxColumn Column3; - private DataGridViewTextBoxColumn Column4; - private DataGridViewTextBoxColumn Column5; - } -} \ No newline at end of file diff --git a/CarRepairShop/CarRepairShop/FormShops.cs b/CarRepairShop/CarRepairShop/FormShops.cs deleted file mode 100644 index f4990c7..0000000 --- a/CarRepairShop/CarRepairShop/FormShops.cs +++ /dev/null @@ -1,118 +0,0 @@ -using CarRepairShopContracts.BindingModels; -using CarRepairShopContracts.BusinessLogicsContracts; -using Microsoft.Extensions.Logging; -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Data; -using System.Drawing; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows.Forms; - -namespace CarRepairShop -{ - public partial class FormShops : Form - { - private readonly ILogger _logger; - private readonly IShopLogic _logic; - public FormShops(ILogger logger, IShopLogic logic) - { - InitializeComponent(); - _logger = logger; - _logic = logic; - } - - - private void LoadData() - { - try - { - var list = _logic.ReadList(null); - if (list != null) - { - dataGridView.DataSource = list; - dataGridView.Columns["Id"].Visible = false; - dataGridView.Columns["ShopName"].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill; - dataGridView.Columns["Address"].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill; - dataGridView.Columns["DateOpen"].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill; - dataGridView.Columns["ShopRepairs"].Visible = false; - } - _logger.LogInformation("Загрузка магазинов"); - } - catch (Exception ex) - { - _logger.LogError(ex, "Ошибка загрузки магазинов"); - MessageBox.Show(ex.Message, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); - } - } - - private void FormShops_Load(object sender, EventArgs e) - { - LoadData(); - } - - private void ButtonAdd_Click(object sender, EventArgs e) - { - var service = Program.ServiceProvider?.GetService(typeof(FormShop)); - if (service is FormShop form) - { - if (form.ShowDialog() == DialogResult.OK) - { - LoadData(); - } - } - } - - private void ButtonUpdate_Click(object sender, EventArgs e) - { - if (dataGridView.SelectedRows.Count == 1) - { - var service = Program.ServiceProvider?.GetService(typeof(FormShop)); - if (service is FormShop form) - { - var tmp = Convert.ToInt32(dataGridView.SelectedRows[0].Cells["Id"].Value); - form._id = Convert.ToInt32(dataGridView.SelectedRows[0].Cells["Id"].Value); - if (form.ShowDialog() == DialogResult.OK) - { - LoadData(); - } - } - } - } - - private void ButtonRefresh_Click(object sender, EventArgs e) - { - LoadData(); - } - - private void ButtonDelete_Click(object sender, EventArgs e) - { - if (dataGridView.SelectedRows.Count == 1) - { - if (MessageBox.Show("Удалить запись?", "Вопрос", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) - { - int id = Convert.ToInt32(dataGridView.SelectedRows[0].Cells["Id"].Value); - _logger.LogInformation("Удаление магазина"); - try - { - if (!_logic.Delete(new ShopBindingModel - { - Id = id - })) - { - throw new Exception("Ошибка при удалении. Дополнительная информация в логах."); - } - LoadData(); - } - catch (Exception ex) - { - _logger.LogError(ex, "Ошибка удаления магазина"); - MessageBox.Show(ex.Message, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); - } - } - } - } - } -} diff --git a/CarRepairShop/CarRepairShop/FormShops.resx b/CarRepairShop/CarRepairShop/FormShops.resx deleted file mode 100644 index af32865..0000000 --- a/CarRepairShop/CarRepairShop/FormShops.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/CarRepairShop/CarRepairShop/FormSupply.Designer.cs b/CarRepairShop/CarRepairShop/FormSupply.Designer.cs deleted file mode 100644 index 2b20b8c..0000000 --- a/CarRepairShop/CarRepairShop/FormSupply.Designer.cs +++ /dev/null @@ -1,150 +0,0 @@ -namespace CarRepairShop -{ - partial class FormSupply - { - /// - /// Required designer variable. - /// - private System.ComponentModel.IContainer components = null; - - /// - /// Clean up any resources being used. - /// - /// true if managed resources should be disposed; otherwise, false. - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Windows Form Designer generated code - - /// - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// - private void InitializeComponent() - { - comboBoxShop = new ComboBox(); - comboBoxRepair = new ComboBox(); - textBoxCount = new TextBox(); - buttonSave = new Button(); - buttonCancel = new Button(); - labelShop = new Label(); - labelRepair = new Label(); - labelCount = new Label(); - SuspendLayout(); - // - // comboBoxShop - // - comboBoxShop.DropDownStyle = ComboBoxStyle.DropDownList; - comboBoxShop.FormattingEnabled = true; - comboBoxShop.Location = new Point(110, 16); - comboBoxShop.Margin = new Padding(3, 4, 3, 4); - comboBoxShop.Name = "comboBoxShop"; - comboBoxShop.Size = new Size(282, 28); - comboBoxShop.TabIndex = 0; - // - // comboBoxRepair - // - comboBoxRepair.DropDownStyle = ComboBoxStyle.DropDownList; - comboBoxRepair.FormattingEnabled = true; - comboBoxRepair.Location = new Point(110, 55); - comboBoxRepair.Margin = new Padding(3, 4, 3, 4); - comboBoxRepair.Name = "comboBoxRepair"; - comboBoxRepair.Size = new Size(282, 28); - comboBoxRepair.TabIndex = 1; - // - // textBoxCount - // - textBoxCount.Location = new Point(110, 93); - textBoxCount.Margin = new Padding(3, 4, 3, 4); - textBoxCount.Name = "textBoxCount"; - textBoxCount.Size = new Size(282, 27); - textBoxCount.TabIndex = 2; - // - // buttonSave - // - buttonSave.Location = new Point(204, 132); - buttonSave.Margin = new Padding(3, 4, 3, 4); - buttonSave.Name = "buttonSave"; - buttonSave.Size = new Size(96, 31); - buttonSave.TabIndex = 3; - buttonSave.Text = "Сохранить"; - buttonSave.UseVisualStyleBackColor = true; - buttonSave.Click += SaveButton_Click; - // - // buttonCancel - // - buttonCancel.Location = new Point(306, 132); - buttonCancel.Margin = new Padding(3, 4, 3, 4); - buttonCancel.Name = "buttonCancel"; - buttonCancel.Size = new Size(86, 31); - buttonCancel.TabIndex = 4; - buttonCancel.Text = "Отмена"; - buttonCancel.UseVisualStyleBackColor = true; - buttonCancel.Click += CancelButton_Click; - // - // labelShop - // - labelShop.AutoSize = true; - labelShop.Location = new Point(12, 16); - labelShop.Name = "labelShop"; - labelShop.Size = new Size(72, 20); - labelShop.TabIndex = 5; - labelShop.Text = "Магазин:"; - // - // labelRepair - // - labelRepair.AutoSize = true; - labelRepair.Location = new Point(12, 55); - labelRepair.Name = "labelRepair"; - labelRepair.Size = new Size(63, 20); - labelRepair.TabIndex = 6; - labelRepair.Text = "Ремонт:"; - // - // labelCount - // - labelCount.AutoSize = true; - labelCount.Location = new Point(12, 93); - labelCount.Name = "labelCount"; - labelCount.Size = new Size(93, 20); - labelCount.TabIndex = 7; - labelCount.Text = "Количество:"; - // - // FormSupply - // - AutoScaleDimensions = new SizeF(8F, 20F); - AutoScaleMode = AutoScaleMode.Font; - ClientSize = new Size(406, 181); - Controls.Add(labelCount); - Controls.Add(labelRepair); - Controls.Add(labelShop); - Controls.Add(buttonCancel); - Controls.Add(buttonSave); - Controls.Add(textBoxCount); - Controls.Add(comboBoxRepair); - Controls.Add(comboBoxShop); - Margin = new Padding(3, 4, 3, 4); - Name = "FormSupply"; - StartPosition = FormStartPosition.CenterScreen; - Text = "Поставки"; - ResumeLayout(false); - PerformLayout(); - } - - #endregion - - private ComboBox comboBoxShop; - private ComboBox comboBoxRepair; - private TextBox textBoxCount; - private Button buttonSave; - private Button buttonCancel; - private Label labelShop; - private Label labelRepair; - private Label labelCount; - } -} \ No newline at end of file diff --git a/CarRepairShop/CarRepairShop/FormSupply.cs b/CarRepairShop/CarRepairShop/FormSupply.cs deleted file mode 100644 index ce6aa68..0000000 --- a/CarRepairShop/CarRepairShop/FormSupply.cs +++ /dev/null @@ -1,142 +0,0 @@ -using CarRepairShopContracts.BusinessLogicsContracts; -using CarRepairShopContracts.SearchModels; -using CarRepairShopContracts.ViewModels; -using CarRepairShopDataModels.Models; - -namespace CarRepairShop -{ - public partial class FormSupply : Form - { - private readonly List? _repairList; - private readonly List? _shopsList; - IShopLogic _shopLogic; - IRepairLogic _repairLogic; - public int ShopId - { - get - { - return - Convert.ToInt32(comboBoxShop.SelectedValue); - } - set - { - comboBoxShop.SelectedValue = value; - } - } - public int RepairId - { - get - { - return - Convert.ToInt32(comboBoxRepair.SelectedValue); - } - set - { - comboBoxRepair.SelectedValue = value; - } - } - - public IRepairModel? RepairModel - { - get - { - if (_repairList == null) - { - return null; - } - foreach (var elem in _repairList) - { - if (elem.Id == RepairId) - { - return elem; - } - } - return null; - } - } - - - public int Count - { - get { return Convert.ToInt32(textBoxCount.Text); } - set - { textBoxCount.Text = value.ToString(); } - } - public FormSupply(IRepairLogic repairLogic, IShopLogic shopLogic) - { - InitializeComponent(); - _shopLogic = shopLogic; - _repairLogic = repairLogic; - _repairList = repairLogic.ReadList(null); - _shopsList = shopLogic.ReadList(null); - if (_repairList != null) - { - comboBoxRepair.DisplayMember = "RepairName"; - comboBoxRepair.ValueMember = "Id"; - comboBoxRepair.DataSource = _repairList; - comboBoxRepair.SelectedItem = null; - } - if (_shopsList != null) - { - comboBoxShop.DisplayMember = "ShopName"; - comboBoxShop.ValueMember = "Id"; - comboBoxShop.DataSource = _shopsList; - comboBoxShop.SelectedItem = null; - } - } - - private void SaveButton_Click(object sender, EventArgs e) - { - if (string.IsNullOrEmpty(textBoxCount.Text)) - { - MessageBox.Show("Заполните поле Количество", "Ошибка", - MessageBoxButtons.OK, MessageBoxIcon.Error); - return; - } - if (comboBoxRepair.SelectedValue == null) - { - MessageBox.Show("Выберите ремонт", "Ошибка", - MessageBoxButtons.OK, MessageBoxIcon.Error); - return; - } - if (comboBoxShop.SelectedValue == null) - { - MessageBox.Show("Выберите магазин", "Ошибка", - MessageBoxButtons.OK, MessageBoxIcon.Error); - return; - } - - try - { - int count = Convert.ToInt32(textBoxCount.Text); - - bool res = _shopLogic.MakeSupply( - new ShopSearchModel() { Id = Convert.ToInt32(comboBoxShop.SelectedValue) }, - _repairLogic.ReadElement(new() { Id = Convert.ToInt32(comboBoxRepair.SelectedValue) }), - count - ); - - if (!res) - { - throw new Exception("Ошибка при пополнении. Дополнительная информация в логах"); - } - - MessageBox.Show("Пополнение прошло успешно"); - DialogResult = DialogResult.OK; - Close(); - - } - catch (Exception err) - { - MessageBox.Show("Ошибка пополнения"); - return; - } - } - - private void CancelButton_Click(object sender, EventArgs e) - { - DialogResult = DialogResult.Cancel; - Close(); - } - } -} diff --git a/CarRepairShop/CarRepairShop/FormSupply.resx b/CarRepairShop/CarRepairShop/FormSupply.resx deleted file mode 100644 index af32865..0000000 --- a/CarRepairShop/CarRepairShop/FormSupply.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/CarRepairShop/CarRepairShop/Program.cs b/CarRepairShop/CarRepairShop/Program.cs index aa7a604..5f77e56 100644 --- a/CarRepairShop/CarRepairShop/Program.cs +++ b/CarRepairShop/CarRepairShop/Program.cs @@ -34,8 +34,6 @@ namespace CarRepairShop option.AddNLog("nlog.config"); }); services.AddTransient(); - services.AddTransient(); - services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); @@ -48,9 +46,6 @@ namespace CarRepairShop services.AddTransient(); services.AddTransient(); services.AddTransient(); - services.AddTransient(); - services.AddTransient(); - services.AddTransient(); } } } \ No newline at end of file diff --git a/CarRepairShop/CarRepairShopBusinessLogic/ShopLogic.cs b/CarRepairShop/CarRepairShopBusinessLogic/ShopLogic.cs deleted file mode 100644 index 877fd07..0000000 --- a/CarRepairShop/CarRepairShopBusinessLogic/ShopLogic.cs +++ /dev/null @@ -1,166 +0,0 @@ -using CarRepairShopContracts.BindingModels; -using CarRepairShopContracts.BusinessLogicsContracts; -using CarRepairShopContracts.SearchModels; -using CarRepairShopContracts.StoragesContracts; -using CarRepairShopContracts.ViewModels; -using CarRepairShopDataModels.Models; -using Microsoft.Extensions.Logging; - -namespace CarRepairShopBusinessLogic -{ - public class ShopLogic : IShopLogic - { - private readonly ILogger _logger; - private readonly IShopStorage _shopStorage; - - public ShopLogic(ILogger logger, IShopStorage shopStorage) - { - _logger = logger; - _shopStorage = shopStorage; - } - - public List ReadList(ShopSearchModel model) - { - _logger.LogInformation("ReadList. ShopName:{Name}. Id:{ Id}", model?.Name, model?.Id); - var list = model == null ? _shopStorage.GetFullList() : _shopStorage.GetFilteredList(model); - if (list == null) - { - _logger.LogWarning("ReadList return null list"); - return null; - } - _logger.LogInformation("ReadList. Count:{Count}", list.Count); - return list; - - } - - public bool MakeSupply(ShopSearchModel model, IRepairModel repair, int count) - { - _logger.LogInformation("Try to supply shop. ShopName:{ShopName}. Id:{Id}", model.Name, model.Id); - if (model == null) - { - _logger.LogWarning("Read operation failed"); - throw new ArgumentNullException(nameof(model)); - } - if (repair == null) - { - _logger.LogWarning("Read operation failed"); - throw new ArgumentNullException(nameof(repair)); - } - if (count <= 0) - { - _logger.LogWarning("Read operation failed"); - throw new ArgumentNullException("Количество должно быть положительным числом"); - } - ShopViewModel curModel = ReadElement(model); - if (curModel == null) - { - _logger.LogWarning("Read operation failed"); - throw new ArgumentNullException(nameof(curModel)); - } - if (curModel.ShopRepairs.TryGetValue(repair.Id, out var pair)) - { - curModel.ShopRepairs[repair.Id] = (pair.Item1, pair.Item2 + count); - } - else - { - curModel.ShopRepairs.Add(repair.Id, (repair, count)); - } - Update(new() - { - Id = curModel.Id, - ShopName = curModel.ShopName, - DateOpen = curModel.DateOpen, - Address = curModel.Address, - ShopRepairs = curModel.ShopRepairs, - }); - _logger.LogInformation("Success. RepairName:{RepairName}. Id:{Id}. Supply:{count}", repair.RepairName, repair.Id, count); - return true; - } - - public ShopViewModel ReadElement(ShopSearchModel model) - { - if (model == null) - { - throw new ArgumentNullException(nameof(model)); - } - _logger.LogInformation("ReadElement. ShopName:{ShopName}.Id:{ Id}", model.Name, model.Id); - var element = _shopStorage.GetElement(model); - if (element == null) - { - _logger.LogWarning("ReadElement element not found"); - return null; - } - _logger.LogInformation("ReadElement find. Id:{Id}", element.Id); - return element; - } - - public bool Create(ShopBindingModel model) - { - CheckModel(model); - if (_shopStorage.Insert(model) == null) - { - _logger.LogWarning("Insert operation failed"); - return false; - } - return true; - } - - public bool Update(ShopBindingModel model) - { - CheckModel(model); - if (_shopStorage.Update(model) == null) - { - _logger.LogWarning("Update operation failed"); - return false; - } - return true; - } - public bool Delete(ShopBindingModel model) - { - CheckModel(model, false); - _logger.LogInformation("Delete. Id:{Id}", model.Id); - if (_shopStorage.Delete(model) == null) - { - _logger.LogWarning("Delete operation failed"); - return false; - } - return true; - } - - private void CheckModel(ShopBindingModel model, bool withParams = true) - { - if (model == null) - { - throw new ArgumentNullException(nameof(model)); - } - if (!withParams) - { - return; - } - if (string.IsNullOrEmpty(model.ShopName)) - { - throw new ArgumentNullException("Нет названия магазина", - nameof(model.ShopName)); - } - if (string.IsNullOrEmpty(model.Address)) - { - throw new ArgumentNullException("Нет адресса магазина", - nameof(model.ShopName)); - } - if (model.DateOpen == null) - { - throw new ArgumentNullException("Нет даты открытия магазина", - nameof(model.ShopName)); - } - _logger.LogInformation("Shop. ShopName:{ShopName}.Address:{Address}. DateOpen:{DateOpen}. Id: { Id}", model.ShopName, model.Address, model.DateOpen, model.Id); - var element = _shopStorage.GetElement(new ShopSearchModel - { - Name = model.ShopName - }); - if (element != null && element.Id != model.Id) - { - throw new InvalidOperationException("Магазин с таким названием уже есть"); - } - } - } -} diff --git a/CarRepairShop/CarRepairShopContracts/BindingModels/ShopBindingModel.cs b/CarRepairShop/CarRepairShopContracts/BindingModels/ShopBindingModel.cs deleted file mode 100644 index 86f9df5..0000000 --- a/CarRepairShop/CarRepairShopContracts/BindingModels/ShopBindingModel.cs +++ /dev/null @@ -1,14 +0,0 @@ -using CarRepairShopDataModels; -using CarRepairShopDataModels.Models; - -namespace CarRepairShopContracts.BindingModels -{ - public class ShopBindingModel : IShopModel - { - public int Id { get; set; } - public string ShopName { get; set; } - public string Address { get; set; } - public DateTime DateOpen { get; set; } - public Dictionary ShopRepairs { get; set; } = new(); - } -} diff --git a/CarRepairShop/CarRepairShopContracts/BusinessLogicsContracts/IShopLogic.cs b/CarRepairShop/CarRepairShopContracts/BusinessLogicsContracts/IShopLogic.cs deleted file mode 100644 index 5103a83..0000000 --- a/CarRepairShop/CarRepairShopContracts/BusinessLogicsContracts/IShopLogic.cs +++ /dev/null @@ -1,17 +0,0 @@ -using CarRepairShopContracts.BindingModels; -using CarRepairShopContracts.SearchModels; -using CarRepairShopContracts.ViewModels; -using CarRepairShopDataModels.Models; - -namespace CarRepairShopContracts.BusinessLogicsContracts -{ - public interface IShopLogic - { - List? ReadList(ShopSearchModel? model); - ShopViewModel? ReadElement(ShopSearchModel model); - bool Create(ShopBindingModel model); - bool Update(ShopBindingModel model); - bool Delete(ShopBindingModel model); - bool MakeSupply(ShopSearchModel model, IRepairModel repair, int count); - } -} diff --git a/CarRepairShop/CarRepairShopContracts/SearchModels/ShopSearchModel.cs b/CarRepairShop/CarRepairShopContracts/SearchModels/ShopSearchModel.cs deleted file mode 100644 index 88aa7d5..0000000 --- a/CarRepairShop/CarRepairShopContracts/SearchModels/ShopSearchModel.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace CarRepairShopContracts.SearchModels -{ - public class ShopSearchModel - { - public int? Id { get; set; } - public string? Name { get; set; } - } -} diff --git a/CarRepairShop/CarRepairShopContracts/StoragesContracts/IShopStorage.cs b/CarRepairShop/CarRepairShopContracts/StoragesContracts/IShopStorage.cs deleted file mode 100644 index 18d5e95..0000000 --- a/CarRepairShop/CarRepairShopContracts/StoragesContracts/IShopStorage.cs +++ /dev/null @@ -1,17 +0,0 @@ -using CarRepairShopContracts.BindingModels; -using CarRepairShopContracts.SearchModels; -using CarRepairShopContracts.ViewModels; -using CarRepairShopDataModels.Models; - -namespace CarRepairShopContracts.StoragesContracts -{ - public interface IShopStorage - { - List GetFullList(); - List GetFilteredList(ShopSearchModel model); - ShopViewModel? GetElement(ShopSearchModel model); - ShopViewModel? Insert(ShopBindingModel model); - ShopViewModel? Update(ShopBindingModel model); - ShopViewModel? Delete(ShopBindingModel model); - } -} diff --git a/CarRepairShop/CarRepairShopContracts/ViewModels/ShopViewModel.cs b/CarRepairShop/CarRepairShopContracts/ViewModels/ShopViewModel.cs deleted file mode 100644 index f2a4430..0000000 --- a/CarRepairShop/CarRepairShopContracts/ViewModels/ShopViewModel.cs +++ /dev/null @@ -1,18 +0,0 @@ -using CarRepairShopDataModels; -using CarRepairShopDataModels.Models; -using System.ComponentModel; - -namespace CarRepairShopContracts.ViewModels -{ - public class ShopViewModel : IShopModel - { - public int Id { get; set; } - [DisplayName("Название магазина")] - public string ShopName { get; set; } - [DisplayName("Адрес магазина")] - public string Address { get; set; } - [DisplayName("Дата открытия")] - public DateTime DateOpen { get; set; } - public Dictionary ShopRepairs { get; set; } = new(); - } -} diff --git a/CarRepairShop/CarRepairShopDataModels/IShopModel.cs b/CarRepairShop/CarRepairShopDataModels/IShopModel.cs deleted file mode 100644 index 72636b7..0000000 --- a/CarRepairShop/CarRepairShopDataModels/IShopModel.cs +++ /dev/null @@ -1,12 +0,0 @@ -using CarRepairShopDataModels.Models; - -namespace CarRepairShopDataModels -{ - public interface IShopModel : IId - { - string ShopName { get; } - string Address { get; } - DateTime DateOpen { get; } - Dictionary ShopRepairs { get; } - } -} diff --git a/CarRepairShop/CarRepairShopListImplement/DataListSingleton.cs b/CarRepairShop/CarRepairShopListImplement/DataListSingleton.cs index d38839e..d2f576d 100644 --- a/CarRepairShop/CarRepairShopListImplement/DataListSingleton.cs +++ b/CarRepairShop/CarRepairShopListImplement/DataListSingleton.cs @@ -8,13 +8,11 @@ namespace CarRepairShopListImplement public List Components { get; set; } public List Orders { get; set; } public List Repairs { get; set; } - public List Shops { get; set; } private DataListSingleton() { Components = new List(); Orders = new List(); Repairs = new List(); - Shops = new List(); } public static DataListSingleton GetInstance() { diff --git a/CarRepairShop/CarRepairShopListImplement/Implements/ShopStorage.cs b/CarRepairShop/CarRepairShopListImplement/Implements/ShopStorage.cs deleted file mode 100644 index 470eba9..0000000 --- a/CarRepairShop/CarRepairShopListImplement/Implements/ShopStorage.cs +++ /dev/null @@ -1,104 +0,0 @@ -using CarRepairShopContracts.BindingModels; -using CarRepairShopContracts.SearchModels; -using CarRepairShopContracts.StoragesContracts; -using CarRepairShopContracts.ViewModels; -using CarRepairShopDataModels.Models; -using CarRepairShopListImplement.Models; - -namespace CarRepairShopListImplement.Implements -{ - public class ShopStorage : IShopStorage - { - private readonly DataListSingleton _source; - public ShopStorage() - { - _source = DataListSingleton.GetInstance(); - } - public List GetFullList() - { - var result = new List(); - foreach (var shop in _source.Shops) - { - result.Add(shop.GetViewModel); - } - return result; - } - public List GetFilteredList(ShopSearchModel - model) - { - var result = new List(); - if (string.IsNullOrEmpty(model.Name)) - { - return result; - } - foreach (var shop in _source.Shops) - { - if (shop.ShopName.Contains(model.Name)) - { - result.Add(shop.GetViewModel); - } - } - return result; - } - public ShopViewModel? GetElement(ShopSearchModel model) - { - if (string.IsNullOrEmpty(model.Name) && !model.Id.HasValue) - { - return null; - } - foreach (var shop in _source.Shops) - { - if ((!string.IsNullOrEmpty(model.Name) && - shop.ShopName == model.Name) || - (model.Id.HasValue && shop.Id == model.Id)) - { - return shop.GetViewModel; - } - } - return null; - } - public ShopViewModel? Insert(ShopBindingModel model) - { - model.Id = 1; - foreach (var shop in _source.Shops) - { - if (model.Id <= shop.Id) - { - model.Id = shop.Id + 1; - } - } - var newShop = Shop.Create(model); - if (newShop == null) - { - return null; - } - _source.Shops.Add(newShop); - return newShop.GetViewModel; - } - public ShopViewModel? Update(ShopBindingModel model) - { - foreach (var shop in _source.Shops) - { - if (shop.Id == model.Id) - { - shop.Update(model); - return shop.GetViewModel; - } - } - return null; - } - public ShopViewModel? Delete(ShopBindingModel model) - { - for (int i = 0; i < _source.Shops.Count; ++i) - { - if (_source.Shops[i].Id == model.Id) - { - var element = _source.Shops[i]; - _source.Shops.RemoveAt(i); - return element.GetViewModel; - } - } - return null; - } - } -} diff --git a/CarRepairShop/CarRepairShopListImplement/Models/Shop.cs b/CarRepairShop/CarRepairShopListImplement/Models/Shop.cs deleted file mode 100644 index c31b36a..0000000 --- a/CarRepairShop/CarRepairShopListImplement/Models/Shop.cs +++ /dev/null @@ -1,51 +0,0 @@ -using CarRepairShopContracts.BindingModels; -using CarRepairShopContracts.ViewModels; -using CarRepairShopDataModels; -using CarRepairShopDataModels.Models; - -namespace CarRepairShopListImplement.Models -{ - public class Shop : IShopModel - { - public int Id { get; private set; } - public string ShopName { get; private set; } - public string Address { get; private set; } - public DateTime DateOpen { get; private set; } - public Dictionary ShopRepairs { get; private set; } = new(); - - public static Shop? Create(ShopBindingModel model) - { - if (model == null) - return null; - return new Shop() - { - Id = model.Id, - ShopName = model.ShopName, - Address = model.Address, - DateOpen = model.DateOpen, - ShopRepairs = new() - }; - } - - public void Update(ShopBindingModel? model) - { - if (model == null) - { - return; - } - ShopName = model.ShopName; - Address = model.Address; - DateOpen = model.DateOpen; - ShopRepairs = model.ShopRepairs; - } - - public ShopViewModel GetViewModel => new() - { - Id = Id, - ShopName = ShopName, - Address = Address, - DateOpen = DateOpen, - ShopRepairs = ShopRepairs - }; - } -}