diff --git a/CarpentryWorkshop/CarpentryWorkshop/CarpentryWorkshop.csproj b/CarpentryWorkshop/CarpentryWorkshop/CarpentryWorkshop.csproj index accbdf0..20f5176 100644 --- a/CarpentryWorkshop/CarpentryWorkshop/CarpentryWorkshop.csproj +++ b/CarpentryWorkshop/CarpentryWorkshop/CarpentryWorkshop.csproj @@ -9,7 +9,18 @@ + + + + + + + + + + + @@ -27,4 +38,10 @@ + + + PreserveNewest + + + \ No newline at end of file diff --git a/CarpentryWorkshop/CarpentryWorkshop/Entities/MaterialReplenishment.cs b/CarpentryWorkshop/CarpentryWorkshop/Entities/MaterialReplenishment.cs index a74839a..74eeab3 100644 --- a/CarpentryWorkshop/CarpentryWorkshop/Entities/MaterialReplenishment.cs +++ b/CarpentryWorkshop/CarpentryWorkshop/Entities/MaterialReplenishment.cs @@ -3,6 +3,7 @@ public class MaterialReplenishment { public int Id { get; private set; } + public DateTime DateReplenishment { get; private set; } public string Name { get; private set; } = string.Empty; public int Count { get; private set; } public static MaterialReplenishment CreateOperation(int id, string name, int count) @@ -10,6 +11,7 @@ public class MaterialReplenishment return new MaterialReplenishment { Id = id, + DateReplenishment = DateTime.Now, Name = name, Count = count }; diff --git a/CarpentryWorkshop/CarpentryWorkshop/Entities/Product.cs b/CarpentryWorkshop/CarpentryWorkshop/Entities/Product.cs index e746aee..6498a73 100644 --- a/CarpentryWorkshop/CarpentryWorkshop/Entities/Product.cs +++ b/CarpentryWorkshop/CarpentryWorkshop/Entities/Product.cs @@ -8,7 +8,7 @@ public class Product public string Name { get; private set; } = string.Empty; public ProductType Type { get; private set; } public int CountInWarehouse { get; private set; } - public IEnumerable ProductMaterial { get; private set; } = []; + public IEnumerable ProductMaterial { get; set; } = []; public static Product CreateEntity(int id, string name, ProductType type, int countInWarehouse, IEnumerable productMaterial) { return new Product diff --git a/CarpentryWorkshop/CarpentryWorkshop/Entities/ProductMaterial.cs b/CarpentryWorkshop/CarpentryWorkshop/Entities/ProductMaterial.cs index ee00083..fd4168d 100644 --- a/CarpentryWorkshop/CarpentryWorkshop/Entities/ProductMaterial.cs +++ b/CarpentryWorkshop/CarpentryWorkshop/Entities/ProductMaterial.cs @@ -3,8 +3,8 @@ public class ProductMaterial { public int Id { get; private set; } - public int MaterialId { get; private set; } - public int Count { get; private set; } + public int MaterialId { get; set; } + public int Count { get; set; } public static ProductMaterial CreateOperation(int id, int materialId, int count) { return new ProductMaterial diff --git a/CarpentryWorkshop/CarpentryWorkshop/Forms/FormMaterialReplenishment.Designer.cs b/CarpentryWorkshop/CarpentryWorkshop/Forms/FormMaterialReplenishment.Designer.cs index aeacb08..0ad34bd 100644 --- a/CarpentryWorkshop/CarpentryWorkshop/Forms/FormMaterialReplenishment.Designer.cs +++ b/CarpentryWorkshop/CarpentryWorkshop/Forms/FormMaterialReplenishment.Designer.cs @@ -34,14 +34,17 @@ labelCount = new Label(); textBoxName = new TextBox(); numericUpDownCount = new NumericUpDown(); + comboBoxMaterial = new ComboBox(); + labelMaterial = new Label(); ((System.ComponentModel.ISupportInitialize)numericUpDownCount).BeginInit(); SuspendLayout(); // // buttonAdd // - buttonAdd.Location = new Point(33, 164); + buttonAdd.Location = new Point(38, 219); + buttonAdd.Margin = new Padding(3, 4, 3, 4); buttonAdd.Name = "buttonAdd"; - buttonAdd.Size = new Size(75, 23); + buttonAdd.Size = new Size(86, 31); buttonAdd.TabIndex = 1; buttonAdd.Text = "Add"; buttonAdd.UseVisualStyleBackColor = true; @@ -49,9 +52,10 @@ // // buttonCancel // - buttonCancel.Location = new Point(199, 164); + buttonCancel.Location = new Point(227, 219); + buttonCancel.Margin = new Padding(3, 4, 3, 4); buttonCancel.Name = "buttonCancel"; - buttonCancel.Size = new Size(75, 23); + buttonCancel.Size = new Size(86, 31); buttonCancel.TabIndex = 2; buttonCancel.Text = "Cancel"; buttonCancel.UseVisualStyleBackColor = true; @@ -60,47 +64,71 @@ // labelName // labelName.AutoSize = true; - labelName.Location = new Point(33, 46); + labelName.Location = new Point(38, 25); labelName.Name = "labelName"; - labelName.Size = new Size(39, 15); + labelName.Size = new Size(49, 20); labelName.TabIndex = 3; labelName.Text = "Name"; // // labelCount // labelCount.AutoSize = true; - labelCount.Location = new Point(33, 97); + labelCount.Location = new Point(38, 129); labelCount.Name = "labelCount"; - labelCount.Size = new Size(40, 15); + labelCount.Size = new Size(48, 20); labelCount.TabIndex = 4; labelCount.Text = "Count"; // // textBoxName // - textBoxName.Location = new Point(124, 46); + textBoxName.Location = new Point(142, 22); + textBoxName.Margin = new Padding(3, 4, 3, 4); textBoxName.Name = "textBoxName"; - textBoxName.Size = new Size(120, 23); + textBoxName.Size = new Size(137, 27); textBoxName.TabIndex = 7; // // numericUpDownCount // - numericUpDownCount.Location = new Point(124, 97); + numericUpDownCount.Location = new Point(142, 129); + numericUpDownCount.Margin = new Padding(3, 4, 3, 4); numericUpDownCount.Name = "numericUpDownCount"; - numericUpDownCount.Size = new Size(120, 23); + numericUpDownCount.Size = new Size(137, 27); numericUpDownCount.TabIndex = 8; // - // FormMaterialSpent + // comboBoxMaterial // - AutoScaleDimensions = new SizeF(7F, 15F); + comboBoxMaterial.DropDownStyle = ComboBoxStyle.DropDownList; + comboBoxMaterial.FormattingEnabled = true; + comboBoxMaterial.Location = new Point(142, 70); + comboBoxMaterial.Margin = new Padding(3, 4, 3, 4); + comboBoxMaterial.Name = "comboBoxMaterial"; + comboBoxMaterial.Size = new Size(137, 28); + comboBoxMaterial.TabIndex = 9; + // + // labelMaterial + // + labelMaterial.AutoSize = true; + labelMaterial.Location = new Point(37, 73); + labelMaterial.Name = "labelMaterial"; + labelMaterial.Size = new Size(64, 20); + labelMaterial.TabIndex = 10; + labelMaterial.Text = "Material"; + // + // FormMaterialReplenishment + // + AutoScaleDimensions = new SizeF(8F, 20F); AutoScaleMode = AutoScaleMode.Font; - ClientSize = new Size(304, 204); + ClientSize = new Size(347, 272); + Controls.Add(labelMaterial); + Controls.Add(comboBoxMaterial); Controls.Add(numericUpDownCount); Controls.Add(textBoxName); Controls.Add(labelCount); Controls.Add(labelName); Controls.Add(buttonCancel); Controls.Add(buttonAdd); - Name = "FormMaterialSpent"; + Margin = new Padding(3, 4, 3, 4); + Name = "FormMaterialReplenishment"; Text = "FormMaterialSpent"; ((System.ComponentModel.ISupportInitialize)numericUpDownCount).EndInit(); ResumeLayout(false); @@ -115,5 +143,7 @@ private Label labelCount; private TextBox textBoxName; private NumericUpDown numericUpDownCount; + private ComboBox comboBoxMaterial; + private Label labelMaterial; } } \ No newline at end of file diff --git a/CarpentryWorkshop/CarpentryWorkshop/Forms/FormMaterialReplenishment.cs b/CarpentryWorkshop/CarpentryWorkshop/Forms/FormMaterialReplenishment.cs index 5acc2f9..e4d8bbb 100644 --- a/CarpentryWorkshop/CarpentryWorkshop/Forms/FormMaterialReplenishment.cs +++ b/CarpentryWorkshop/CarpentryWorkshop/Forms/FormMaterialReplenishment.cs @@ -29,10 +29,13 @@ namespace CarpentryWorkshop.Forms } } } - public FormMaterialReplenishment(IMaterialReplenishmentRepository materialSpentRepository) + public FormMaterialReplenishment(IMaterialReplenishmentRepository materialSpentRepository, IMaterialRepository materialRepository) { InitializeComponent(); _materialSpentRepository = materialSpentRepository ?? throw new ArgumentNullException(nameof(materialSpentRepository)); + comboBoxMaterial.DataSource = materialRepository.ReadMaterials() ?? throw new ArgumentNullException(nameof(materialRepository)); + comboBoxMaterial.DisplayMember = "Name"; + comboBoxMaterial.ValueMember = "Id"; } private MaterialReplenishment CreateMaterialSpent(int id) => MaterialReplenishment.CreateOperation(id, textBoxName.Text, Convert.ToInt32(numericUpDownCount.Value)); private void buttonAdd_Click_1(object sender, EventArgs e) diff --git a/CarpentryWorkshop/CarpentryWorkshop/Forms/FormMaterialReplenishment.resx b/CarpentryWorkshop/CarpentryWorkshop/Forms/FormMaterialReplenishment.resx index af32865..8b2ff64 100644 --- a/CarpentryWorkshop/CarpentryWorkshop/Forms/FormMaterialReplenishment.resx +++ b/CarpentryWorkshop/CarpentryWorkshop/Forms/FormMaterialReplenishment.resx @@ -1,7 +1,7 @@