diff --git a/MP-TAB3/Components/NotesMan.razor.cs b/MP-TAB3/Components/NotesMan.razor.cs
index 8a62b4c0..0b41c589 100644
--- a/MP-TAB3/Components/NotesMan.razor.cs
+++ b/MP-TAB3/Components/NotesMan.razor.cs
@@ -43,8 +43,10 @@ namespace MP_TAB3.Components
[Inject]
protected MessageService MsgServ { get; set; } = null!;
+#if false
[Inject]
- protected NavigationManager NavMan { get; set; } = null!;
+ protected NavigationManager NavMan { get; set; } = null!;
+#endif
protected int NumGiorni
{
diff --git a/MP-TAB3/Components/OdlMan.razor b/MP-TAB3/Components/OdlMan.razor
index 061b55ac..0e1edab8 100644
--- a/MP-TAB3/Components/OdlMan.razor
+++ b/MP-TAB3/Components/OdlMan.razor
@@ -293,7 +293,10 @@
}
else
{
-
+ if (!inAttr && odlOk)
+ {
+
+ }
}
}
diff --git a/MP-TAB3/Components/OdlMan.razor.cs b/MP-TAB3/Components/OdlMan.razor.cs
index 47b60072..7620ef97 100644
--- a/MP-TAB3/Components/OdlMan.razor.cs
+++ b/MP-TAB3/Components/OdlMan.razor.cs
@@ -28,20 +28,17 @@ namespace MP_TAB3.Components
#endregion Public Properties
- #region Protected Fields
-
#if false
- protected PzProdModel? prodMacchina = null;
+ protected PzProdModel? prodMacchina = null;
#endif
+
+ #region Protected Properties
+
///
/// Dati produzione rilevati
///
protected StatoProdModel? datiProdAct { get; set; } = null;
- #endregion Protected Fields
-
- #region Protected Properties
-
///
/// Restituisce il codice IdxMacchina dell'altra tavola (se multi) altrimenti la stessa macchina...
///
@@ -848,6 +845,22 @@ namespace MP_TAB3.Components
//NavMan.NavigateTo(NavMan.Uri, true);
}
+ protected async Task refreshAfterFixOdl(bool has2Refr)
+ {
+ if (has2Refr)
+ {
+ // update buttons...
+ checkAll();
+ // reset vari
+ IdxPOdlSel = 0;
+ inAttr = false;
+ IdxPOdlSel = 0;
+ await RefreshData();
+ await CheckAttr();
+ await InvokeAsync(StateHasChanged);
+ }
+ }
+
protected async Task RefreshData()
{
// refresh tabella dati tablet...
@@ -866,22 +879,6 @@ namespace MP_TAB3.Components
await ReloadData(true);
}
- protected async Task refreshAfterFixOdl(bool has2Refr)
- {
- if (has2Refr)
- {
- // update buttons...
- checkAll();
- // reset vari
- IdxPOdlSel = 0;
- inAttr = false;
- IdxPOdlSel = 0;
- await RefreshData();
- await CheckAttr();
- await InvokeAsync(StateHasChanged);
- }
- }
-
protected void SaveTCRich(decimal newTCRich)
{
tcRichAttr = newTCRich;
@@ -918,6 +915,52 @@ namespace MP_TAB3.Components
}
}
+ protected async Task SendWarnTcChangeReq(int idxOdl, decimal tcAss, decimal tcRich)
+ {
+ // carico altri parametri email...
+ string oggetto = SMServ.GetConf("oggettoChgTc");
+ string corpoChgTc = SMServ.GetConf("corpoChgTc");
+ string mittente = SMServ.GetConf("_fromEmail");
+ string baseUrlAdmin = SMServ.GetConf("baseUrlAdmin");
+ string pageUrlApprODL = SMServ.GetConf("pageUrlApprODL");
+ string pageUrl = $"{baseUrlAdmin}{pageUrlApprODL}";
+ string corpo = $"ODL: {idxOdl} | TC Assegnato: {tcAss:N3} | TC Rich: {tcRich}{Environment.NewLine}{Environment.NewLine}";
+ corpo += string.Format(corpoChgTc, Environment.NewLine, pageUrl);
+ corpo = corpo.Replace($"{Environment.NewLine}", "
");
+ MailKitMailData mData = new MailKitMailData()
+ {
+ From = mittente,
+ To = emailAdmDest,
+ Subject = oggetto,
+ Body = corpo
+ };
+ bool done = await MailServ.SendAsync(mData);
+ if (done)
+ {
+ Log.Info($"Inviata email notifica TC da approvare per ODL {idxOdl} inviato a {string.Join(",", emailAdmDest)}");
+ }
+ else
+ {
+ Log.Error($"Errore in invio email notifica TC da approvare per ODL {idxOdl} | tentato invio a {string.Join(",", emailAdmDest)}");
+ }
+ }
+
+ protected async Task SetMacc(string selIdxMacc)
+ {
+ // imposto macchina
+ IdxMaccSel = selIdxMacc;
+ // recupero dati
+ RecMSE = TabDServ.MseGetSub(IdxMaccParent, selIdxMacc, true);
+ await CheckAttr();
+ await ReloadData(true);
+ await DoUpdate();
+ if (showOdlDetail || inAttr)
+ {
+ await ReloadXDL(true);
+ }
+ await E_MachSel.InvokeAsync(selIdxMacc);
+ }
+
protected async Task ShowRiattrezzaggio()
{
showSplitOdlRiattr = !showSplitOdlRiattr;
@@ -968,7 +1011,6 @@ namespace MP_TAB3.Components
}
await advStep(currStep++);
-
// invio email!
await advStep(currStep++);
// processo chiusura setup
@@ -993,53 +1035,6 @@ namespace MP_TAB3.Components
await InvokeAsync(StateHasChanged);
}
-
- protected async Task SendWarnTcChangeReq(int idxOdl, decimal tcAss, decimal tcRich)
- {
- // carico altri parametri email...
- string oggetto = SMServ.GetConf("oggettoChgTc");
- string corpoChgTc = SMServ.GetConf("corpoChgTc");
- string mittente = SMServ.GetConf("_fromEmail");
- string baseUrlAdmin = SMServ.GetConf("baseUrlAdmin");
- string pageUrlApprODL = SMServ.GetConf("pageUrlApprODL");
- string pageUrl = $"{baseUrlAdmin}{pageUrlApprODL}";
- string corpo = $"ODL: {idxOdl} | TC Assegnato: {tcAss:N3} | TC Rich: {tcRich}{Environment.NewLine}{Environment.NewLine}";
- corpo += string.Format(corpoChgTc, Environment.NewLine, pageUrl);
- corpo = corpo.Replace($"{Environment.NewLine}", "
");
- MailKitMailData mData = new MailKitMailData()
- {
- From = mittente,
- To = emailAdmDest,
- Subject = oggetto,
- Body = corpo
- };
- bool done = await MailServ.SendAsync(mData);
- if (done)
- {
- Log.Info($"Inviata email notifica TC da approvare per ODL {idxOdl} inviato a {string.Join(",", emailAdmDest)}");
- }
- else
- {
- Log.Error($"Errore in invio email notifica TC da approvare per ODL {idxOdl} | tentato invio a {string.Join(",", emailAdmDest)}");
- }
- }
-
- protected async Task SetMacc(string selIdxMacc)
- {
- // imposto macchina
- IdxMaccSel = selIdxMacc;
- // recupero dati
- RecMSE = TabDServ.MseGetSub(IdxMaccParent, selIdxMacc, true);
- await CheckAttr();
- await ReloadData(true);
- await DoUpdate();
- if (showOdlDetail || inAttr)
- {
- await ReloadXDL(true);
- }
- await E_MachSel.InvokeAsync(selIdxMacc);
- }
-
protected async Task ToggleOdlDetail()
{
showOdlDetail = !showOdlDetail;
@@ -1072,6 +1067,7 @@ namespace MP_TAB3.Components
private bool enableFixSetup = false;
private bool enableRiattrezzaggio = false;
+
private bool enableRPO = true;
private bool enableSchedaTecnica = false;
@@ -1181,7 +1177,8 @@ namespace MP_TAB3.Components
///
/// Valore calcolato key ODL corrente...
///
- private int IdxOdl
+ private int IdxOdl { get; set; } = 0;
+#if false
{
get
{
@@ -1194,12 +1191,14 @@ namespace MP_TAB3.Components
pUpd.Wait();
return answ;
}
- }
+ }
+#endif
///
/// Valore calcolato key ODL altra tavola attivo...
///
- private int IdxOdlAltra
+ private int IdxOdlAltra { get; set; } = 0;
+#if false
{
get
{
@@ -1212,7 +1211,8 @@ namespace MP_TAB3.Components
pUpd.Wait();
return answ;
}
- }
+ }
+#endif
private string lblWarnBody
{
@@ -1231,7 +1231,6 @@ namespace MP_TAB3.Components
private bool needConfProd { get; set; } = false;
-
private int numPz2Conf
{
get
@@ -1282,8 +1281,8 @@ namespace MP_TAB3.Components
catch
{ }
- // ora verifico SE E SOLO SE è ANCORA in attrezzaggio
- // ora verifico SE ALTRA TAVOLA ha ODL...
+ // ora verifico SE E SOLO SE è ANCORA in attrezzaggio ora verifico SE ALTRA
+ // TAVOLA ha ODL...
if (dtChiusura.AddMinutes(gPeriodReopenOdlTav) > adesso)
{
answ = showReopenOdlTav;
@@ -1359,6 +1358,23 @@ namespace MP_TAB3.Components
}
}
+ private void checkConfProd()
+ {
+ // calcolo conferma prod...
+#if false
+ needConfProd = RecMSE != null && prodMacchina != null;
+ if (prodMacchina != null)
+ {
+ needConfProd = prodMacchina.pezziNonConfermati > 0 && !isSlave;
+ }
+#endif
+ needConfProd = RecMSE != null && datiProdAct != null;
+ if (datiProdAct != null)
+ {
+ needConfProd = datiProdAct.Pz2RecTot > 0 && !isSlave;
+ }
+ }
+
///
/// verifica se sia necessario confermare la prod dell'ODL precedente prima di chiudere e lo
/// fa in automatico...
@@ -1389,11 +1405,11 @@ namespace MP_TAB3.Components
datiProdAct = await TabDServ.StatoProdMacchina(IdxMaccSel, adesso);
#if false
var rawData = await TabDServ.PezziProdMacchina(IdxMaccSel);
- prodMacchina = rawData.FirstOrDefault() ?? new PzProdModel();
+ prodMacchina = rawData.FirstOrDefault() ?? new PzProdModel();
#endif
checkConfProd();
#if false
- if (prodMacchina.pezziNonConfermati > 0)
+ if (prodMacchina.pezziNonConfermati > 0)
#endif
if (datiProdAct.Pz2RecTot > 0)
{
@@ -1403,14 +1419,14 @@ namespace MP_TAB3.Components
// confermo al netto dei pezzi lasciati...
fatto = TabDServ.ConfermaProdMacchinaFull(IdxMaccSel, modoConfProd, datiProdAct.Pz2RecTot, 0, 0, adesso, MatrOpr);
#if false
- fatto = TabDServ.ConfermaProdMacchinaFull(IdxMaccSel, modoConfProd, prodMacchina.pezziNonConfermati, 0, 0, adesso, MatrOpr);
+ fatto = TabDServ.ConfermaProdMacchinaFull(IdxMaccSel, modoConfProd, prodMacchina.pezziNonConfermati, 0, 0, adesso, MatrOpr);
#endif
}
else
{
fatto = TabDServ.ConfermaProdMacchina(IdxMaccSel, modoConfProd, datiProdAct.Pz2RecTot, 0, adesso, MatrOpr);
#if false
- fatto = TabDServ.ConfermaProdMacchina(IdxMaccSel, modoConfProd, prodMacchina.pezziNonConfermati, 0, adesso, MatrOpr);
+ fatto = TabDServ.ConfermaProdMacchina(IdxMaccSel, modoConfProd, prodMacchina.pezziNonConfermati, 0, adesso, MatrOpr);
#endif
}
}
@@ -1454,8 +1470,6 @@ namespace MP_TAB3.Components
}
}
-
-
///
/// processa evento richiesto
///
@@ -1536,11 +1550,12 @@ namespace MP_TAB3.Components
var rawData = await TabDServ.PezziProdMacchina(IdxMaccSel);
datiProdAct = await TabDServ.StatoProdMacchina(IdxMaccSel, DateTime.Now);
#if false
- prodMacchina = rawData.FirstOrDefault() ?? new PzProdModel();
+ prodMacchina = rawData.FirstOrDefault() ?? new PzProdModel();
#endif
checkConfProd();
}
}
+ await updateIdxOdl();
// imposto tcRichAttr in base allo stato...
if (odlOk)
{
@@ -1548,32 +1563,17 @@ namespace MP_TAB3.Components
if (IdxPOdlSel > 0)
{
tcRichAttr = currPodl.Tcassegnato;
+ noteAttr = currPodl.Note;
}
else
{
tcRichAttr = currOdl.TCRichAttr;
+ noteAttr = currOdl.Note;
}
}
}
}
- private void checkConfProd()
- {
- // calcolo conferma prod...
-#if false
- needConfProd = RecMSE != null && prodMacchina != null;
- if (prodMacchina != null)
- {
- needConfProd = prodMacchina.pezziNonConfermati > 0 && !isSlave;
- }
-#endif
- needConfProd = RecMSE != null && datiProdAct != null;
- if (datiProdAct != null)
- {
- needConfProd = datiProdAct.Pz2RecTot > 0 && !isSlave;
- }
- }
-
private async Task ReloadPOdlDetailData()
{
if (IdxPOdlSel > 0)
@@ -1584,6 +1584,7 @@ namespace MP_TAB3.Components
{
lastIdxPOdl = IdxPOdlSel;
tcRichAttr = currPodl.Tcassegnato;
+ noteAttr = currPodl.Note;
}
}
}
@@ -1620,6 +1621,19 @@ namespace MP_TAB3.Components
{
currOdl = await TabDServ.OdlByIdx(currPodl.IdxOdl, false);
}
+ await updateIdxOdl();
+ }
+
+ private async Task updateIdxOdl()
+ {
+ // sistemo idxOdl...
+ var tabOdl = await TabDServ.OdlCurrByMacc(IdxMaccSel, false);
+ IdxOdl = tabOdl.IdxOdl;
+ if (isMulti)
+ {
+ var tabOdlAltra = await TabDServ.OdlCurrByMacc(idxMaccAltraTav, false);
+ IdxOdlAltra = tabOdlAltra.IdxOdl;
+ }
}
#endregion Private Methods
diff --git a/MP-TAB3/MP-TAB3.csproj b/MP-TAB3/MP-TAB3.csproj
index 9f9d5ca9..d9f65ddc 100644
--- a/MP-TAB3/MP-TAB3.csproj
+++ b/MP-TAB3/MP-TAB3.csproj
@@ -3,7 +3,7 @@
net6.0
enable
- 6.16.2312.2211
+ 6.16.2401.408
enable
MP_TAB3
diff --git a/MP-TAB3/Pages/ProdStop.razor.cs b/MP-TAB3/Pages/ProdStop.razor.cs
index 5d21100f..c7fc1cd7 100644
--- a/MP-TAB3/Pages/ProdStop.razor.cs
+++ b/MP-TAB3/Pages/ProdStop.razor.cs
@@ -80,6 +80,7 @@ namespace MP_TAB3.Pages
protected async Task EventRecord(int IdxEv)
{
isProcessing = true;
+ bool needReload = false;
await Task.Delay(1);
// salvo evento e processo...
if (IdxEv > 0)
@@ -91,6 +92,7 @@ namespace MP_TAB3.Pages
// processo evento...
if (insRealtime)
{
+ needReload = true;
DateTime adesso = DateTime.Now.Floor(TimeSpan.FromSeconds(1));
EventListModel newRec = new EventListModel()
{
@@ -201,6 +203,12 @@ namespace MP_TAB3.Pages
CurrMSE = ListMSE.Find(x => x.IdxMacchina == IdxMacc);
}
isProcessing = false;
+ // se non era realtime --> rimando a commenti
+ if (needReload)
+ {
+ await MServ.LastOpenedPageSet("notes");
+ NavMan.NavigateTo("notes");
+ }
}
protected override async Task OnInitializedAsync()
@@ -211,7 +219,7 @@ namespace MP_TAB3.Pages
rdm_nEvCheck = SMServ.GetConfInt("rdm_nEvCheck");
rdm_ChkOnly = SMServ.GetConfBool("rdm_ChkOnly");
// leggo gli altri dati
- await ReloadData();
+ await ReloadData();
}
protected async Task RefreshData(List newList)
@@ -273,7 +281,7 @@ namespace MP_TAB3.Pages
events2show = eventsAll.Where(x => x.EventoTablet).OrderBy(x => x.label).ToList();
}
}
- catch(Exception exc)
+ catch (Exception exc)
{
Log.Error($"ProdStop: Eccezione in reloadData {Environment.NewLine}{exc}");
await MServ.LastOpenedPageSet("/");
diff --git a/MP-TAB3/Resources/ChangeLog.html b/MP-TAB3/Resources/ChangeLog.html
index 42b5320e..444f1ffd 100644
--- a/MP-TAB3/Resources/ChangeLog.html
+++ b/MP-TAB3/Resources/ChangeLog.html
@@ -1,6 +1,6 @@
Modulo MAPOSPEC
- Versione: 6.16.2312.2211
+ Versione: 6.16.2401.408
Note di rilascio:
-
diff --git a/MP-TAB3/Resources/VersNum.txt b/MP-TAB3/Resources/VersNum.txt
index 7d79e08a..f3953b25 100644
--- a/MP-TAB3/Resources/VersNum.txt
+++ b/MP-TAB3/Resources/VersNum.txt
@@ -1 +1 @@
-6.16.2312.2211
+6.16.2401.408
diff --git a/MP-TAB3/Resources/manifest.xml b/MP-TAB3/Resources/manifest.xml
index 01a8fe0a..ec9f1ff6 100644
--- a/MP-TAB3/Resources/manifest.xml
+++ b/MP-TAB3/Resources/manifest.xml
@@ -1,6 +1,6 @@
-
- 6.16.2312.2211
+ 6.16.2401.408
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