aggiunte funzioni per creare nuova sessione +
delete sessione
This commit is contained in:
+109
-10
@@ -4,10 +4,10 @@
|
||||
|
||||
<div class="card">
|
||||
<div class="card-header d-flex justify-content-between">
|
||||
<div class="col-6">
|
||||
<div class="col-5">
|
||||
<h3>Sessione</h3>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<div class="col-2 align-content-center">
|
||||
<div class="input-group input-group-sm">
|
||||
<div class="input-group-text">
|
||||
<span class="me-1">In corso</span>
|
||||
@@ -18,6 +18,11 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-5 d-flex flex-row-reverse">
|
||||
<button class="btn btn-success" @onclick="()=>openNew()">
|
||||
<i class="fa-regular fa-square-plus"></i> NUOVO
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
@@ -27,16 +32,87 @@
|
||||
}
|
||||
else
|
||||
{
|
||||
@if (reqNew)
|
||||
{
|
||||
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<div class="card mb-5">
|
||||
<div class="card-header bg-primary text-light d-flex justify-content-between">
|
||||
<div>
|
||||
Avvia una nuova sessione
|
||||
</div>
|
||||
<div>
|
||||
@*@if (isEditing)
|
||||
{
|
||||
<span class="text-light">PENDING CHANGES...</span>
|
||||
}*@
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="row">
|
||||
<div class="col-4 pe-0">
|
||||
<div class="input-group input-group-sm">
|
||||
<span class="input-group-text" id="inputGroup-sizing-sm">Magazzino</span>
|
||||
<select class="form-select" @bind="@magazzino">
|
||||
<option value="-1" selected>--Selezionare magazzino--</option>
|
||||
@if (elencoMagazzini != null)
|
||||
{
|
||||
@foreach (var item in elencoMagazzini)
|
||||
{
|
||||
<option value="@item.MagID">@item.CodMag @item.CodCS | @item.DescMag</option>
|
||||
}
|
||||
}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-8 pe-0">
|
||||
<div class="input-group input-group-sm">
|
||||
<span class="input-group-text" id="inputGroup-sizing-sm">Descrizione</span>
|
||||
<input type="text" class="form-control" aria-label="Art search" aria-describedby="inputGroup-sizing-sm" @bind="@desc">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="row pt-4" style="visibility:">
|
||||
<div class="col-3 pe-0">
|
||||
</div>
|
||||
<div class="col-3 pe-0">
|
||||
</div>
|
||||
<div class="col-3 pe-0">
|
||||
<div class="d-grid gap-2">
|
||||
<button class="btn btn-warning" @onclick="closeNew">Annulla <i class="bi bi-x-circle"></i></button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-3 pe-0">
|
||||
@if (magazzino != -1)
|
||||
{
|
||||
<div class="d-grid gap-2">
|
||||
<button class="btn btn-success" @onclick="insertNewSession">Save <i class="bi bi-save"></i></button>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">QR</th>
|
||||
<th scope="col">Description</th>
|
||||
@if (inCorso)
|
||||
{
|
||||
<th scope="col">QR</th>
|
||||
}
|
||||
<th scope="col">ID sessione</th>
|
||||
<th scope="col">Magazzino</th>
|
||||
<th scope="col">Operatore</th>
|
||||
<th scope="col">Data inizio</th>
|
||||
<th scope="col">Data fine</th>
|
||||
<th scope="col">Description</th>
|
||||
<th scope="col">Trasferita</th>
|
||||
<th scope="col"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@@ -45,15 +121,22 @@
|
||||
@foreach (var item in elencoSessioni)
|
||||
{
|
||||
<tr>
|
||||
@if (inCorso)
|
||||
{
|
||||
<td>
|
||||
<!-- Button trigger modal -->
|
||||
<button type="button" class="btn btn-dark" data-bs-toggle="modal" data-bs-target="#exampleModal" @onclick="()=> getCurrSess(item.InveSessID)" title="Apri qr per connettersi alla sessione">
|
||||
<i class="fa-solid fa-qrcode"></i>
|
||||
</button>
|
||||
</td>
|
||||
}
|
||||
<td>
|
||||
<!-- Button trigger modal -->
|
||||
<button type="button" class="btn btn-dark" data-bs-toggle="modal" data-bs-target="#exampleModal" @onclick="()=> getCurrSess(item.InveSessID)" title="Apri qr per connettersi alla sessione">
|
||||
<i class="fa-solid fa-qrcode"></i>
|
||||
</button>
|
||||
@item.InveSessID
|
||||
</td>
|
||||
<td>
|
||||
@item.Description
|
||||
@item.AnagMagNav.DescMag
|
||||
</td>
|
||||
|
||||
<td>
|
||||
@item.UserCrea
|
||||
</td>
|
||||
@@ -73,7 +156,23 @@
|
||||
</td>
|
||||
}
|
||||
<td>
|
||||
@item.Transferred
|
||||
@item.Description
|
||||
</td>
|
||||
<td>
|
||||
@if (item.Transferred)
|
||||
{
|
||||
<i class="fa-regular fa-square-check text-success"></i>
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
<i class="fa-regular fa-square text-dark"></i>
|
||||
}
|
||||
</td>
|
||||
<td>
|
||||
<button class="btn btn-danger btn-sm" @onclick="()=>deleteSession(item)">
|
||||
<i class="fa-solid fa-trash-can"></i>
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
@@ -27,6 +27,8 @@ namespace MP.INVE.Pages
|
||||
private MiDataService MIDataservice { get; set; } = null!;
|
||||
|
||||
private List<InventorySessionModel>? elencoSessioni;
|
||||
private List<AnagOperatoriModel>? elencoOperatori;
|
||||
private List<AnagMagModel>? elencoMagazzini;
|
||||
|
||||
protected override async Task OnInitializedAsync()
|
||||
{
|
||||
@@ -36,16 +38,6 @@ namespace MP.INVE.Pages
|
||||
await reloadData();
|
||||
}
|
||||
|
||||
#if false
|
||||
protected override async Task OnAfterRenderAsync(bool firstRender)
|
||||
{
|
||||
if (firstRender)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
private bool inCorso { get; set; } = true;
|
||||
protected async Task toggle()
|
||||
{
|
||||
@@ -54,7 +46,7 @@ namespace MP.INVE.Pages
|
||||
}
|
||||
|
||||
protected string BaseUrlTab { get => $"{Configuration["ServerConf:BaseUrlJumper"]}"; }
|
||||
private int idOperatore { get; set; } = 0;
|
||||
private string idOperatore { get; set; } = "";
|
||||
private int currIdSess { get; set; } = 0;
|
||||
private string authKey { get; set; } = "";
|
||||
private DateTime dtStart { get; set; } = DateTime.Now.AddMonths(-1);
|
||||
@@ -70,7 +62,62 @@ namespace MP.INVE.Pages
|
||||
}
|
||||
}
|
||||
|
||||
private bool reqNew { get; set; } = false;
|
||||
|
||||
private void openNew()
|
||||
{
|
||||
reqNew = true;
|
||||
elencoOperatori = MIDataservice.ElencoOperatori(0, "");
|
||||
elencoMagazzini = MIDataservice.ElencoMagazzini();
|
||||
}
|
||||
private void closeNew()
|
||||
{
|
||||
reqNew = false;
|
||||
elencoOperatori = new List<AnagOperatoriModel>();
|
||||
elencoMagazzini = new List<AnagMagModel>();
|
||||
}
|
||||
|
||||
private async Task insertNewSession()
|
||||
{
|
||||
var alert = await JSRuntime.InvokeAsync<bool>("confirm", "Confermi di voler creare una nuova sessione per il magazzino selezionato?");
|
||||
|
||||
if (alert)
|
||||
{
|
||||
InventorySessionModel newSess = new InventorySessionModel()
|
||||
{
|
||||
UserCrea = idOperatore,
|
||||
Description = desc,
|
||||
DtStart = DateTime.Parse(DateTime.Now.ToString("yyyy/MM/dd HH:mm")),
|
||||
DtEnd = null,
|
||||
Transferred = false,
|
||||
MagID = magazzino
|
||||
};
|
||||
|
||||
await MIDataservice.InsertNewSessione(newSess);
|
||||
NavManager.NavigateTo("Session", true);
|
||||
await reloadData();
|
||||
}
|
||||
else
|
||||
{
|
||||
closeNew();
|
||||
}
|
||||
}
|
||||
|
||||
private async Task deleteSession(InventorySessionModel session)
|
||||
{
|
||||
var alert = await JSRuntime.InvokeAsync<bool>("confirm", "Confermi di voler creare una nuova sessione per il magazzino selezionato?");
|
||||
if (alert)
|
||||
{
|
||||
await MIDataservice.deleteSessione(session);
|
||||
NavManager.NavigateTo("Session", true);
|
||||
await reloadData();
|
||||
}
|
||||
}
|
||||
|
||||
private bool isLoading { get; set; } = false;
|
||||
private int magazzino { get; set; } = 0;
|
||||
private string matrOpr { get; set; } = "";
|
||||
private string desc { get; set; } = "";
|
||||
|
||||
private async Task reloadData()
|
||||
{
|
||||
@@ -108,12 +155,11 @@ namespace MP.INVE.Pages
|
||||
{
|
||||
OperatoreDTO local = new OperatoreDTO();
|
||||
local = await localStorage.GetItemAsync<OperatoreDTO>("MatrOpr");
|
||||
if(local != null)
|
||||
if (local != null)
|
||||
{
|
||||
idOperatore = local.MatrOpr;
|
||||
idOperatore = local.MatrOpr.ToString();
|
||||
authKey = local.hashAuthKey;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user