using DocumentFormat.OpenXml.Office2016.Drawing.ChartDrawing; using System.ComponentModel; using Unity; using System.ComponentModel; namespace Publication.Entites; public class PrintingHouses { public int Id { get; set; } [DisplayName("Название")] public string Title { get; set; } [DisplayName("Телефон")] public string Phone { get; set; } [DisplayName("Адрес")] public string Address { get; set; } [Browsable(false)] public int MaterialsId { get; set; } [DisplayName("Материалы")] public string MaterialName { get; set; } = string.Empty; [DisplayName("Название")] public DateTime Date { get; set; } public string OrderDescription { get; set; } = string.Empty; [Browsable (false)] public IEnumerable printingHouseOrder { get; set; } = []; [DisplayName("Заказы")] public string Product => printingHouseOrder != null ? string.Join(", ", printingHouseOrder.Select(x => $"{x} {x.Count}")) : string.Empty; public static PrintingHouses CreateEntity(int id, string title, string phone, string address,int materialsId, IEnumerable printingHouseOrders) { return new PrintingHouses { Id = id, Title = title, Phone = phone, Address = address, MaterialsId=materialsId, Date = DateTime.Now, printingHouseOrder = printingHouseOrders }; } public static PrintingHouses CreateEntity(TempPrintingHouseOrders tempPrintingHouseOrders, IEnumerable _printingHouseOrders) { return new PrintingHouses { Id = tempPrintingHouseOrders.Id, Title = tempPrintingHouseOrders.Title, Phone = tempPrintingHouseOrders.Phone, Address = tempPrintingHouseOrders.Address, MaterialsId = tempPrintingHouseOrders.MaterialsId, Date = tempPrintingHouseOrders.Date, printingHouseOrder = _printingHouseOrders }; } public void SetPrintingHouseOrder(IEnumerable _printingHouseOrders) { if (_printingHouseOrders != null && _printingHouseOrders.Any()) { printingHouseOrder = _printingHouseOrders; } } }