Files
WebGIM/GIM_site/RegConsumoRic.aspx.cs
T

186 lines
6.2 KiB
C#

using SteamWare;
using System;
using System.Web.UI;
namespace GIM_site
{
public partial class RegConsumoRic : SteamWare.UserPage
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
resetCtrls();
}
mod_ricercaItem.eh_newrecord += Mod_ricercaItem_eh_newrecord;
}
private void resetCtrls()
{
memLayer.ML.emptySessionVal("numIntMtz_sel");
fixCtrlEnable(true);
fixMacchine();
fixCausali();
fixDefaults();
// blocco inserimento ricambi sino a selezione...
mod_ricercaItem.Visible = false;
}
private void Mod_ricercaItem_eh_newrecord(object sender, EventArgs e)
{
mod_MovMag2Int.doUpdate();
}
private void fixDefaults()
{
txtMatr.Text = "9999";
ddlPrior.SelectedValue = "5";
ddlTipo.SelectedValue = "4";
}
protected void ddlImpianto_SelectedIndexChanged(object sender, EventArgs e)
{
fixMacchine();
fixCausali();
}
private void fixMacchine()
{
ddlMacchine.DataBind();
}
protected void ddlMacchine_SelectedIndexChanged(object sender, EventArgs e)
{
int idxMacchina = 0;
try
{
idxMacchina = Convert.ToInt32(ddlMacchine.SelectedValue);
}
catch
{ }
mod_ricercaItem.idxMacchina = idxMacchina;
fixCausali();
}
private void fixCausali()
{
ddlCausale.DataBind();
// provo a selezionare ricambi...
try
{
ddlCausale.SelectedValue = memLayer.ML.CRS("defCausale");
}
catch
{ }
}
/// <summary>
/// creo intervento e mostro gestione ricambi...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void lbtCreate_Click(object sender, EventArgs e)
{
// creo nuovo intMtz...
int idxIntMtz = getNewIdxIntMtz();
if (idxIntMtz > 0)
{
// salvo in sessione
memLayer.ML.setSessionVal("numIntMtz_sel", idxIntMtz);
try
{
mod_ricercaItem.idxMacchina = TA_app.obj.taInterventiMtz.getByIdx(idxIntMtz)[0].idxMacchina;
}
catch
{ }
// blocco cambio impianto/macchina/causale
fixCtrlEnable(false);
}
else
{
fixCtrlEnable(true);
}
}
private int getNewIdxIntMtz()
{
int answ = 0;
// salvare valori...
int? numReq = 0;
try
{
// sistemo i valori
DateTime adesso = DateTime.Now;
DateTime richiesta = adesso;
DateTime dataLav = adesso;
DateTime inizioGuasto = adesso;
// recupero valori di riferimento
int shift = memLayer.ML.confReadInt("shiftTurno");
int durataTurno = memLayer.ML.confReadInt("durataTurno");
int turno = Convert.ToInt32(Math.Ceiling((double)Convert.ToDouble(DateTime.Now.AddHours(-shift + 1).Hour) / durataTurno));
string matr = txtMatr.Text.Trim();
int idxAmbito = memLayer.ML.CRI("idxAmbitoRicambi");
int idxPrior = Convert.ToInt32(ddlPrior.SelectedValue);
bool isFermo = chkImpFermo.Checked;
int idxTipo = Convert.ToInt32(ddlTipo.SelectedValue);
int idxImpianto = Convert.ToInt32(ddlImpianto.SelectedValue);
int idxMacchina = Convert.ToInt32(ddlMacchine.SelectedValue);
string descrizione = "-";
int idxCausale = Convert.ToInt32(ddlCausale.SelectedValue);
if (memLayer.ML.confReadInt("_logLevel") > 5)
{
logger.lg.scriviLog(string.Format("stp_insRichiestaRicambi, valori: {0} | {1} | {2} | {3} | {4} | {5} | {6} | {7} | {8} | {9} | {10}", richiesta, turno, matr, idxPrior, isFermo, idxTipo, idxImpianto, idxMacchina, descrizione, idxCausale, false));
}
//2017.04.21
// nuovo metodo
TA_app.obj.taInterventiMtz.stp_insRichiestaRicambi(richiesta, turno, matr, idxPrior, isFermo, idxTipo, idxImpianto, idxMacchina, descrizione, idxCausale, false, ref numReq);
}
catch (Exception exc)
{
logger.lg.scriviLog("Errore inserimento nuova richiesta!", tipoLog.ERROR);
logger.lg.scriviLog(exc.ToString(), tipoLog.EXCEPTION);
}
if (numReq != null)
{
answ = Convert.ToInt32(numReq);
}
return answ;
}
private void fixCtrlEnable(bool canSelMacc)
{
string css = "textEv_1";
if (!canSelMacc)
{
css = "textEv_Read";
}
// ddl e btn default
ddlImpianto.Enabled = canSelMacc;
ddlMacchine.Enabled = canSelMacc;
ddlCausale.Enabled = canSelMacc;
txtMatr.Enabled = canSelMacc;
ddlTipo.Enabled = canSelMacc;
ddlPrior.Enabled = canSelMacc;
chkImpFermo.Enabled = canSelMacc;
//css
ddlImpianto.CssClass = css;
ddlMacchine.CssClass = css;
ddlCausale.CssClass = css;
txtMatr.CssClass = css;
ddlTipo.CssClass = css;
ddlPrior.CssClass = css;
chkImpFermo.CssClass = css;
// visib buttons
lbtCreate.Visible = canSelMacc;
lbtEnable.Visible = !canSelMacc;
// abilito gestione ricambi...
mod_ricercaItem.Visible = !canSelMacc;
}
protected void lbtEnable_Click(object sender, EventArgs e)
{
resetCtrls();
}
}
}