Ancora update gestione conf prod
This commit is contained in:
@@ -1,5 +1,10 @@
|
||||
<h3>MachSel</h3>
|
||||
|
||||
@code {
|
||||
|
||||
@if (false)
|
||||
{
|
||||
<h3>MachSel</h3>
|
||||
<asp:DropDownList runat="server" ID="ddlSubMacc" DataSourceID="ods" CssClass="form-control" DataTextField="CodMaccArticolo" DataValueField="IdxMacchina" AutoPostBack="True" OnSelectedIndexChanged="ddlSubMacc_SelectedIndexChanged" OnDataBound="ddlSubMacc_DataBound"></asp:DropDownList>
|
||||
<asp:ObjectDataSource runat="server" ID="ods" OldValuesParameterFormatString="original_{0}" SelectMethod="getMulti" TypeName="MapoDb.DS_applicazioneTableAdapters.MSFDTableAdapter" FilterExpression="idxMacchina LIKE '%#%'">
|
||||
<SelectParameters>
|
||||
<asp:SessionParameter DefaultValue="0" Name="IdxMacchina" SessionField="IdxMacchina" Type="String" />
|
||||
</SelectParameters>
|
||||
</asp:ObjectDataSource>
|
||||
}
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
using global::Microsoft.AspNetCore.Components;
|
||||
using MP.Data.DatabaseModels;
|
||||
|
||||
namespace MP_TAB_SERV.Components
|
||||
{
|
||||
public partial class MachSel
|
||||
{
|
||||
#region Public Properties
|
||||
|
||||
[Parameter]
|
||||
public MappaStatoExpl? RecMSE { get; set; } = null;
|
||||
|
||||
[Parameter]
|
||||
public EventCallback<string> E_MachSel { get; set; }
|
||||
|
||||
protected override async Task OnInitializedAsync()
|
||||
{
|
||||
// inizilamente riporto machcina corrente da MSE
|
||||
if (RecMSE != null)
|
||||
{
|
||||
await E_MachSel.InvokeAsync(RecMSE?.IdxMacchina);
|
||||
}
|
||||
}
|
||||
|
||||
#endregion Public Properties
|
||||
}
|
||||
}
|
||||
@@ -25,6 +25,17 @@ namespace MP_TAB_SERV.Components
|
||||
protected NavigationManager NavMan { get; set; } = null!;
|
||||
|
||||
protected int QtaUdc { get; set; } = 0;
|
||||
|
||||
[Inject]
|
||||
protected SharedMemService SMServ { get; set; } = null!;
|
||||
|
||||
[Inject]
|
||||
protected TabDataService TabDServ { get; set; } = null!;
|
||||
|
||||
#endregion Protected Properties
|
||||
|
||||
#region Protected Methods
|
||||
|
||||
protected async Task FixQtyUdc()
|
||||
{
|
||||
int answ = 1;
|
||||
@@ -44,16 +55,6 @@ namespace MP_TAB_SERV.Components
|
||||
QtaUdc = answ;
|
||||
}
|
||||
|
||||
[Inject]
|
||||
protected SharedMemService SMServ { get; set; } = null!;
|
||||
|
||||
[Inject]
|
||||
protected TabDataService TabDServ { get; set; } = null!;
|
||||
|
||||
#endregion Protected Properties
|
||||
|
||||
#region Protected Methods
|
||||
|
||||
protected override async Task OnInitializedAsync()
|
||||
{
|
||||
await FixQtyUdc();
|
||||
|
||||
@@ -1,93 +1,105 @@
|
||||
<h3>ProdConfirm</h3>
|
||||
|
||||
|
||||
|
||||
<div class="card bg-secondary">
|
||||
<div class="card-header p-0">
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<asp:Label runat="server" ID="lblConfProd" CssClass="btn btn-secondary btn-lg w-100 disabled">
|
||||
<i class="fa fa-check"></i> MOSTRA Conferma
|
||||
</asp:Label>
|
||||
<asp:Label runat="server" ID="lblMancaODL" Visible="false" ForeColor="Red">MANCA ODL: conferma NON permessa</asp:Label>
|
||||
<asp:LinkButton runat="server" ID="lbtShowConfProd" OnClick="lbtShowConfProd_Click" CssClass="btn btn-success btn-lg w-100">
|
||||
<i class="fa fa-check"></i>
|
||||
<asp:Label runat="server" ID="lblShowConfProd" />
|
||||
</asp:LinkButton>
|
||||
<div class="card-header p-0 bg-success">
|
||||
@if (odlOk)
|
||||
{
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<button class="btn btn-lg text-light w-100" @onclick="ToggleConfProd">
|
||||
<i class="fa fa-check"></i> @ConfTitle
|
||||
</button>
|
||||
</div>
|
||||
<MachSel RecMSE="RecMSE" E_MachSel="SetMacc"></MachSel>
|
||||
</div>
|
||||
<div class="col-12" runat="server" id="divSelMacc">
|
||||
<asp:DropDownList runat="server" ID="ddlSubMacc" DataSourceID="ods" CssClass="form-control" DataTextField="CodMaccArticolo" DataValueField="IdxMacchina" AutoPostBack="True" OnSelectedIndexChanged="ddlSubMacc_SelectedIndexChanged" OnDataBound="ddlSubMacc_DataBound"></asp:DropDownList>
|
||||
<asp:ObjectDataSource runat="server" ID="ods" OldValuesParameterFormatString="original_{0}" SelectMethod="getMulti" TypeName="MapoDb.DS_applicazioneTableAdapters.MSFDTableAdapter" FilterExpression="idxMacchina LIKE '%#%'">
|
||||
<SelectParameters>
|
||||
<asp:SessionParameter DefaultValue="0" Name="IdxMacchina" SessionField="IdxMacchina" Type="String" />
|
||||
</SelectParameters>
|
||||
</asp:ObjectDataSource>
|
||||
}
|
||||
else
|
||||
{
|
||||
<div class="alert alert-warning fs-3">MANCA ODL: conferma NON permessa</div>
|
||||
}
|
||||
|
||||
|
||||
</div>
|
||||
<div class="card-body p-0 text-light">
|
||||
@if (showInnov)
|
||||
{
|
||||
<div class="row textCondens text-end bg-dark m-1 p-1" runat="server" id="divInnovazioni" onloadeddata="showConfirmButton()">
|
||||
<div class="col-6 py-1 text-start text-uppercase">
|
||||
<b>Dati Incrementali</b>
|
||||
</div>
|
||||
<div class="col-6 text-end">
|
||||
<sub>
|
||||
ultima conferma --> @dtReqUpdate.ToString()
|
||||
</sub>
|
||||
</div>
|
||||
<div class="col-6 col-sm-3 pr-1 align-self-end fw-bold">
|
||||
<label>Pz Prodotti CONFERMATI</label>
|
||||
<input class="form-control fs-2 text-end alert alert-warning py-0 mb-0" @bind="numPzProdotti2Rec" @onblur="() => setConfirmBtn(true)" @onfocus="() => setConfirmBtn(false)">
|
||||
</div>
|
||||
<div class="col-6 col-sm-3 px-1 align-self-end fw-bold">
|
||||
<div class="d-flex justify-content-around">
|
||||
<div>
|
||||
<span class="text-danger">Pz Scarto</span>
|
||||
+
|
||||
<span class="text-success">Pz Buoni</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="px-2" style="font-size: 2em;">
|
||||
<div class="d-flex justify-content-around">
|
||||
<div>
|
||||
<span runat="server" class="text-danger py-0">@lblPz2RecScarto</span>
|
||||
+
|
||||
<span runat="server" class="text-success py-0">@lblPz2RecBuoni</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6 col-sm-3 pr-1 align-self-end fw-bold">
|
||||
@if (enablePzProdLasciati)
|
||||
{
|
||||
<label ID="lblNumLasciati" class="mb-0">Pz Prodotti LASCIATI</label>
|
||||
<input class="form-control fs-2 text-end alert alert-warning py-0 mb-0" @bind="numPzProdottiLasciati" @onblur="() => setConfirmBtn(true)" @onfocus="() => setConfirmBtn(false)">
|
||||
}
|
||||
else
|
||||
{
|
||||
<label class="btn btn-dark text-light btn-lg w-100" Visible="false"> </label>
|
||||
}
|
||||
</div>
|
||||
<div class="col-6 col-sm-3 pl-1 align-self-end fw-bold">
|
||||
@if (showConfirm)
|
||||
{
|
||||
<button class="btn btn-success text-light btn-lg w-100" @onclick="SalvaConfPz"><i class="fa-regular fa-floppy-disk"></i> CONFERMA</button>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
@if (isProcessing)
|
||||
{
|
||||
<div class="row textCondens">
|
||||
<div class="col-12">
|
||||
<div class="text-center text-warning align-middle">
|
||||
<i class="fa fa-spinner fa-pulse"></i>
|
||||
<b>ELABORAZIONE IN CORSO</b>
|
||||
<i class="fa fa-spinner fa-pulse"></i>
|
||||
<div class="progress">
|
||||
<div class="progress-bar progress-bar-striped bg-success progress-bar-animated" role="progressbar" aria-valuenow="75" aria-valuemin="0" aria-valuemax="100" style="width: 75%"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body p-0">
|
||||
<div class="row textCondens text-end bg-dark m-1 p-1" runat="server" id="divInnovazioni" onloadeddata="showConfirmButton()">
|
||||
<div class="col-6 py-1 text-start text-uppercase">
|
||||
<b>Dati Incrementali</b>
|
||||
</div>
|
||||
<div class="col-6 text-end">
|
||||
<sub>ultima conferma -->
|
||||
<asp:Label runat="server" ID="lblDtRec"></asp:Label></sub>
|
||||
</div>
|
||||
<div class="col-6 col-sm-3 pr-1 align-self-end fw-bold">
|
||||
<asp:Label runat="server" ID="lblNumPezzi" CssClass="mb-0" AssociatedControlID="txtNumPezzi" Text="Pz Prodotti CONFERMATI" />
|
||||
<asp:TextBox runat="server" ID="txtNumPezzi" Font-Size="XX-Large" TextMode="Number" CssClass="form-control text-end alert alert-warning py-0 mb-0" Enabled="true" AutoPostBack="True" OnTextChanged="txtNumPezzi_TextChanged" onfocus="hideConfirmButton()" onblur="showConfirmButton()" />
|
||||
</div>
|
||||
<div class="col-6 col-sm-3 px-1 align-self-end fw-bold">
|
||||
<div class="px-2">
|
||||
<asp:Label runat="server" ID="lblPzSca2Rec" CssClass="text-danger" Text="Pz Scarto" />
|
||||
+
|
||||
<asp:Label runat="server" ID="lblPzBuo2Rec" CssClass="text-success" Text="Pz Buoni" />
|
||||
</div>
|
||||
<div class="px-2" style="font-size: 2em;">
|
||||
<asp:Label runat="server" ID="lblPz2RecScarto" CssClass="text-danger py-0">[B2]</asp:Label>
|
||||
+
|
||||
<asp:Label runat="server" ID="lblPz2RecBuoni" CssClass="text-success py-0">[C2]</asp:Label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6 col-sm-3 pr-1 align-self-end fw-bold">
|
||||
<asp:Label runat="server" ID="lblNumLasciati" CssClass="mb-0" AssociatedControlID="txtNumPezzi" Text="Pz Prodotti LASCIATI" />
|
||||
<asp:TextBox runat="server" ID="txtNumLasciati" Font-Size="XX-Large" TextMode="Number" CssClass="form-control text-end alert alert-secondary py-0 mb-0" Enabled="true" AutoPostBack="True" OnTextChanged="txtNumLasciati_TextChanged" onfocus="hideConfirmButton()" onblur="showConfirmButton()" />
|
||||
<asp:Label runat="server" ID="lblEmptyNumLasciati" CssClass="btn btn-dark text-light btn-lg w-100" Visible="false"> </asp:Label>
|
||||
</div>
|
||||
<div class="col-6 col-sm-3 pl-1 align-self-end fw-bold">
|
||||
<asp:LinkButton runat="server" ID="lbtSalva" CssClass="btn btn-success text-light btn-lg w-100" OnClick="lbtSalva_Click"><i class="fa fa-floppy-o"></i> CONFERMA</asp:LinkButton>
|
||||
<asp:Label runat="server" ID="lblUpdating" CssClass="btn btn-dark text-light btn-lg w-100" Visible="false"><i class="fa fa-circle-o-notch fa-spin"></i> USER INPUT</asp:Label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row textCondens">
|
||||
<div class="col-12">
|
||||
<asp:UpdateProgress ID="updtRicerca" runat="server" DisplayAfter="10" DynamicLayout="true">
|
||||
<ProgressTemplate>
|
||||
<div id="progress_back">
|
||||
</div>
|
||||
<div id="progress_top" class="text-center text-warning align-middle">
|
||||
<i class="fa fa-spinner fa-pulse"></i>
|
||||
<b>ELABORAZIONE IN CORSO</b>
|
||||
<i class="fa fa-spinner fa-pulse"></i>
|
||||
<div class="progress">
|
||||
<div class="progress-bar progress-bar-striped bg-success progress-bar-animated" role="progressbar" aria-valuenow="75" aria-valuemin="0" aria-valuemax="100" style="width: 75%"></div>
|
||||
</div>
|
||||
</div>
|
||||
</ProgressTemplate>
|
||||
</asp:UpdateProgress>
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
<div class="row textCondens">
|
||||
<div class="col-6 py-1 text-start text-uppercase">
|
||||
<b>Dati Globali ODL</b>
|
||||
</div>
|
||||
<div class="col-6 text-end" id="divPeriodo">
|
||||
<sub>Periodo ODL calcolato:
|
||||
<asp:Label runat="server" ID="lblInizio">[dtInizio]</asp:Label>
|
||||
<sub>
|
||||
Periodo ODL calcolato:
|
||||
<asp:Label runat="server" ID="lblInizio">[dtInizio]</asp:Label>
|
||||
-
|
||||
<asp:Label runat="server" ID="lblFine">[dtFine]</asp:Label></sub>
|
||||
<asp:Label runat="server" ID="lblFine">[dtFine]</asp:Label>
|
||||
</sub>
|
||||
</div>
|
||||
<div class="col-6 col-sm-3 pr-1 py-0 text-end">
|
||||
<div class="alert alert-warning py-1">
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
using global::Microsoft.AspNetCore.Components;
|
||||
using MP.Data.DatabaseModels;
|
||||
using MP.Data.Services;
|
||||
|
||||
namespace MP_TAB_SERV.Components
|
||||
{
|
||||
@@ -7,26 +8,146 @@ namespace MP_TAB_SERV.Components
|
||||
{
|
||||
#region Public Properties
|
||||
|
||||
/// <summary>
|
||||
/// Verifica ODL OK (ovvero caricato x macchina...)
|
||||
/// </summary>
|
||||
public bool odlOk
|
||||
{
|
||||
get => (RecMSE != null && RecMSE.IdxOdl > 0);
|
||||
}
|
||||
|
||||
[Parameter]
|
||||
public MappaStatoExpl? RecMSE { get; set; } = null;
|
||||
|
||||
#endregion Public Properties
|
||||
|
||||
#region Public Methods
|
||||
|
||||
/// <summary>
|
||||
/// Aggiorno valori produzione alla data richiesta...
|
||||
/// </summary>
|
||||
/// <param name="newDate"></param>
|
||||
public async Task doUpdate()
|
||||
{
|
||||
datiProdAct = await TabDServ.StatoProdMacchina(IdxMaccSel, dtReqUpdate);
|
||||
// aggiorno visualizzazione...
|
||||
numPzProdotti = datiProdAct.PzTotODL;
|
||||
numPz2Rec = datiProdAct.Pz2RecTot;
|
||||
numPzScaConf = datiProdAct.PzConfScarto;
|
||||
numPzBuoniConf = datiProdAct.PzConfBuoni;
|
||||
numPzProdotti2Rec = datiProdAct.Pz2RecTot;
|
||||
numPzScarto2Rec = datiProdAct.Pz2RecScarto;
|
||||
dtInizio = RecMSE?.DataInizioOdl ?? DateTime.Today.AddMonths(-2); ;
|
||||
dtFine = dtReqUpdate;
|
||||
//reportUpdate();
|
||||
}
|
||||
|
||||
#endregion Public Methods
|
||||
|
||||
#if false
|
||||
#region Protected Properties
|
||||
|
||||
#region Public Fields
|
||||
protected string ConfTitle
|
||||
{
|
||||
get => showInnov ? "Nascondi Conferma" : "Mostra Conferma";
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Dati produzioen rilevati
|
||||
/// </summary>
|
||||
public DS_ProdTempi.StatoProdRow datiProdAct;
|
||||
protected StatoProdModel? datiProdAct { get; set; } = null;
|
||||
|
||||
#endregion Public Fields
|
||||
protected DateTime dtFine { get; set; } = DateTime.Today.AddMonths(-1);
|
||||
|
||||
#region Public Events
|
||||
protected DateTime dtInizio { get; set; } = DateTime.Today.AddMonths(-2);
|
||||
|
||||
protected int lblPz2RecBuoni
|
||||
{
|
||||
get => numPzProdotti2Rec - numPzScarto2Rec - numPzProdottiLasciati;
|
||||
}
|
||||
|
||||
//protected int lblPzBuo2Rec { get; set; } = 0;
|
||||
protected int lblPz2RecScarto
|
||||
{
|
||||
get => numPzScarto2Rec;
|
||||
}
|
||||
|
||||
protected int numPz2Rec { get; set; } = 0;
|
||||
|
||||
protected int numPzBuoniConf { get; set; } = 0;
|
||||
|
||||
protected int numPzProdotti { get; set; } = 0;
|
||||
|
||||
protected int numPzProdotti2Rec { get; set; } = 0;
|
||||
|
||||
protected int numPzProdottiLasciati { get; set; } = 0;
|
||||
|
||||
protected int numPzScaConf { get; set; } = 0;
|
||||
|
||||
protected int numPzScarto2Rec { get; set; } = 0;
|
||||
|
||||
[Inject]
|
||||
protected SharedMemService SMServ { get; set; } = null!;
|
||||
|
||||
[Inject]
|
||||
protected TabDataService TabDServ { get; set; } = null!;
|
||||
|
||||
#endregion Protected Properties
|
||||
|
||||
#region Protected Methods
|
||||
|
||||
protected override async Task OnInitializedAsync()
|
||||
{
|
||||
if (RecMSE != null)
|
||||
{
|
||||
IdxMaccSel = RecMSE.IdxMacchina;
|
||||
enablePzProdLasciati = SMServ.GetConfBool("enablePzProdLasciati");
|
||||
await doUpdate();
|
||||
}
|
||||
}
|
||||
|
||||
protected async Task SalvaConfPz()
|
||||
{
|
||||
await Task.Delay(1);
|
||||
}
|
||||
|
||||
protected void setConfirmBtn(bool newVal)
|
||||
{
|
||||
showConfirm = newVal;
|
||||
}
|
||||
|
||||
protected void SetMacc(string selIdxMacc)
|
||||
{
|
||||
IdxMaccSel = selIdxMacc;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Cambio stato visibilità pannello e testo button
|
||||
/// </summary>
|
||||
protected void ToggleConfProd()
|
||||
{
|
||||
showInnov = !showInnov;
|
||||
dtReqUpdate = DateTime.Now;
|
||||
}
|
||||
|
||||
#endregion Protected Methods
|
||||
|
||||
#region Private Fields
|
||||
|
||||
private bool enablePzProdLasciati = false;
|
||||
|
||||
#endregion Private Fields
|
||||
|
||||
#region Private Properties
|
||||
|
||||
private DateTime dtReqUpdate { get; set; } = DateTime.Now;
|
||||
private string IdxMaccSel { get; set; } = "";
|
||||
private bool isProcessing { get; set; } = false;
|
||||
private bool showConfirm { get; set; } = true;
|
||||
private bool showInnov { get; set; } = false;
|
||||
|
||||
#endregion Private Properties
|
||||
|
||||
#if false
|
||||
|
||||
/// <summary>
|
||||
/// registrato nuovo valore
|
||||
@@ -43,10 +164,6 @@ namespace MP_TAB_SERV.Components
|
||||
/// </summary>
|
||||
public event EventHandler eh_reset;
|
||||
|
||||
#endregion Public Events
|
||||
|
||||
#region Public Properties
|
||||
|
||||
/// <summary>
|
||||
/// restituisce css disabled SE odl NON OK...
|
||||
/// </summary>
|
||||
@@ -75,47 +192,6 @@ namespace MP_TAB_SERV.Components
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Verifica ODL OK (ovvero caricato x macchina...)
|
||||
/// </summary>
|
||||
public bool odlOk
|
||||
{
|
||||
get
|
||||
{
|
||||
bool answ = true;
|
||||
// se ODL > 0 è ok!!!
|
||||
answ = (idxOdl > 0);
|
||||
return answ;
|
||||
}
|
||||
}
|
||||
|
||||
#endregion Public Properties
|
||||
|
||||
#region Public Methods
|
||||
|
||||
/// <summary>
|
||||
/// Aggiorno valori produzione alla data richiesta...
|
||||
/// </summary>
|
||||
/// <param name="newDate"></param>
|
||||
public void doUpdate()
|
||||
{
|
||||
datiProdAct = DataLayerObj.taStatoProd.GetData(idxMacchinaSel, dtReqUpdate)[0];
|
||||
// aggiorno visualizzazione...
|
||||
numPzProdotti = datiProdAct.PzTotODL;
|
||||
numPz2Rec = datiProdAct.Pz2RecTot;
|
||||
numPzScaConf = datiProdAct.PzConfScarto;
|
||||
numPzBuoniConf = datiProdAct.PzConfBuoni;
|
||||
numPzProdotti2Rec = datiProdAct.Pz2RecTot;
|
||||
numPzScarto2Rec = datiProdAct.Pz2RecScarto;
|
||||
dtInizio = inizioOdl;
|
||||
dtFine = dtReqUpdate;
|
||||
reportUpdate();
|
||||
}
|
||||
|
||||
#endregion Public Methods
|
||||
|
||||
#region Protected Properties
|
||||
|
||||
protected DateTime dtFine
|
||||
{
|
||||
set
|
||||
@@ -258,22 +334,6 @@ namespace MP_TAB_SERV.Components
|
||||
}
|
||||
}
|
||||
|
||||
protected bool showInnov
|
||||
{
|
||||
get
|
||||
{
|
||||
return divInnovazioni.Visible;
|
||||
}
|
||||
set
|
||||
{
|
||||
divInnovazioni.Visible = value;
|
||||
}
|
||||
}
|
||||
|
||||
#endregion Protected Properties
|
||||
|
||||
#region Protected Methods
|
||||
|
||||
protected void ddlSubMacc_DataBound(object sender, EventArgs e)
|
||||
{
|
||||
// se ho in memoria un valore LO REIMPOSTO...
|
||||
@@ -331,17 +391,6 @@ namespace MP_TAB_SERV.Components
|
||||
doUpdate();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// cambio stato visibilità pannello e testo button
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void lbtShowConfProd_Click(object sender, EventArgs e)
|
||||
{
|
||||
showInnov = !showInnov;
|
||||
switchBtnConferma(showInnov);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// caricamento pagina
|
||||
/// </summary>
|
||||
@@ -400,10 +449,6 @@ namespace MP_TAB_SERV.Components
|
||||
idxOdl = answ;
|
||||
}
|
||||
|
||||
#endregion Protected Methods
|
||||
|
||||
#region Private Methods
|
||||
|
||||
private void checkAll()
|
||||
{
|
||||
updateOdl();
|
||||
@@ -556,8 +601,6 @@ namespace MP_TAB_SERV.Components
|
||||
lblDtRec.Text = dtReqUpdate.ToString();
|
||||
}
|
||||
|
||||
#endregion Private Methods
|
||||
#endif
|
||||
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,7 @@
|
||||
using Microsoft.AspNetCore.Components;
|
||||
using MP.Data.DatabaseModels;
|
||||
using MP.Data.Services;
|
||||
using NLog;
|
||||
|
||||
namespace MP_TAB_SERV.Pages
|
||||
{
|
||||
@@ -36,6 +37,7 @@ namespace MP_TAB_SERV.Pages
|
||||
|
||||
#region Private Fields
|
||||
|
||||
private static Logger Log = LogManager.GetCurrentClassLogger();
|
||||
private List<ConfigModel>? CurrConfig = null;
|
||||
|
||||
private bool enableSchedaTecnica = false;
|
||||
@@ -72,11 +74,18 @@ namespace MP_TAB_SERV.Pages
|
||||
{
|
||||
if (string.IsNullOrEmpty(IdxMacc))
|
||||
{
|
||||
IdxMacc = await MsgServ.IdxMaccGet();
|
||||
// recupero MSE macchina....
|
||||
if (!string.IsNullOrEmpty(IdxMacc))
|
||||
try
|
||||
{
|
||||
CurrMSE = await MsgServ.GetMachineMse(IdxMacc);
|
||||
IdxMacc = await MsgServ.IdxMaccGet();
|
||||
// recupero MSE macchina....
|
||||
if (!string.IsNullOrEmpty(IdxMacc))
|
||||
{
|
||||
CurrMSE = await MsgServ.GetMachineMse(IdxMacc);
|
||||
}
|
||||
}
|
||||
catch (Exception exc)
|
||||
{
|
||||
Log.Error($"Eccezione in ReloadData{Environment.NewLine}{exc}");
|
||||
}
|
||||
}
|
||||
// recupero parametri configurazione...
|
||||
|
||||
@@ -324,14 +324,14 @@ namespace MP.Data.Controllers
|
||||
/// </summary>
|
||||
/// <param name="idxMacchina"></param>
|
||||
/// <returns></returns>
|
||||
public StatoProdModel StatoProdMacchina(string idxMacchina)
|
||||
public PzProdModel PezziProdMacchina(string idxMacchina)
|
||||
{
|
||||
StatoProdModel dbResult = new StatoProdModel();
|
||||
PzProdModel dbResult = new PzProdModel();
|
||||
using (var dbCtx = new MoonProContext(_configuration))
|
||||
{
|
||||
var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
|
||||
dbResult = dbCtx
|
||||
.DbSetStatoProd
|
||||
.DbSetPzProd
|
||||
.FromSqlRaw("EXEC stp_PzProd_getByMacchina @IdxMacchina", IdxMacchina)
|
||||
.AsNoTracking()
|
||||
.FirstOrDefault();
|
||||
|
||||
@@ -1349,14 +1349,14 @@ namespace MP.Data.Controllers
|
||||
/// </summary>
|
||||
/// <param name="idxMacchina"></param>
|
||||
/// <returns></returns>
|
||||
public StatoProdModel StatoProdMacchina(string idxMacchina)
|
||||
public PzProdModel PezziProdMacchina(string idxMacchina)
|
||||
{
|
||||
StatoProdModel dbResult = new StatoProdModel();
|
||||
PzProdModel dbResult = new PzProdModel();
|
||||
using (var dbCtx = new MoonProContext(_configuration))
|
||||
{
|
||||
var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
|
||||
dbResult = dbCtx
|
||||
.DbSetStatoProd
|
||||
.DbSetPzProd
|
||||
.FromSqlRaw("EXEC stp_PzProd_getByMacchina @IdxMacchina", IdxMacchina)
|
||||
.AsNoTracking()
|
||||
.FirstOrDefault();
|
||||
|
||||
@@ -113,6 +113,31 @@ namespace MP.Data.Controllers
|
||||
return dbResult;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Stato prod macchina (completo)
|
||||
/// </summary>
|
||||
/// <param name="idxMacchina"></param>
|
||||
/// <param name="dtReq"></param>
|
||||
/// <returns></returns>
|
||||
public StatoProdModel StatoProdMacchina(string idxMacchina, DateTime dtReq)
|
||||
{
|
||||
StatoProdModel dbResult = new StatoProdModel();
|
||||
using (var dbCtx = new MoonProContext(_configuration))
|
||||
{
|
||||
var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
|
||||
var DataOra = new SqlParameter("@DataOra ", dtReq);
|
||||
var rawData = dbCtx
|
||||
.DbSetStatoProd
|
||||
.FromSqlRaw("EXEC stp_StatoProd_getByMacchina @IdxMacchina, @DataOra ", IdxMacchina, DataOra)
|
||||
.AsNoTracking()
|
||||
.AsEnumerable()
|
||||
.ToList();
|
||||
dbResult = rawData
|
||||
.FirstOrDefault();
|
||||
}
|
||||
return dbResult;
|
||||
}
|
||||
|
||||
#endregion Public Methods
|
||||
|
||||
#region Private Fields
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
#nullable disable
|
||||
// <Auto-Generated>
|
||||
// This is here so CodeMaid doesn't reorganize this document
|
||||
// </Auto-Generated>
|
||||
namespace MP.Data.DatabaseModels
|
||||
{
|
||||
public partial class PzProdModel
|
||||
{
|
||||
[Key]
|
||||
public string idxMacchina { get; set; } = "NA";
|
||||
public int pezziNonConfermati { get; set; } = 0;
|
||||
public DateTime DataFrom { get; set; } = DateTime.Now;
|
||||
public DateTime DataTo { get; set; } = DateTime.Now;
|
||||
}
|
||||
}
|
||||
@@ -13,7 +13,13 @@ namespace MP.Data.DatabaseModels
|
||||
{
|
||||
[Key]
|
||||
public string idxMacchina { get; set; } = "NA";
|
||||
public int pezziNonConfermati { get; set; } = 0;
|
||||
public int IdxOdl { get; set; } = 0;
|
||||
public int PzTotODL { get; set; } = 0;
|
||||
public int PzConfScarto { get; set; } = 0;
|
||||
public int PzConfBuoni { get; set; } = 0;
|
||||
public int PzRichODL { get; set; } = 0;
|
||||
public int Pz2RecTot { get; set; } = 0;
|
||||
public int Pz2RecScarto { get; set; } = 0;
|
||||
public DateTime DataFrom { get; set; } = DateTime.Now;
|
||||
public DateTime DataTo { get; set; } = DateTime.Now;
|
||||
}
|
||||
|
||||
@@ -52,7 +52,7 @@ namespace MP.Data
|
||||
public virtual DbSet<FluxLog> DbSetFluxLog { get; set; }
|
||||
public virtual DbSet<DossierModel> DbSetDossiers { get; set; }
|
||||
public virtual DbSet<StatODLModel> DbSetStatOdl { get; set; }
|
||||
public virtual DbSet<StatoProdModel> DbSetStatoProd { get; set; }
|
||||
public virtual DbSet<PzProdModel> DbSetPzProd { get; set; }
|
||||
public virtual DbSet<EventListModel> DbSetEvList { get; set; }
|
||||
public virtual DbSet<VocabolarioModel> DbSetVocabolario { get; set; }
|
||||
public virtual DbSet<AnagOperatoriModel> DbOperatori { get; set; }
|
||||
@@ -63,6 +63,7 @@ namespace MP.Data
|
||||
public virtual DbSet<Macchine2SlaveModel> DbSetM2S { get; set; }
|
||||
public virtual DbSet<TransizioneIngressiModel> DbSetSMI { get; set; }
|
||||
public virtual DbSet<KeepAliveModel> DbSetKeepAlive { get; set; }
|
||||
public virtual DbSet<StatoProdModel> DbSetStatoProd { get; set; }
|
||||
|
||||
public virtual DbSet<ST_Act> DbSetStAct { get; set; }
|
||||
public virtual DbSet<ST_ActRow> DbSetStActRow { get; set; }
|
||||
@@ -72,6 +73,8 @@ namespace MP.Data
|
||||
public virtual DbSet<ST_Template> DbSetStTemplate { get; set; }
|
||||
public virtual DbSet<ST_TemplateRows> DbSetStTemplateRows { get; set; }
|
||||
|
||||
|
||||
|
||||
#endregion Public Properties
|
||||
|
||||
#region Private Methods
|
||||
|
||||
@@ -122,6 +122,18 @@ namespace MP.Data.Services
|
||||
}
|
||||
return answ;
|
||||
}
|
||||
public int GetConfInt(string chiave)
|
||||
{
|
||||
int answ = 0;
|
||||
int.TryParse(GetConf(chiave), out answ);
|
||||
return answ;
|
||||
}
|
||||
public bool GetConfBool(string chiave)
|
||||
{
|
||||
bool answ = false;
|
||||
bool.TryParse(GetConf(chiave), out answ);
|
||||
return answ;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -195,6 +195,44 @@ namespace MP.Data.Services
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Stato prod macchina (completo)
|
||||
/// </summary>
|
||||
/// <param name="idxMacchina"></param>
|
||||
/// <param name="dtReq"></param>
|
||||
/// <returns></returns>
|
||||
public async Task<StatoProdModel> StatoProdMacchina(string idxMacchina, DateTime dtReq)
|
||||
{
|
||||
// setup parametri costanti
|
||||
string source = "DB";
|
||||
Stopwatch sw = new Stopwatch();
|
||||
sw.Start();
|
||||
StatoProdModel? result = new StatoProdModel();
|
||||
// cerco in redis...
|
||||
string currKey = $"{redisBaseKey}:StatoProd:{idxMacchina}:{dtReq:HHmmss}";
|
||||
RedisValue rawData = await redisDb.StringGetAsync(currKey);
|
||||
if (!string.IsNullOrEmpty($"{rawData}"))
|
||||
{
|
||||
result = JsonConvert.DeserializeObject<StatoProdModel>($"{rawData}");
|
||||
source = "REDIS";
|
||||
}
|
||||
else
|
||||
{
|
||||
result = dbController.StatoProdMacchina(idxMacchina, dtReq);
|
||||
// serializzp e salvo...
|
||||
rawData = JsonConvert.SerializeObject(result);
|
||||
await redisDb.StringSetAsync(currKey, rawData, UltraFastCache);
|
||||
}
|
||||
if (result == null)
|
||||
{
|
||||
result = new StatoProdModel();
|
||||
}
|
||||
sw.Stop();
|
||||
Log.Debug($"StatoProdMacchina | {source} | {sw.Elapsed.TotalMilliseconds}ms");
|
||||
return result;
|
||||
}
|
||||
|
||||
#endregion Public Methods
|
||||
|
||||
#region Protected Fields
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<body>
|
||||
<i>Modulo MP-IOC </i>
|
||||
<h4>Versione: 6.16.2306.915</h4>
|
||||
<h4>Versione: 6.16.2310.411</h4>
|
||||
<br /> Note di rilascio:
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
@@ -1 +1 @@
|
||||
6.16.2306.915
|
||||
6.16.2310.411
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<item>
|
||||
<version>6.16.2306.915</version>
|
||||
<version>6.16.2310.411</version>
|
||||
<url>https://nexus.steamware.net/repository/SWS/MP-IOC/stable/LAST/MP.IOC.zip</url>
|
||||
<changelog>https://nexus.steamware.net/repository/SWS/MP-IOC/stable/LAST/ChangeLog.html</changelog>
|
||||
<mandatory>false</mandatory>
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<Nullable>enable</Nullable>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<RootNamespace>MP.SPEC</RootNamespace>
|
||||
<Version>6.16.2310.308</Version>
|
||||
<Version>6.16.2310.411</Version>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<body>
|
||||
<i>Modulo MAPOSPEC </i>
|
||||
<h4>Versione: 6.16.2310.308</h4>
|
||||
<h4>Versione: 6.16.2310.411</h4>
|
||||
<br /> Note di rilascio:
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
@@ -1 +1 @@
|
||||
6.16.2310.308
|
||||
6.16.2310.411
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<item>
|
||||
<version>6.16.2310.308</version>
|
||||
<version>6.16.2310.411</version>
|
||||
<url>https://nexus.steamware.net/repository/SWS/MP-SPEC/stable/LAST/MP.SPEC.zip</url>
|
||||
<changelog>https://nexus.steamware.net/repository/SWS/MP-SPEC/stable/LAST/ChangeLog.html</changelog>
|
||||
<mandatory>false</mandatory>
|
||||
|
||||
Reference in New Issue
Block a user