From 05a88733ff78dcbf239ee8e26285fc92d2a2aa3f Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Tue, 7 May 2024 17:38:53 +0200 Subject: [PATCH] Gestione eliminazione/riattivazione record negativi articoli RawItem --- MagMan.Data.Admin/MultiTenantContext.cs | 2 +- .../Controllers/TenantController.cs | 38 +++++++++++++++++++ MagMan.Data.Tenant/Services/TenantService.cs | 27 +++++++++++++ MagMan.UI/Components/ItemMan.razor | 11 +++++- MagMan.UI/Components/ItemMan.razor.cs | 9 +++++ MagMan.UI/MagMan.UI.csproj | 2 +- Resources/ChangeLog.html | 2 +- Resources/VersNum.txt | 2 +- Resources/manifest.xml | 2 +- 9 files changed, 88 insertions(+), 7 deletions(-) diff --git a/MagMan.Data.Admin/MultiTenantContext.cs b/MagMan.Data.Admin/MultiTenantContext.cs index 332b5d9..a25adb0 100644 --- a/MagMan.Data.Admin/MultiTenantContext.cs +++ b/MagMan.Data.Admin/MultiTenantContext.cs @@ -51,7 +51,7 @@ namespace MagMan.Data.Admin // commentato x test su cluster in ufficio #if DEBUG //connString = "Server=localhost;port=3306;database=MagMan_Admin;uid=MagMan_DbUser;pwd=viad@nte16!;sslmode=None;"; - connString = "Server=mdb03.ufficio;port=3306;database=MagMan_000470;uid=MagMan_DbUser;pwd=viad@nte16!;sslmode=None;"; + connString = "Server=mdb03.ufficio;port=3306;database=MagMan_Admin;uid=MagMan_DbUser;pwd=viad@nte16!;sslmode=None;"; #endif var serverVersion = ServerVersion.AutoDetect(connString); optionsBuilder.UseMySql(connString, serverVersion); diff --git a/MagMan.Data.Tenant/Controllers/TenantController.cs b/MagMan.Data.Tenant/Controllers/TenantController.cs index 120f75c..5430cb9 100644 --- a/MagMan.Data.Tenant/Controllers/TenantController.cs +++ b/MagMan.Data.Tenant/Controllers/TenantController.cs @@ -234,6 +234,44 @@ namespace MagMan.Data.Tenant.Controllers return done; } + /// + /// Riattiva Item da magazzino + /// + /// Stringa connessione (variabile x cliente) + /// Item da riattivare + /// + public bool ItemReactiv(string connString, RawItemModel rec2del) + { + bool done = false; + using (MagManContext dbCtx = new MagManContext(connString)) + { + try + { + var currData = dbCtx + .DbSetItems + .Where(x => x.RawItemId == rec2del.RawItemId) + .FirstOrDefault(); + if (currData != null) + { + // riattivazione logica... + currData.IsActive = true; + // registro modifica RawItem + dbCtx.Entry(currData).State = EntityState.Modified; + + dbCtx.SaveChanges(); + done = true; + } + } + catch (Exception exc) + { + Log.Error($"Eccezione in ItemReactiv{Environment.NewLine}{exc}"); + } + } + return done; + } + + + /// /// Converte il DTO in ItemModel /// diff --git a/MagMan.Data.Tenant/Services/TenantService.cs b/MagMan.Data.Tenant/Services/TenantService.cs index 2448607..dbc8ba4 100644 --- a/MagMan.Data.Tenant/Services/TenantService.cs +++ b/MagMan.Data.Tenant/Services/TenantService.cs @@ -233,6 +233,33 @@ namespace MagMan.Data.Tenant.Services return fatto; } + + /// + /// Riattiva Item da magazzino + refresh cache + /// + /// Key di riferimento + /// Item da riattivare + /// + public async Task ItemReactiv(int nKey, RawItemModel rec2react) + { + bool fatto = false; + string cString = ConnString(nKey); + try + { + fatto = dbController.ItemReactiv(cString, rec2react); + if (fatto) + { + await FlushRedisCache(); + } + } + catch (Exception exc) + { + Log.Error($"Error during ItemReactiv:{Environment.NewLine}{exc}"); + } + return fatto; + } + + /// /// Converte il DTO in ItemModel, colmando eventuale mancante nelle note dell'item /// diff --git a/MagMan.UI/Components/ItemMan.razor b/MagMan.UI/Components/ItemMan.razor index c72bb81..b17f7eb 100644 --- a/MagMan.UI/Components/ItemMan.razor +++ b/MagMan.UI/Components/ItemMan.razor @@ -76,7 +76,14 @@ - + @if (item.IsActive) + { + + } + else + { + + } @item.QtyAvail @@ -114,7 +121,7 @@ - @if (item.QtyAvail == 0 && item.IsActive) + @if (item.QtyAvail <= 0 && item.IsActive) { } diff --git a/MagMan.UI/Components/ItemMan.razor.cs b/MagMan.UI/Components/ItemMan.razor.cs index 5a7b877..5dfebba 100644 --- a/MagMan.UI/Components/ItemMan.razor.cs +++ b/MagMan.UI/Components/ItemMan.razor.cs @@ -145,6 +145,15 @@ namespace MagMan.UI.Components await ReloadData(); } + + protected async Task ReactivRecord(RawItemModel selItem) + { + if (!await JSRuntime.InvokeAsync("confirm", "Sicuro di voler riattivare il record?")) + return; + await TService.ItemReactiv(KeyNum, selItem); + await ReloadData(); + } + protected void DoEdit(RawItemModel? selItem) { CurrItem = selItem; diff --git a/MagMan.UI/MagMan.UI.csproj b/MagMan.UI/MagMan.UI.csproj index f56ceee..c076ef7 100644 --- a/MagMan.UI/MagMan.UI.csproj +++ b/MagMan.UI/MagMan.UI.csproj @@ -2,7 +2,7 @@ net6.0 - 1.0.2405.0219 + 1.0.2405.0717 enable enable true diff --git a/Resources/ChangeLog.html b/Resources/ChangeLog.html index e0e9fb3..6a72a58 100644 --- a/Resources/ChangeLog.html +++ b/Resources/ChangeLog.html @@ -1,6 +1,6 @@ MagMan - Wood Warehouse Management System -

Versione: 1.0.2405.0219

+

Versione: 1.0.2405.0717


Note di rilascio:
  • diff --git a/Resources/VersNum.txt b/Resources/VersNum.txt index 3b11a17..5ee0b99 100644 --- a/Resources/VersNum.txt +++ b/Resources/VersNum.txt @@ -1 +1 @@ -1.0.2405.0219 +1.0.2405.0717 diff --git a/Resources/manifest.xml b/Resources/manifest.xml index aa5f675..c499feb 100644 --- a/Resources/manifest.xml +++ b/Resources/manifest.xml @@ -1,6 +1,6 @@ - 1.0.2405.0219 + 1.0.2405.0717 http://nexus.steamware.net/repository/SWS/MagMan/stable/0/MagMan.UI.zip http://nexus.steamware.net/repository/SWS/MagMan/stable/0/ChangeLog.html false