From 5440f945aa62a65bf2e2610f78c48079b153e88b Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Thu, 4 Jan 2024 08:25:02 +0100 Subject: [PATCH] update x fix vari --- MP-TAB3/Components/NotesMan.razor.cs | 4 +- MP-TAB3/Components/OdlMan.razor | 5 +- MP-TAB3/Components/OdlMan.razor.cs | 218 ++++++++++++++------------- MP-TAB3/MP-TAB3.csproj | 2 +- MP-TAB3/Pages/ProdStop.razor.cs | 12 +- MP-TAB3/Resources/ChangeLog.html | 2 +- MP-TAB3/Resources/VersNum.txt | 2 +- MP-TAB3/Resources/manifest.xml | 2 +- 8 files changed, 137 insertions(+), 110 deletions(-) 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