using AppData; using NKC_SDK; using System; using System.Web.UI; using System.Web.UI.WebControls; namespace NKC_WF.WebUserControls { public partial class cmp_batchList : BaseUserControl { /// /// modalità funzionamento controllo /// public BatchListMode listMode { get; set; } = BatchListMode.Standard; /// /// Caricamento pagina /// /// /// protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { divDetail.Visible = false; // in base al ListMode decido cosa mostrare... checkFixMode(); } cmp_batchDetail.eh_doRefresh += Cmp_batchDetail_eh_doRefresh; cmp_numRow.eh_doRefresh += Cmp_numRow_eh_doRefresh; } /// /// In base al modo richiesto imposta filtraggi... /// private void checkFixMode() { ListItem currItem = null; int valore = -100; if (listMode == BatchListMode.Standard) { ods.FilterExpression = " STATUS < 8 "; foreach (var item in ddlStatus.Items) { try { currItem = (ListItem)item; int.TryParse(currItem.Value, out valore); if (valore > 7) { currItem.Enabled = false; } } catch { } } hlPartValidation.Visible = true; } else { ods.FilterExpression = " STATUS > 7"; foreach (var item in ddlStatus.Items) { try { currItem = (ListItem)item; int.TryParse(currItem.Value, out valore); if (valore < 8 && valore >= 0) { currItem.Enabled = false; } } catch { } } hlPartValidation.Visible = false; } // controllo infine SE CI SIANO parti da validare... if (DataLayer.man.taBL.getByStatus(8).Count > 0) { hlPartValidation.CssClass = "btn btn-sm btn-warning btn-block"; } else { hlPartValidation.CssClass = "btn btn-sm btn-success btn-block"; } } private void Cmp_numRow_eh_doRefresh(object sender, EventArgs e) { // recupero num righe ed aggiorno... grView.PageSize = cmp_numRow.numRow; grView.DataBind(); } private void Cmp_batchDetail_eh_doRefresh(object sender, EventArgs e) { resetSelezione(); } /// /// Codice CSS in base a status... /// /// /// public string cssByStatus(object _status) { string answ = "text-muted"; int status = -1; int.TryParse(_status.ToString(), out status); switch (status) { case 1: answ = "font-weight-bold text-info"; break; case 2: answ = "font-weight-bold text-primary"; break; case 3: answ = "font-weight-bold text-warning"; break; case 4: answ = "font-weight-bold text-danger"; break; case 5: answ = "font-weight-bold text-success"; break; case 6: answ = "font-weight-bold text-secondary"; break; default: break; } return answ; } /// /// Converte il codice stato in effettivo campo /// /// /// public string BStatus(object _status) { string answ = ComLib.BatchStatusDescr(_status); return answ; } /// /// comando reset /// /// /// protected void lbtReset_Click(object sender, EventArgs e) { resetSelezione(); } private void resetSelezione() { grView.SelectedIndex = -1; grView.DataBind(); divDetail.Visible = false; } /// /// BatchId selezionato /// protected int BatchIdSel { get { int answ = 0; int.TryParse(grView.SelectedValue.ToString(), out answ); return answ; } } protected void grView_SelectedIndexChanged(object sender, EventArgs e) { divDetail.Visible = true; // recupero BatchId selezionato cmp_batchDetail.BatchId = BatchIdSel; } public void doUpdate() { resetSelezione(); // controllo infine SE CI SIANO parti da validare... if (DataLayer.man.taBL.getByStatus(8).Count > 0) { hlPartValidation.CssClass = "btn btn-sm btn-warning btn-block"; } else { hlPartValidation.CssClass = "btn btn-sm btn-success btn-block"; } } } }