Aggiunta metodi gestione fill e addNew condizionali

This commit is contained in:
Samuele Locatelli
2025-04-02 15:46:41 +02:00
parent 2f900e9d9c
commit 32b3789efc
2 changed files with 78 additions and 45 deletions
+47 -44
View File
@@ -1,35 +1,56 @@
<div class="row my-1 mx-0" style="background-color: #34495E; border-radius: 12px;">
<div class="row my-1 mx-0 rounded-3" style="background-color: #34495E; ">
<div class="col-12 px-1">
<CalendarMonth DtRif="@dtCurr" MainCss="table table-dark table-borderless" DateSelected="DisplayDate" MonthChanged="ReloadMonth" DateCheck="@DateCheck" DateCheckBlock="@DateCFF" SingleWeek="@showDetail" SelDayCss="selDate rounded-top p-2" HeadStyle="color: #E67E22"></CalendarMonth>
</div>
@if (showDetail)
{
if (EditRecord == null)
{
if (SeqStatus != null && SeqStatus.Count() > 0)
<div class="col-12 px-1 bg-gradient py-2">
<div class="row">
<div class="col-4 my-2">
@if (DayMinTot < 1440)
{
<button class="btn btn-success w-100" @onclick="() => AddNew()" title="Riempi periodi mancanti"><i class="fa-solid fa-plus"></i> Add New</button>
}
</div>
<div class="col-4 my-2">
@if (DayMinTot < 1440)
{
<button class="btn btn-secondary w-100" @onclick="() => FixMissing()" title="Riempi periodi mancanti"><i class="fa-solid fa-fill-drip"></i> Spenta</button>
}
</div>
<div class="col-4 my-2">
<button class="btn btn-outline-light w-100" @onclick="@CloseDet"><i class="fa-solid fa-xmark"></i> Close</button>
</div>
</div>
@if (EditRecord == null)
{
<div class="col-12 px-1 bg-dark pt-1">
<div class="d-flex justify-content-between fs-4">
<div class="px-1">Prod: @($"{DayMinLav:N1}") min (@($"{DayOee:P0}"))</div>
<div class="px-1">Caricati: @($"{DayMinTot:N0}")</div>
</div>
</div>
<div class="col-12 px-1 bg-dark pb-2">
<div class="progress" style="height: 4rem;">
@foreach (var item in SeqStatus)
{
<div class="progress-bar @item.CssBlock" style="width: @($"{item.ValuePerc:P0}");">
<div>@item.Title</div>
<small>@($"{item.Value:N0}min")</small>
if (SeqStatus != null && SeqStatus.Count() > 0)
{
<div class="row">
<div class="col-12">
<div class="d-flex justify-content-between fs-4">
<div class="px-1">Prod: @($"{DayMinLav:N1}") min (@($"{DayOee:P0}"))</div>
<div class="px-1">Caricati: @($"{DayMinTot:N0}")</div>
</div>
}
</div>
<div class="col-12">
<div class="progress" style="height: 4rem;">
@foreach (var item in SeqStatus)
{
<div class="progress-bar @item.CssBlock" style="width: @($"{item.ValuePerc:P0}");">
<div>@item.Title</div>
<small>@($"{item.Value:N0}min")</small>
</div>
}
</div>
</div>
</div>
</div>
@* <div class="col-12 px-1 bg-dark bg-gradient py-2">
</div> *@
}
}
}
else
{
<div class="col-12 px-1 bg-dark py-2">
else
{
<div class="row">
<div class="col-6 col-lg-3">
<div class="form-floating">
@@ -69,8 +90,8 @@
<button class="btn btn-sm btn-warning w-100" @onclick="() => DoEdit(null)"><i class="fa-solid fa-ban"></i> Cancel</button>
</div>
</div>
</div>
}
}
</div>
<div class="col-12 px-1">
<table class="table table-dark table-sm table-striped">
<thead>
@@ -106,31 +127,13 @@
</tbody>
</table>
</div>
@* <div class="col-3 my-2">
<button class="btn btn-warning w-100" @onclick="() => RecalcDay()"><i class="fa-solid fa-calculator"></i> Recalc</button>
</div> *@
<div class="col-4 my-2">
@if (DayMinTot < 1440)
{
<button class="btn btn-warning w-100" @onclick="() => FixMissing()" title="Riempi periodi mancanti"><i class="fa-solid fa-fill-drip"></i> Riempi</button>
}
</div>
<div class="col-4 my-2">
</div>
<div class="col-4 my-2">
<button class="btn btn-dark w-100" @onclick="@CloseDet"><i class="fa-solid fa-xmark"></i> Close</button>
<div class="col-12 px-1">
</div>
}
</div>
<ul>
<li>elenco dichiarazioni giornata su click giorno</li>
<li>gestione dichiarazioni: editabili SE NON inviate</li>
<li>btn rapidi x inserire "chiusura spenta" o "apertura spenta"</li>
<li>btn x calcolo e congelamento giornata</li>
<li> nel calcolo chiama le stored x generare ODL/PODL/eventi/stati/tempi rilevati/dichiarazioni approvate</li>
<li>resoconto ore da dichairare/dichiarate (su 24...)</li>
<li>...</li>
<li>varie ed eventuali...</li>
</ul>
+31 -1
View File
@@ -77,6 +77,36 @@ namespace MP_TAB3.Components
}
}
protected async Task AddNew()
{
if (RecMSE != null)
{
string idxMacc = RecMSE.IdxMacchina;
DateTime startPeriod = dtCurr.Date;
if (ListDay != null)
{
var lastRec = ListDay.LastOrDefault();
if (lastRec != null && lastRec.FineStato.HasValue)
{
startPeriod = lastRec.FineStato.Value;
}
else
{
startPeriod = dtCurr.Date.AddHours(6);
}
}
// creazione nuovo record ed aggiunta in coda agli esistenti...
EditRecord = new InsManualiModel()
{
IdxMacchina = idxMacc,
InizioStato = startPeriod,
IdxTipoEv = 1,
MatrOpr = 0
};
}
}
protected async Task FixMissing()
{
@@ -230,7 +260,7 @@ namespace MP_TAB3.Components
private bool IsTimeInfoOk(DateTime reqDate, bool reloadDay)
{
bool allOk = false;
List<InsManualiModel> myListDay = new List<InsManualiModel>();
List<InsManualiModel> myListDay = new List<InsManualiModel>();
if (ListDTO != null)
{
var dayDto = ListDTO.FirstOrDefault(x => x.DataRif == reqDate.Date);