Files
MoonPro.net/MP-SITE/AnalisiProduzione.aspx.cs
T
2018-11-10 11:26:40 +01:00

227 lines
5.7 KiB
C#

using SteamWare;
using System;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace MP_SITE
{
public partial class AnalisiProduzione : System.Web.UI.Page
{
protected resoconti _resoconti;
protected intervalloDate _intervalloAnalisi;
protected intervalloDate intervalloAnalisi
{
get
{
return _intervalloAnalisi;
}
set
{
// controllo che la data di fine non sia posteriore ad adesso...
if (value.fine > DateTime.Now)
{
value.fine = DateTime.Now;
}
_intervalloAnalisi = value;
}
}
protected int durataMin;
/// <summary>
/// elenco idx COMMA separated da controllo selezione multiplo
/// </summary>
protected string idxMulti
{
get
{
string answ = "";
try
{
foreach (ListItem riga in listMacchine.Items)
{
// se è selezionata creo riga anche x lei...
if (riga.Selected)
{
answ += string.Format(",{0}", riga.Value);
}
}
answ = answ.Substring(1, answ.Length - 1);
}
catch
{
answ = "";
}
return answ;
}
}
/// <summary>
/// effettua traduzione del lemma
/// </summary>
/// <param name="lemma"></param>
/// <returns></returns>
public string traduci(string lemma)
{
return user_std.UtSn.Traduci(lemma);
}
protected void Page_Load(object sender, EventArgs e)
{
_resoconti = new resoconti();
if (memLayer.ML.isInSessionObject("_durataMin"))
{
durataMin = memLayer.ML.IntSessionObj("_durataMin");
}
else
{
durataMin = 0;
memLayer.ML.setSessionVal("_durataMin", durataMin);
}
mod_periodoAnalisi.eh_doUpdate += new EventHandler(Mod_periodoAnalisi1_eh_doUpdate);
if (!Page.IsPostBack)
{
listMacchine.DataBind();
showDetails(false);
ridisegnaChk();
ridisegna();
}
mod_AnPro_Totali.eh_selVal += Mod_AnPro_Totali_eh_selVal;
mod_AnPro_Totali.eh_reset += Mod_AnPro_Totali_eh_reset;
}
/// <summary>
/// richiesta reset: nascondo!
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Mod_AnPro_Totali_eh_reset(object sender, EventArgs e)
{
fixVisDet();
}
private void showDetails(bool showMod)
{
mod_AnPro_DettArt.Visible = showMod;
mod_AnPro_DettGg.Visible = showMod;
}
/// <summary>
/// selezionato articolo e macchina --> dettaglio!
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Mod_AnPro_Totali_eh_selVal(object sender, EventArgs e)
{
fixVisDet();
}
/// <summary>
/// sistema visualizzazione dettagli---
/// </summary>
private void fixVisDet()
{
if (mod_AnPro_Totali.IdxMacchina != "" && mod_AnPro_Totali.CodArticolo != "")
{
// passo parametri selezione ai moduli
mod_AnPro_DettArt.doUpdate(mod_AnPro_Totali.IdxMacchina, mod_AnPro_Totali.CodArticolo, chkOdlClosed.Checked, chkOdlOpen.Checked, chkOdlNew.Checked);
mod_AnPro_DettGg.doUpdate(mod_AnPro_Totali.IdxMacchina, mod_AnPro_Totali.CodArticolo, chkOdlClosed.Checked, chkOdlOpen.Checked, chkOdlNew.Checked);
// mostro 2 moduli dettaglio
showDetails(true);
}
else
{
// nascondo moduli
showDetails(false);
}
}
/// <summary>
/// valorizzazione iniziale filtro impianti
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void listMacchine_DataBound(object sender, EventArgs e)
{
foreach (ListItem item in ((ListBox)sender).Items)
{
item.Selected = true;
}
}
/// <summary>
/// salvo elenco impianti selected
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void listMacchine_SelectedIndexChanged(object sender, EventArgs e)
{
ridisegna();
}
void Mod_periodoAnalisi1_eh_doUpdate(object sender, EventArgs e)
{
ridisegna();
}
/// <summary>
/// ridisegna buttons checkbox
/// </summary>
protected void ridisegnaChk()
{
// verifico cosa sia selezionato e cosa no...
string baseCss = "btn btn-default";
string selCss = "btn btn-info";
if (chkOdlClosed.Checked)
{
chkOdlClosed.CssClass = "btn btn-danger";
}
else
{
chkOdlClosed.CssClass = baseCss;
}
if (chkOdlOpen.Checked)
{
chkOdlOpen.CssClass = selCss;
}
else
{
chkOdlOpen.CssClass = baseCss;
}
if (chkOdlNew.Checked)
{
chkOdlNew.CssClass = "btn btn-success";
}
else
{
chkOdlNew.CssClass = baseCss;
}
}
/// <summary>
/// aggiorna dati x ridisegno
/// </summary>
private void ridisegna()
{
showDetails(false);
// update controlli child
intervalloAnalisi = (intervalloDate)memLayer.ML.objSessionObj("_intervallo");
mod_AnPro_Totali.doUpdate(idxMulti, chkOdlClosed.Checked, chkOdlOpen.Checked, chkOdlNew.Checked);
}
protected void chkOdlClosed_CheckedChanged(object sender, EventArgs e)
{
ridisegnaChk();
ridisegna();
}
protected void chkOdlOpen_CheckedChanged(object sender, EventArgs e)
{
ridisegnaChk();
ridisegna();
}
protected void chkOdlNew_CheckedChanged(object sender, EventArgs e)
{
ridisegnaChk();
ridisegna();
}
protected void btnUpdate_Click(object sender, EventArgs e)
{
ridisegnaChk();
ridisegna();
}
}
}