Aggiunta gestione notifica udpate x
- alias - materiali
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
using EgwCoreLib.Razor;
|
||||
using MagMan.Core;
|
||||
using MagMan.Core.DTO;
|
||||
using MagMan.Core.Services;
|
||||
using MagMan.Data.Tenant.DbModels;
|
||||
@@ -28,6 +29,7 @@ namespace MagMan.UI.Components
|
||||
public void Dispose()
|
||||
{
|
||||
AppMService.EA_SearchUpdated -= AppMService_EA_SearchUpdated;
|
||||
AppMService.QueUpdAliasMat.EA_NewMessage -= QueUpdAliasMat_EA_NewMessage;
|
||||
}
|
||||
|
||||
#endregion Public Methods
|
||||
@@ -52,25 +54,14 @@ namespace MagMan.UI.Components
|
||||
|
||||
#region Protected Methods
|
||||
|
||||
protected string rowCss(AliasModel curItem)
|
||||
{
|
||||
string answ = curItem.Equals(CurrItem) ? "table-info" : "";
|
||||
// verifico se attivo...
|
||||
if(!curItem.IsActive)
|
||||
{
|
||||
answ += " text-strike";
|
||||
}
|
||||
return answ;
|
||||
}
|
||||
|
||||
protected async Task CreateNew()
|
||||
{
|
||||
string dtCode = $"{DateTime.Now:yyMMdd_HHmmss}";
|
||||
CurrItem = new AliasModel()
|
||||
{
|
||||
Family="MatCode",
|
||||
Family = "MatCode",
|
||||
ValueOriginal = $"Orig_{dtCode}",
|
||||
ValueAlias= $"Alias_{dtCode}"
|
||||
ValueAlias = $"Alias_{dtCode}"
|
||||
};
|
||||
await InvokeAsync(StateHasChanged);
|
||||
}
|
||||
@@ -102,6 +93,7 @@ namespace MagMan.UI.Components
|
||||
{
|
||||
currSearch = "";
|
||||
AppMService.EA_SearchUpdated += AppMService_EA_SearchUpdated;
|
||||
AppMService.QueUpdAliasMat.EA_NewMessage += QueUpdAliasMat_EA_NewMessage;
|
||||
}
|
||||
|
||||
protected override async Task OnParametersSetAsync()
|
||||
@@ -109,6 +101,17 @@ namespace MagMan.UI.Components
|
||||
await ReloadData();
|
||||
}
|
||||
|
||||
protected string rowCss(AliasModel curItem)
|
||||
{
|
||||
string answ = curItem.Equals(CurrItem) ? "table-info" : "";
|
||||
// verifico se attivo...
|
||||
if (!curItem.IsActive)
|
||||
{
|
||||
answ += " text-strike";
|
||||
}
|
||||
return answ;
|
||||
}
|
||||
|
||||
protected void SetNumRec(int newNum)
|
||||
{
|
||||
numRecord = newNum;
|
||||
@@ -135,10 +138,15 @@ namespace MagMan.UI.Components
|
||||
#region Private Fields
|
||||
|
||||
private AliasModel? CurrItem = null;
|
||||
|
||||
private string currSearch = "";
|
||||
|
||||
private int filtType = 0;
|
||||
|
||||
private List<AliasModel>? ListRecords = null;
|
||||
|
||||
private int MaterialId = 0;
|
||||
|
||||
private List<AliasModel>? SearchRecords = null;
|
||||
|
||||
private bool sortAsc = true;
|
||||
@@ -165,6 +173,21 @@ namespace MagMan.UI.Components
|
||||
await ReloadData();
|
||||
}
|
||||
|
||||
private async void QueUpdAliasMat_EA_NewMessage(object? sender, EventArgs e)
|
||||
{
|
||||
// verifico se il messaggio sia per la mia KEY e nel caso --> refresh!
|
||||
PubSubEventArgs currArgs = (PubSubEventArgs)e;
|
||||
// se c'è un messaggio
|
||||
if (!string.IsNullOrEmpty(currArgs.newMessage))
|
||||
{
|
||||
// se è di mia pertinenza x key e Proj
|
||||
if (KeyNum > 0 && currArgs.newMessage == $"{KeyNum}")
|
||||
{
|
||||
await ReloadData();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private async Task ReloadData()
|
||||
{
|
||||
isLoading = true;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
// Licensed to the .NET Foundation under one or more agreements. The .NET Foundation licenses this
|
||||
// file to you under the MIT license.
|
||||
using EgwCoreLib.Razor;
|
||||
using MagMan.Core;
|
||||
using MagMan.Core.DTO;
|
||||
using MagMan.Core.Services;
|
||||
using MagMan.Data.Admin.DbModels;
|
||||
@@ -33,6 +34,7 @@ namespace MagMan.UI.Components
|
||||
public void Dispose()
|
||||
{
|
||||
AppMService.EA_SearchUpdated -= AppMService_EA_SearchUpdated;
|
||||
AppMService.QueUpdAliasMat.EA_NewMessage -= QueUpdAliasMat_EA_NewMessage;
|
||||
}
|
||||
|
||||
#endregion Public Methods
|
||||
@@ -129,6 +131,7 @@ namespace MagMan.UI.Components
|
||||
{
|
||||
currSearch = "";
|
||||
AppMService.EA_SearchUpdated += AppMService_EA_SearchUpdated;
|
||||
AppMService.QueUpdAliasMat.EA_NewMessage += QueUpdAliasMat_EA_NewMessage;
|
||||
}
|
||||
|
||||
protected override async Task OnParametersSetAsync()
|
||||
@@ -162,10 +165,15 @@ namespace MagMan.UI.Components
|
||||
#region Private Fields
|
||||
|
||||
private MaterialModel? CurrItem = null;
|
||||
|
||||
private string currSearch = "";
|
||||
|
||||
private int filtType = 0;
|
||||
|
||||
private List<MaterialDTO>? ListRecords = null;
|
||||
|
||||
private int MaterialId = 0;
|
||||
|
||||
private List<MaterialDTO>? SearchRecords = null;
|
||||
|
||||
private bool sortAsc = true;
|
||||
@@ -206,6 +214,21 @@ namespace MagMan.UI.Components
|
||||
await ReloadData();
|
||||
}
|
||||
|
||||
private async void QueUpdAliasMat_EA_NewMessage(object? sender, EventArgs e)
|
||||
{
|
||||
// verifico se il messaggio sia per la mia KEY e nel caso --> refresh!
|
||||
PubSubEventArgs currArgs = (PubSubEventArgs)e;
|
||||
// se c'è un messaggio
|
||||
if (!string.IsNullOrEmpty(currArgs.newMessage))
|
||||
{
|
||||
// se è di mia pertinenza x key e Proj
|
||||
if (KeyNum > 0 && currArgs.newMessage == $"{KeyNum}")
|
||||
{
|
||||
await ReloadData();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private async Task ReloadData()
|
||||
{
|
||||
isLoading = true;
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
using MagMan.Core;
|
||||
using k8s.Models;
|
||||
using MagMan.Core;
|
||||
using MagMan.Core.DTO;
|
||||
using MagMan.Core.Services;
|
||||
using MagMan.Data.Admin.DbModels;
|
||||
using MagMan.Data.Admin.Services;
|
||||
using MagMan.Data.Tenant.DbModels;
|
||||
@@ -17,17 +19,13 @@ namespace MagMan.UI.Controllers
|
||||
[ApiController]
|
||||
public class AliasController : ControllerBase
|
||||
{
|
||||
/// <summary>
|
||||
/// Classe per logging
|
||||
/// </summary>
|
||||
private static NLog.Logger Log = LogManager.GetCurrentClassLogger();
|
||||
private MTAdminService MTAdmService { get; set; } = null!;
|
||||
private static JsonSerializerSettings? JSSettings;
|
||||
private TenantService TService { get; set; } = null!;
|
||||
public AliasController(MTAdminService MTDataService, TenantService TDataService)
|
||||
#region Public Constructors
|
||||
|
||||
public AliasController(MTAdminService MTDataService, TenantService TDataService, MessageService messageService)
|
||||
{
|
||||
MTAdmService = MTDataService;
|
||||
TService = TDataService;
|
||||
MService = messageService;
|
||||
// json serializer... FIX errore loop circolare https://www.ryadel.com/en/jsonserializationexception-self-referencing-loop-detected-error-fix-entity-framework-asp-net-core/
|
||||
JSSettings = new JsonSerializerSettings()
|
||||
{
|
||||
@@ -36,6 +34,10 @@ namespace MagMan.UI.Controllers
|
||||
Log.Info("Avviata classe AliasController");
|
||||
}
|
||||
|
||||
#endregion Public Constructors
|
||||
|
||||
#region Public Methods
|
||||
|
||||
/// <summary>
|
||||
/// Controllo status Alive
|
||||
/// GET: api/Alias/alive
|
||||
@@ -59,7 +61,7 @@ namespace MagMan.UI.Controllers
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Elenco Materiali dato RestToken
|
||||
/// Elenco Materiali dato RestToken
|
||||
/// </summary>
|
||||
/// <param name="id">Rest Token cliente</param>
|
||||
/// <returns></returns>
|
||||
@@ -111,10 +113,33 @@ namespace MagMan.UI.Controllers
|
||||
}
|
||||
// resetto cache redis
|
||||
await MTAdmService.FlushRedisCache();
|
||||
// broadcast update via redis, indico nKey x update puntuale
|
||||
MService.QueUpdAliasMat.sendMessage($"{nKey}");
|
||||
}
|
||||
}
|
||||
answ = fatto ? "OK" : "NO";
|
||||
return answ;
|
||||
}
|
||||
|
||||
#endregion Public Methods
|
||||
|
||||
#region Private Fields
|
||||
|
||||
private static JsonSerializerSettings? JSSettings;
|
||||
|
||||
/// <summary>
|
||||
/// Classe per logging
|
||||
/// </summary>
|
||||
private static NLog.Logger Log = LogManager.GetCurrentClassLogger();
|
||||
|
||||
#endregion Private Fields
|
||||
|
||||
#region Private Properties
|
||||
|
||||
private MessageService MService { get; set; } = null!;
|
||||
private MTAdminService MTAdmService { get; set; } = null!;
|
||||
private TenantService TService { get; set; } = null!;
|
||||
|
||||
#endregion Private Properties
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,7 @@
|
||||
using MagMan.Core;
|
||||
using k8s.Models;
|
||||
using MagMan.Core;
|
||||
using MagMan.Core.DTO;
|
||||
using MagMan.Core.Services;
|
||||
using MagMan.Data.Admin.DbModels;
|
||||
using MagMan.Data.Admin.Services;
|
||||
using MagMan.Data.Tenant.DbModels;
|
||||
@@ -16,17 +18,13 @@ namespace MagMan.UI.Controllers
|
||||
[ApiController]
|
||||
public class MaterialsController : ControllerBase
|
||||
{
|
||||
/// <summary>
|
||||
/// Classe per logging
|
||||
/// </summary>
|
||||
private static NLog.Logger Log = LogManager.GetCurrentClassLogger();
|
||||
private MTAdminService MTAdmService { get; set; } = null!;
|
||||
private static JsonSerializerSettings? JSSettings;
|
||||
private TenantService TService { get; set; } = null!;
|
||||
public MaterialsController(MTAdminService MTDataService, TenantService TDataService)
|
||||
#region Public Constructors
|
||||
|
||||
public MaterialsController(MTAdminService MTDataService, TenantService TDataService, MessageService messageService)
|
||||
{
|
||||
MTAdmService = MTDataService;
|
||||
TService = TDataService;
|
||||
MService = messageService;
|
||||
// json serializer... FIX errore loop circolare https://www.ryadel.com/en/jsonserializationexception-self-referencing-loop-detected-error-fix-entity-framework-asp-net-core/
|
||||
JSSettings = new JsonSerializerSettings()
|
||||
{
|
||||
@@ -35,6 +33,10 @@ namespace MagMan.UI.Controllers
|
||||
Log.Info("Avviata classe MaterialsController");
|
||||
}
|
||||
|
||||
#endregion Public Constructors
|
||||
|
||||
#region Public Methods
|
||||
|
||||
/// <summary>
|
||||
/// Controllo status Alive
|
||||
/// GET: api/Keys/alive
|
||||
@@ -58,7 +60,7 @@ namespace MagMan.UI.Controllers
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Elenco Materiali dato RestToken
|
||||
/// Elenco Materiali dato RestToken
|
||||
/// </summary>
|
||||
/// <param name="id">Rest Token cliente</param>
|
||||
/// <returns></returns>
|
||||
@@ -109,10 +111,33 @@ namespace MagMan.UI.Controllers
|
||||
}
|
||||
// resetto cache redis
|
||||
await MTAdmService.FlushRedisCache();
|
||||
// broadcast update via redis, indico nKey x update puntuale
|
||||
MService.QueUpdAliasMat.sendMessage($"{nKey}");
|
||||
}
|
||||
}
|
||||
answ = fatto ? "OK" : "NO";
|
||||
return answ;
|
||||
}
|
||||
|
||||
#endregion Public Methods
|
||||
|
||||
#region Private Fields
|
||||
|
||||
private static JsonSerializerSettings? JSSettings;
|
||||
|
||||
/// <summary>
|
||||
/// Classe per logging
|
||||
/// </summary>
|
||||
private static NLog.Logger Log = LogManager.GetCurrentClassLogger();
|
||||
|
||||
#endregion Private Fields
|
||||
|
||||
#region Private Properties
|
||||
|
||||
private MessageService MService { get; set; } = null!;
|
||||
private MTAdminService MTAdmService { get; set; } = null!;
|
||||
private TenantService TService { get; set; } = null!;
|
||||
|
||||
#endregion Private Properties
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -169,6 +169,8 @@ namespace MagMan.UI.Controllers
|
||||
}
|
||||
// resetto cache redis
|
||||
await MTAdmService.FlushRedisCache();
|
||||
// broadcast update via redis, indico nKey x update puntuale
|
||||
MService.QueUpdProj.sendMessage($"{nKey}");
|
||||
}
|
||||
}
|
||||
return answ;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net6.0</TargetFramework>
|
||||
<Version>1.0.2407.0115</Version>
|
||||
<Version>1.0.2407.0116</Version>
|
||||
<Nullable>enable</Nullable>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<EnableNETAnalyzers>true</EnableNETAnalyzers>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<body>
|
||||
<i>MagMan - Wood Warehouse Management System</i>
|
||||
<h4>Versione: 1.0.2407.0115</h4>
|
||||
<h4>Versione: 1.0.2407.0116</h4>
|
||||
<br /> Note di rilascio:
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
@@ -1 +1 @@
|
||||
1.0.2407.0115
|
||||
1.0.2407.0116
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<item>
|
||||
<version>1.0.2407.0115</version>
|
||||
<version>1.0.2407.0116</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>
|
||||
|
||||
Reference in New Issue
Block a user