From 8f64fd51c0042170d6b198d94d062d6261492b67 Mon Sep 17 00:00:00 2001 From: Oscar Morales Date: Wed, 3 Sep 2025 14:52:15 -0600 Subject: [PATCH] Add Icon property to FurnitureBase and FurnitureVariant --- .../Input/Base/CreateFurnitureBaseRequest.cs | 4 ++-- .../Input/Base/UpdateFurnitureBaseRequest.cs | 4 ++-- .../Input/Variant/CreateFurnitureVariantRequest.cs | 4 +--- .../Input/Variant/UpdateFurnitureVariantRequest.cs | 3 +-- .../UseCases/Inventory/InventoryHandler.cs | 12 ++++++++---- .../Clients/Adapters/FurnitureBaseAdapter.cs | 1 + .../Clients/Adapters/FurnitureVariantAdapter.cs | 1 + .../Clients/Requests/FurnitureBaseRequest.cs | 2 +- .../Clients/Requests/FurnitureVariantRequest.cs | 2 ++ .../Core.Inventory.External.csproj | 2 +- 10 files changed, 20 insertions(+), 15 deletions(-) diff --git a/Core.Inventory.Application/UseCases/Inventory/Input/Base/CreateFurnitureBaseRequest.cs b/Core.Inventory.Application/UseCases/Inventory/Input/Base/CreateFurnitureBaseRequest.cs index 9c6c7bd..37a24a1 100644 --- a/Core.Inventory.Application/UseCases/Inventory/Input/Base/CreateFurnitureBaseRequest.cs +++ b/Core.Inventory.Application/UseCases/Inventory/Input/Base/CreateFurnitureBaseRequest.cs @@ -19,10 +19,10 @@ namespace Core.Inventory.Application.UseCases.Inventory.Input.Base public string? BaseDescription { get; set; } public string? Representation { get; set; } public string? MaintenanceNotes { get; set; } - public Dimensions Dimensions { get; set; } = new(); - public List? VariantIds { get; set; } + public string Icon { get; set; } = null!; + public bool Validate() { return !string.IsNullOrWhiteSpace(ModelName) && diff --git a/Core.Inventory.Application/UseCases/Inventory/Input/Base/UpdateFurnitureBaseRequest.cs b/Core.Inventory.Application/UseCases/Inventory/Input/Base/UpdateFurnitureBaseRequest.cs index 8653be9..fb0fff2 100644 --- a/Core.Inventory.Application/UseCases/Inventory/Input/Base/UpdateFurnitureBaseRequest.cs +++ b/Core.Inventory.Application/UseCases/Inventory/Input/Base/UpdateFurnitureBaseRequest.cs @@ -21,10 +21,10 @@ namespace Core.Inventory.Application.UseCases.Inventory.Input.Base public string? BaseDescription { get; set; } public string? Representation { get; set; } public string? MaintenanceNotes { get; set; } - public Dimensions Dimensions { get; set; } = new(); - public List? VariantIds { get; set; } + public string Icon { get; set; } = null!; + public bool Validate() { return !string.IsNullOrWhiteSpace(_Id) diff --git a/Core.Inventory.Application/UseCases/Inventory/Input/Variant/CreateFurnitureVariantRequest.cs b/Core.Inventory.Application/UseCases/Inventory/Input/Variant/CreateFurnitureVariantRequest.cs index 68a2c59..0591e3a 100644 --- a/Core.Inventory.Application/UseCases/Inventory/Input/Variant/CreateFurnitureVariantRequest.cs +++ b/Core.Inventory.Application/UseCases/Inventory/Input/Variant/CreateFurnitureVariantRequest.cs @@ -13,15 +13,13 @@ namespace Core.Inventory.Application.UseCases.Inventory.Input.Variant public string Name { get; set; } = null!; public string Color { get; set; } = null!; public string? Line { get; set; } - public decimal Price { get; set; } public string Currency { get; set; } = "USD"; public int Stock { get; set; } - public string CategoryId { get; set; } = string.Empty; public string ProviderId { get; set; } = string.Empty; - public Dictionary Attributes { get; set; } = []; + public string Icon { get; set; } = null!; public bool Validate() { diff --git a/Core.Inventory.Application/UseCases/Inventory/Input/Variant/UpdateFurnitureVariantRequest.cs b/Core.Inventory.Application/UseCases/Inventory/Input/Variant/UpdateFurnitureVariantRequest.cs index 66a61ad..2c6d097 100644 --- a/Core.Inventory.Application/UseCases/Inventory/Input/Variant/UpdateFurnitureVariantRequest.cs +++ b/Core.Inventory.Application/UseCases/Inventory/Input/Variant/UpdateFurnitureVariantRequest.cs @@ -23,11 +23,10 @@ namespace Core.Inventory.Application.UseCases.Inventory.Input.Variant public int Stock { get; set; } public decimal Price { get; set; } public string Currency { get; set; } = "USD"; - public string CategoryId { get; set; } = string.Empty!; public string ProviderId { get; set; } = string.Empty!; - public Dictionary Attributes { get; set; } = []; + public string Icon { get; set; } = null!; public bool Validate() { diff --git a/Core.Inventory.Application/UseCases/Inventory/InventoryHandler.cs b/Core.Inventory.Application/UseCases/Inventory/InventoryHandler.cs index a96feae..1748775 100644 --- a/Core.Inventory.Application/UseCases/Inventory/InventoryHandler.cs +++ b/Core.Inventory.Application/UseCases/Inventory/InventoryHandler.cs @@ -94,7 +94,8 @@ namespace Core.Inventory.Application.UseCases.Inventory Depth = command.Dimensions.Depth, Height = command.Dimensions.Height, Width = command.Dimensions.Width - } + }, + Icon = command.Icon }; var result = await _inventoryDALService.CreateFurnitureBaseAsync(request, cancellationToken); @@ -133,7 +134,8 @@ namespace Core.Inventory.Application.UseCases.Inventory Depth = command.Dimensions.Depth, Height = command.Dimensions.Height, Width = command.Dimensions.Width - } + }, + Icon = command.Icon }; var result = await _inventoryDALService.UpdateFurnitureBaseAsync(command.Id, request, cancellationToken); @@ -226,7 +228,8 @@ namespace Core.Inventory.Application.UseCases.Inventory ModelId = command.ModelId, Name = command.Name, Price = command.Price, - ProviderId = command.ProviderId + ProviderId = command.ProviderId, + Icon = command.Icon }; var result = await _inventoryDALService.CreateFurnitureVariantAsync(request, cancellationToken); _variantPort.Success(result); @@ -260,7 +263,8 @@ namespace Core.Inventory.Application.UseCases.Inventory ModelId = command.ModelId, Name = command.Name, Price = command.Price, - ProviderId = command.ProviderId + ProviderId = command.ProviderId, + Icon = command.Icon }; var result = await _inventoryDALService.UpdateFurnitureVariantAsync(command.Id, request, cancellationToken); _variantPort.Success(result); diff --git a/Core.Inventory.External/Clients/Adapters/FurnitureBaseAdapter.cs b/Core.Inventory.External/Clients/Adapters/FurnitureBaseAdapter.cs index d84511e..e1db652 100644 --- a/Core.Inventory.External/Clients/Adapters/FurnitureBaseAdapter.cs +++ b/Core.Inventory.External/Clients/Adapters/FurnitureBaseAdapter.cs @@ -15,5 +15,6 @@ namespace Core.Inventory.External.Clients.Adapters public Dimensions Dimensions { get; set; } = new(); public List? VariantIds { get; set; } + public string Icon { get; set; } = null!; } } diff --git a/Core.Inventory.External/Clients/Adapters/FurnitureVariantAdapter.cs b/Core.Inventory.External/Clients/Adapters/FurnitureVariantAdapter.cs index e9c25ec..d2e3414 100644 --- a/Core.Inventory.External/Clients/Adapters/FurnitureVariantAdapter.cs +++ b/Core.Inventory.External/Clients/Adapters/FurnitureVariantAdapter.cs @@ -17,5 +17,6 @@ public string ProviderId { get; set; } = string.Empty!; public Dictionary Attributes { get; set; } = []; + public string Icon { get; set; } = null!; } } diff --git a/Core.Inventory.External/Clients/Requests/FurnitureBaseRequest.cs b/Core.Inventory.External/Clients/Requests/FurnitureBaseRequest.cs index cf662ab..d76545a 100644 --- a/Core.Inventory.External/Clients/Requests/FurnitureBaseRequest.cs +++ b/Core.Inventory.External/Clients/Requests/FurnitureBaseRequest.cs @@ -10,8 +10,8 @@ namespace Core.Inventory.External.Clients.Requests public string? BaseDescription { get; set; } public string? Representation { get; set; } public string? MaintenanceNotes { get; set; } - public Dimensions Dimensions { get; set; } = new(); public List? VariantIds { get; set; } + public string Icon { get; set; } = null!; } } diff --git a/Core.Inventory.External/Clients/Requests/FurnitureVariantRequest.cs b/Core.Inventory.External/Clients/Requests/FurnitureVariantRequest.cs index a65aef4..ad67d9f 100644 --- a/Core.Inventory.External/Clients/Requests/FurnitureVariantRequest.cs +++ b/Core.Inventory.External/Clients/Requests/FurnitureVariantRequest.cs @@ -15,5 +15,7 @@ public string ProviderId { get; set; } = string.Empty!; public Dictionary Attributes { get; set; } = []; + + public string Icon { get; set; } = null!; } } diff --git a/Core.Inventory.External/Core.Inventory.External.csproj b/Core.Inventory.External/Core.Inventory.External.csproj index 0c98b32..4650663 100644 --- a/Core.Inventory.External/Core.Inventory.External.csproj +++ b/Core.Inventory.External/Core.Inventory.External.csproj @@ -7,7 +7,7 @@ - +