Continuo setup preliminare procedura impostazione ODL a posteriori...

This commit is contained in:
Samuele E. Locatelli
2017-07-27 21:08:00 +02:00
parent dc1867bb10
commit 4ea316d8dc
11 changed files with 493 additions and 100 deletions
+2
View File
@@ -10,5 +10,7 @@
<hr />
<h3>Other Libraries</h3>
<asp:Label runat="server" ID="lblDllVersion" /><br />
<hr />
<asp:Label ID="lblOut" runat="server" />
</div>
</asp:Content>
+59 -1
View File
@@ -1,4 +1,5 @@
using System;
using SteamWare;
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
@@ -15,6 +16,63 @@ namespace MoonProTablet
protected void Page_Load(object sender, EventArgs e)
{
lblDllVersion.Text = librariesVers;
if(!Page.IsPostBack)
{
// faccio reset... sessioni e vocabolario..
doReset();
}
}
private void doReset()
{
string action = memLayer.ML.QSS("Action");
string testo = "<h3>Reset Actions</h3>";
long recPrev = 0;
long recPost = 0;
if (action != "")
{
if (action.Contains("C"))
{
recPrev = Cache.Count;
// reset dati in cache...
memLayer.ML.flushRegisteredCache();
recPost = Cache.Count;
testo += string.Format("Reset Cache: {0} --> {1}</br>", recPrev, recPost);
}
if (action.Contains("D"))
{
recPrev = memLayer.ML.numRecAppConf;
// reset dati in cache x DbConfig...
memLayer.ML.resetAppConf();
recPost = memLayer.ML.numRecAppConf;
testo += string.Format("Reset DB AppConf: {0} --> {1}</br>", recPrev, recPost);
}
if (action.Contains("R"))
{
recPrev = memLayer.ML.numRecRedis;
// reset dati in cache x DbConfig...
memLayer.ML.redFlushKey("**");
recPost = memLayer.ML.numRecRedis;
testo += string.Format("Reset Redis: {0} --> {1}</br>", recPrev, recPost);
}
if (action.Contains("S"))
{
recPrev = Session.Count;
// reset dati in sessione...
Session.Clear();
recPost = Session.Count;
testo += string.Format("Reset Sessione: {0} --> {1}</br>", recPrev, recPost);
}
if (action.Contains("V"))
{
recPrev = DataWrap.DW.numRecVoc;
// aggiorno vocabolario
DataWrap.DW.resetVocabolario();
recPost = DataWrap.DW.numRecVoc;
testo += string.Format("Reset Vocabolario: {0} --> {1}</br>", recPrev, recPost);
}
}
lblOut.Text = testo;
}
public string mainAssembly
+9
View File
@@ -20,5 +20,14 @@ namespace MoonProTablet {
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblDllVersion;
/// <summary>
/// Controllo lblOut.
/// </summary>
/// <remarks>
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblOut;
}
}
+8
View File
@@ -276,6 +276,7 @@
<Content Include="DettaglioMacchina.aspx" />
<Content Include="Dichiarazione.aspx" />
<Content Include="favicon.ico" />
<Content Include="fixODL.aspx" />
<Content Include="Global.asax" />
<Content Include="HDTV.aspx" />
<Content Include="images\addArancio.png" />
@@ -514,6 +515,13 @@
<Compile Include="Dichiarazione.aspx.designer.cs">
<DependentUpon>Dichiarazione.aspx</DependentUpon>
</Compile>
<Compile Include="fixODL.aspx.cs">
<DependentUpon>fixODL.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="fixODL.aspx.designer.cs">
<DependentUpon>fixODL.aspx</DependentUpon>
</Compile>
<Compile Include="Global.asax.cs">
<DependentUpon>Global.asax</DependentUpon>
</Compile>
+19 -11
View File
@@ -1,21 +1,29 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/WebMasterPages/jQueryMobile.Master" AutoEventWireup="true" CodeBehind="ODL.aspx.cs"
Inherits="MoonProTablet.ODL" %>
Inherits="MoonProTablet.ODL" %>
<%@ Register Src="WebUserControls/mod_dettMacchina.ascx" TagName="mod_dettMacchina" TagPrefix="uc1" %>
<%@ Register Src="WebUserControls/mod_ODL.ascx" TagName="mod_ODL" TagPrefix="uc2" %>
<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<div class="clearDiv" data-role="content">
<uc1:mod_dettMacchina ID="mod_dettMacchina1" runat="server" />
<div runat="server" id="divPz2Conf" style="color: red;">
<asp:Label runat="server" ID="lblWarningHead" Text="..." />
<asp:Label runat="server" ID="lblWarningBody" Text="..." />
<br />
<b><asp:Label runat="server" ID="lblNumPz2Conf" Text="0" /></b>
<div class="clearDiv" data-role="content">
<uc1:mod_dettMacchina ID="mod_dettMacchina1" runat="server" />
<div runat="server" id="divPz2Conf" style="color: red;">
<div class="ui-grid-a">
<div class="ui-block-a">
<asp:Label runat="server" ID="lblWarningHead" Text="..." />
<asp:Label runat="server" ID="lblWarningBody" Text="..." />
<br />
<b>
<asp:Label runat="server" ID="lblNumPz2Conf" Text="0" /></b>
</div>
<div class="ui-block-b">
<asp:LinkButton runat="server" ID="lbtFixOdl" data-role="button" data-iconpos="bottom" data-icon="check" data-theme="e" OnClick="lbtFixOdl_Click">Fix ODL</asp:LinkButton>
</div>
</div>
</div>
<div class="clearDiv" data-role="content" data-theme="a">
<uc2:mod_ODL ID="mod_ODL1" runat="server" />
</div>
</div>
<div class="clearDiv" data-role="content" data-theme="a">
<uc2:mod_ODL ID="mod_ODL1" runat="server" />
</div>
</asp:Content>
+88 -60
View File
@@ -5,66 +5,94 @@ using System.Web.UI;
namespace MoonProTablet
{
public partial class ODL : System.Web.UI.Page
public partial class ODL : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
Session["TipoLink"] = "EditMacch";
checkConfProd();
}
}/// <summary>
/// idx macchina selezionata
/// </summary>
public int idxMacchina
{
get
{
return memLayer.ML.IntSessionObj("IdxMacchina");
}
set
{
memLayer.ML.setSessionVal("IdxMacchina", value);
}
}
/// <summary>
/// verifica se sia necessario confermare la produzione PRIMA di operare sull'ODL
/// </summary>
private void checkConfProd()
{
bool needConfProd = true;
int pz2conf = 0;
//int idxODL = DataLayer.obj.taODL.getByMacchina(idxMacchina.ToString())[0].IdxODL;
DS_ProdTempi.stp_PzProd_getByMacchinaRow rigaProd;
try
{
rigaProd = DataLayer.obj.taPzProd2conf.GetData(idxMacchina.ToString())[0];
pz2conf = rigaProd.pezziNonConfermati;
needConfProd = (pz2conf > 0);
}
catch
{
logger.lg.scriviLog(string.Format("Errore recupero pezzi da confermare per la macchina {0}", idxMacchina), tipoLog.ERROR);
}
// se necessario mostro warning...
if (needConfProd)
{
lblWarningHead.Text = traduci("ConfProdBeforeContinueHead");
lblWarningBody.Text = traduci("ConfProdBeforeContinueBody");
lblNumPz2Conf.Text = string.Format("{0} pz NC", pz2conf);
}
divPz2Conf.Visible = needConfProd;
mod_ODL1.isEnabled = !needConfProd;
}
/// <summary>
/// effettua traduzione del lemma
/// </summary>
/// <param name="lemma"></param>
/// <returns></returns>
public string traduci(string lemma)
{
return user_std.UtSn.Traduci(lemma);
}
if (!Page.IsPostBack)
{
Session["TipoLink"] = "EditMacch";
checkConfProd();
}
}
/// <summary>
/// idx macchina selezionata
/// </summary>
public int idxMacchina
{
get
{
return memLayer.ML.IntSessionObj("IdxMacchina");
}
set
{
memLayer.ML.setSessionVal("IdxMacchina", value);
}
}
/// <summary>
/// verifica se sia necessario confermare la produzione PRIMA di operare sull'ODL
/// </summary>
private void checkConfProd()
{
// controllo ODL mancante, x cui SE ci fossero pezzi --> va fatto attrezzaggio ODL retrodatato
bool odlOk = false;
try
{
int idxODL = DataLayer.obj.taMSE.getByIdxMacchina(idxMacchina.ToString())[0].idxODL;
odlOk = (idxODL > 0);
}
catch(Exception exc)
{
logger.lg.scriviLog(string.Format("Errore recupero ODL corrente da confermare per la macchina {0}{1}{2}", idxMacchina, Environment.NewLine, exc), tipoLog.ERROR);
}
// verifica se sia necessario confermare produzione
bool needConfProd = true;
int pz2conf = 0;
DS_ProdTempi.stp_PzProd_getByMacchinaRow rigaProd;
try
{
rigaProd = DataLayer.obj.taPzProd2conf.GetData(idxMacchina.ToString())[0];
pz2conf = rigaProd.pezziNonConfermati;
needConfProd = (pz2conf > 0);
}
catch (Exception exc)
{
logger.lg.scriviLog(string.Format("Errore recupero pezzi da confermare per la macchina {0}{1}{2}", idxMacchina, Environment.NewLine, exc), tipoLog.ERROR);
}
// se necessario mostro warning...
if (needConfProd)
{
// SE mancasse ODL mostro info x poter caricare ODL retrodatato
if (odlOk)
{
lblWarningHead.Text = traduci("ConfProdBeforeContinueHead");
lblWarningBody.Text = traduci("ConfProdBeforeContinueBody");
lblNumPz2Conf.Text = string.Format("{0} pz NC", pz2conf);
}
else
{
lblWarningHead.Text = traduci("setOdlBeforeContinueHead");
lblWarningBody.Text = traduci("setOdlBeforeContinueBody");
lblNumPz2Conf.Text = string.Format("{0} pz NC", pz2conf);
}
}
divPz2Conf.Visible = needConfProd;
lbtFixOdl.Visible = !odlOk;
mod_ODL1.isEnabled = !needConfProd;
}
/// <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 lbtFixOdl_Click(object sender, EventArgs e)
{
Response.Redirect("~/fixODL");
}
}
}
+35 -27
View File
@@ -1,69 +1,77 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// <generato automaticamente>
// Codice generato da uno strumento.
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
// Le modifiche a questo file possono causare un comportamento non corretto e verranno perse se
// il codice viene rigenerato.
// </generato automaticamente>
//------------------------------------------------------------------------------
namespace MoonProTablet
{
namespace MoonProTablet {
public partial class ODL {
/// <summary>
/// mod_dettMacchina1 control.
/// Controllo mod_dettMacchina1.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::MoonProTablet.WebUserControls.mod_dettMacchina mod_dettMacchina1;
/// <summary>
/// divPz2Conf control.
/// Controllo divPz2Conf.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divPz2Conf;
/// <summary>
/// lblWarningHead control.
/// Controllo lblWarningHead.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblWarningHead;
/// <summary>
/// lblWarningBody control.
/// Controllo lblWarningBody.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblWarningBody;
/// <summary>
/// lblNumPz2Conf control.
/// Controllo lblNumPz2Conf.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblNumPz2Conf;
/// <summary>
/// mod_ODL1 control.
/// Controllo lbtFixOdl.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.WebControls.LinkButton lbtFixOdl;
/// <summary>
/// Controllo mod_ODL1.
/// </summary>
/// <remarks>
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::MoonProTablet.WebUserControls.mod_ODL mod_ODL1;
}
+1 -1
View File
@@ -6,7 +6,7 @@
<link href="../Style.css" rel="stylesheet" type="text/css" />
<% } %>
<div class="clearDiv" style="background-color: transparent;">
<h1>Attrezzaggio</h1>
<h1>Dichiarazione Attrezzaggio</h1>
<div class="ui-grid-a semaforoRosso" id="divWarningArt" runat="server" visible="false">
<div class="ui-block-a" data-role="content">
<h3>ATTENZIONE: articolo in revisione</h3>
+44
View File
@@ -0,0 +1,44 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/WebMasterPages/jQueryMobile.Master" AutoEventWireup="true" CodeBehind="fixODL.aspx.cs" Inherits="MoonProTablet.fixODL" %>
<%@ Register Src="WebUserControls/mod_dettMacchina.ascx" TagName="mod_dettMacchina" TagPrefix="uc1" %>
<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<uc1:mod_dettMacchina ID="mod_dettMacchina1" runat="server" />
<h2>Riassegnazione ODL</h2>
<div class="ui-grid-a">
<div class="ui-block-a">
Inizio ODL | stp_ODL_getByMacchina 2002
<asp:Label runat="server" ID="lblInizioODL" Text="---"></asp:Label>
<hr />
<asp:CheckBox runat="server" ID="chkLeaveOpen" Checked="true" Text="Aperto" AutoPostBack="True" OnCheckedChanged="chkLeaveOpen_CheckedChanged" />
<div class="ui-grid-a" data-role="content" runat="server" id="divFineODL">
<div class="ui-block-a">
<asp:Label runat="server" ID="lblDateTo" AssociatedControlID="txtDateTo" Text="Data" />
<asp:TextBox runat="server" ID="txtDateTo" type="date" AutoPostBack="True" OnTextChanged="txtDateTo_TextChanged" />
</div>
<div class="ui-block-b">
<asp:Label runat="server" ID="lblTimeTo" AssociatedControlID="txtTimeTo" Text="Ora" />
<asp:TextBox runat="server" ID="txtTimeTo" type="time" AutoPostBack="True" OnTextChanged="txtTimeTo_TextChanged" />
</div>
</div>
</div>
<div class="ui-block-b">
<asp:LinkButton runat="server" ID="lbtSetODL" data-role="button" data-iconpos="bottom" data-icon="plus" data-theme="e">Imposta ODL</asp:LinkButton>
</div>
</div>
<div class="clearDiv" data-role="content" data-theme="a">
<div class="ui-grid-a">
<div class="ui-block-a">
--ricerca text--<br />
Elenco ODL "liberi" cliccabili (se selezionato ENABLED button x impostare...)<br />
stp_vsODL_getUnused
</div>
<div class="ui-block-b">
Ultimi ODL della macchina (desc) <br />
stp_ODL_getByMacchinaPeriodo 2002, '2017-07-01', '2017-07-28'
</div>
</div>
</div>
</asp:Content>
+132
View File
@@ -0,0 +1,132 @@
using SteamWare;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace MoonProTablet
{
public partial class fixODL : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if(!Page.IsPostBack)
{
// calcolare ora FROM da ULTIMO ODL
dataOraOdlFrom = DateTime.Today;
dataOraOdlTo = DateTime.Now;
lblInizioODL.Text = dataOraOdlFrom.ToString();
txtDateTo.Text = dataOraOdlTo.ToString("yyyy-MM-dd");
txtTimeTo.Text = dataOraOdlTo.ToString("HH:mm");
fixChiudiOdl();
fixBtnImpostaODL();
}
}
private void fixBtnImpostaODL()
{
// verifico se selezionato un ODL sorgente...
lbtSetODL.Visible = false;
}
/// <summary>
/// idx macchina selezionata
/// </summary>
public int idxMacchina
{
get
{
return memLayer.ML.IntSessionObj("IdxMacchina");
}
set
{
memLayer.ML.setSessionVal("IdxMacchina", value);
}
}
protected void txtDateTo_TextChanged(object sender, EventArgs e)
{
salvaDataOraTo();
}
protected void txtTimeTo_TextChanged(object sender, EventArgs e)
{
salvaDataOraTo();
}
private void salvaDataOraTo()
{
DateTime inizioStato = DateTime.Now;
try
{
DateTime ora = Convert.ToDateTime(txtTimeTo.Text);
inizioStato = Convert.ToDateTime(txtDateTo.Text).AddHours(ora.Hour).AddMinutes(ora.Minute);
}
catch
{ }
dataOraOdlTo = inizioStato;
}
/// <summary>
/// data-ora selezionata INIZIO
/// </summary>
protected DateTime dataOraOdlFrom
{
set
{
memLayer.ML.setSessionVal("dataOraOdlFrom", value);
}
get
{
DateTime answ = DateTime.Now;
try
{
answ = Convert.ToDateTime(memLayer.ML.objSessionObj("dataOraOdlFrom"));
}
catch
{ }
return answ;
}
}
/// <summary>
/// data-ora selezionata FINE
/// </summary>
protected DateTime dataOraOdlTo
{
set
{
memLayer.ML.setSessionVal("dataOraOdlTo", value);
}
get
{
DateTime answ = DateTime.Now;
try
{
answ = Convert.ToDateTime(memLayer.ML.objSessionObj("dataOraOdlTo"));
}
catch
{ }
return answ;
}
}
protected void chkLeaveOpen_CheckedChanged(object sender, EventArgs e)
{
fixChiudiOdl();
}
private void fixChiudiOdl()
{
//determino visibilità fine ODL in base se sia aperto o meno...
if (chkLeaveOpen.Checked)
{
chkLeaveOpen.Text = "Lascia ODL Aperto";
}
else
{
chkLeaveOpen.Text = "Chiudi ODL alla data-ora seguente";
}
divFineODL.Visible = !chkLeaveOpen.Checked;
}
}
}
+96
View File
@@ -0,0 +1,96 @@
//------------------------------------------------------------------------------
// <generato automaticamente>
// Codice generato da uno strumento.
//
// Le modifiche a questo file possono causare un comportamento non corretto e verranno perse se
// il codice viene rigenerato.
// </generato automaticamente>
//------------------------------------------------------------------------------
namespace MoonProTablet {
public partial class fixODL {
/// <summary>
/// Controllo mod_dettMacchina1.
/// </summary>
/// <remarks>
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::MoonProTablet.WebUserControls.mod_dettMacchina mod_dettMacchina1;
/// <summary>
/// Controllo lblInizioODL.
/// </summary>
/// <remarks>
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblInizioODL;
/// <summary>
/// Controllo chkLeaveOpen.
/// </summary>
/// <remarks>
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.WebControls.CheckBox chkLeaveOpen;
/// <summary>
/// Controllo divFineODL.
/// </summary>
/// <remarks>
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divFineODL;
/// <summary>
/// Controllo lblDateTo.
/// </summary>
/// <remarks>
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblDateTo;
/// <summary>
/// Controllo txtDateTo.
/// </summary>
/// <remarks>
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.WebControls.TextBox txtDateTo;
/// <summary>
/// Controllo lblTimeTo.
/// </summary>
/// <remarks>
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblTimeTo;
/// <summary>
/// Controllo txtTimeTo.
/// </summary>
/// <remarks>
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.WebControls.TextBox txtTimeTo;
/// <summary>
/// Controllo lbtSetODL.
/// </summary>
/// <remarks>
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.WebControls.LinkButton lbtSetODL;
}
}