Files
MoonPro.net/MP-MAG/WebUserControls/cmp_elencoPedane.ascx.cs
T
2022-03-25 16:47:05 +01:00

286 lines
7.6 KiB
C#

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
/// <summary>
/// AL selezionato
/// </summary>
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;
}
/// <summary>
/// Toggle buttons x add new pedana
/// </summary>
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();
}
/// <summary>
/// Creazione nuova pedana
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
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();
}
/// <summary>
/// comando reset
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void lbtReset_Click(object sender, EventArgs e)
{
resetSelezione();
}
/// <summary>
/// Mostra btn add new
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
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
}
}