diff --git a/FurnitureAssembly/FurnitureAssemFileImplement/FileImplementationExtension.cs b/FurnitureAssembly/FurnitureAssemFileImplement/FileImplementationExtension.cs index 075b27f..47adf83 100644 --- a/FurnitureAssembly/FurnitureAssemFileImplement/FileImplementationExtension.cs +++ b/FurnitureAssembly/FurnitureAssemFileImplement/FileImplementationExtension.cs @@ -17,6 +17,7 @@ namespace FurnitureAssemFileImplement DependencyManager.Instance.RegisterType(); DependencyManager.Instance.RegisterType(); DependencyManager.Instance.RegisterType(); + DependencyManager.Instance.RegisterType(); } } } diff --git a/FurnitureAssembly/FurnitureAssemFileImplement/Models/Shop.cs b/FurnitureAssembly/FurnitureAssemFileImplement/Models/Shop.cs index aeb1cc6..50264ba 100644 --- a/FurnitureAssembly/FurnitureAssemFileImplement/Models/Shop.cs +++ b/FurnitureAssembly/FurnitureAssemFileImplement/Models/Shop.cs @@ -3,19 +3,24 @@ using FurnitureAssemblyDataModels.Models; using FurnitureAssemblyContracts.ViewModels; using System.Xml.Linq; using System.Diagnostics; +using System.Runtime.Serialization; namespace FurnitureAssemFileImplement.Models { + [DataContract] public class Shop : IShopModel { + [DataMember] public int Id { get; private set; } + [DataMember] public string ShopName { get; private set; } = string.Empty; - + [DataMember] public string Address { get; private set; } = string.Empty; - + [DataMember] public DateTime DateOpening { get; private set; } private Dictionary? _furnitures = null; + [DataMember] public Dictionary Furnitures { get @@ -32,6 +37,7 @@ namespace FurnitureAssemFileImplement.Models } private set { } } + [DataMember] public int MaxCount { get; private set; } public Dictionary CurrentCount { get; private set; } = new(); diff --git a/FurnitureAssembly/FurnitureAssembly/FormMail.cs b/FurnitureAssembly/FurnitureAssembly/FormMail.cs index 7603b3d..39475a4 100644 --- a/FurnitureAssembly/FurnitureAssembly/FormMail.cs +++ b/FurnitureAssembly/FurnitureAssembly/FormMail.cs @@ -1,5 +1,6 @@ using FurnitureAssemblyBusinessLogic; using FurnitureAssemblyContracts.BusinessLogicsContarcts; +using FurnitureAssemblyContracts.DI; using Microsoft.Extensions.Logging; using System.Windows.Forms; @@ -82,15 +83,14 @@ namespace FurnitureAssembly { if (dataGridViewMail.SelectedRows.Count == 1) { - var service = Program.ServiceProvider?.GetService(typeof(FormOneMail)); - if (service is FormOneMail form) + var form = DependencyManager.Instance.Resolve(); + + form.MessageId = (string)dataGridViewMail.SelectedRows[0].Cells["MessageId"].Value; + if (form.ShowDialog() == DialogResult.OK) { - form.MessageId = (string)dataGridViewMail.SelectedRows[0].Cells["MessageId"].Value; - if (form.ShowDialog() == DialogResult.OK) - { - LoadData(); - } + LoadData(); } + } } } diff --git a/FurnitureAssembly/FurnitureAssembly/FormMain.cs b/FurnitureAssembly/FurnitureAssembly/FormMain.cs index d511d53..cceadd2 100644 --- a/FurnitureAssembly/FurnitureAssembly/FormMain.cs +++ b/FurnitureAssembly/FurnitureAssembly/FormMain.cs @@ -157,29 +157,26 @@ namespace FurnitureAssembly private void ShopsToolStripMenuItem_Click(object sender, EventArgs e) { - var service = Program.ServiceProvider?.GetService(typeof(FormShops)); - if (service is FormShops form) - { - form.ShowDialog(); - } + var form = DependencyManager.Instance.Resolve(); + + form.ShowDialog(); + } private void ReplenishmentToolStripMenuItem_Click(object sender, EventArgs e) { - var service = Program.ServiceProvider?.GetService(typeof(FormReplenishmentShop)); - if (service is FormReplenishmentShop form) - { - form.ShowDialog(); - } + var form = DependencyManager.Instance.Resolve(); + + form.ShowDialog(); + } private void buttonSell_Click(object sender, EventArgs e) { - var service = Program.ServiceProvider?.GetService(typeof(FormSell)); - if (service is FormSell form) - { - form.ShowDialog(); - } + var form = DependencyManager.Instance.Resolve(); + + form.ShowDialog(); + } private void FurnituresToolStripMenuItem_Click(object sender, EventArgs @@ -227,20 +224,18 @@ namespace FurnitureAssembly private void ShopsFurnituresToolStripMenuItem_Click(object sender, EventArgs e) { - var service = Program.ServiceProvider?.GetService(typeof(FormReportShopFurnitures)); - if (service is FormReportShopFurnitures form) - { - form.ShowDialog(); - } + var form = DependencyManager.Instance.Resolve(); + + form.ShowDialog(); + } private void OrderDateToolStripMenuItem_Click(object sender, EventArgs e) { - var service = Program.ServiceProvider?.GetService(typeof(FormReportCountOrdersByPeriod)); - if (service is FormReportCountOrdersByPeriod form) - { - form.ShowDialog(); - } + var form = DependencyManager.Instance.Resolve(); + + form.ShowDialog(); + } private void ClientsMenuItem_Click(object sender, EventArgs e) diff --git a/FurnitureAssembly/FurnitureAssembly/FormShops.cs b/FurnitureAssembly/FurnitureAssembly/FormShops.cs index 65487cc..34490c3 100644 --- a/FurnitureAssembly/FurnitureAssembly/FormShops.cs +++ b/FurnitureAssembly/FurnitureAssembly/FormShops.cs @@ -1,5 +1,6 @@ using FurnitureAssemblyContracts.BindingModels; using FurnitureAssemblyContracts.BusinessLogicsContarcts; +using FurnitureAssemblyContracts.DI; using Microsoft.Extensions.Logging; @@ -19,14 +20,13 @@ namespace FurnitureAssembly private void ButtonAdd_Click(object sender, EventArgs e) { - var service = Program.ServiceProvider?.GetService(typeof(FormShop)); - if (service is FormShop form) + var form = DependencyManager.Instance.Resolve(); + + if (form.ShowDialog() == DialogResult.OK) { - if (form.ShowDialog() == DialogResult.OK) - { - LoadData(); - } + LoadData(); } + } private void FormShops_Load(object sender, EventArgs e) @@ -38,14 +38,7 @@ namespace FurnitureAssembly { 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["Furnitures"].Visible = false; - } + dataGridView.FillandConfigGrid(_logic.ReadList(null)); _logger.LogInformation("Загрузка магазинов"); } catch (Exception ex) @@ -60,16 +53,14 @@ namespace FurnitureAssembly { if (dataGridView.SelectedRows.Count == 1) { - var service = - Program.ServiceProvider?.GetService(typeof(FormShop)); - if (service is FormShop form) + var form = DependencyManager.Instance.Resolve(); + + form.Id = Convert.ToInt32(dataGridView.SelectedRows[0].Cells["Id"].Value); + if (form.ShowDialog() == DialogResult.OK) { - form.Id = Convert.ToInt32(dataGridView.SelectedRows[0].Cells["Id"].Value); - if (form.ShowDialog() == DialogResult.OK) - { - LoadData(); - } + LoadData(); } + } } diff --git a/FurnitureAssembly/FurnitureAssemblyContracts/ViewModels/ShopViewModel.cs b/FurnitureAssembly/FurnitureAssemblyContracts/ViewModels/ShopViewModel.cs index 37982f1..c4e811e 100644 --- a/FurnitureAssembly/FurnitureAssemblyContracts/ViewModels/ShopViewModel.cs +++ b/FurnitureAssembly/FurnitureAssemblyContracts/ViewModels/ShopViewModel.cs @@ -1,25 +1,21 @@ -using FurnitureAssemblyDataModels.Models; -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Linq; -using System.Text; -using System.Threading.Tasks; +using FurnitureAssemblyContracts.Attributes; +using FurnitureAssemblyDataModels.Models; + namespace FurnitureAssemblyContracts.ViewModels { public class ShopViewModel : IShopModel { public int Id { get; set; } - [DisplayName("Название магазина")] + [Column(title: "Название магазина", isUseAutoSize: true, gridViewAutoSize: GridViewAutoSize.Fill)] public string ShopName { get; set; } = string.Empty; - [DisplayName("Адрес магазина")] + [Column(title: "Адрес магазина", isUseAutoSize: true, gridViewAutoSize: GridViewAutoSize.Fill)] public string Address { get; set; } = string.Empty; - [DisplayName("Дата открытия")] + [Column(title: "Дата открытия", width: 100)] public DateTime DateOpening { get; set; } public Dictionary Furnitures { get; set; } = new(); - [DisplayName("Вместимость")] + [Column(title: "Вместимость", isUseAutoSize: true, gridViewAutoSize: GridViewAutoSize.Fill)] public int MaxCount { get; set; } } } diff --git a/FurnitureAssembly/FurnitureAssemblyDatabaseImplement/DatabaseImplementationExtension.cs b/FurnitureAssembly/FurnitureAssemblyDatabaseImplement/DatabaseImplementationExtension.cs index 1364576..ae2a8ae 100644 --- a/FurnitureAssembly/FurnitureAssemblyDatabaseImplement/DatabaseImplementationExtension.cs +++ b/FurnitureAssembly/FurnitureAssemblyDatabaseImplement/DatabaseImplementationExtension.cs @@ -17,6 +17,7 @@ namespace FurnitureAssemblyDatabaseImplement DependencyManager.Instance.RegisterType(); DependencyManager.Instance.RegisterType(); DependencyManager.Instance.RegisterType(); + DependencyManager.Instance.RegisterType(); } } } diff --git a/FurnitureAssembly/FurnitureAssemblyDatabaseImplement/Models/Shop.cs b/FurnitureAssembly/FurnitureAssemblyDatabaseImplement/Models/Shop.cs index c3fe6ac..5e37c33 100644 --- a/FurnitureAssembly/FurnitureAssemblyDatabaseImplement/Models/Shop.cs +++ b/FurnitureAssembly/FurnitureAssemblyDatabaseImplement/Models/Shop.cs @@ -7,23 +7,30 @@ using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using System.Linq; +using System.Runtime.Serialization; using System.Text; using System.Threading.Tasks; namespace FurnitureAssemblyDatabaseImplement.Models { + [DataContract] public class Shop : IShopModel { + [DataMember] public int Id { get; private set; } [Required] + [DataMember] public string ShopName { get; private set; } = string.Empty; [Required] + [DataMember] public string Address { get; private set; } = string.Empty; [Required] + [DataMember] public DateTime DateOpening { get; private set; } private Dictionary? _furnitures = null; [NotMapped] + [DataMember] public Dictionary Furnitures { get @@ -39,7 +46,7 @@ namespace FurnitureAssemblyDatabaseImplement.Models } private set { } } - + [DataMember] public int MaxCount { get; private set; } [ForeignKey("ShopId")] diff --git a/FurnitureAssembly/FurnitureAssemblyListImplement/ListImplementationExtension.cs b/FurnitureAssembly/FurnitureAssemblyListImplement/ListImplementationExtension.cs index 8f39b42..d518656 100644 --- a/FurnitureAssembly/FurnitureAssemblyListImplement/ListImplementationExtension.cs +++ b/FurnitureAssembly/FurnitureAssemblyListImplement/ListImplementationExtension.cs @@ -17,6 +17,7 @@ namespace FurnitureAssemblyListImplement DependencyManager.Instance.RegisterType(); DependencyManager.Instance.RegisterType(); DependencyManager.Instance.RegisterType(); + DependencyManager.Instance.RegisterType(); } } } diff --git a/FurnitureAssembly/FurnitureAssemblyListImplement/Models/Shop.cs b/FurnitureAssembly/FurnitureAssemblyListImplement/Models/Shop.cs index 1a73183..3a0b438 100644 --- a/FurnitureAssembly/FurnitureAssemblyListImplement/Models/Shop.cs +++ b/FurnitureAssembly/FurnitureAssemblyListImplement/Models/Shop.cs @@ -5,22 +5,26 @@ using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; +using System.Runtime.Serialization; using System.Text; using System.Threading.Tasks; namespace FurnitureAssemblyListImplement.Models { + [DataContract] public class Shop : IShopModel { + [DataMember] public int Id { get; private set; } + [DataMember] public string ShopName { get; private set; } = string.Empty; - + [DataMember] public string Address { get; private set; } = string.Empty; - + [DataMember] public DateTime DateOpening { get; private set; } - + [DataMember] public Dictionary Furnitures { get; private set; } = new(); - + [DataMember] public int MaxCount { get; private set; } public static Shop? Create(ShopBindingModel? model)