using MagData; using SteamWare; using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace MP_MAG.WebUserControls { public partial class cmp_elencoPedane : BaseUserControl { #region Public Properties /// /// AL selezionato /// public string AlSel { get { string answ = ""; try { answ = $"{grView.SelectedValue}"; } catch { } return answ; } } public string lastCmd { get { return hfLastCmd.Value; } set { hfLastCmd.Value = value; } } public int PackListID { get { int answ = 0; int.TryParse(hfPackListID.Value, out answ); return answ; } set { hfPackListID.Value = $"{value}"; doUpdate(); checkStatus(); } } #endregion Public Properties #region Private Methods private void checkStatus() { // verifica buttons secondo stato PackList... var tabPL = MagDataLayerObj.taPList.getByKey(PackListID); lblStatus01.Visible = false; lblStatus02.Visible = false; lblStatus03.Visible = false; if (tabPL != null && tabPL.Rows.Count > 0) { switch (tabPL[0].PackStatus) { case 1: lblStatus01.Visible = true; break; case 2: lblStatus02.Visible = true; break; case 3: lblStatus03.Visible = true; break; default: break; } } } private void Cmp_numRow_eh_doRefresh(object sender, EventArgs e) { grView.PageSize = cmp_numRow.numRow; } /// /// Toggle buttons x add new pedana /// private void toggleAddNew() { divAddNew.Visible = !divAddNew.Visible; lbtShowAdd.Text = divAddNew.Visible ? "Nascondi" : "Aggiungi"; int newNum = 0; // calcolo quante pedane ho... try { var tabAL = MagDataLayer.man.taEAL.getByPackList(PackListID); newNum = tabAL.Count + 1; } catch { } // descrizione txtDescr.Text = $"{newNum}"; // se sono in add --> sollevo evento editing if (divAddNew.Visible) { raiseEditing(); } } #endregion Private Methods #region Protected Methods protected void grView_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e) { raiseReset(); } protected void grView_RowCommand(object sender, GridViewCommandEventArgs e) { if (e.CommandArgument != null) { lastCmd = $"{e.CommandArgument}"; } else { lastCmd = ""; } } protected void grView_RowEditing(object sender, GridViewEditEventArgs e) { raiseEditing(); } protected void grView_RowUpdated(object sender, GridViewUpdatedEventArgs e) { raiseEvent(); } protected void grView_SelectedIndexChanged(object sender, EventArgs e) { // esegue stampa... if (lastCmd == "print") { // metto in coda di stampa... tipoDocumento tipoDoc = tipoDocumento.docPedana; string keyParam = $"{grView.SelectedValue}"; MagDataLayerObj.taPJQ.insertQuery($"{tipoDoc}", keyParam, ddlCartPedane.SelectedValue); lastCmd = ""; } else if (lastCmd == "SetEdit") { // cambio stato a Editabile (0) string keyParam = $"{grView.SelectedValue}"; MagDataLayerObj.taEAL.updateStatus(keyParam, 0); grView.DataBind(); lastCmd = ""; } if (lastCmd == "SetComplete") { // cambio stato a COMPLETATO (1) string keyParam = $"{grView.SelectedValue}"; MagDataLayerObj.taEAL.updateStatus(keyParam, 1); grView.DataBind(); lastCmd = ""; } // se qualcuno ascolta sollevo evento nuovo valore... raiseEvent(); } /// /// Creazione nuova pedana /// /// /// protected void lbkAddNew_Click(object sender, EventArgs e) { // FIX ME / TODO: se manca cod opr lo recupera da default string currCodOpr = "OPR.01"; if (currProdData != null) { try { currCodOpr = currProdData.CodOpr; } catch { } } int TaraAL = 0; try { TaraAL = SteamWare.memLayer.ML.CRI("TaraAL"); } catch { } // chiamo insert MagDataLayer.man.taEAL.insertQuery(DateTime.Today, "PED", currCodOpr, txtDescr.Text.Trim(), PackListID, TaraAL); // nascondo add... toggleAddNew(); checkStatus(); // update!!! grView.DataBind(); } /// /// comando reset /// /// /// protected void lbtReset_Click(object sender, EventArgs e) { resetSelezione(); } /// /// Mostra btn add new /// /// /// protected void lbtShowAdd_Click(object sender, EventArgs e) { toggleAddNew(); } protected void ods_Updated(object sender, ObjectDataSourceStatusEventArgs e) { resetSelezione(); } protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { cmp_numRow.numRow = 10; grView.PageSize = cmp_numRow.numRow; divAddNew.Visible = false; lastCmd = ""; } cmp_numRow.eh_doRefresh += Cmp_numRow_eh_doRefresh; checkStatus(); } #endregion Protected Methods #region Public Methods public bool canDelete(object _numUdc) { int numUdc = 999; int.TryParse(_numUdc.ToString(), out numUdc); return numUdc == 0; } public void doUpdate() { grView.DataBind(); } public void resetSelezione() { lastCmd = ""; grView.SelectedIndex = -1; doUpdate(); raiseReset(); } #endregion Public Methods } }