From 8db2a5443eb415f8574072bd3f46c683adc16024 Mon Sep 17 00:00:00 2001 From: insideq <114825525+insideq@users.noreply.github.com> Date: Fri, 22 Nov 2024 13:42:41 +0400 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D1=80=D0=B0=D0=B1=D0=BE=D1=82?= =?UTF-8?q?=D0=BA=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Entities/Components_Production.cs | 8 +- .../ProjectWarehouse/Entities/Employee.cs | 26 ++++ .../Entities/Enums/EmployeePost.cs | 13 ++ .../{Movement_Components.cs => Inventory.cs} | 9 +- .../ProjectWarehouse/Entities/OrderRequest.cs | 4 +- .../ProjectWarehouse/Entities/Production.cs | 10 +- .../FormWarehouse.Designer.cs | 46 +++--- .../ProjectWarehouse/FormWarehouse.cs | 28 +++- .../Forms/FormComponent.Designer.cs | 1 + .../ProjectWarehouse/Forms/FormComponent.cs | 2 +- .../Forms/FormComponents.Designer.cs | 1 + .../Forms/FormEmployee.Designer.cs | 147 ++++++++++++++++++ .../ProjectWarehouse/Forms/FormEmployee.cs | 102 ++++++++++++ .../{FormMovement.resx => FormEmployee.resx} | 0 .../Forms/FormEmployees.Designer.cs | 126 +++++++++++++++ .../ProjectWarehouse/Forms/FormEmployees.cs | 104 +++++++++++++ ...{FormMovements.resx => FormEmployees.resx} | 0 ....Designer.cs => FormInventory.Designer.cs} | 11 +- .../ProjectWarehouse/Forms/FormInventory.cs | 83 ++++++++++ .../ProjectWarehouse/Forms/FormInventory.resx | 120 ++++++++++++++ ...Designer.cs => FormInventorys.Designer.cs} | 39 ++++- .../ProjectWarehouse/Forms/FormInventorys.cs | 105 +++++++++++++ .../Forms/FormInventorys.resx | 120 ++++++++++++++ .../ProjectWarehouse/Forms/FormMovement.cs | 42 ----- .../ProjectWarehouse/Forms/FormMovements.cs | 48 ------ .../Forms/FormOrderRequest.Designer.cs | 29 ++++ .../Forms/FormOrderRequest.cs | 42 +++-- .../Forms/FormOrderRequests.Designer.cs | 1 + .../Forms/FormProduction.Designer.cs | 105 +++++++++++-- .../ProjectWarehouse/Forms/FormProduction.cs | 36 ++++- .../Forms/FormProduction.resx | 6 + .../Forms/FormProductions.Designer.cs | 1 + ProjectWarehouse/ProjectWarehouse/Program.cs | 10 +- .../ProjectWarehouse/ProjectWarehouse.csproj | 5 +- .../Repositories/IEmployeeRepository.cs | 16 ++ .../Repositories/IInventoryRepository.cs | 16 ++ .../IMovement_ComponentsRepository.cs | 16 -- .../Repositories/IOrderRequestRepository.cs | 2 +- .../Implementations/EmployeeRepository.cs | 30 ++++ .../Implementations/InventoryRepository.cs | 28 ++++ .../Movement_ComponentsRepository.cs | 28 ---- .../Implementations/OrderRequestRepository.cs | 2 +- .../Implementations/ProductionRepository.cs | 2 +- 43 files changed, 1356 insertions(+), 214 deletions(-) create mode 100644 ProjectWarehouse/ProjectWarehouse/Entities/Employee.cs create mode 100644 ProjectWarehouse/ProjectWarehouse/Entities/Enums/EmployeePost.cs rename ProjectWarehouse/ProjectWarehouse/Entities/{Movement_Components.cs => Inventory.cs} (59%) create mode 100644 ProjectWarehouse/ProjectWarehouse/Forms/FormEmployee.Designer.cs create mode 100644 ProjectWarehouse/ProjectWarehouse/Forms/FormEmployee.cs rename ProjectWarehouse/ProjectWarehouse/Forms/{FormMovement.resx => FormEmployee.resx} (100%) create mode 100644 ProjectWarehouse/ProjectWarehouse/Forms/FormEmployees.Designer.cs create mode 100644 ProjectWarehouse/ProjectWarehouse/Forms/FormEmployees.cs rename ProjectWarehouse/ProjectWarehouse/Forms/{FormMovements.resx => FormEmployees.resx} (100%) rename ProjectWarehouse/ProjectWarehouse/Forms/{FormMovement.Designer.cs => FormInventory.Designer.cs} (95%) create mode 100644 ProjectWarehouse/ProjectWarehouse/Forms/FormInventory.cs create mode 100644 ProjectWarehouse/ProjectWarehouse/Forms/FormInventory.resx rename ProjectWarehouse/ProjectWarehouse/Forms/{FormMovements.Designer.cs => FormInventorys.Designer.cs} (71%) create mode 100644 ProjectWarehouse/ProjectWarehouse/Forms/FormInventorys.cs create mode 100644 ProjectWarehouse/ProjectWarehouse/Forms/FormInventorys.resx delete mode 100644 ProjectWarehouse/ProjectWarehouse/Forms/FormMovement.cs delete mode 100644 ProjectWarehouse/ProjectWarehouse/Forms/FormMovements.cs create mode 100644 ProjectWarehouse/ProjectWarehouse/Repositories/IEmployeeRepository.cs create mode 100644 ProjectWarehouse/ProjectWarehouse/Repositories/IInventoryRepository.cs delete mode 100644 ProjectWarehouse/ProjectWarehouse/Repositories/IMovement_ComponentsRepository.cs create mode 100644 ProjectWarehouse/ProjectWarehouse/Repositories/Implementations/EmployeeRepository.cs create mode 100644 ProjectWarehouse/ProjectWarehouse/Repositories/Implementations/InventoryRepository.cs delete mode 100644 ProjectWarehouse/ProjectWarehouse/Repositories/Implementations/Movement_ComponentsRepository.cs diff --git a/ProjectWarehouse/ProjectWarehouse/Entities/Components_Production.cs b/ProjectWarehouse/ProjectWarehouse/Entities/Components_Production.cs index dc8838e..4c2d194 100644 --- a/ProjectWarehouse/ProjectWarehouse/Entities/Components_Production.cs +++ b/ProjectWarehouse/ProjectWarehouse/Entities/Components_Production.cs @@ -2,18 +2,18 @@ public class Components_Production { - public int ComponentsID { get; private set; } + public int Id { get; set; } - public int ProductionID { get; private set; } + public int ComponentsID { get; private set; } public int Count { get; private set; } - public static Components_Production CreateElement(int componentsID, int productionID, int count) + public static Components_Production CreateElement(int id, int componentsID, int count) { return new Components_Production { + Id = id, ComponentsID = componentsID, - ProductionID = productionID, Count = count }; } diff --git a/ProjectWarehouse/ProjectWarehouse/Entities/Employee.cs b/ProjectWarehouse/ProjectWarehouse/Entities/Employee.cs new file mode 100644 index 0000000..7ae4259 --- /dev/null +++ b/ProjectWarehouse/ProjectWarehouse/Entities/Employee.cs @@ -0,0 +1,26 @@ +using ProjectWarehouse.Entities.Enums; + +namespace ProjectWarehouse.Entities; + +public class Employee +{ + public int Id { get; private set; } + + public string FirstName { get; private set; } = string.Empty; + + public string LastName { get; private set; } = string.Empty; + + public EmployeePost EmployeePost { get; private set; } + + public static Employee CreateEntity(int id, string first, string last, + EmployeePost employeePost) + { + return new Employee + { + Id = id, + FirstName = first ?? string.Empty, + LastName = last ?? string.Empty, + EmployeePost = employeePost + }; + } +} \ No newline at end of file diff --git a/ProjectWarehouse/ProjectWarehouse/Entities/Enums/EmployeePost.cs b/ProjectWarehouse/ProjectWarehouse/Entities/Enums/EmployeePost.cs new file mode 100644 index 0000000..be33c9d --- /dev/null +++ b/ProjectWarehouse/ProjectWarehouse/Entities/Enums/EmployeePost.cs @@ -0,0 +1,13 @@ +namespace ProjectWarehouse.Entities.Enums; + +[Flags] +public enum EmployeePost +{ + None = 0, + + Ordinary = 1, + + Senior = 2, + + Head = 4 +} \ No newline at end of file diff --git a/ProjectWarehouse/ProjectWarehouse/Entities/Movement_Components.cs b/ProjectWarehouse/ProjectWarehouse/Entities/Inventory.cs similarity index 59% rename from ProjectWarehouse/ProjectWarehouse/Entities/Movement_Components.cs rename to ProjectWarehouse/ProjectWarehouse/Entities/Inventory.cs index 83b5b98..b31ec12 100644 --- a/ProjectWarehouse/ProjectWarehouse/Entities/Movement_Components.cs +++ b/ProjectWarehouse/ProjectWarehouse/Entities/Inventory.cs @@ -1,24 +1,21 @@ namespace ProjectWarehouse.Entities; -public class Movement_Components +public class Inventory { public int Id { get; private set; } public double Quantity { get; private set; } - public DateTime DateMove { get; private set; } - public bool IsDefect { get; private set; } public int ComponentsID { get; private set; } - public static Movement_Components CreateEntity(int id, double quantity, bool isDefect, int ComponentsID) + public static Inventory CreateEntity(int id, double quantity, bool isDefect, int ComponentsID) { - return new Movement_Components + return new Inventory { Id = id, Quantity = quantity, - DateMove = DateTime.Now, IsDefect = isDefect, ComponentsID = ComponentsID }; diff --git a/ProjectWarehouse/ProjectWarehouse/Entities/OrderRequest.cs b/ProjectWarehouse/ProjectWarehouse/Entities/OrderRequest.cs index 7d24f93..91aa390 100644 --- a/ProjectWarehouse/ProjectWarehouse/Entities/OrderRequest.cs +++ b/ProjectWarehouse/ProjectWarehouse/Entities/OrderRequest.cs @@ -4,13 +4,13 @@ public class OrderRequest { public int Id { get; private set; } - public int Quantity { get; private set; } + public double Quantity { get; private set; } public DateTime DateOrder { get; private set; } public int ComponentsID { get; private set; } - public static OrderRequest CreateEntity(int id, int quantity, int componentsID) + public static OrderRequest CreateEntity(int id, double quantity, int componentsID) { return new OrderRequest { diff --git a/ProjectWarehouse/ProjectWarehouse/Entities/Production.cs b/ProjectWarehouse/ProjectWarehouse/Entities/Production.cs index 8aef112..1d2c877 100644 --- a/ProjectWarehouse/ProjectWarehouse/Entities/Production.cs +++ b/ProjectWarehouse/ProjectWarehouse/Entities/Production.cs @@ -8,13 +8,19 @@ public class Production public string Description { get; private set; } = string.Empty; - public static Production CreateEntity(int id, string name, string description) + public int EmployeeId { get; private set; } + + public IEnumerable Components_Productions { get; private set; } = []; + + public static Production CreateEntity(int id, string name, string description, int employeeId, IEnumerable components_Productions) { return new Production { Id = id, Name = name, - Description = description ?? string.Empty + Description = description ?? string.Empty, + EmployeeId = employeeId, + Components_Productions = components_Productions }; } } diff --git a/ProjectWarehouse/ProjectWarehouse/FormWarehouse.Designer.cs b/ProjectWarehouse/ProjectWarehouse/FormWarehouse.Designer.cs index e1648db..8373b15 100644 --- a/ProjectWarehouse/ProjectWarehouse/FormWarehouse.Designer.cs +++ b/ProjectWarehouse/ProjectWarehouse/FormWarehouse.Designer.cs @@ -31,15 +31,17 @@ menuStrip = new MenuStrip(); справочникиToolStripMenuItem = new ToolStripMenuItem(); ComponentToolStripMenuItem = new ToolStripMenuItem(); - ProductionToolStripMenuItem = new ToolStripMenuItem(); + EmployeeToolStripMenuItem = new ToolStripMenuItem(); операцииToolStripMenuItem = new ToolStripMenuItem(); - MovementToolStripMenuItem = new ToolStripMenuItem(); + InventoryToolStripMenuItem = new ToolStripMenuItem(); + Components_ProductionToolStripMenuItem = new ToolStripMenuItem(); заявкиToolStripMenuItem = new ToolStripMenuItem(); menuStrip.SuspendLayout(); SuspendLayout(); // // menuStrip // + menuStrip.ImageScalingSize = new Size(20, 20); menuStrip.Items.AddRange(new ToolStripItem[] { справочникиToolStripMenuItem, операцииToolStripMenuItem, заявкиToolStripMenuItem }); menuStrip.Location = new Point(0, 0); menuStrip.Name = "menuStrip"; @@ -49,38 +51,45 @@ // // справочникиToolStripMenuItem // - справочникиToolStripMenuItem.DropDownItems.AddRange(new ToolStripItem[] { ComponentToolStripMenuItem, ProductionToolStripMenuItem }); + справочникиToolStripMenuItem.DropDownItems.AddRange(new ToolStripItem[] { ComponentToolStripMenuItem, EmployeeToolStripMenuItem }); справочникиToolStripMenuItem.Name = "справочникиToolStripMenuItem"; справочникиToolStripMenuItem.Size = new Size(94, 20); справочникиToolStripMenuItem.Text = "Справочники"; // - // ComponenttoolStripMenuItem + // ComponentToolStripMenuItem // - ComponentToolStripMenuItem.Name = "ComponenttoolStripMenuItem"; + ComponentToolStripMenuItem.Name = "ComponentToolStripMenuItem"; ComponentToolStripMenuItem.Size = new Size(180, 22); ComponentToolStripMenuItem.Text = "Комплектующие"; ComponentToolStripMenuItem.Click += ComponentToolStripMenuItem_Click; // - // типыКомплектующихToolStripMenuItem + // EmployeeToolStripMenuItem // - ProductionToolStripMenuItem.Name = "ProductionToolStripMenuItem"; - ProductionToolStripMenuItem.Size = new Size(180, 22); - ProductionToolStripMenuItem.Text = "Продукция"; - ProductionToolStripMenuItem.Click += ProductionToolStripMenuItem_Click; + EmployeeToolStripMenuItem.Name = "EmployeeToolStripMenuItem"; + EmployeeToolStripMenuItem.Size = new Size(180, 22); + EmployeeToolStripMenuItem.Text = "Работники"; + EmployeeToolStripMenuItem.Click += EmployeeToolStripMenuItem_Click; // // операцииToolStripMenuItem // - операцииToolStripMenuItem.DropDownItems.AddRange(new ToolStripItem[] { MovementToolStripMenuItem }); + операцииToolStripMenuItem.DropDownItems.AddRange(new ToolStripItem[] { InventoryToolStripMenuItem, Components_ProductionToolStripMenuItem }); операцииToolStripMenuItem.Name = "операцииToolStripMenuItem"; операцииToolStripMenuItem.Size = new Size(75, 20); операцииToolStripMenuItem.Text = "Операции"; // - // отправкаНаПроизводствоToolStripMenuItem + // InventoryToolStripMenuItem // - MovementToolStripMenuItem.Name = "MovementToolStripMenuItem"; - MovementToolStripMenuItem.Size = new Size(221, 22); - MovementToolStripMenuItem.Text = "Отправка на производство"; - MovementToolStripMenuItem.Click += MovementToolStripMenuItem_Click; + InventoryToolStripMenuItem.Name = "InventoryToolStripMenuItem"; + InventoryToolStripMenuItem.Size = new Size(204, 22); + InventoryToolStripMenuItem.Text = "Добавление на склад"; + InventoryToolStripMenuItem.Click += InventoryToolStripMenuItem_Click; + // + // Components_ProductionToolStripMenuItem + // + Components_ProductionToolStripMenuItem.Name = "Components_ProductionToolStripMenuItem"; + Components_ProductionToolStripMenuItem.Size = new Size(204, 22); + Components_ProductionToolStripMenuItem.Text = "Добавление продукции"; + Components_ProductionToolStripMenuItem.Click += Components_ProductionToolStripMenuItem_Click; // // заявкиToolStripMenuItem // @@ -114,7 +123,8 @@ private ToolStripMenuItem операцииToolStripMenuItem; private ToolStripMenuItem заявкиToolStripMenuItem; private ToolStripMenuItem ComponentToolStripMenuItem; - private ToolStripMenuItem MovementToolStripMenuItem; - private ToolStripMenuItem ProductionToolStripMenuItem; + private ToolStripMenuItem InventoryToolStripMenuItem; + private ToolStripMenuItem EmployeeToolStripMenuItem; + private ToolStripMenuItem Components_ProductionToolStripMenuItem; } } diff --git a/ProjectWarehouse/ProjectWarehouse/FormWarehouse.cs b/ProjectWarehouse/ProjectWarehouse/FormWarehouse.cs index c2726ac..fd1040e 100644 --- a/ProjectWarehouse/ProjectWarehouse/FormWarehouse.cs +++ b/ProjectWarehouse/ProjectWarehouse/FormWarehouse.cs @@ -14,11 +14,11 @@ namespace ProjectWarehouse throw new ArgumentNullException(nameof(container)); } - private void MovementToolStripMenuItem_Click(object sender, EventArgs e) + private void InventoryToolStripMenuItem_Click(object sender, EventArgs e) { try { - _container.Resolve().ShowDialog(); + _container.Resolve().ShowDialog(); } catch (Exception ex) { @@ -61,5 +61,29 @@ namespace ProjectWarehouse MessageBox.Show(ex.Message, " ", MessageBoxButtons.OK, MessageBoxIcon.Error); } } + + private void EmployeeToolStripMenuItem_Click(object sender, EventArgs e) + { + try + { + _container.Resolve().ShowDialog(); + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, " ", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void Components_ProductionToolStripMenuItem_Click(object sender, EventArgs e) + { + try + { + _container.Resolve().ShowDialog(); + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, " ", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } } } diff --git a/ProjectWarehouse/ProjectWarehouse/Forms/FormComponent.Designer.cs b/ProjectWarehouse/ProjectWarehouse/Forms/FormComponent.Designer.cs index ca93c47..33681ed 100644 --- a/ProjectWarehouse/ProjectWarehouse/Forms/FormComponent.Designer.cs +++ b/ProjectWarehouse/ProjectWarehouse/Forms/FormComponent.Designer.cs @@ -150,6 +150,7 @@ Controls.Add(labelName); Controls.Add(comboBoxType); Name = "FormComponent"; + StartPosition = FormStartPosition.CenterParent; Text = "Компонент"; ((System.ComponentModel.ISupportInitialize)numericUpDownPrice).EndInit(); ((System.ComponentModel.ISupportInitialize)numericUpDownCount).EndInit(); diff --git a/ProjectWarehouse/ProjectWarehouse/Forms/FormComponent.cs b/ProjectWarehouse/ProjectWarehouse/Forms/FormComponent.cs index 7c3b977..3476e3f 100644 --- a/ProjectWarehouse/ProjectWarehouse/Forms/FormComponent.cs +++ b/ProjectWarehouse/ProjectWarehouse/Forms/FormComponent.cs @@ -48,7 +48,7 @@ namespace ProjectWarehouse.Forms { try { - if (string.IsNullOrWhiteSpace(textBoxName.Text) || comboBoxType.SelectedIndex < 1) + if (string.IsNullOrWhiteSpace(textBoxName.Text) || comboBoxType.SelectedIndex < 0) { throw new Exception("Имеются не заполненные поля"); } diff --git a/ProjectWarehouse/ProjectWarehouse/Forms/FormComponents.Designer.cs b/ProjectWarehouse/ProjectWarehouse/Forms/FormComponents.Designer.cs index a18bd0a..c1cb6af 100644 --- a/ProjectWarehouse/ProjectWarehouse/Forms/FormComponents.Designer.cs +++ b/ProjectWarehouse/ProjectWarehouse/Forms/FormComponents.Designer.cs @@ -107,6 +107,7 @@ Controls.Add(dataGridViewData); Controls.Add(panel1); Name = "FormComponents"; + StartPosition = FormStartPosition.CenterParent; Text = "Компоненты"; Load += FormComponents_Load; panel1.ResumeLayout(false); diff --git a/ProjectWarehouse/ProjectWarehouse/Forms/FormEmployee.Designer.cs b/ProjectWarehouse/ProjectWarehouse/Forms/FormEmployee.Designer.cs new file mode 100644 index 0000000..fa6af20 --- /dev/null +++ b/ProjectWarehouse/ProjectWarehouse/Forms/FormEmployee.Designer.cs @@ -0,0 +1,147 @@ +namespace ProjectWarehouse.Forms +{ + partial class FormEmployee + { + /// + /// 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() + { + labelName = new Label(); + labelLastName = new Label(); + labelPost = new Label(); + textBoxFirstName = new TextBox(); + textBoxLastName = new TextBox(); + buttonSave = new Button(); + buttonCancel = new Button(); + checkedListBoxPost = new CheckedListBox(); + SuspendLayout(); + // + // labelName + // + labelName.AutoSize = true; + labelName.Location = new Point(60, 28); + labelName.Name = "labelName"; + labelName.Size = new Size(31, 15); + labelName.TabIndex = 0; + labelName.Text = "Имя"; + // + // labelLastName + // + labelLastName.AutoSize = true; + labelLastName.Location = new Point(60, 67); + labelLastName.Name = "labelLastName"; + labelLastName.Size = new Size(58, 15); + labelLastName.TabIndex = 1; + labelLastName.Text = "Фамилия"; + // + // labelPost + // + labelPost.AutoSize = true; + labelPost.Location = new Point(60, 108); + labelPost.Name = "labelPost"; + labelPost.Size = new Size(69, 15); + labelPost.TabIndex = 2; + labelPost.Text = "Должность"; + // + // textBoxFirstName + // + textBoxFirstName.Location = new Point(177, 26); + textBoxFirstName.Margin = new Padding(3, 2, 3, 2); + textBoxFirstName.Name = "textBoxFirstName"; + textBoxFirstName.Size = new Size(133, 23); + textBoxFirstName.TabIndex = 4; + // + // textBoxLastName + // + textBoxLastName.Location = new Point(177, 64); + textBoxLastName.Margin = new Padding(3, 2, 3, 2); + textBoxLastName.Name = "textBoxLastName"; + textBoxLastName.Size = new Size(133, 23); + textBoxLastName.TabIndex = 5; + // + // buttonSave + // + buttonSave.Location = new Point(60, 211); + buttonSave.Margin = new Padding(3, 2, 3, 2); + buttonSave.Name = "buttonSave"; + buttonSave.Size = new Size(93, 22); + buttonSave.TabIndex = 6; + buttonSave.Text = "Сохранить"; + buttonSave.UseVisualStyleBackColor = true; + buttonSave.Click += ButtonSave_Click; + // + // buttonCancel + // + buttonCancel.Location = new Point(222, 211); + buttonCancel.Margin = new Padding(3, 2, 3, 2); + buttonCancel.Name = "buttonCancel"; + buttonCancel.Size = new Size(87, 22); + buttonCancel.TabIndex = 7; + buttonCancel.Text = "Отмена"; + buttonCancel.UseVisualStyleBackColor = true; + buttonCancel.Click += ButtonCancel_Click; + // + // checkedListBoxPost + // + checkedListBoxPost.FormattingEnabled = true; + checkedListBoxPost.Location = new Point(172, 108); + checkedListBoxPost.Margin = new Padding(3, 2, 3, 2); + checkedListBoxPost.Name = "checkedListBoxPost"; + checkedListBoxPost.Size = new Size(137, 76); + checkedListBoxPost.TabIndex = 8; + // + // FormEmployee + // + AutoScaleDimensions = new SizeF(7F, 15F); + AutoScaleMode = AutoScaleMode.Font; + ClientSize = new Size(398, 253); + Controls.Add(checkedListBoxPost); + Controls.Add(buttonCancel); + Controls.Add(buttonSave); + Controls.Add(textBoxLastName); + Controls.Add(textBoxFirstName); + Controls.Add(labelPost); + Controls.Add(labelLastName); + Controls.Add(labelName); + Margin = new Padding(3, 2, 3, 2); + Name = "FormEmployee"; + StartPosition = FormStartPosition.CenterParent; + Text = "Работник"; + ResumeLayout(false); + PerformLayout(); + } + + #endregion + + private Label labelName; + private Label labelLastName; + private Label labelPost; + private TextBox textBoxFirstName; + private TextBox textBoxLastName; + private Button buttonSave; + private Button buttonCancel; + private CheckedListBox checkedListBoxPost; + } +} \ No newline at end of file diff --git a/ProjectWarehouse/ProjectWarehouse/Forms/FormEmployee.cs b/ProjectWarehouse/ProjectWarehouse/Forms/FormEmployee.cs new file mode 100644 index 0000000..e87fae9 --- /dev/null +++ b/ProjectWarehouse/ProjectWarehouse/Forms/FormEmployee.cs @@ -0,0 +1,102 @@ +using Microsoft.VisualBasic.FileIO; +using ProjectWarehouse.Entities; +using ProjectWarehouse.Entities.Enums; +using ProjectWarehouse.Repositories; +using System.Windows.Forms; + +namespace ProjectWarehouse.Forms +{ + public partial class FormEmployee : Form + { + private readonly IEmployeeRepository _employeeRepository; + + private int? _employeeId; + + public int Id + { + set + { + try + { + var employee = _employeeRepository.ReadEmployeeById(value); + if (employee == null) + { + throw new InvalidDataException(nameof(employee)); + } + + textBoxFirstName.Text = employee.FirstName; + textBoxLastName.Text = employee.LastName; + foreach (EmployeePost elem in Enum.GetValues(typeof(EmployeePost))) + { + if ((elem & employee.EmployeePost) != 0) + { + + checkedListBoxPost.SetItemChecked(checkedListBoxPost.Items.IndexOf(elem), true); + } + } + + _employeeId = value; + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Ошибка при получении данных", MessageBoxButtons.OK, MessageBoxIcon.Error); + return; + } + } + } + + public FormEmployee(IEmployeeRepository employeeRepository) + { + InitializeComponent(); + _employeeRepository = employeeRepository ?? + throw new ArgumentNullException(nameof(employeeRepository)); + + foreach (var elem in Enum.GetValues(typeof(EmployeePost))) + { + checkedListBoxPost.Items.Add(elem); + } + } + + private void ButtonSave_Click(object sender, EventArgs e) + { + try + { + if (string.IsNullOrWhiteSpace(textBoxFirstName.Text) || string.IsNullOrWhiteSpace(textBoxLastName.Text) || checkedListBoxPost.CheckedItems.Count == 0) + { + throw new Exception("Имеются незаполненные поля"); + } + + if (_employeeId.HasValue) + { + + _employeeRepository.UpdateEmployee(CreateEmployee(_employeeId.Value)); + } + else + { + + _employeeRepository.CreateEmployee(CreateEmployee(0)); + } + + Close(); + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Ошибка при сохранении", + MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void ButtonCancel_Click(object sender, EventArgs e) => Close(); + + private Employee CreateEmployee(int id) + { + EmployeePost employeePost = EmployeePost.None; + foreach (var elem in checkedListBoxPost.CheckedItems) + { + employeePost |= (EmployeePost)elem; + } + + return Employee.CreateEntity(id, textBoxFirstName.Text, textBoxLastName.Text, employeePost); + } + } +} diff --git a/ProjectWarehouse/ProjectWarehouse/Forms/FormMovement.resx b/ProjectWarehouse/ProjectWarehouse/Forms/FormEmployee.resx similarity index 100% rename from ProjectWarehouse/ProjectWarehouse/Forms/FormMovement.resx rename to ProjectWarehouse/ProjectWarehouse/Forms/FormEmployee.resx diff --git a/ProjectWarehouse/ProjectWarehouse/Forms/FormEmployees.Designer.cs b/ProjectWarehouse/ProjectWarehouse/Forms/FormEmployees.Designer.cs new file mode 100644 index 0000000..e8ee5c3 --- /dev/null +++ b/ProjectWarehouse/ProjectWarehouse/Forms/FormEmployees.Designer.cs @@ -0,0 +1,126 @@ +namespace ProjectWarehouse.Forms +{ + partial class FormEmployees + { + /// + /// 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() + { + panel1 = new Panel(); + ButtonDel = new Button(); + ButtonUpd = new Button(); + ButtonAdd = new Button(); + dataGridViewData = new DataGridView(); + panel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)dataGridViewData).BeginInit(); + SuspendLayout(); + // + // panel1 + // + panel1.Controls.Add(ButtonDel); + panel1.Controls.Add(ButtonUpd); + panel1.Controls.Add(ButtonAdd); + panel1.Dock = DockStyle.Right; + panel1.Location = new Point(685, 0); + panel1.Name = "panel1"; + panel1.Size = new Size(115, 450); + panel1.TabIndex = 0; + // + // ButtonDel + // + ButtonDel.BackgroundImage = Properties.Resources.минус; + ButtonDel.BackgroundImageLayout = ImageLayout.Stretch; + ButtonDel.Location = new Point(19, 264); + ButtonDel.Name = "ButtonDel"; + ButtonDel.Size = new Size(75, 74); + ButtonDel.TabIndex = 2; + ButtonDel.UseVisualStyleBackColor = true; + ButtonDel.Click += ButtonDel_Click; + // + // ButtonUpd + // + ButtonUpd.BackgroundImage = Properties.Resources.редактировать; + ButtonUpd.BackgroundImageLayout = ImageLayout.Stretch; + ButtonUpd.Location = new Point(19, 135); + ButtonUpd.Name = "ButtonUpd"; + ButtonUpd.Size = new Size(75, 74); + ButtonUpd.TabIndex = 1; + ButtonUpd.UseVisualStyleBackColor = true; + ButtonUpd.Click += ButtonUpd_Click; + // + // ButtonAdd + // + ButtonAdd.BackgroundImage = Properties.Resources.плюс; + ButtonAdd.BackgroundImageLayout = ImageLayout.Stretch; + ButtonAdd.Location = new Point(19, 24); + ButtonAdd.Name = "ButtonAdd"; + ButtonAdd.Size = new Size(75, 74); + ButtonAdd.TabIndex = 0; + ButtonAdd.UseVisualStyleBackColor = true; + ButtonAdd.Click += ButtonAdd_Click; + // + // dataGridViewData + // + dataGridViewData.AllowUserToAddRows = false; + dataGridViewData.AllowUserToDeleteRows = false; + dataGridViewData.AllowUserToResizeColumns = false; + dataGridViewData.AllowUserToResizeRows = false; + dataGridViewData.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill; + dataGridViewData.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize; + dataGridViewData.Dock = DockStyle.Fill; + dataGridViewData.Location = new Point(0, 0); + dataGridViewData.MultiSelect = false; + dataGridViewData.Name = "dataGridViewData"; + dataGridViewData.ReadOnly = true; + dataGridViewData.RowHeadersVisible = false; + dataGridViewData.SelectionMode = DataGridViewSelectionMode.FullRowSelect; + dataGridViewData.Size = new Size(685, 450); + dataGridViewData.TabIndex = 1; + // + // FormEmployees + // + AutoScaleDimensions = new SizeF(7F, 15F); + AutoScaleMode = AutoScaleMode.Font; + ClientSize = new Size(800, 450); + Controls.Add(dataGridViewData); + Controls.Add(panel1); + Name = "FormEmployees"; + StartPosition = FormStartPosition.CenterParent; + Text = "Работники"; + Load += FormEmployees_Load; + panel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)dataGridViewData).EndInit(); + ResumeLayout(false); + } + + #endregion + + private Panel panel1; + private Button ButtonDel; + private Button ButtonUpd; + private Button ButtonAdd; + private DataGridView dataGridViewData; + } +} \ No newline at end of file diff --git a/ProjectWarehouse/ProjectWarehouse/Forms/FormEmployees.cs b/ProjectWarehouse/ProjectWarehouse/Forms/FormEmployees.cs new file mode 100644 index 0000000..0c89eaa --- /dev/null +++ b/ProjectWarehouse/ProjectWarehouse/Forms/FormEmployees.cs @@ -0,0 +1,104 @@ +using ProjectWarehouse.Repositories; +using Unity; + +namespace ProjectWarehouse.Forms +{ + public partial class FormEmployees : Form + { + private readonly IUnityContainer _container; + + private readonly IEmployeeRepository _employeeRepository; + + public FormEmployees(IUnityContainer container, IEmployeeRepository employeeRepository) + { + InitializeComponent(); + _container = container ?? + throw new ArgumentNullException(nameof(container)); + _employeeRepository = employeeRepository ?? + throw new ArgumentNullException(nameof(employeeRepository)); + } + + private void FormEmployees_Load(object sender, EventArgs e) + { + try + { + LoadList(); + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Ошибка при загрузке", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void ButtonAdd_Click(object sender, EventArgs e) + { + try + { + _container.Resolve().ShowDialog(); + LoadList(); + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Ошибка при добавлении", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void ButtonUpd_Click(object sender, EventArgs e) + { + if (!TryGetIdentifierFromSelectedRow(out var findId)) + { + return; + } + + try + { + var form = _container.Resolve(); + form.Id = findId; + form.ShowDialog(); + LoadList(); + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Ошибка при изменении", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void ButtonDel_Click(object sender, EventArgs e) + { + if (!TryGetIdentifierFromSelectedRow(out var findId)) + { + return; + } + + if (MessageBox.Show("Удалить запись?", "Удаление", MessageBoxButtons.YesNo) != DialogResult.Yes) + { + return; + } + + try + { + _employeeRepository.DeleteEmployee(findId); + LoadList(); + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Ошибка при удалении", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void LoadList() => dataGridViewData.DataSource = _employeeRepository.ReadEmployees(); + + private bool TryGetIdentifierFromSelectedRow(out int id) + { + id = 0; + if (dataGridViewData.SelectedRows.Count < 1) + { + MessageBox.Show("Нет выбранной записи", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); + return false; + } + + id = Convert.ToInt32(dataGridViewData.SelectedRows[0].Cells["Id"].Value); + return true; + } + } +} diff --git a/ProjectWarehouse/ProjectWarehouse/Forms/FormMovements.resx b/ProjectWarehouse/ProjectWarehouse/Forms/FormEmployees.resx similarity index 100% rename from ProjectWarehouse/ProjectWarehouse/Forms/FormMovements.resx rename to ProjectWarehouse/ProjectWarehouse/Forms/FormEmployees.resx diff --git a/ProjectWarehouse/ProjectWarehouse/Forms/FormMovement.Designer.cs b/ProjectWarehouse/ProjectWarehouse/Forms/FormInventory.Designer.cs similarity index 95% rename from ProjectWarehouse/ProjectWarehouse/Forms/FormMovement.Designer.cs rename to ProjectWarehouse/ProjectWarehouse/Forms/FormInventory.Designer.cs index 539b7ae..a668457 100644 --- a/ProjectWarehouse/ProjectWarehouse/Forms/FormMovement.Designer.cs +++ b/ProjectWarehouse/ProjectWarehouse/Forms/FormInventory.Designer.cs @@ -1,6 +1,6 @@ namespace ProjectWarehouse.Forms { - partial class FormMovement + partial class FormInventory { /// /// Required designer variable. @@ -89,7 +89,7 @@ // buttonSave.Location = new Point(61, 162); buttonSave.Name = "buttonSave"; - buttonSave.Size = new Size(75, 23); + buttonSave.Size = new Size(87, 23); buttonSave.TabIndex = 6; buttonSave.Text = "Сохранить"; buttonSave.UseVisualStyleBackColor = true; @@ -105,7 +105,7 @@ buttonCancel.UseVisualStyleBackColor = true; buttonCancel.Click += ButtonCancel_Click; // - // FormMovement + // FormInventory // AutoScaleDimensions = new SizeF(7F, 15F); AutoScaleMode = AutoScaleMode.Font; @@ -117,8 +117,9 @@ Controls.Add(comboBoxComponent); Controls.Add(labelCount); Controls.Add(labelComponent); - Name = "FormMovement"; - Text = "Перемещение"; + Name = "FormInventory"; + StartPosition = FormStartPosition.CenterParent; + Text = "Добавление на склад"; ((System.ComponentModel.ISupportInitialize)numericUpDownCount).EndInit(); ResumeLayout(false); PerformLayout(); diff --git a/ProjectWarehouse/ProjectWarehouse/Forms/FormInventory.cs b/ProjectWarehouse/ProjectWarehouse/Forms/FormInventory.cs new file mode 100644 index 0000000..76f17ac --- /dev/null +++ b/ProjectWarehouse/ProjectWarehouse/Forms/FormInventory.cs @@ -0,0 +1,83 @@ +using ProjectWarehouse.Entities; +using ProjectWarehouse.Entities.Enums; +using ProjectWarehouse.Repositories; +using ProjectWarehouse.Repositories.Implementations; +using System.Windows.Forms; + +namespace ProjectWarehouse.Forms +{ + public partial class FormInventory : Form + { + private readonly IInventoryRepository _inventoryRepository; + + private int? _inventoryId; + + public int Id + { + set + { + try + { + var inventory = _inventoryRepository.ReadInventoryById(value); + if (inventory == null) + { + throw new InvalidDataException(nameof(inventory)); + } + + comboBoxComponent.SelectedValue = inventory.ComponentsID; + numericUpDownCount.Value = (decimal)inventory.Quantity; + checkBoxIsDefect.Checked = inventory.IsDefect; + + _inventoryId = value; + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Ошибка при получении данных", MessageBoxButtons.OK, MessageBoxIcon.Error); + return; + } + } + } + + public FormInventory(IInventoryRepository inventoryRepository, IComponentsRepository componentsRepository) + { + InitializeComponent(); + _inventoryRepository = inventoryRepository ?? + throw new ArgumentNullException(nameof(inventoryRepository)); + + comboBoxComponent.DataSource = componentsRepository.ReadComponents(); + comboBoxComponent.DisplayMember = "Name"; + comboBoxComponent.ValueMember = "Id"; + } + + private void ButtonSave_Click(object sender, EventArgs e) + { + try + { + if (comboBoxComponent.SelectedIndex < 0) + { + throw new Exception("Имеются не заполненные поля"); + } + + if (_inventoryId.HasValue) + { + _inventoryRepository.UpdateInventory(CreateInventory(_inventoryId.Value)); + } + else + { + _inventoryRepository.CreateInventory(CreateInventory(0)); + } + + Close(); + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Ошибка при сохранении", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void ButtonCancel_Click(object sender, EventArgs e) => Close(); + + private Inventory CreateInventory(int id) => + Inventory.CreateEntity(id, (double)numericUpDownCount.Value, checkBoxIsDefect.Checked, (int)comboBoxComponent.SelectedValue!); + } +} diff --git a/ProjectWarehouse/ProjectWarehouse/Forms/FormInventory.resx b/ProjectWarehouse/ProjectWarehouse/Forms/FormInventory.resx new file mode 100644 index 0000000..af32865 --- /dev/null +++ b/ProjectWarehouse/ProjectWarehouse/Forms/FormInventory.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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/ProjectWarehouse/ProjectWarehouse/Forms/FormMovements.Designer.cs b/ProjectWarehouse/ProjectWarehouse/Forms/FormInventorys.Designer.cs similarity index 71% rename from ProjectWarehouse/ProjectWarehouse/Forms/FormMovements.Designer.cs rename to ProjectWarehouse/ProjectWarehouse/Forms/FormInventorys.Designer.cs index 5d73a1e..e1f82ca 100644 --- a/ProjectWarehouse/ProjectWarehouse/Forms/FormMovements.Designer.cs +++ b/ProjectWarehouse/ProjectWarehouse/Forms/FormInventorys.Designer.cs @@ -1,6 +1,6 @@ namespace ProjectWarehouse.Forms { - partial class FormMovements + partial class FormInventorys { /// /// Required designer variable. @@ -31,13 +31,17 @@ panel1 = new Panel(); ButtonAdd = new Button(); dataGridViewData = new DataGridView(); + ButtonDel = new Button(); + ButtonUpd = new Button(); panel1.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)dataGridViewData).BeginInit(); SuspendLayout(); // // panel1 // + panel1.Controls.Add(ButtonDel); panel1.Controls.Add(ButtonAdd); + panel1.Controls.Add(ButtonUpd); panel1.Dock = DockStyle.Right; panel1.Location = new Point(685, 0); panel1.Name = "panel1"; @@ -73,16 +77,39 @@ dataGridViewData.Size = new Size(685, 450); dataGridViewData.TabIndex = 1; // - // FormMovements + // ButtonDel + // + ButtonDel.BackgroundImage = Properties.Resources.минус; + ButtonDel.BackgroundImageLayout = ImageLayout.Stretch; + ButtonDel.Location = new Point(19, 284); + ButtonDel.Name = "ButtonDel"; + ButtonDel.Size = new Size(75, 74); + ButtonDel.TabIndex = 4; + ButtonDel.UseVisualStyleBackColor = true; + ButtonDel.Click += ButtonDel_Click; + // + // ButtonUpd + // + ButtonUpd.BackgroundImage = Properties.Resources.редактировать; + ButtonUpd.BackgroundImageLayout = ImageLayout.Stretch; + ButtonUpd.Location = new Point(19, 155); + ButtonUpd.Name = "ButtonUpd"; + ButtonUpd.Size = new Size(75, 74); + ButtonUpd.TabIndex = 3; + ButtonUpd.UseVisualStyleBackColor = true; + ButtonUpd.Click += ButtonUpd_Click; + // + // FormInventorys // AutoScaleDimensions = new SizeF(7F, 15F); AutoScaleMode = AutoScaleMode.Font; ClientSize = new Size(800, 450); Controls.Add(dataGridViewData); Controls.Add(panel1); - Name = "FormMovements"; - Text = "Движение компонентов"; - Load += FormMovements_Load; + Name = "FormInventorys"; + StartPosition = FormStartPosition.CenterParent; + Text = "Склад"; + Load += FormInventorys_Load; panel1.ResumeLayout(false); ((System.ComponentModel.ISupportInitialize)dataGridViewData).EndInit(); ResumeLayout(false); @@ -93,5 +120,7 @@ private Panel panel1; private Button ButtonAdd; private DataGridView dataGridViewData; + private Button ButtonDel; + private Button ButtonUpd; } } \ No newline at end of file diff --git a/ProjectWarehouse/ProjectWarehouse/Forms/FormInventorys.cs b/ProjectWarehouse/ProjectWarehouse/Forms/FormInventorys.cs new file mode 100644 index 0000000..57de7c2 --- /dev/null +++ b/ProjectWarehouse/ProjectWarehouse/Forms/FormInventorys.cs @@ -0,0 +1,105 @@ +using ProjectWarehouse.Repositories; +using ProjectWarehouse.Repositories.Implementations; +using Unity; + +namespace ProjectWarehouse.Forms +{ + public partial class FormInventorys : Form + { + private readonly IUnityContainer _container; + + private readonly IInventoryRepository _inventoryRepository; + + public FormInventorys(IUnityContainer container, IInventoryRepository inventoryRepository) + { + InitializeComponent(); + _container = container ?? + throw new ArgumentNullException(nameof(container)); + _inventoryRepository = inventoryRepository ?? + throw new ArgumentNullException(nameof(inventoryRepository)); + } + + private void FormInventorys_Load(object sender, EventArgs e) + { + try + { + LoadList(); + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Ошибка при загрузке", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void ButtonAdd_Click(object sender, EventArgs e) + { + try + { + _container.Resolve().ShowDialog(); + LoadList(); + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Ошибка при добавлении", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void LoadList() => dataGridViewData.DataSource = _inventoryRepository.ReadInventory(); + + private void ButtonUpd_Click(object sender, EventArgs e) + { + if (!TryGetIdentifierFromSelectedRow(out var findId)) + { + return; + } + + try + { + var form = _container.Resolve(); + form.Id = findId; + form.ShowDialog(); + LoadList(); + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Ошибка при изменении", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void ButtonDel_Click(object sender, EventArgs e) + { + if (!TryGetIdentifierFromSelectedRow(out var findId)) + { + return; + } + + if (MessageBox.Show("Удалить запись?", "Удаление", MessageBoxButtons.YesNo) != DialogResult.Yes) + { + return; + } + + try + { + _inventoryRepository.DeleteInventory(findId); + LoadList(); + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Ошибка при удалении", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private bool TryGetIdentifierFromSelectedRow(out int id) + { + id = 0; + if (dataGridViewData.SelectedRows.Count < 1) + { + MessageBox.Show("Нет выбранной записи", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); + return false; + } + + id = Convert.ToInt32(dataGridViewData.SelectedRows[0].Cells["Id"].Value); + return true; + } + } +} diff --git a/ProjectWarehouse/ProjectWarehouse/Forms/FormInventorys.resx b/ProjectWarehouse/ProjectWarehouse/Forms/FormInventorys.resx new file mode 100644 index 0000000..af32865 --- /dev/null +++ b/ProjectWarehouse/ProjectWarehouse/Forms/FormInventorys.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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/ProjectWarehouse/ProjectWarehouse/Forms/FormMovement.cs b/ProjectWarehouse/ProjectWarehouse/Forms/FormMovement.cs deleted file mode 100644 index 399056f..0000000 --- a/ProjectWarehouse/ProjectWarehouse/Forms/FormMovement.cs +++ /dev/null @@ -1,42 +0,0 @@ -using ProjectWarehouse.Entities; -using ProjectWarehouse.Repositories; - -namespace ProjectWarehouse.Forms -{ - public partial class FormMovement : Form - { - private readonly IMovement_ComponentsRepository _movementRepository; - - public FormMovement(IMovement_ComponentsRepository movementRepository, IComponentsRepository componentsRepository) - { - InitializeComponent(); - _movementRepository = movementRepository ?? - throw new ArgumentNullException(nameof(movementRepository)); - - comboBoxComponent.DataSource = componentsRepository.ReadComponents(); - comboBoxComponent.DisplayMember = "Name"; - comboBoxComponent.ValueMember = "Id"; - } - - private void ButtonSave_Click(object sender, EventArgs e) - { - try - { - if (comboBoxComponent.SelectedIndex < 1) - { - throw new Exception("Имеются не заполненные поля"); - } - - _movementRepository.CreateMovement(Movement_Components.CreateEntity(0, (double)numericUpDownCount.Value, checkBoxIsDefect.Checked, (int)comboBoxComponent.SelectedValue!)); - - Close(); - } - catch (Exception ex) - { - MessageBox.Show(ex.Message, "Ошибка при сохранении", MessageBoxButtons.OK, MessageBoxIcon.Error); - } - } - - private void ButtonCancel_Click(object sender, EventArgs e) => Close(); - } -} diff --git a/ProjectWarehouse/ProjectWarehouse/Forms/FormMovements.cs b/ProjectWarehouse/ProjectWarehouse/Forms/FormMovements.cs deleted file mode 100644 index 85f13cb..0000000 --- a/ProjectWarehouse/ProjectWarehouse/Forms/FormMovements.cs +++ /dev/null @@ -1,48 +0,0 @@ -using ProjectWarehouse.Repositories; -using Unity; - -namespace ProjectWarehouse.Forms -{ - public partial class FormMovements : Form - { - private readonly IUnityContainer _container; - - private readonly IMovement_ComponentsRepository _movementRepository; - - public FormMovements(IUnityContainer container, IMovement_ComponentsRepository movementRepository) - { - InitializeComponent(); - _container = container ?? - throw new ArgumentNullException(nameof(container)); - _movementRepository = movementRepository ?? - throw new ArgumentNullException(nameof(movementRepository)); - } - - private void FormMovements_Load(object sender, EventArgs e) - { - try - { - LoadList(); - } - catch (Exception ex) - { - MessageBox.Show(ex.Message, "Ошибка при загрузке", MessageBoxButtons.OK, MessageBoxIcon.Error); - } - } - - private void ButtonAdd_Click(object sender, EventArgs e) - { - try - { - _container.Resolve().ShowDialog(); - LoadList(); - } - catch (Exception ex) - { - MessageBox.Show(ex.Message, "Ошибка при добавлении", MessageBoxButtons.OK, MessageBoxIcon.Error); - } - } - - private void LoadList() => dataGridViewData.DataSource = _movementRepository.ReadMovement(); - } -} diff --git a/ProjectWarehouse/ProjectWarehouse/Forms/FormOrderRequest.Designer.cs b/ProjectWarehouse/ProjectWarehouse/Forms/FormOrderRequest.Designer.cs index f24d6e1..023280f 100644 --- a/ProjectWarehouse/ProjectWarehouse/Forms/FormOrderRequest.Designer.cs +++ b/ProjectWarehouse/ProjectWarehouse/Forms/FormOrderRequest.Designer.cs @@ -32,6 +32,8 @@ labelComponent = new Label(); comboBoxComponent = new ComboBox(); numericUpDownCount = new NumericUpDown(); + buttonSave = new Button(); + buttonCancel = new Button(); ((System.ComponentModel.ISupportInitialize)numericUpDownCount).BeginInit(); SuspendLayout(); // @@ -72,16 +74,41 @@ numericUpDownCount.TabIndex = 3; numericUpDownCount.Value = new decimal(new int[] { 1, 0, 0, 131072 }); // + // buttonSave + // + buttonSave.Location = new Point(51, 112); + buttonSave.Margin = new Padding(3, 2, 3, 2); + buttonSave.Name = "buttonSave"; + buttonSave.Size = new Size(92, 22); + buttonSave.TabIndex = 4; + buttonSave.Text = "Сохранить"; + buttonSave.UseVisualStyleBackColor = true; + buttonSave.Click += ButtonSave_Click; + // + // buttonCancel + // + buttonCancel.Location = new Point(218, 112); + buttonCancel.Margin = new Padding(3, 2, 3, 2); + buttonCancel.Name = "buttonCancel"; + buttonCancel.Size = new Size(82, 22); + buttonCancel.TabIndex = 5; + buttonCancel.Text = "Отмена"; + buttonCancel.UseVisualStyleBackColor = true; + buttonCancel.Click += ButtonCancel_Click; + // // FormOrderRequest // AutoScaleDimensions = new SizeF(7F, 15F); AutoScaleMode = AutoScaleMode.Font; ClientSize = new Size(375, 151); + Controls.Add(buttonCancel); + Controls.Add(buttonSave); Controls.Add(numericUpDownCount); Controls.Add(comboBoxComponent); Controls.Add(labelComponent); Controls.Add(labelCount); Name = "FormOrderRequest"; + StartPosition = FormStartPosition.CenterParent; Text = "Заявка"; ((System.ComponentModel.ISupportInitialize)numericUpDownCount).EndInit(); ResumeLayout(false); @@ -94,5 +121,7 @@ private Label labelComponent; private ComboBox comboBoxComponent; private NumericUpDown numericUpDownCount; + private Button buttonSave; + private Button buttonCancel; } } \ No newline at end of file diff --git a/ProjectWarehouse/ProjectWarehouse/Forms/FormOrderRequest.cs b/ProjectWarehouse/ProjectWarehouse/Forms/FormOrderRequest.cs index b9f12ef..3b087b5 100644 --- a/ProjectWarehouse/ProjectWarehouse/Forms/FormOrderRequest.cs +++ b/ProjectWarehouse/ProjectWarehouse/Forms/FormOrderRequest.cs @@ -1,20 +1,42 @@ -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; +using ProjectWarehouse.Entities; +using ProjectWarehouse.Repositories; namespace ProjectWarehouse.Forms { public partial class FormOrderRequest : Form { - public FormOrderRequest() + private readonly IOrderRequestRepository _orderRepository; + + public FormOrderRequest(IOrderRequestRepository orderRepository, IComponentsRepository componentsRepository) { InitializeComponent(); + _orderRepository = orderRepository ?? + throw new ArgumentNullException(nameof(orderRepository)); + + comboBoxComponent.DataSource = componentsRepository.ReadComponents(); + comboBoxComponent.DisplayMember = "Name"; + comboBoxComponent.ValueMember = "Id"; } + + private void ButtonSave_Click(object sender, EventArgs e) + { + try + { + if (comboBoxComponent.SelectedIndex < 0) + { + throw new Exception("Имеются не заполненные поля"); + } + + _orderRepository.CreateOrderRequest(OrderRequest.CreateEntity(0, (double)numericUpDownCount.Value, (int)comboBoxComponent.SelectedValue!)); + + Close(); + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Ошибка при сохранении", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void ButtonCancel_Click(object sender, EventArgs e) => Close(); } } diff --git a/ProjectWarehouse/ProjectWarehouse/Forms/FormOrderRequests.Designer.cs b/ProjectWarehouse/ProjectWarehouse/Forms/FormOrderRequests.Designer.cs index 69b95b0..6cfe02b 100644 --- a/ProjectWarehouse/ProjectWarehouse/Forms/FormOrderRequests.Designer.cs +++ b/ProjectWarehouse/ProjectWarehouse/Forms/FormOrderRequests.Designer.cs @@ -81,6 +81,7 @@ Controls.Add(dataGridViewData); Controls.Add(panel1); Name = "FormOrderRequests"; + StartPosition = FormStartPosition.CenterParent; Text = "Заявки"; Load += FormOrderRequests_Load; panel1.ResumeLayout(false); diff --git a/ProjectWarehouse/ProjectWarehouse/Forms/FormProduction.Designer.cs b/ProjectWarehouse/ProjectWarehouse/Forms/FormProduction.Designer.cs index 618b3a5..a42a9a5 100644 --- a/ProjectWarehouse/ProjectWarehouse/Forms/FormProduction.Designer.cs +++ b/ProjectWarehouse/ProjectWarehouse/Forms/FormProduction.Designer.cs @@ -34,12 +34,20 @@ textBoxDescription = new TextBox(); buttonSave = new Button(); buttonCancel = new Button(); + labelEmployee = new Label(); + comboBoxEmployee = new ComboBox(); + groupBoxComponents = new GroupBox(); + dataGridViewComponents = new DataGridView(); + ColumnComponent = new DataGridViewComboBoxColumn(); + ColumnCount = new DataGridViewTextBoxColumn(); + groupBoxComponents.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)dataGridViewComponents).BeginInit(); SuspendLayout(); // // labelName // labelName.AutoSize = true; - labelName.Location = new Point(38, 50); + labelName.Location = new Point(38, 14); labelName.Name = "labelName"; labelName.Size = new Size(122, 15); labelName.TabIndex = 0; @@ -48,7 +56,7 @@ // labelDescription // labelDescription.AutoSize = true; - labelDescription.Location = new Point(38, 121); + labelDescription.Location = new Point(36, 58); labelDescription.Name = "labelDescription"; labelDescription.Size = new Size(125, 15); labelDescription.TabIndex = 1; @@ -56,43 +64,108 @@ // // textBoxName // - textBoxName.Location = new Point(174, 47); + textBoxName.Location = new Point(191, 14); textBoxName.Name = "textBoxName"; - textBoxName.Size = new Size(100, 23); + textBoxName.Size = new Size(165, 23); textBoxName.TabIndex = 2; // // textBoxDescription // - textBoxDescription.Location = new Point(174, 118); + textBoxDescription.Location = new Point(191, 56); textBoxDescription.Name = "textBoxDescription"; - textBoxDescription.Size = new Size(100, 23); + textBoxDescription.Size = new Size(165, 23); textBoxDescription.TabIndex = 3; // // buttonSave // - buttonSave.Location = new Point(85, 194); + buttonSave.Location = new Point(63, 380); buttonSave.Name = "buttonSave"; - buttonSave.Size = new Size(75, 23); + buttonSave.Size = new Size(94, 23); buttonSave.TabIndex = 4; buttonSave.Text = "Сохранить"; buttonSave.UseVisualStyleBackColor = true; - buttonSave.Click += buttonSave_Click; + buttonSave.Click += ButtonSave_Click; // // buttonCancel // - buttonCancel.Location = new Point(263, 194); + buttonCancel.Location = new Point(260, 380); buttonCancel.Name = "buttonCancel"; buttonCancel.Size = new Size(75, 23); buttonCancel.TabIndex = 5; buttonCancel.Text = "Отмена"; buttonCancel.UseVisualStyleBackColor = true; - buttonCancel.Click += buttonCancel_Click; + buttonCancel.Click += ButtonCancel_Click; + // + // labelEmployee + // + labelEmployee.AutoSize = true; + labelEmployee.Location = new Point(63, 102); + labelEmployee.Name = "labelEmployee"; + labelEmployee.Size = new Size(59, 15); + labelEmployee.TabIndex = 8; + labelEmployee.Text = "Работник"; + // + // comboBoxEmployee + // + comboBoxEmployee.DropDownStyle = ComboBoxStyle.DropDownList; + comboBoxEmployee.FormattingEnabled = true; + comboBoxEmployee.Location = new Point(192, 102); + comboBoxEmployee.Margin = new Padding(3, 2, 3, 2); + comboBoxEmployee.Name = "comboBoxEmployee"; + comboBoxEmployee.Size = new Size(164, 23); + comboBoxEmployee.TabIndex = 7; + // + // groupBoxComponents + // + groupBoxComponents.Anchor = AnchorStyles.Top | AnchorStyles.Bottom | AnchorStyles.Left | AnchorStyles.Right; + groupBoxComponents.Controls.Add(dataGridViewComponents); + groupBoxComponents.Location = new Point(23, 144); + groupBoxComponents.Margin = new Padding(3, 2, 3, 2); + groupBoxComponents.Name = "groupBoxComponents"; + groupBoxComponents.Padding = new Padding(3, 2, 3, 2); + groupBoxComponents.Size = new Size(349, 220); + groupBoxComponents.TabIndex = 6; + groupBoxComponents.TabStop = false; + groupBoxComponents.Text = "Комплектующие"; + // + // dataGridViewComponents + // + dataGridViewComponents.AllowUserToResizeColumns = false; + dataGridViewComponents.AllowUserToResizeRows = false; + dataGridViewComponents.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill; + dataGridViewComponents.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize; + dataGridViewComponents.Columns.AddRange(new DataGridViewColumn[] { ColumnComponent, ColumnCount }); + dataGridViewComponents.Dock = DockStyle.Fill; + dataGridViewComponents.Location = new Point(3, 18); + dataGridViewComponents.Margin = new Padding(3, 2, 3, 2); + dataGridViewComponents.MultiSelect = false; + dataGridViewComponents.Name = "dataGridViewComponents"; + dataGridViewComponents.RowHeadersVisible = false; + dataGridViewComponents.RowHeadersWidth = 51; + dataGridViewComponents.SelectionMode = DataGridViewSelectionMode.FullRowSelect; + dataGridViewComponents.Size = new Size(343, 200); + dataGridViewComponents.TabIndex = 0; + // + // ColumnComponent + // + ColumnComponent.HeaderText = "Компонент"; + ColumnComponent.MinimumWidth = 6; + ColumnComponent.Name = "ColumnComponent"; + // + // ColumnCount + // + ColumnCount.HeaderText = "Количество"; + ColumnCount.MinimumWidth = 6; + ColumnCount.Name = "ColumnCount"; // // FormProduction // AutoScaleDimensions = new SizeF(7F, 15F); AutoScaleMode = AutoScaleMode.Font; - ClientSize = new Size(398, 251); + ClientSize = new Size(398, 415); + Controls.Add(labelEmployee); + Controls.Add(comboBoxEmployee); + Controls.Add(groupBoxComponents); Controls.Add(buttonCancel); Controls.Add(buttonSave); Controls.Add(textBoxDescription); @@ -102,6 +175,8 @@ Name = "FormProduction"; StartPosition = FormStartPosition.CenterParent; Text = "Продукция"; + groupBoxComponents.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)dataGridViewComponents).EndInit(); ResumeLayout(false); PerformLayout(); } @@ -114,5 +189,11 @@ private TextBox textBoxDescription; private Button buttonSave; private Button buttonCancel; + private Label labelEmployee; + private ComboBox comboBoxEmployee; + private GroupBox groupBoxComponents; + private DataGridView dataGridViewComponents; + private DataGridViewComboBoxColumn ColumnComponent; + private DataGridViewTextBoxColumn ColumnCount; } } \ No newline at end of file diff --git a/ProjectWarehouse/ProjectWarehouse/Forms/FormProduction.cs b/ProjectWarehouse/ProjectWarehouse/Forms/FormProduction.cs index 74dd1e7..f17da82 100644 --- a/ProjectWarehouse/ProjectWarehouse/Forms/FormProduction.cs +++ b/ProjectWarehouse/ProjectWarehouse/Forms/FormProduction.cs @@ -33,18 +33,26 @@ namespace ProjectWarehouse.Forms } } - public FormProduction(IProductionRepository productionRepository) + public FormProduction(IProductionRepository productionRepository, IEmployeeRepository employeeRepository, IComponentsRepository componentsRepository) { InitializeComponent(); _productionRepository = productionRepository ?? throw new ArgumentNullException(nameof(productionRepository)); + + comboBoxEmployee.DataSource = employeeRepository.ReadEmployees(); + comboBoxEmployee.DisplayMember = "FirstName"; + comboBoxEmployee.ValueMember = "Id"; + + ColumnComponent.DataSource = componentsRepository.ReadComponents(); + ColumnComponent.DisplayMember = "Name"; + ColumnComponent.ValueMember = "Id"; } - private void buttonSave_Click(object sender, EventArgs e) + private void ButtonSave_Click(object sender, EventArgs e) { try { - if (string.IsNullOrWhiteSpace(textBoxName.Text) || string.IsNullOrWhiteSpace(textBoxDescription.Text)) + if (string.IsNullOrWhiteSpace(textBoxName.Text) || string.IsNullOrWhiteSpace(textBoxDescription.Text) || dataGridViewComponents.RowCount < 1 || comboBoxEmployee.SelectedIndex < 0) { throw new Exception("Имеются незаполненные поля"); } @@ -66,8 +74,26 @@ namespace ProjectWarehouse.Forms } } - private void buttonCancel_Click(object sender, EventArgs e) => Close(); + private void ButtonCancel_Click(object sender, EventArgs e) => Close(); - private Production CreateProduction(int id) => Production.CreateEntity(id, textBoxName.Text, textBoxDescription.Text); + private List CreateListComponents_ProductionsFromDataGrid() + { + var list = new List(); + foreach (DataGridViewRow row in dataGridViewComponents.Rows) + { + if (row.Cells["ColumnComponents"].Value == null || + row.Cells["ColumnCount"].Value == null) + { + continue; + } + list.Add(Components_Production.CreateElement(0, + Convert.ToInt32(row.Cells["ColumnComponents"].Value), + Convert.ToInt32(row.Cells["ColumnCount"].Value))); + } + return list; + } + + + private Production CreateProduction(int id) => Production.CreateEntity(id, textBoxName.Text, textBoxDescription.Text, (int)comboBoxEmployee.SelectedItem!, CreateListComponents_ProductionsFromDataGrid()); } } diff --git a/ProjectWarehouse/ProjectWarehouse/Forms/FormProduction.resx b/ProjectWarehouse/ProjectWarehouse/Forms/FormProduction.resx index af32865..4793a9a 100644 --- a/ProjectWarehouse/ProjectWarehouse/Forms/FormProduction.resx +++ b/ProjectWarehouse/ProjectWarehouse/Forms/FormProduction.resx @@ -117,4 +117,10 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + True + + + True + \ No newline at end of file diff --git a/ProjectWarehouse/ProjectWarehouse/Forms/FormProductions.Designer.cs b/ProjectWarehouse/ProjectWarehouse/Forms/FormProductions.Designer.cs index 1546393..53646dc 100644 --- a/ProjectWarehouse/ProjectWarehouse/Forms/FormProductions.Designer.cs +++ b/ProjectWarehouse/ProjectWarehouse/Forms/FormProductions.Designer.cs @@ -107,6 +107,7 @@ Controls.Add(dataGridViewData); Controls.Add(panel1); Name = "FormProductions"; + StartPosition = FormStartPosition.CenterParent; Text = "Продукция"; Load += FormProductions_Load; panel1.ResumeLayout(false); diff --git a/ProjectWarehouse/ProjectWarehouse/Program.cs b/ProjectWarehouse/ProjectWarehouse/Program.cs index a515973..9013b38 100644 --- a/ProjectWarehouse/ProjectWarehouse/Program.cs +++ b/ProjectWarehouse/ProjectWarehouse/Program.cs @@ -1,6 +1,7 @@ using ProjectWarehouse.Repositories; using ProjectWarehouse.Repositories.Implementations; using Unity; +using Unity.Lifetime; namespace ProjectWarehouse { @@ -22,10 +23,11 @@ namespace ProjectWarehouse { var container = new UnityContainer(); - container.RegisterType(); - container.RegisterType(); - container.RegisterType(); - container.RegisterType(); + container.RegisterType(new TransientLifetimeManager()); + container.RegisterType(new TransientLifetimeManager()); + container.RegisterType(new TransientLifetimeManager()); + container.RegisterType(new TransientLifetimeManager()); + container.RegisterType(new TransientLifetimeManager()); return container; } diff --git a/ProjectWarehouse/ProjectWarehouse/ProjectWarehouse.csproj b/ProjectWarehouse/ProjectWarehouse/ProjectWarehouse.csproj index ec1f8ae..92d7798 100644 --- a/ProjectWarehouse/ProjectWarehouse/ProjectWarehouse.csproj +++ b/ProjectWarehouse/ProjectWarehouse/ProjectWarehouse.csproj @@ -13,10 +13,13 @@ + + Form + Form - + Form diff --git a/ProjectWarehouse/ProjectWarehouse/Repositories/IEmployeeRepository.cs b/ProjectWarehouse/ProjectWarehouse/Repositories/IEmployeeRepository.cs new file mode 100644 index 0000000..db36845 --- /dev/null +++ b/ProjectWarehouse/ProjectWarehouse/Repositories/IEmployeeRepository.cs @@ -0,0 +1,16 @@ +using ProjectWarehouse.Entities; + +namespace ProjectWarehouse.Repositories; + +public interface IEmployeeRepository +{ + IEnumerable ReadEmployees(); + + Employee ReadEmployeeById(int id); + + void CreateEmployee(Employee employee); + + void UpdateEmployee(Employee employee); + + void DeleteEmployee(int id); +} diff --git a/ProjectWarehouse/ProjectWarehouse/Repositories/IInventoryRepository.cs b/ProjectWarehouse/ProjectWarehouse/Repositories/IInventoryRepository.cs new file mode 100644 index 0000000..79641df --- /dev/null +++ b/ProjectWarehouse/ProjectWarehouse/Repositories/IInventoryRepository.cs @@ -0,0 +1,16 @@ +using ProjectWarehouse.Entities; + +namespace ProjectWarehouse.Repositories; + +public interface IInventoryRepository +{ + IEnumerable ReadInventory(); + + Inventory ReadInventoryById(int id); + + void CreateInventory(Inventory inventory); + + void UpdateInventory(Inventory inventory); + + void DeleteInventory(int id); +} diff --git a/ProjectWarehouse/ProjectWarehouse/Repositories/IMovement_ComponentsRepository.cs b/ProjectWarehouse/ProjectWarehouse/Repositories/IMovement_ComponentsRepository.cs deleted file mode 100644 index 0cc465c..0000000 --- a/ProjectWarehouse/ProjectWarehouse/Repositories/IMovement_ComponentsRepository.cs +++ /dev/null @@ -1,16 +0,0 @@ -using ProjectWarehouse.Entities; - -namespace ProjectWarehouse.Repositories; - -public interface IMovement_ComponentsRepository -{ - IEnumerable ReadMovement(); - - Movement_Components ReadMovementByID(int id); - - void CreateMovement(Movement_Components movement); - - void UpdateMovement(Movement_Components movement); - - void DeleteMovement(int id); -} diff --git a/ProjectWarehouse/ProjectWarehouse/Repositories/IOrderRequestRepository.cs b/ProjectWarehouse/ProjectWarehouse/Repositories/IOrderRequestRepository.cs index fe97592..91f7d16 100644 --- a/ProjectWarehouse/ProjectWarehouse/Repositories/IOrderRequestRepository.cs +++ b/ProjectWarehouse/ProjectWarehouse/Repositories/IOrderRequestRepository.cs @@ -4,7 +4,7 @@ namespace ProjectWarehouse.Repositories; public interface IOrderRequestRepository { - IEnumerable ReadOrderRequest(DateTime? dateForm = null, DateTime? dateTo = null, int? componentsID = null); + IEnumerable ReadOrderRequest(DateTime? dateForm = null, DateTime? dateTo = null, double? quantity = null, int? componentsID = null); void CreateOrderRequest(OrderRequest orderRequest); } \ No newline at end of file diff --git a/ProjectWarehouse/ProjectWarehouse/Repositories/Implementations/EmployeeRepository.cs b/ProjectWarehouse/ProjectWarehouse/Repositories/Implementations/EmployeeRepository.cs new file mode 100644 index 0000000..4255ad4 --- /dev/null +++ b/ProjectWarehouse/ProjectWarehouse/Repositories/Implementations/EmployeeRepository.cs @@ -0,0 +1,30 @@ +using ProjectWarehouse.Entities.Enums; +using ProjectWarehouse.Entities; + +namespace ProjectWarehouse.Repositories.Implementations; + +public class EmployeeRepository : IEmployeeRepository +{ + public void CreateEmployee(Employee employee) + { + } + + public void DeleteEmployee(int id) + { + } + + public Employee ReadEmployeeById(int id) + { + return Employee.CreateEntity(0, string.Empty, string.Empty, + EmployeePost.None); + } + + public IEnumerable ReadEmployees() + { + return []; + } + + public void UpdateEmployee(Employee employee) + { + } +} diff --git a/ProjectWarehouse/ProjectWarehouse/Repositories/Implementations/InventoryRepository.cs b/ProjectWarehouse/ProjectWarehouse/Repositories/Implementations/InventoryRepository.cs new file mode 100644 index 0000000..0a0c8cc --- /dev/null +++ b/ProjectWarehouse/ProjectWarehouse/Repositories/Implementations/InventoryRepository.cs @@ -0,0 +1,28 @@ +using ProjectWarehouse.Entities; + +namespace ProjectWarehouse.Repositories.Implementations; + +public class InventoryRepository : IInventoryRepository +{ + public void CreateInventory(Inventory inventory) + { + } + + public void DeleteInventory(int id) + { + } + + public IEnumerable ReadInventory() + { + return []; + } + + public Inventory ReadInventoryById(int id) + { + return Inventory.CreateEntity(0, 0, false, 0); + } + + public void UpdateInventory(Inventory inventory) + { + } +} diff --git a/ProjectWarehouse/ProjectWarehouse/Repositories/Implementations/Movement_ComponentsRepository.cs b/ProjectWarehouse/ProjectWarehouse/Repositories/Implementations/Movement_ComponentsRepository.cs deleted file mode 100644 index 00e60a2..0000000 --- a/ProjectWarehouse/ProjectWarehouse/Repositories/Implementations/Movement_ComponentsRepository.cs +++ /dev/null @@ -1,28 +0,0 @@ -using ProjectWarehouse.Entities; - -namespace ProjectWarehouse.Repositories.Implementations; - -public class Movement_ComponentsRepository : IMovement_ComponentsRepository -{ - public void CreateMovement(Movement_Components movement) - { - } - - public void DeleteMovement(int id) - { - } - - public IEnumerable ReadMovement() - { - return []; - } - - public Movement_Components ReadMovementByID(int id) - { - return Movement_Components.CreateEntity(0, 0, false, 0); - } - - public void UpdateMovement(Movement_Components movement) - { - } -} diff --git a/ProjectWarehouse/ProjectWarehouse/Repositories/Implementations/OrderRequestRepository.cs b/ProjectWarehouse/ProjectWarehouse/Repositories/Implementations/OrderRequestRepository.cs index 599add7..154b5ff 100644 --- a/ProjectWarehouse/ProjectWarehouse/Repositories/Implementations/OrderRequestRepository.cs +++ b/ProjectWarehouse/ProjectWarehouse/Repositories/Implementations/OrderRequestRepository.cs @@ -8,7 +8,7 @@ public class OrderRequestRepository : IOrderRequestRepository { } - public IEnumerable ReadOrderRequest(DateTime? dateForm = null, DateTime? dateTo = null, int? componentsID = null) + public IEnumerable ReadOrderRequest(DateTime? dateForm = null, DateTime? dateTo = null, double? quantity = null, int? componentsID = null) { return []; } diff --git a/ProjectWarehouse/ProjectWarehouse/Repositories/Implementations/ProductionRepository.cs b/ProjectWarehouse/ProjectWarehouse/Repositories/Implementations/ProductionRepository.cs index 49e3e32..d5263ab 100644 --- a/ProjectWarehouse/ProjectWarehouse/Repositories/Implementations/ProductionRepository.cs +++ b/ProjectWarehouse/ProjectWarehouse/Repositories/Implementations/ProductionRepository.cs @@ -19,7 +19,7 @@ public class ProductionRepository : IProductionRepository public Production ReadProductionByID(int id) { - return Production.CreateEntity(0, string.Empty, string.Empty); + return Production.CreateEntity(0, string.Empty, string.Empty, 0, []); } public void UpdateProduction(Production production)