Files
MoonPro.net/MP-TAB/WebUserControls/cmp_dichiarInsert.ascx.cs
2023-09-13 14:50:02 +02:00

229 lines
5.9 KiB
C#

using SteamWare;
using System;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace MoonProTablet.WebUserControls
{
public partial class cmp_dichiarInsert : BaseUserControl
{
#region Public Events
/// <summary>
/// registrato nuovo valore
/// </summary>
public event EventHandler eh_newVal;
/// <summary>
/// registrato nuovo valore
/// </summary>
public event EventHandler eh_reset;
#endregion Public Events
#region Protected Properties
/// <summary>
/// Tipo Dichiarazione
/// </summary>
protected string tagCode
{
set
{
ddlTags.SelectedValue = value;
}
get
{
return ddlTags.SelectedValue;
}
}
#endregion Protected Properties
#region Public Properties
/// <summary>
/// idx macchina selezionata
/// </summary>
public new string idxMacchinaFix
{
get
{
string answ = idxMacchina;
// verifoc: se multi uso selettore tendina...
if (isMulti)
{
if (ddlSubMacc.SelectedValue == "")
{
ddlSubMacc.DataBind();
}
if (ddlSubMacc.SelectedValue != "")
{
answ = ddlSubMacc.SelectedValue;
}
}
return answ;
}
set
{
memLayer.ML.setSessionVal("IdxMacchina", value);
}
}
#endregion Public Properties
#region Private Methods
private void checkAll()
{
fixSelMacc();
fixData();
lblOut.Text = "";
switchBtnConferma(true);
}
private void fixData()
{
DateTime adesso = DateTime.Now;
txtData.Text = adesso.ToString("yyyy-MM-ddTHH:mm");
}
/// <summary>
/// Se la machcina è MULTI --> mostro selettore
/// </summary>
private void fixSelMacc()
{
divSelMacc.Visible = isMulti;
fixSelMaccScarti();
}
private void fixSelMaccScarti()
{
if (isMulti)
{
memLayer.ML.setSessionVal("IdxMacchinaScarti", subMaccSel);
}
else
{
memLayer.ML.setSessionVal("IdxMacchinaScarti", idxMacchina);
}
}
private void resetControlli()
{
txtDich.Text = "";
// nascondo!
switchBtnConferma(false);
}
/// <summary>
/// Effettua salvataggio dichiarazione
/// </summary>
private void salvaRegDichiarazione(string dichiarazione)
{
// salvo registrazione scarto...
DateTime dataRif = DateTime.Now;
try
{
DateTime.TryParse(txtData.Text, out dataRif);
}
catch
{ }
DataLayerObj.taDiarioDich.insertQuery(tagCode,idxMacchinaFix, dataRif, DataLayerObj.MatrOpr,dichiarazione);
// sollevo evento!
if (eh_newVal != null)
{
eh_newVal(this, new EventArgs());
}
resetControlli();
}
/// <summary>
/// determina comportamento btn conferma
/// </summary>
private void switchBtnConferma(bool showConf)
{
divDetail.Visible = showConf;
if (showConf)
{
lbtShowTitle.Text = "Nascondi Inserimento Dichiarazione";
}
else
{
lbtShowTitle.Text = "Mostra Inserimento Dichiarazione";
// sollevo evento!
if (eh_reset != null)
{
eh_reset(this, new EventArgs());
}
}
}
#endregion Private Methods
#region Protected Methods
protected void ddlSubMacc_DataBound(object sender, EventArgs e)
{
// se ho in memoria un valore LO REIMPOSTO...
if (subMaccSel != "")
{
// provo a preselezionare...
try
{
ddlSubMacc.SelectedValue = subMaccSel;
}
catch
{ }
}
}
protected void ddlSubMacc_SelectedIndexChanged(object sender, EventArgs e)
{
subMaccSel = ddlSubMacc.SelectedValue;
fixSelMaccScarti();
checkAll();
}
/// <summary>
/// rimanda alla pagina di dettaglio della macchina scelta
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void hlRegistra_Click(object sender, EventArgs e)
{
string causale = txtDich.Text.Trim();
salvaRegDichiarazione(causale);
// sollevo evento!
if (eh_newVal != null)
{
eh_newVal(this, new EventArgs());
}
}
/// <summary>
/// cambio stato visibilità pannello e testo button
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void lbtShowContr_Click(object sender, EventArgs e)
{
switchBtnConferma(!divDetail.Visible);
}
/// <summary>
/// caricamento pagina
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
checkAll();
}
}
#endregion Protected Methods
}
}