From 72b762b4b52f72c7e71a5ffaa92c7c4639e000fb Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Thu, 1 Jun 2023 17:03:01 +0200 Subject: [PATCH] Update edit modale porta --- .../Controllers/WebDoorCreatorController.cs | 3 ++ WebDoorCreator.Data/DbModels/DoorModel.cs | 35 +++++++++++++++++++ WebDoorCreator.Data/DbModels/DoorOpModel.cs | 1 - WebDoorCreator.Data/DbModels/OrderModel.cs | 1 + .../Services/WebDoorCreatorService.cs | 2 ++ .../Components/DoorMan/DoorList.razor.cs | 2 +- .../Components/DoorMan/DoorModal.razor | 20 ++++++----- .../Components/DoorMan/DoorModal.razor.cs | 5 +-- 8 files changed, 56 insertions(+), 13 deletions(-) diff --git a/WebDoorCreator.Data/Controllers/WebDoorCreatorController.cs b/WebDoorCreator.Data/Controllers/WebDoorCreatorController.cs index a287fdd..8cd6caf 100644 --- a/WebDoorCreator.Data/Controllers/WebDoorCreatorController.cs +++ b/WebDoorCreator.Data/Controllers/WebDoorCreatorController.cs @@ -659,6 +659,9 @@ namespace WebDoorCreator.Data.Controllers if (currRec != null) //if is not null edit the record found { currRec.Quantity = addEditRec.Quantity; + currRec.DoorExtCode= addEditRec.DoorExtCode; + currRec.DoorDescript= addEditRec.DoorDescript; + currRec.TypeId = addEditRec.TypeId; localDbCtx.Entry(currRec).State = EntityState.Modified; } else //if is null add the record as new in the table diff --git a/WebDoorCreator.Data/DbModels/DoorModel.cs b/WebDoorCreator.Data/DbModels/DoorModel.cs index ff7da04..20da358 100644 --- a/WebDoorCreator.Data/DbModels/DoorModel.cs +++ b/WebDoorCreator.Data/DbModels/DoorModel.cs @@ -116,5 +116,40 @@ namespace WebDoorCreator.Data.DbModels }; return answ; } + + + public override bool Equals(object? obj) + { + if (obj == null) + return false; + + if (!(obj is DoorModel item)) + return false; + + if (Quantity != item.Quantity) + return false; + + if (DoorExtCode != item.DoorExtCode) + return false; + + if (DoorDescript != item.DoorDescript) + return false; + + //if (OrderId != item.OrderId) + // return false; + + //if (MeasureUnit != item.MeasureUnit) + // return false; + + //if (UnitCost != item.UnitCost) + // return false; + + return true; + } + + public override int GetHashCode() + { + return base.GetHashCode(); + } } } diff --git a/WebDoorCreator.Data/DbModels/DoorOpModel.cs b/WebDoorCreator.Data/DbModels/DoorOpModel.cs index 271381f..e4f0c4c 100644 --- a/WebDoorCreator.Data/DbModels/DoorOpModel.cs +++ b/WebDoorCreator.Data/DbModels/DoorOpModel.cs @@ -198,6 +198,5 @@ namespace WebDoorCreator.Data.DbModels return answ; } - } } diff --git a/WebDoorCreator.Data/DbModels/OrderModel.cs b/WebDoorCreator.Data/DbModels/OrderModel.cs index 869202a..33050d0 100644 --- a/WebDoorCreator.Data/DbModels/OrderModel.cs +++ b/WebDoorCreator.Data/DbModels/OrderModel.cs @@ -65,5 +65,6 @@ namespace WebDoorCreator.Data.DbModels [ForeignKey("CompanyId")] public virtual CompanyModel? CompanyNav { get; set; } + } } diff --git a/WebDoorCreator.Data/Services/WebDoorCreatorService.cs b/WebDoorCreator.Data/Services/WebDoorCreatorService.cs index 42d4d1b..734f60a 100644 --- a/WebDoorCreator.Data/Services/WebDoorCreatorService.cs +++ b/WebDoorCreator.Data/Services/WebDoorCreatorService.cs @@ -1047,6 +1047,8 @@ namespace WebDoorCreator.Data.Services pattern = new RedisValue($"{Constants.rKeyDoor}:{DoorId}:*"); } bool answ = await ExecFlushRedisPattern(pattern); + pattern = new RedisValue($"{Constants.rKeyDoorsByOrder}:*"); + answ = await ExecFlushRedisPattern(pattern); return answ; } diff --git a/WebDoorCreator.UI/Components/DoorMan/DoorList.razor.cs b/WebDoorCreator.UI/Components/DoorMan/DoorList.razor.cs index 1638362..8a85d58 100644 --- a/WebDoorCreator.UI/Components/DoorMan/DoorList.razor.cs +++ b/WebDoorCreator.UI/Components/DoorMan/DoorList.razor.cs @@ -309,7 +309,7 @@ namespace WebDoorCreator.UI.Components.DoorMan { Dictionary answ = new Dictionary(); answ.Add("Doors #:", $"{door.Quantity}"); - answ.Add("Model #:", $"{door.TypeId}"); + answ.Add($"{door.DoorExtCode} {door.DoorDescript}",""); answ.Add("Door Price:", $"{(door.Quantity * door.UnitCost):C2}"); return answ; } diff --git a/WebDoorCreator.UI/Components/DoorMan/DoorModal.razor b/WebDoorCreator.UI/Components/DoorMan/DoorModal.razor index 9515888..2703e8d 100644 --- a/WebDoorCreator.UI/Components/DoorMan/DoorModal.razor +++ b/WebDoorCreator.UI/Components/DoorMan/DoorModal.razor @@ -4,20 +4,22 @@
@($"Door ID: {CurrDoor.DoorId}")
-
- × +
+
+ @if (!CurrDoor.Equals(CurrDoorClone)) + { + + + } +
+
+ × +
-
- @if (CurrDoorClone.Quantity != CurrDoor.Quantity) - { - - - } -
diff --git a/WebDoorCreator.UI/Components/DoorMan/DoorModal.razor.cs b/WebDoorCreator.UI/Components/DoorMan/DoorModal.razor.cs index e7ead88..a61bb47 100644 --- a/WebDoorCreator.UI/Components/DoorMan/DoorModal.razor.cs +++ b/WebDoorCreator.UI/Components/DoorMan/DoorModal.razor.cs @@ -101,9 +101,10 @@ namespace WebDoorCreator.UI.Components.DoorMan } } - protected async Task ChangeDoorNumber(bool isAdd) + protected async Task UpdateDoor(bool isAdd) { - var done = await WDService.DoorModQty(doorQty, CurrDoor.OrderId, CurrDoor.DoorId, isAdd); + //var done = await WDService.DoorModQty(doorQty, CurrDoor.OrderId, CurrDoor.DoorId, isAdd); + var done = await WDService.DoorUpsert(CurrDoor); if (done) { await ReloadData();