Fix modalità ricalcolo progetti automatica + forzata

This commit is contained in:
Samuele Locatelli
2021-11-04 09:40:52 +01:00
parent 09f0f17fcd
commit 313b86bb23
3 changed files with 25 additions and 15 deletions
@@ -11,7 +11,7 @@
<div class="row table-secondary mb-1">
<div class="col-4">
<uc1:cmp_periodoAnalisi runat="server" ID="cmp_periodoAnalisi" />
<asp:LinkButton runat="server" ID="lbtForceUpdate" CssClass="btn btn-success" OnClick="lbtForceUpdate_Click"><i class="fa fa-refresh" aria-hidden="true"></i> Forza Update</asp:LinkButton>
</div>
<div class="col-8 input-group input-group-sm small">
<div class="d-flex flex-row-reverse input-group-text py-0">
@@ -173,7 +173,7 @@
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:ObjectDataSource ID="ods" runat="server" OnInserting="recuperaFooter" DeleteMethod="deleteQuery" InsertMethod="Insert" OldValuesParameterFormatString="Original_{0}" SelectMethod="GetData" TypeName="GPW_data.DS_ApplicazioneTableAdapters.AnagProgettiTableAdapter" UpdateMethod="Update" FilterExpression=" (nomeProj like '%{0}%') OR (descrProj like '%{0}%')" OnUpdating="ods_Updating">
<asp:ObjectDataSource ID="ods" runat="server" OnInserting="recuperaFooter" DeleteMethod="deleteQuery" InsertMethod="Insert" OldValuesParameterFormatString="Original_{0}" SelectMethod="getDataFilt" TypeName="GPW_data.DS_ApplicazioneTableAdapters.AnagProgettiTableAdapter" UpdateMethod="Update" FilterExpression=" (nomeProj like '%{0}%') OR (descrProj like '%{0}%')" OnUpdating="ods_Updating">
<DeleteParameters>
<asp:Parameter Name="Original_idxProgetto" Type="Int32" />
</DeleteParameters>
@@ -187,9 +187,6 @@
<asp:Parameter Name="descrProj" Type="String" />
</InsertParameters>
<SelectParameters>
<asp:Parameter DefaultValue="0" Name="idxDipendente" Type="Int32" />
<asp:SessionParameter Name="dataFrom" SessionField="_inizio" Type="DateTime" />
<asp:SessionParameter Name="dataTo" SessionField="_fine" Type="DateTime" />
<asp:SessionParameter DefaultValue="" Name="gruppo" SessionField="gruppo_sel" Type="String" />
<asp:SessionParameter DefaultValue="0" Name="idxCliente" SessionField="idxCli_sel" Type="Int32" />
<asp:SessionParameter DefaultValue="False" Name="showPrjArch" SessionField="showPrjArch" Type="Boolean" />
@@ -158,13 +158,21 @@ namespace GPW_Admin.WebUserControls
#region Private Methods
private void Cmp_periodoAnalisi_eh_doRefresh(object sender, EventArgs e)
/// <summary>
/// verifica vetodi ricalcolo in REDIS, se non ci fosse --> ricalcola!
/// </summary>
private void checkRefresh()
{
// salvo!
var tempFilt = currFiltProj;
tempFilt.intAnalys = cmp_periodoAnalisi.intervalloAnalisi;
currFiltProj = tempFilt;
grView.DataBind();
string vetoHash = memLayer.ML.redHash($"VetoProjRefresh");
string vetoRefresh = memLayer.ML.getRSV(vetoHash);
if (string.IsNullOrEmpty(vetoRefresh))
{
// effettua refresh SOLO ATTIVI
DataProxy.DP.taAP.doSummary_Update(0, "", 0, false);
// imposto veto 120 min
int vetoRicalcProj = memLayer.ML.CRI("vetoRicalcProj") > 0 ? memLayer.ML.CRI("vetoRicalcProj") : 60;
memLayer.ML.setRSV(vetoHash, $"Last Update {DateTime.Now:yyyy.MM.dd HH:mm:ss}", vetoRicalcProj * 60);
}
}
/// <summary>
@@ -237,7 +245,6 @@ namespace GPW_Admin.WebUserControls
private void setupFilter(filtroProj currFilt)
{
// imposto
cmp_periodoAnalisi.intervalloAnalisi = currFilt.intAnalys;
showArchiviati = currFilt.showArch;
showVuoti = currFilt.showEmpty;
showOnlyStarred = currFilt.onlyStarred;
@@ -465,6 +472,12 @@ namespace GPW_Admin.WebUserControls
memLayer.ML.setSessionVal("nextObjCommand", "dettFasi");
}
protected void lbtForceUpdate_Click(object sender, EventArgs e)
{
// effettua refresh DI TUTTI (anche archiviati)
DataProxy.DP.taAP.doSummary_Update(0, "", 0, true);
}
protected void lbtResetFilt_Click(object sender, EventArgs e)
{
resetFilter();
@@ -506,7 +519,7 @@ namespace GPW_Admin.WebUserControls
filtroGrp.eh_selValore += new EventHandler(filtroGrp_eh_selValore);
filtroCli.eh_selValore += new EventHandler(filtroCli_eh_selValore);
mod_dettaglioProgetto1.eh_nuovoValore += new EventHandler(mod_dettaglioProgetto1_eh_nuovoValore);
cmp_periodoAnalisi.eh_doRefresh += Cmp_periodoAnalisi_eh_doRefresh;
checkRefresh();
}
/// <summary>
@@ -15,13 +15,13 @@ namespace GPW_Admin.WebUserControls
{
/// <summary>
/// cmp_periodoAnalisi control.
/// lbtForceUpdate control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::GPW_Admin.WebUserControls.cmp_periodoAnalisi cmp_periodoAnalisi;
protected global::System.Web.UI.WebControls.LinkButton lbtForceUpdate;
/// <summary>
/// lbtResetFilt control.