Bozza pagine pickup / depèosito e menu nav
This commit is contained in:
@@ -40,31 +40,23 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-2">
|
||||
<div class="col-6">
|
||||
<div class="input-group">
|
||||
<div class="input-group-prepend">
|
||||
<span class="input-group-text">
|
||||
L mm
|
||||
<b>L</b> <sub>mm</sub>
|
||||
</span>
|
||||
</div>
|
||||
<InputNumber @bind-Value="@_currItem.LMm" class="form-control text-right"></InputNumber>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-2">
|
||||
<div class="input-group">
|
||||
<div class="input-group-prepend">
|
||||
<span class="input-group-text">
|
||||
W mm
|
||||
<b>W</b> <sub>mm</sub>
|
||||
</span>
|
||||
</div>
|
||||
<InputNumber @bind-Value="@_currItem.WMm" class="form-control text-right"></InputNumber>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-2">
|
||||
<div class="input-group">
|
||||
<div class="input-group-prepend">
|
||||
<span class="input-group-text">
|
||||
T mm
|
||||
<b>T</b> <sub>mm</sub>
|
||||
</span>
|
||||
</div>
|
||||
<InputNumber @bind-Value="@_currItem.TMm" class="form-control text-right"></InputNumber>
|
||||
|
||||
@@ -14,6 +14,8 @@ namespace REMAN.Data
|
||||
|
||||
private static IConfiguration _configuration;
|
||||
private static ILogger<RDataService> _logger;
|
||||
|
||||
private List<string> cachedDataList = new List<string>();
|
||||
private static NLog.Logger Log = LogManager.GetCurrentClassLogger();
|
||||
|
||||
//private readonly IEmailSender _emailSender;
|
||||
@@ -37,8 +39,8 @@ namespace REMAN.Data
|
||||
|
||||
#region Protected Fields
|
||||
|
||||
protected const string rKeyMaterials = "REMAN:Materials";
|
||||
protected const string rKeyRemnants = "REMAN:Remnants";
|
||||
protected const string rKeyMaterials = "Cache:Materials";
|
||||
protected const string rKeyRemnants = "Cache:Remnants";
|
||||
protected static string connStringBBM = "";
|
||||
|
||||
#endregion Protected Fields
|
||||
@@ -120,7 +122,13 @@ namespace REMAN.Data
|
||||
{
|
||||
List<RemnantsModel> dbResult = new List<RemnantsModel>();
|
||||
string rawData;
|
||||
var redisDataList = await distributedCache.GetAsync(rKeyRemnants);
|
||||
string cacheKey = $"{rKeyRemnants}:{matId}:{minQty}";
|
||||
if (!cachedDataList.Contains(cacheKey))
|
||||
{
|
||||
cachedDataList.Add(cacheKey);
|
||||
}
|
||||
|
||||
var redisDataList = await distributedCache.GetAsync(cacheKey);
|
||||
if (redisDataList != null)
|
||||
{
|
||||
rawData = Encoding.UTF8.GetString(redisDataList);
|
||||
@@ -134,7 +142,7 @@ namespace REMAN.Data
|
||||
dbResult = rawList.OrderBy(o => o.Area).ToList();
|
||||
rawData = JsonConvert.SerializeObject(dbResult);
|
||||
redisDataList = Encoding.UTF8.GetBytes(rawData);
|
||||
await distributedCache.SetAsync(rKeyRemnants, redisDataList, cacheOpt(false));
|
||||
await distributedCache.SetAsync(cacheKey, redisDataList, cacheOpt(false));
|
||||
stopWatch.Stop();
|
||||
TimeSpan ts = stopWatch.Elapsed;
|
||||
Log.Trace($"Effettuata lettura da DB + caching per RemnantsGetAll: {ts.TotalMilliseconds} ms");
|
||||
@@ -195,6 +203,11 @@ namespace REMAN.Data
|
||||
{
|
||||
await distributedCache.RemoveAsync(rKeyMaterials);
|
||||
await distributedCache.RemoveAsync(rKeyRemnants);
|
||||
foreach (var item in cachedDataList)
|
||||
{
|
||||
await distributedCache.RemoveAsync(item);
|
||||
}
|
||||
cachedDataList = new List<string>();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -5,3 +5,38 @@
|
||||
<h1>ReMan</h1>
|
||||
|
||||
Remnants Management App
|
||||
|
||||
<div class="row mt-4">
|
||||
<div class="col-12 col-md-6 col-lg-4 col-xl-3 my-2">
|
||||
<NavLink class="btn btn-block btn-primary" href="remnantDepo">
|
||||
<i class="fas fa-upload fa-3x" aria-hidden="true"></i>
|
||||
<div class="h4 my-3">
|
||||
Remnant Deposit
|
||||
</div>
|
||||
</NavLink>
|
||||
</div>
|
||||
<div class="col-12 col-md-6 col-lg-4 col-xl-3 my-2">
|
||||
<NavLink class="btn btn-block btn-info" href="remnantPick">
|
||||
<i class="fas fa-download fa-3x" aria-hidden="true"></i>
|
||||
<div class="h4 my-3">
|
||||
Remnant Pickup
|
||||
</div>
|
||||
</NavLink>
|
||||
</div>
|
||||
<div class="col-12 col-md-6 col-lg-4 col-xl-3 my-2">
|
||||
<NavLink class="btn btn-block btn-dark" href="materials">
|
||||
<i class="fas fa-star fa-3x" aria-hidden="true"></i>
|
||||
<div class="h4 my-3">
|
||||
Materials list
|
||||
</div>
|
||||
</NavLink>
|
||||
</div>
|
||||
<div class="col-12 col-md-6 col-lg-4 col-xl-3 my-2">
|
||||
<NavLink class="btn btn-block btn-secondary" href="remnants">
|
||||
<i class="fas fa-star-half fa-3x" aria-hidden="true"></i>
|
||||
<div class="h4 my-3">
|
||||
Remnants list
|
||||
</div>
|
||||
</NavLink>
|
||||
</div>
|
||||
</div>
|
||||
@@ -10,6 +10,12 @@
|
||||
<div class="px-2">
|
||||
<h2>Remnants</h2>
|
||||
</div>
|
||||
<div class="px-2">
|
||||
@if (processing)
|
||||
{
|
||||
<span class="spinner-border"></span> <i>...working...</i>
|
||||
}
|
||||
</div>
|
||||
<div class="px-2">
|
||||
<div class="input-group">
|
||||
<div class="input-group-prepend">
|
||||
@@ -58,7 +64,6 @@
|
||||
{
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
@*<div id="qrCodeImg"></div>*@
|
||||
<table class="table table-sm table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
@@ -85,6 +90,9 @@
|
||||
<button class="btn btn-sm btn-warning" @onclick="() => Clone(record)" title="Duplicate">
|
||||
<i class="fas fa-code-branch"></i>
|
||||
</button>
|
||||
<button class="btn btn-sm btn-success" @onclick="() => Print(record)" title="Print label">
|
||||
<i class="fas fa-print"></i>
|
||||
</button>
|
||||
</td>
|
||||
<td>
|
||||
<b>@record.MaterialNav.MatExtCode</b>
|
||||
|
||||
@@ -19,7 +19,8 @@ namespace REMAN.Pages
|
||||
|
||||
#region Protected Fields
|
||||
|
||||
protected int SelMatID = 0;
|
||||
protected int _SelMatID = 0;
|
||||
protected bool processing = false;
|
||||
|
||||
#endregion Protected Fields
|
||||
|
||||
@@ -82,6 +83,20 @@ namespace REMAN.Pages
|
||||
[Inject]
|
||||
protected IJSRuntime JSRuntime { get; set; }
|
||||
|
||||
protected int SelMatID
|
||||
{
|
||||
get
|
||||
{
|
||||
return _SelMatID;
|
||||
}
|
||||
set
|
||||
{
|
||||
_SelMatID = value;
|
||||
var pUpd = Task.Run(async () => await ReloadData());
|
||||
pUpd.Wait();
|
||||
}
|
||||
}
|
||||
|
||||
protected int totalCount
|
||||
{
|
||||
get
|
||||
@@ -182,6 +197,14 @@ namespace REMAN.Pages
|
||||
await ReloadData();
|
||||
}
|
||||
|
||||
protected async Task Print(RemnantsModel selRecord)
|
||||
{
|
||||
processing = true;
|
||||
await Task.Delay(1000);
|
||||
// chiamata esterna x registrare richiesta
|
||||
processing = false;
|
||||
}
|
||||
|
||||
protected async Task remQty(RemnantsModel selRecord)
|
||||
{
|
||||
//if (!await JSRuntime.InvokeAsync<bool>("confirm", "Confirm qtantity decrease?"))
|
||||
|
||||
@@ -15,6 +15,12 @@ builder.Services.AddAuthorization(options =>
|
||||
options.FallbackPolicy = options.DefaultPolicy;
|
||||
});
|
||||
|
||||
builder.Services.AddStackExchangeRedisCache(options =>
|
||||
{
|
||||
options.ConfigurationOptions = new StackExchange.Redis.ConfigurationOptions() { KeepAlive = 180, DefaultDatabase = 13, EndPoints = { { "localhost", 6379 } } };
|
||||
options.InstanceName = "ReMan:";
|
||||
});
|
||||
|
||||
builder.Services.AddRazorPages();
|
||||
builder.Services.AddServerSideBlazor();
|
||||
builder.Services.AddSingleton<RDataService>();
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.AspNetCore.Authentication.Negotiate" Version="6.0.0" />
|
||||
<PackageReference Include="Microsoft.Extensions.Caching.StackExchangeRedis" Version="6.0.0" />
|
||||
<PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
|
||||
</ItemGroup>
|
||||
|
||||
|
||||
@@ -14,6 +14,16 @@
|
||||
<span class="oi oi-home" aria-hidden="true"></span> Home
|
||||
</NavLink>
|
||||
</div>
|
||||
<div class="nav-item px-3">
|
||||
<NavLink class="nav-link" href="remnantDepo">
|
||||
<i class="fas fa-upload pr-2" aria-hidden="true"></i>Remnant Deposit
|
||||
</NavLink>
|
||||
</div>
|
||||
<div class="nav-item px-3">
|
||||
<NavLink class="nav-link" href="remnantPick">
|
||||
<i class="fas fa-download pr-2" aria-hidden="true"></i>Remnant Pickup
|
||||
</NavLink>
|
||||
</div>
|
||||
<div class="nav-item px-3">
|
||||
<NavLink class="nav-link" href="materials">
|
||||
<i class="fas fa-star pr-2" aria-hidden="true"></i>Materials list
|
||||
|
||||
Reference in New Issue
Block a user