diff --git a/MP-TAB3/Components/InsManual.razor b/MP-TAB3/Components/InsManual.razor
index 83196ab3..884b41b9 100644
--- a/MP-TAB3/Components/InsManual.razor
+++ b/MP-TAB3/Components/InsManual.razor
@@ -62,7 +62,14 @@
@foreach (var item in SeqStatus)
{
-
@item.Title
+ @if (item.HasError)
+ {
+
@item.Title
+ }
+ else
+ {
+
@item.Title
+ }
@($"{item.Value:N0}min")
}
@@ -78,7 +85,14 @@
-
+ @if (EditRecord.IsWork && (!string.IsNullOrEmpty(EditRecord.CodArticolo) && EditRecord.PzBuoni > 0) || (!EditRecord.IsWork && EditRecord.MinProd > 0))
+ {
+
+ }
+ else
+ {
+
+ }
@if (EditRecord.IsWork)
diff --git a/MP-TAB3/Components/InsManual.razor.cs b/MP-TAB3/Components/InsManual.razor.cs
index 07edccd1..8da40ec9 100644
--- a/MP-TAB3/Components/InsManual.razor.cs
+++ b/MP-TAB3/Components/InsManual.razor.cs
@@ -359,6 +359,7 @@ namespace MP_TAB3.Components
{
EditRecord = null;
ReloadData();
+ RecalcDayData(dtCurr);
}
}
return;
@@ -428,7 +429,7 @@ namespace MP_TAB3.Components
.ToList();
// ora calcolo il sequencer x mostrare dettaglio orario...
- SeqStatus = TabDServ.InsManSeqDayStatus(ListDay);
+ SeqStatus = TabDServ.InsManSeqDayStatus(dtCurr, ListDay);
// calcolo min lavorati odierni
DayMinLav = 0;
@@ -496,7 +497,7 @@ namespace MP_TAB3.Components
string currCss = "";
foreach (var item in ListDTO)
{
- currCss = "";// item.MinProdTot == 0 ? "" : cssHasData;
+ currCss = "";
// controllo minuti dichiarati...
if (item.RatioImport == 1)
{
diff --git a/MP-TAB3/MP-TAB3.csproj b/MP-TAB3/MP-TAB3.csproj
index 1b2142a9..a2132017 100644
--- a/MP-TAB3/MP-TAB3.csproj
+++ b/MP-TAB3/MP-TAB3.csproj
@@ -3,7 +3,7 @@
net6.0
enable
- 6.16.2504.813
+ 6.16.2504.815
enable
MP_TAB3
diff --git a/MP-TAB3/Resources/ChangeLog.html b/MP-TAB3/Resources/ChangeLog.html
index d3d1ead2..b3bd323b 100644
--- a/MP-TAB3/Resources/ChangeLog.html
+++ b/MP-TAB3/Resources/ChangeLog.html
@@ -1,6 +1,6 @@
Modulo MAPOSPEC
-
Versione: 6.16.2504.813
+
Versione: 6.16.2504.815
Note di rilascio:
-
diff --git a/MP-TAB3/Resources/VersNum.txt b/MP-TAB3/Resources/VersNum.txt
index 761c1eb4..5c15fc9b 100644
--- a/MP-TAB3/Resources/VersNum.txt
+++ b/MP-TAB3/Resources/VersNum.txt
@@ -1 +1 @@
-6.16.2504.813
+6.16.2504.815
diff --git a/MP-TAB3/Resources/manifest.xml b/MP-TAB3/Resources/manifest.xml
index 1d1a1155..4c51f194 100644
--- a/MP-TAB3/Resources/manifest.xml
+++ b/MP-TAB3/Resources/manifest.xml
@@ -1,6 +1,6 @@
-
- 6.16.2504.813
+ 6.16.2504.815
https://nexus.steamware.net/repository/SWS/MP-TAB3/stable/LAST/MP-TAB3.zip
https://nexus.steamware.net/repository/SWS/MP-TAB3/stable/LAST/ChangeLog.html
false
diff --git a/MP.Core/DTO/ManualStatusDTO.cs b/MP.Core/DTO/ManualStatusDTO.cs
index aa2b044d..75ed97a2 100644
--- a/MP.Core/DTO/ManualStatusDTO.cs
+++ b/MP.Core/DTO/ManualStatusDTO.cs
@@ -18,5 +18,6 @@ namespace MP.Core.DTO
}
public string Title { get; set; } = "";
public string CssBlock { get; set; } = "";
+ public bool HasError { get; set; } = false;
}
}
diff --git a/MP.Data/Services/TabDataService.cs b/MP.Data/Services/TabDataService.cs
index 3118bbc5..a987c167 100644
--- a/MP.Data/Services/TabDataService.cs
+++ b/MP.Data/Services/TabDataService.cs
@@ -1013,29 +1013,28 @@ namespace MP.Data.Services
periodStart = currRec.InizioStato;
periodEnd = currRec.FineStato.Value;
// se andassi a domani lo "accorcio"...
- if (periodEnd > dtRif.Date.AddDays(1))
+ if (periodEnd < dtRif.Date.AddDays(1).AddSeconds(-1))
{
- periodEnd = dtRif.Date.AddDays(1);
- }
- // se non arrivo a mezzanotte aggiungo "pad finale"
- var lastPeriod = TimeSpan.FromHours(24).Subtract(periodEnd.TimeOfDay).TotalMinutes;
- if (lastPeriod > 1)
- {
- // creo record x la durata necessaria
- newRec = new InsManualiModel()
+ // se non arrivo a mezzanotte aggiungo "pad finale"
+ var lastPeriod = TimeSpan.FromHours(24).Subtract(periodEnd.TimeOfDay).TotalMinutes;
+ if (lastPeriod > 1)
{
- CodArticolo = "ND",
- KeyRichiesta = "",
- IdxMacchina = idxMacc,
- InizioStato = periodEnd,
- FineStato = periodEnd.Date.AddDays(1).AddSeconds(-1),
- IdxTipoEv = idxTipoEv,
- MatrOpr = matrOpr,
- PzBuoni = 0,
- TCiclo = 0,
- MinProd = (decimal)lastPeriod
- };
- rec2add.Add(newRec);
+ // creo record x la durata necessaria
+ newRec = new InsManualiModel()
+ {
+ CodArticolo = "ND",
+ KeyRichiesta = "",
+ IdxMacchina = idxMacc,
+ InizioStato = periodEnd,
+ FineStato = periodEnd.Date.AddDays(1).AddSeconds(-1),
+ IdxTipoEv = idxTipoEv,
+ MatrOpr = matrOpr,
+ PzBuoni = 0,
+ TCiclo = 0,
+ MinProd = (decimal)lastPeriod
+ };
+ rec2add.Add(newRec);
+ }
}
// eseguo upsert massivo
await InsManUpsert(rec2add);
@@ -1083,13 +1082,15 @@ namespace MP.Data.Services
///
/// Elenco DTO x plotting seq stati giornaliero
///
+ /// Data per cui effettuare ricalcolo giornata
/// Record dettaglio giornata
///
- public List InsManSeqDayStatus(List listDetail)
+ public List InsManSeqDayStatus(DateTime dtRif, List listDetail)
{
List? result = new List();
// per sicurezza RIORDINO!
listDetail = listDetail
+ .Where(x => x.InizioStato.Date == dtRif.Date)
.OrderBy(x => x.InizioStato)
.ToList();
if (listDetail.Count > 0)
@@ -1125,6 +1126,8 @@ namespace MP.Data.Services
lastIdxTipo = item.IdxTipoEv;
periodStart = item.InizioStato;
periodEnd = item.FineStato.Value;
+ //calcolo errore se supero giorno...
+ bool hasError = periodEnd > dtRif.Date.AddDays(1);
duration = (double)item.MinProd;
currRec = new ManualStatusDTO
{
@@ -1133,13 +1136,16 @@ namespace MP.Data.Services
CssBlock = item.IdxTipoEv == 1 ? "bg-success text-light" : "bg-secondary text-light",
Title = $"{periodStart:HH:mm}-{periodEnd:HH:mm}",
Value = duration,
- ValueMax = 1440
+ ValueMax = 1440,
+ HasError = hasError
};
}
else
{
duration += (double)item.MinProd;
periodEnd = item.FineStato.Value;
+ //calcolo errore se supero giorno...
+ bool hasError = periodEnd > dtRif.Date.AddDays(1);
currRec = new ManualStatusDTO
{
IdxTipo = lastIdxTipo,
@@ -1147,7 +1153,8 @@ namespace MP.Data.Services
CssBlock = item.IdxTipoEv == 1 ? "bg-success text-light" : "bg-secondary text-light",
Title = $"{periodStart:HH:mm}-{periodEnd:HH:mm}",
Value = duration,
- ValueMax = 1440
+ ValueMax = 1440,
+ HasError = hasError
};
}
}
@@ -1157,19 +1164,23 @@ namespace MP.Data.Services
result.Add(currRec);
}
// se non arrivo a mezzanotte aggiungo "pad finale"
- var deltaFin = TimeSpan.FromHours(24).Subtract(periodEnd.TimeOfDay);
- if (deltaFin.TotalMinutes > 0.01)
+ if (periodEnd <= dtRif.Date.AddDays(1).AddSeconds(-1))
{
- lastIdxTipo = 0;
- currRec = new ManualStatusDTO
+ var deltaFin = TimeSpan.FromHours(24).Subtract(periodEnd.TimeOfDay);
+ if (deltaFin.TotalMinutes > 0.01)
{
- IdxTipo = lastIdxTipo,
- CssBlock = "bg-light text-dark",
- Title = "missing",
- Value = deltaFin.TotalMinutes,
- ValueMax = 1440
- };
- result.Add(currRec);
+ lastIdxTipo = 0;
+ currRec = new ManualStatusDTO
+ {
+ IdxTipo = lastIdxTipo,
+ CssBlock = "bg-light text-dark",
+ Title = "missing",
+ Value = deltaFin.TotalMinutes,
+ ValueMax = 1440
+ };
+ result.Add(currRec);
+
+ }
}
}
return result;