diff --git a/DiningRoom/DiningRoomContracts/BindingModels/ComponentBindingModel.cs b/DiningRoom/DiningRoomContracts/BindingModels/ComponentBindingModel.cs index 2ba9aca..9f4624e 100644 --- a/DiningRoom/DiningRoomContracts/BindingModels/ComponentBindingModel.cs +++ b/DiningRoom/DiningRoomContracts/BindingModels/ComponentBindingModel.cs @@ -11,5 +11,6 @@ namespace DiningRoomContracts.BindingModels public string ComponentName { get; set; } = string.Empty; public ComponentUnit Unit { get; set; } = ComponentUnit.Неизвестна; public double Cost { get; set; } - } + public DateTime DateComponentCreate { get; set; } = DateTime.Now; + } } diff --git a/DiningRoom/DiningRoomContracts/SearchModels/ComponentSearchModel.cs b/DiningRoom/DiningRoomContracts/SearchModels/ComponentSearchModel.cs index 05c8058..6d0f2a1 100644 --- a/DiningRoom/DiningRoomContracts/SearchModels/ComponentSearchModel.cs +++ b/DiningRoom/DiningRoomContracts/SearchModels/ComponentSearchModel.cs @@ -5,5 +5,6 @@ public int? Id { get; set; } public int? UserId { get; set; } public string ComponentName { get; set; } - } + public DateTime DateComponentCreate { get; set; } + } } diff --git a/DiningRoom/DiningRoomContracts/ViewModels/ComponentViewModel.cs b/DiningRoom/DiningRoomContracts/ViewModels/ComponentViewModel.cs index 089a709..254a2b3 100644 --- a/DiningRoom/DiningRoomContracts/ViewModels/ComponentViewModel.cs +++ b/DiningRoom/DiningRoomContracts/ViewModels/ComponentViewModel.cs @@ -17,5 +17,6 @@ namespace DiningRoomContracts.ViewModels [DisplayName("Стоимость")] public double Cost { get; set; } - } + public DateTime DateComponentCreate { get; set; } + } } diff --git a/DiningRoom/DiningRoomDataModels/Models/IComponentModel.cs b/DiningRoom/DiningRoomDataModels/Models/IComponentModel.cs index 71731f0..ec05143 100644 --- a/DiningRoom/DiningRoomDataModels/Models/IComponentModel.cs +++ b/DiningRoom/DiningRoomDataModels/Models/IComponentModel.cs @@ -25,5 +25,7 @@ namespace DiningRoomDataModels.Models /// double Cost { get; } - } + DateTime DateComponentCreate { get; } + + } } diff --git a/DiningRoom/DiningRoomDatabaseImplement/Implements/ComponentStorage.cs b/DiningRoom/DiningRoomDatabaseImplement/Implements/ComponentStorage.cs index 0708f7d..e2556d9 100644 --- a/DiningRoom/DiningRoomDatabaseImplement/Implements/ComponentStorage.cs +++ b/DiningRoom/DiningRoomDatabaseImplement/Implements/ComponentStorage.cs @@ -128,23 +128,19 @@ namespace DiningRoomDatabaseImplement.Implements .ThenInclude(pc => pc.Product) .ToList() .SelectMany(card => card.Drinks - .SelectMany(d => d.Components)) - .SelectMany(dc => dc.Component.ProductComponents - .Select(pc => new ReportComponentByDateViewModel - { - DateCardCreate = dc.Drink.Card.DateCardCreate, - ComponentId = dc.ComponentId, - ComponentName = dc.Component.ComponentName, - ComponentCost = dc.Component.Cost, - ProductId = pc.ProductId, - ProductName = pc.Product.ProductName, - ProductPrice = pc.Product.Cost, - CardId = dc.Drink.CardId, - CardName = dc.Drink.Card.CardName, - })) - .ToList(); + .SelectMany(d => d.Components.SelectMany(dc => dc.Component.ProductComponents.Select(pc => new ReportComponentByDateViewModel + { + + ComponentId = pc.ComponentId, + ComponentName = dc.Component.ComponentName, + ComponentCost = dc.Component.Cost, + ProductId = pc.ProductId, + ProductName = pc.Product.ProductName, + ProductPrice = pc.Product.Cost, + CardId = card.Id, + CardName = card.CardName, + })))) + .ToList(); } - - } } \ No newline at end of file diff --git a/DiningRoom/DiningRoomDatabaseImplement/Migrations/20240526174629_InitialCreate.Designer.cs b/DiningRoom/DiningRoomDatabaseImplement/Migrations/20240527031110_InitialCreate.Designer.cs similarity index 98% rename from DiningRoom/DiningRoomDatabaseImplement/Migrations/20240526174629_InitialCreate.Designer.cs rename to DiningRoom/DiningRoomDatabaseImplement/Migrations/20240527031110_InitialCreate.Designer.cs index 5460de8..1083cdf 100644 --- a/DiningRoom/DiningRoomDatabaseImplement/Migrations/20240526174629_InitialCreate.Designer.cs +++ b/DiningRoom/DiningRoomDatabaseImplement/Migrations/20240527031110_InitialCreate.Designer.cs @@ -12,7 +12,7 @@ using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; namespace DiningRoomDatabaseImplement.Migrations { [DbContext(typeof(DiningRoomDatabase))] - [Migration("20240526174629_InitialCreate")] + [Migration("20240527031110_InitialCreate")] partial class InitialCreate { /// @@ -65,6 +65,9 @@ namespace DiningRoomDatabaseImplement.Migrations b.Property("Cost") .HasColumnType("double precision"); + b.Property("DateComponentCreate") + .HasColumnType("timestamp without time zone"); + b.Property("Unit") .HasColumnType("integer"); diff --git a/DiningRoom/DiningRoomDatabaseImplement/Migrations/20240526174629_InitialCreate.cs b/DiningRoom/DiningRoomDatabaseImplement/Migrations/20240527031110_InitialCreate.cs similarity index 99% rename from DiningRoom/DiningRoomDatabaseImplement/Migrations/20240526174629_InitialCreate.cs rename to DiningRoom/DiningRoomDatabaseImplement/Migrations/20240527031110_InitialCreate.cs index d1027c1..e238d50 100644 --- a/DiningRoom/DiningRoomDatabaseImplement/Migrations/20240526174629_InitialCreate.cs +++ b/DiningRoom/DiningRoomDatabaseImplement/Migrations/20240527031110_InitialCreate.cs @@ -57,6 +57,7 @@ namespace DiningRoomDatabaseImplement.Migrations UserId = table.Column(type: "integer", nullable: false), ComponentName = table.Column(type: "text", nullable: false), Unit = table.Column(type: "integer", nullable: false), + DateComponentCreate = table.Column(type: "timestamp without time zone", nullable: false), Cost = table.Column(type: "double precision", nullable: false) }, constraints: table => diff --git a/DiningRoom/DiningRoomDatabaseImplement/Migrations/DiningRoomDatabaseModelSnapshot.cs b/DiningRoom/DiningRoomDatabaseImplement/Migrations/DiningRoomDatabaseModelSnapshot.cs index 7ed8d9b..79cd4b0 100644 --- a/DiningRoom/DiningRoomDatabaseImplement/Migrations/DiningRoomDatabaseModelSnapshot.cs +++ b/DiningRoom/DiningRoomDatabaseImplement/Migrations/DiningRoomDatabaseModelSnapshot.cs @@ -62,6 +62,9 @@ namespace DiningRoomDatabaseImplement.Migrations b.Property("Cost") .HasColumnType("double precision"); + b.Property("DateComponentCreate") + .HasColumnType("timestamp without time zone"); + b.Property("Unit") .HasColumnType("integer"); diff --git a/DiningRoom/DiningRoomDatabaseImplement/Models/Component.cs b/DiningRoom/DiningRoomDatabaseImplement/Models/Component.cs index 2906e24..c1c56ac 100644 --- a/DiningRoom/DiningRoomDatabaseImplement/Models/Component.cs +++ b/DiningRoom/DiningRoomDatabaseImplement/Models/Component.cs @@ -17,6 +17,8 @@ namespace DiningRoomDatabaseImplement.Models public string ComponentName { get; private set; } = string.Empty; [Required] public ComponentUnit Unit { get; private set; } = ComponentUnit.Неизвестна; + [Required] + public DateTime DateComponentCreate { get; set; } [Required] public double Cost { get; private set; } @@ -36,6 +38,7 @@ namespace DiningRoomDatabaseImplement.Models { Id = Model.Id, ComponentName = Model.ComponentName, + DateComponentCreate = Model.DateComponentCreate, Cost = Model.Cost, Unit = Model.Unit, UserId = Model.UserId, @@ -47,6 +50,7 @@ namespace DiningRoomDatabaseImplement.Models { Id = Model.Id, ComponentName = Model.ComponentName, + DateComponentCreate = Model.DateComponentCreate, Cost = Model.Cost, Unit = Model.Unit, UserId = Model.UserId, @@ -67,6 +71,7 @@ namespace DiningRoomDatabaseImplement.Models { Id = Id, ComponentName = ComponentName, + DateComponentCreate = DateComponentCreate, Cost = Cost, Unit = Unit, UserId = UserId,