Gestione eliminazione/riattivazione record negativi articoli RawItem

This commit is contained in:
Samuele Locatelli
2024-05-07 17:38:53 +02:00
parent 6c0e54f761
commit 05a88733ff
9 changed files with 88 additions and 7 deletions
+1 -1
View File
@@ -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);
@@ -234,6 +234,44 @@ namespace MagMan.Data.Tenant.Controllers
return done;
}
/// <summary>
/// Riattiva Item da magazzino
/// </summary>
/// <param name="connString">Stringa connessione (variabile x cliente)</param>
/// <param name="rec2del">Item da riattivare</param>
/// <returns></returns>
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;
}
/// <summary>
/// Converte il DTO in ItemModel
/// </summary>
@@ -233,6 +233,33 @@ namespace MagMan.Data.Tenant.Services
return fatto;
}
/// <summary>
/// Riattiva Item da magazzino + refresh cache
/// </summary>
/// <param name="nKey">Key di riferimento</param>
/// <param name="rec2react">Item da riattivare</param>
/// <returns></returns>
public async Task<bool> 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;
}
/// <summary>
/// Converte il DTO in ItemModel, colmando eventuale mancante nelle note dell'item
/// </summary>
+9 -2
View File
@@ -76,7 +76,14 @@
<tr class="align-middle @CheckSel(item) @cssRow">
<td>
<button class="btn btn-info btn-sm" @onclick="() => DoSelect(item)"><i class="fa-solid fa-search"></i></button>
<button class="btn btn-primary btn-sm" @onclick="() => DoEdit(item)"><i class="fa-solid fa-edit"></i></button>
@if (item.IsActive)
{
<button class="btn btn-primary btn-sm" @onclick="() => DoEdit(item)"><i class="fa-solid fa-edit"></i></button>
}
else
{
<button class="btn btn-warning btn-sm" @onclick="() => ReactivRecord(item)" title="Riattivazione Record"><i class="fa-regular fa-thumbs-up"></i></button>
}
</td>
<td class="text-end fs-5">
<b>@item.QtyAvail</b>
@@ -114,7 +121,7 @@
<AuthorizeView Roles="SuperAdmin, Admin">
<Authorized>
<td class="text-end">
@if (item.QtyAvail == 0 && item.IsActive)
@if (item.QtyAvail <= 0 && item.IsActive)
{
<button class="btn btn-danger btn-sm" @onclick="() => DeleteRecord(item)"><i class="fa-solid fa-trash"></i></button>
}
+9
View File
@@ -145,6 +145,15 @@ namespace MagMan.UI.Components
await ReloadData();
}
protected async Task ReactivRecord(RawItemModel selItem)
{
if (!await JSRuntime.InvokeAsync<bool>("confirm", "Sicuro di voler riattivare il record?"))
return;
await TService.ItemReactiv(KeyNum, selItem);
await ReloadData();
}
protected void DoEdit(RawItemModel? selItem)
{
CurrItem = selItem;
+1 -1
View File
@@ -2,7 +2,7 @@
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<Version>1.0.2405.0219</Version>
<Version>1.0.2405.0717</Version>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<EnableNETAnalyzers>true</EnableNETAnalyzers>
+1 -1
View File
@@ -1,6 +1,6 @@
<body>
<i>MagMan - Wood Warehouse Management System</i>
<h4>Versione: 1.0.2405.0219</h4>
<h4>Versione: 1.0.2405.0717</h4>
<br /> Note di rilascio:
<ul>
<li>
+1 -1
View File
@@ -1 +1 @@
1.0.2405.0219
1.0.2405.0717
+1 -1
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<item>
<version>1.0.2405.0219</version>
<version>1.0.2405.0717</version>
<url>http://nexus.steamware.net/repository/SWS/MagMan/stable/0/MagMan.UI.zip</url>
<changelog>http://nexus.steamware.net/repository/SWS/MagMan/stable/0/ChangeLog.html</changelog>
<mandatory>false</mandatory>