Fix warnings progetto ADM

This commit is contained in:
Samuele E. Locatelli
2020-09-07 10:30:02 +02:00
parent cb014bc8fd
commit e4973c2d39
53 changed files with 964 additions and 962 deletions
+28
View File
@@ -0,0 +1,28 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using SteamWare;
namespace GPW_Admin
{
public class BasePage : System.Web.UI.Page
{
void Page_Init(object sender, EventArgs e)
{
ViewStateUserKey = Session.SessionID;
}
/// <summary>
/// effettua traduzione del lemma
/// </summary>
/// <param name="lemma"></param>
/// <returns></returns>
public string traduci(string lemma)
{
return user_std.UtSn.Traduci(lemma);
}
}
}
+22 -10
View File
@@ -31,9 +31,12 @@ namespace GPW_Admin
public bool gtZero(object _valore)
{
bool answ = false;
if(_valore!=null)
{
decimal valore = 0;
decimal.TryParse(_valore.ToString(), out valore);
_ = decimal.TryParse(_valore.ToString(), out valore);
answ = valore > 0;
}
return answ;
}
/// <summary>
@@ -45,9 +48,12 @@ namespace GPW_Admin
public bool gtVal(object _valore, double maxVal)
{
bool answ = false;
double valore = 0;
double.TryParse(_valore.ToString(), out valore);
answ = valore > maxVal;
if (_valore != null)
{
double valore = 0;
_ = double.TryParse(_valore.ToString(), out valore);
answ = valore > maxVal;
}
return answ;
}
/// <summary>
@@ -59,9 +65,12 @@ namespace GPW_Admin
public bool ltVal(object _valore, double minVal)
{
bool answ = false;
double valore = 0;
double.TryParse(_valore.ToString(), out valore);
answ = valore < minVal;
if (_valore != null)
{
double valore = 0;
_ = double.TryParse(_valore.ToString(), out valore);
answ = valore < minVal;
}
return answ;
}
/// <summary>
@@ -74,9 +83,12 @@ namespace GPW_Admin
public bool betweenVal(object _valore, double minVal, double maxVal)
{
bool answ = false;
double valore = 0;
double.TryParse(_valore.ToString(), out valore);
answ = valore <= maxVal && valore >= minVal;
if (_valore != null)
{
double valore = 0;
_ = double.TryParse(_valore.ToString(), out valore);
answ = valore <= maxVal && valore >= minVal;
}
return answ;
}
}
+1 -1
View File
@@ -1,4 +1,4 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="GPW.AdminArea.Default" %>
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="GPW_Admin.Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+2 -2
View File
@@ -1,9 +1,9 @@
using SteamWare;
using System;
namespace GPW.AdminArea
namespace GPW_Admin
{
public partial class Default : System.Web.UI.Page
public partial class Default : BasePage
{
protected void Page_Load(object sender, EventArgs e)
{
+9 -9
View File
@@ -1,13 +1,13 @@
//------------------------------------------------------------------------------
// <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 GPW.AdminArea
namespace GPW_Admin
{
@@ -15,11 +15,11 @@ namespace GPW.AdminArea
{
/// <summary>
/// form1 control.
/// Controllo form1.
/// </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.HtmlForm form1;
}
+6 -12
View File
@@ -10,7 +10,7 @@ using SteamWare;
namespace GPW_Admin
{
public partial class ExportCommesse : System.Web.UI.Page
public partial class ExportCommesse : BasePage
{
public override void VerifyRenderingInServerForm(Control control)
{
@@ -72,8 +72,11 @@ namespace GPW_Admin
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.ContentType = "application/vnd.xls";
System.IO.StringWriter stringWrite = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
grView.RenderControl(htmlWrite);
using (
HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite))
{
grView.RenderControl(htmlWrite);
}
Response.Write(stringWrite.ToString());
Response.End();
}
@@ -101,15 +104,6 @@ namespace GPW_Admin
}
}
/// <summary>
/// effettua traduzione del lemma
/// </summary>
/// <param name="lemma"></param>
/// <returns></returns>
public string traduci(string lemma)
{
return user_std.UtSn.Traduci(lemma);
}
/// <summary>
/// restituisce info se utente sia admin (vedi web.config x ruolo...)
/// </summary>
public bool userIsAdmin
+2 -2
View File
@@ -11,7 +11,7 @@ using SteamWare;
namespace GPW_Admin
{
public partial class ExportTimbZucchetti : System.Web.UI.Page
public partial class ExportTimbZucchetti : BasePage
{
protected DateTime inizio;
protected DateTime fine;
@@ -41,7 +41,7 @@ namespace GPW_Admin
idxDipendente = memLayer.ML.IntSessionObj("idxDip_sel");
if (idxDipendente == -1) idxDipendente = 0;
codTimbra = memLayer.ML.confReadString("codTimbra");
if (codTimbra == "")
if (string.IsNullOrEmpty(codTimbra))
{
codTimbra = "90"; // timbratrice 90: da web.config
}
+5 -2
View File
@@ -29,7 +29,7 @@
<NuGetPackageImportStamp>
</NuGetPackageImportStamp>
<Use64BitIISExpress />
<TypeScriptToolsVersion>3.7</TypeScriptToolsVersion>
<TypeScriptToolsVersion>3.9</TypeScriptToolsVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
@@ -659,6 +659,9 @@
</Compile>
<Compile Include="App_Start\BundleConfig.cs" />
<Compile Include="App_Start\RouteConfig.cs" />
<Compile Include="BasePage.cs">
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="BaseUserControl.cs">
<SubType>ASPXCodeBehind</SubType>
</Compile>
@@ -728,6 +731,7 @@
<Compile Include="Global.asax.cs">
<DependentUpon>Global.asax</DependentUpon>
</Compile>
<Compile Include="GlobalSuppressions.cs" />
<Compile Include="infoPage.aspx.cs">
<DependentUpon>infoPage.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
@@ -799,7 +803,6 @@
<Compile Include="unauthorized.aspx.designer.cs">
<DependentUpon>unauthorized.aspx</DependentUpon>
</Compile>
<Compile Include="utility.cs" />
<Compile Include="WebMasterPages\AjaxSearch.master.cs">
<DependentUpon>AjaxSearch.master</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
+15
View File
@@ -0,0 +1,15 @@
// This file is used by Code Analysis to maintain SuppressMessage
// attributes that are applied to this project.
// Project-level suppressions either have no target or are given
// a specific target and scoped to a namespace, type, member, etc.
using System.Diagnostics.CodeAnalysis;
[assembly: SuppressMessage("Design", "CA1062:Convalidare gli argomenti di metodi pubblici", Justification = "<In sospeso>", Scope = "member", Target = "~M:GPW_Admin.BundleConfig.RegisterBundles(System.Web.Optimization.BundleCollection)")]
[assembly: SuppressMessage("Design", "CA1052:I tipi che contengono membri static devono Static o NotInheritable", Justification = "<In sospeso>", Scope = "type", Target = "~T:GPW_Admin.BundleConfig")]
[assembly: SuppressMessage("Naming", "CA1716:Gli identificatori non devono corrispondere a parole chiave", Justification = "<In sospeso>", Scope = "type", Target = "~T:GPW_Admin.Default")]
[assembly: SuppressMessage("Design", "CA1051:Non dichiarare campi di istanza visibili", Justification = "<In sospeso>", Scope = "member", Target = "~F:GPW_Admin.ExportTimbZucchetti.inizio")]
[assembly: SuppressMessage("Design", "CA1051:Non dichiarare campi di istanza visibili", Justification = "<In sospeso>", Scope = "member", Target = "~F:GPW_Admin.ExportTimbZucchetti.fine")]
[assembly: SuppressMessage("Design", "CA1051:Non dichiarare campi di istanza visibili", Justification = "<In sospeso>", Scope = "member", Target = "~F:GPW_Admin.ExportTimbZucchetti.idxDipendente")]
[assembly: SuppressMessage("Naming", "CA1716:Gli identificatori non devono corrispondere a parole chiave", Justification = "<In sospeso>", Scope = "type", Target = "~T:GPW_Admin.Global")]
[assembly: SuppressMessage("Globalization", "CA1303:Non passare valori letterali come parametri localizzati", Justification = "<In sospeso>", Scope = "member", Target = "~M:GPW_Admin.infoPage.setupPanels(System.Boolean)")]
+6 -6
View File
@@ -31,8 +31,8 @@ namespace GPW.WS
[WebMethod]
public CascadingDropDownNameValue[] GetClienti(string knownCategoryValues, string category)
{
public CascadingDropDownNameValue[] GetClienti(string knownCategoryValues)
{
if (knownCategoryValues is null)
{
throw new ArgumentNullException(nameof(knownCategoryValues));
@@ -50,8 +50,8 @@ namespace GPW.WS
}
[WebMethod]
public CascadingDropDownNameValue[] GetProgettiByCli(string knownCategoryValues, string category)
{
public CascadingDropDownNameValue[] GetProgettiByCli(string knownCategoryValues)
{
StringDictionary kv = CascadingDropDown.ParseKnownCategoryValuesString(knownCategoryValues);
int idxCliente;
if (!kv.ContainsKey("clienti") || !Int32.TryParse(kv["clienti"], out idxCliente))
@@ -69,8 +69,8 @@ namespace GPW.WS
return values.ToArray();
}
[WebMethod]
public CascadingDropDownNameValue[] GetFasiByProgetti(string knownCategoryValues, string category)
{
public CascadingDropDownNameValue[] GetFasiByProgetti(string knownCategoryValues)
{
StringDictionary kv = CascadingDropDown.ParseKnownCategoryValuesString(knownCategoryValues);
int idxCliente;
if (!kv.ContainsKey("clienti") || !Int32.TryParse(kv["clienti"], out idxCliente))
-3
View File
@@ -49,9 +49,6 @@
<add key="copyRight" value="SteamWare" />
<add key="CodModulo" value="GPW" />
<add key="_safePages" value="unauthorized#forceUser#login#login.aspx#test#Test.aspx" />
<!--Ottimizzazioni liberie esterne-->
<add key="EnableCdnAjax" value="false" />
<add key="EnableCdnJQ" value="false" />
<!--Gestione forzatura priam timbratura ad entrata-->
<add key="firstIsIN" value="true" />
<!--Gestione notifiche anomalie-->
@@ -26,8 +26,6 @@
</head>
<body class="body">
<form id="form1" runat="server">
<%--<asp:ScriptManager ID="sm" runat="server" EnablePartialRendering="true" EnableScriptGlobalization="true" EnableCdn='<%# GPW.utility.EnableCdnAjax %>'>
</asp:ScriptManager>--%>
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePartialRendering="true" EnableScriptGlobalization="true" EnableCdn="false">
</asp:ScriptManager>
<div class="fullscreen">
@@ -140,8 +140,12 @@ namespace GPW_Admin.WebUserControls
/// <returns></returns>
protected DataColumnCollection colonneObj()
{
DS_Applicazione.AnagClientiDataTable tabella = new DS_Applicazione.AnagClientiDataTable();
DataColumnCollection colonne = tabella.Columns;
DataColumnCollection colonne = null;
using (
DS_Applicazione.AnagClientiDataTable tabella = new DS_Applicazione.AnagClientiDataTable())
{
colonne = tabella.Columns;
}
return colonne;
}
/// <summary>
@@ -153,16 +157,12 @@ namespace GPW_Admin.WebUserControls
{
bool answ = true;
// solo se ha diritti scrittura controllo
if (answ)
if (idxObj != null)
{
int trovati = 0;
// !!!FARE!!!
#if false
// controllo se ci siano tipo celle associate
trovati = MagClass.magazzino.taTipoCella.getByCodMag(memLayer.ML.StringSessionObj("CodCS"), idxObj.ToString()).Rows.Count;
// controllo se ci siano blocchi associati
trovati = trovati + MagClass.magazzino.taBlocchi.getByCodMag(memLayer.ML.StringSessionObj("CodCS"), idxObj.ToString()).Rows.Count;
#endif
int idxCli = 0;
_ = int.TryParse(idxObj.ToString(), out idxCli);
trovati = DataProxy.DP.taAP.getByIdxCli(idxCli, true, true).Rows.Count;
// controllo se ci sono record correlati...
if (trovati > 0)
{
@@ -189,51 +189,54 @@ namespace GPW_Admin.WebUserControls
/// <param name="e"></param>
protected void recuperaFooter(object sender, ObjectDataSourceMethodEventArgs e)
{
if (chkLicOk)
if (e != null)
{
//recupero la riga footer...
DataColumnCollection colonne = colonneObj();
string nomeCol;
string tipoColonna = "";
foreach (DataColumn colonna in colonne)
if (chkLicOk)
{
nomeCol = colonna.ColumnName;
// cerco un textbox o quello che sia...
if (grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol)) != null)
//recupero la riga footer...
DataColumnCollection colonne = colonneObj();
string nomeCol;
string tipoColonna = "";
foreach (DataColumn colonna in colonne)
{
tipoColonna = "textBox";
nomeCol = colonna.ColumnName;
// cerco un textbox o quello che sia...
if (grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol)) != null)
{
tipoColonna = "textBox";
}
else if (grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol)) != null)
{
tipoColonna = "dropDownList";
}
else if (grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol)) != null)
{
tipoColonna = "checkBox";
}
// in base al tipo salvo negli inputparameters dell'ODS
switch (tipoColonna)
{
case "textBox":
e.InputParameters[nomeCol] = ((TextBox)grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol))).Text;
break;
case "dropDownList":
e.InputParameters[nomeCol] = ((DropDownList)grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol))).SelectedValue;
break;
case "checkBox":
e.InputParameters[nomeCol] = ((CheckBox)grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol))).Checked;
break;
default:
break;
}
tipoColonna = "";
}
else if (grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol)) != null)
{
tipoColonna = "dropDownList";
}
else if (grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol)) != null)
{
tipoColonna = "checkBox";
}
// in base al tipo salvo negli inputparameters dell'ODS
switch (tipoColonna)
{
case "textBox":
e.InputParameters[nomeCol] = ((TextBox)grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol))).Text;
break;
case "dropDownList":
e.InputParameters[nomeCol] = ((DropDownList)grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol))).SelectedValue;
break;
case "checkBox":
e.InputParameters[nomeCol] = ((CheckBox)grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol))).Checked;
break;
default:
break;
}
tipoColonna = "";
}
}
else
{
// annullo insert se licenze sforate...
e.Cancel = true;
grView.DataBind();
else
{
// annullo insert se licenze sforate...
e.Cancel = true;
grView.DataBind();
}
}
}
/// <summary>
@@ -245,10 +248,13 @@ namespace GPW_Admin.WebUserControls
{
if (!licenzeGPW.checkLicenze)
{
// annullo insert se licenze sforate...
e.Cancel = true;
grView.EditIndex = -1;
grView.DataBind();
if (e != null)
{
// annullo insert se licenze sforate...
e.Cancel = true;
grView.EditIndex = -1;
grView.DataBind();
}
}
}
@@ -140,8 +140,11 @@ namespace GPW_Admin.WebUserControls
/// <returns></returns>
protected DataColumnCollection colonneObj()
{
DS_Applicazione.DipendentiDataTable tabella = new DS_Applicazione.DipendentiDataTable();
DataColumnCollection colonne = tabella.Columns;
DataColumnCollection colonne = null;
using (DS_Applicazione.DipendentiDataTable tabella = new DS_Applicazione.DipendentiDataTable())
{
colonne = tabella.Columns;
}
return colonne;
}
/// <summary>
@@ -153,16 +156,12 @@ namespace GPW_Admin.WebUserControls
{
bool answ = true;
// solo se ha diritti scrittura controllo
if (answ)
if (idxObj != null)
{
int trovati = 0;
// !!!FARE!!!
#if false
// controllo se ci siano tipo celle associate
trovati = MagClass.magazzino.taTipoCella.getByCodMag(memLayer.ML.StringSessionObj("CodCS"), idxObj.ToString()).Rows.Count;
// controllo se ci siano blocchi associati
trovati = trovati + MagClass.magazzino.taBlocchi.getByCodMag(memLayer.ML.StringSessionObj("CodCS"), idxObj.ToString()).Rows.Count;
#endif
int idxDip = 0;
_ = int.TryParse(idxObj.ToString(), out idxDip);
trovati = DataProxy.DP.taTimb.getLastByDip(idxDip).Count;
// controllo se ci sono record correlati...
if (trovati > 0)
{
@@ -189,54 +188,57 @@ namespace GPW_Admin.WebUserControls
/// <param name="e"></param>
protected void recuperaFooter(object sender, ObjectDataSourceMethodEventArgs e)
{
if (chkLicOk)
if (e != null)
{
//recupero la riga footer...
DataColumnCollection colonne = colonneObj();
string nomeCol;
string tipoColonna = "";
foreach (DataColumn colonna in colonne)
if (chkLicOk)
{
nomeCol = colonna.ColumnName;
// cerco un textbox o quello che sia...
if (grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol)) != null)
//recupero la riga footer...
DataColumnCollection colonne = colonneObj();
string nomeCol;
string tipoColonna = "";
foreach (DataColumn colonna in colonne)
{
tipoColonna = "textBox";
nomeCol = colonna.ColumnName;
// cerco un textbox o quello che sia...
if (grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol)) != null)
{
tipoColonna = "textBox";
}
else if (grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol)) != null)
{
tipoColonna = "dropDownList";
}
else if (grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol)) != null)
{
tipoColonna = "checkBox";
}
// in base al tipo salvo negli inputparameters dell'ODS
switch (tipoColonna)
{
case "textBox":
e.InputParameters[nomeCol] = ((TextBox)grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol))).Text;
break;
case "dropDownList":
e.InputParameters[nomeCol] = ((DropDownList)grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol))).SelectedValue;
break;
case "checkBox":
e.InputParameters[nomeCol] = ((CheckBox)grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol))).Checked;
break;
default:
break;
}
tipoColonna = "";
}
else if (grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol)) != null)
{
tipoColonna = "dropDownList";
}
else if (grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol)) != null)
{
tipoColonna = "checkBox";
}
// in base al tipo salvo negli inputparameters dell'ODS
switch (tipoColonna)
{
case "textBox":
e.InputParameters[nomeCol] = ((TextBox)grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol))).Text;
break;
case "dropDownList":
e.InputParameters[nomeCol] = ((DropDownList)grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol))).SelectedValue;
break;
case "checkBox":
e.InputParameters[nomeCol] = ((CheckBox)grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol))).Checked;
break;
default:
break;
}
tipoColonna = "";
// attivo imposto a true!
e.InputParameters["attivo"] = "true";
// sistemo calendario!
}
else
{
// annullo insert se licenze sforate...
e.Cancel = true;
grView.DataBind();
}
// attivo imposto a true!
e.InputParameters["attivo"] = "true";
// sistemo calendario!
}
else
{
// annullo insert se licenze sforate...
e.Cancel = true;
grView.DataBind();
}
}
/// <summary>
@@ -246,12 +248,15 @@ namespace GPW_Admin.WebUserControls
/// <param name="e"></param>
protected void ods_Updating(object sender, ObjectDataSourceMethodEventArgs e)
{
if (!licenzeGPW.checkLicenze)
if (e != null)
{
// annullo insert se licenze sforate...
e.Cancel = true;
grView.EditIndex = -1;
grView.DataBind();
if (!licenzeGPW.checkLicenze)
{
// annullo insert se licenze sforate...
e.Cancel = true;
grView.EditIndex = -1;
grView.DataBind();
}
}
}
@@ -61,7 +61,7 @@ namespace GPW_Admin.WebUserControls
protected void txtSel_TextChanged(object sender, EventArgs e)
{
if (txtSel.Text.Trim() == "")
if (string.IsNullOrEmpty(txtSel.Text.Trim()))
{
hiddenFieldID.Text = defaultVal;
_valore = defaultVal;
@@ -130,7 +130,7 @@ namespace GPW_Admin.WebUserControls
{
answ = txtSel.Text.Trim();
}
if (answ == "")
if (string.IsNullOrEmpty(answ))
{
answ = txtSel.Text.Trim();
}
@@ -54,7 +54,7 @@ namespace GPW_Admin.WebUserControls
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)// || txtData.Text == "")
if (!Page.IsPostBack)
{
setInitVal();
valoreDateTime = dataOra;
+6 -6
View File
@@ -32,7 +32,7 @@ public partial class mod_filtro : ApplicationUserControl
{
get
{
bool answ=false;
bool answ = false;
try
{
memLayer.ML.isInSessionObject(string.Format("valFiltro_{0}", this.ID));
@@ -40,7 +40,7 @@ public partial class mod_filtro : ApplicationUserControl
catch
{ }
return answ;
}
}
}
protected bool _changeCheckEnabled = true;
protected bool _changeCheckVisible = true;
@@ -76,8 +76,8 @@ public partial class mod_filtro : ApplicationUserControl
base.OnInit(e);
if (!Page.IsPostBack)
{
if (_showFiltered == "") _showFiltered = "mostraSoloSelez";
if (_showAll == "") _showAll = "mostraTutti";
if (string.IsNullOrEmpty(_showFiltered)) _showFiltered = "mostraSoloSelez";
if (string.IsNullOrEmpty(_showAll)) _showAll = "mostraTutti";
}
}
@@ -304,7 +304,7 @@ public partial class mod_filtro : ApplicationUserControl
chkFilt.Checked = true;
}
}
catch(Exception exc)
catch (Exception exc)
{
logger.lg.scriviLog(string.Format("Eccezione:{0}{1}", Environment.NewLine, exc), tipoLog.EXCEPTION);
dlFilt.SelectedIndex = 0;
@@ -376,7 +376,7 @@ public partial class mod_filtro : ApplicationUserControl
updateChkLbl();
}
}
/// <summary>
/// oggetto ODS con cui popolare il selettore, VINCOLO abbia campi value(key) / label
/// </summary>
@@ -64,7 +64,7 @@ public partial class mod_ricercaGenerica : ApplicationUserControl
/// </summary>
protected void salvaCerca()
{
if (testoRicerca == "")
if (string.IsNullOrEmpty(testoRicerca))
{
SteamWare.memLayer.ML.emptySessionVal("valoreCercato");
}
+1 -1
View File
@@ -7,7 +7,7 @@ using System.Web.UI.WebControls;
namespace GPW_Admin
{
public partial class approvTimbrature : System.Web.UI.Page
public partial class approvTimbrature : BasePage
{
protected void Page_Load(object sender, EventArgs e)
{
+1 -1
View File
@@ -7,7 +7,7 @@ using System.Web.UI.WebControls;
namespace GPW_Admin
{
public partial class chLang : System.Web.UI.Page
public partial class chLang : BasePage
{
protected void Page_Load(object sender, EventArgs e)
{
+1 -1
View File
@@ -7,7 +7,7 @@ using System.Web.UI.WebControls;
namespace GPW_Admin
{
public partial class clienti : System.Web.UI.Page
public partial class clienti :BasePage
{
protected void Page_Load(object sender, EventArgs e)
{
+1 -1
View File
@@ -7,7 +7,7 @@ using System.Web.UI.WebControls;
namespace GPW_Admin
{
public partial class dipendenti : System.Web.UI.Page
public partial class dipendenti :BasePage
{
protected void Page_Load(object sender, EventArgs e)
{
+1 -1
View File
@@ -8,7 +8,7 @@ using SteamWare;
namespace GPW_Admin
{
public partial class fasi : System.Web.UI.Page
public partial class fasi :BasePage
{
protected void Page_Load(object sender, EventArgs e)
{
+1 -1
View File
@@ -7,7 +7,7 @@ using System.Web.UI.WebControls;
namespace GPW_Admin
{
public partial class gestCalendario : System.Web.UI.Page
public partial class gestCalendario :BasePage
{
protected void Page_Load(object sender, EventArgs e)
{
+1 -1
View File
@@ -7,7 +7,7 @@ using System.Web.UI.WebControls;
namespace GPW_Admin
{
public partial class gestOrario : System.Web.UI.Page
public partial class gestOrario :BasePage
{
protected void Page_Load(object sender, EventArgs e)
{
+1 -1
View File
@@ -1,5 +1,5 @@
<%@ Page Title="GPW-ADM"Language="C#" MasterPageFile="~/WebMasterPages/AjaxSimpleFull.master" AutoEventWireup="true" CodeBehind="infoPage.aspx.cs"
Inherits="GPW.infoPage" %>
Inherits="GPW_Admin.infoPage" %>
<asp:Content ID="Content1" ContentPlaceHolderID="cph1" runat="server">
<div style="width: 100%;" class="divCenter placardSteamware">
+2 -2
View File
@@ -6,9 +6,9 @@ using System.Web.UI;
using System.Web.UI.WebControls;
using GPW_data;
namespace GPW
namespace GPW_Admin
{
public partial class infoPage : System.Web.UI.Page
public partial class infoPage : BasePage
{
protected void Page_Load(object sender, EventArgs e)
{
+35 -33
View File
@@ -1,68 +1,70 @@
//------------------------------------------------------------------------------
// <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 GPW {
public partial class infoPage {
namespace GPW_Admin
{
public partial class infoPage
{
/// <summary>
/// pnlCheck control.
/// Controllo pnlCheck.
/// </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.Panel pnlCheck;
/// <summary>
/// lblInstallation control.
/// Controllo lblInstallation.
/// </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 lblInstallation;
/// <summary>
/// lblApplication control.
/// Controllo lblApplication.
/// </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 lblApplication;
/// <summary>
/// lblNumLic control.
/// Controllo lblNumLic.
/// </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 lblNumLic;
/// <summary>
/// lblExpiryDate control.
/// Controllo lblExpiryDate.
/// </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 lblExpiryDate;
/// <summary>
/// lblAuthKey control.
/// Controllo lblAuthKey.
/// </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 lblAuthKey;
}
+2 -2
View File
@@ -7,14 +7,14 @@ using System.Web.UI.WebControls;
namespace GPW_Admin
{
public partial class login : System.Web.UI.Page
public partial class login : BasePage
{
protected string _nextPage
{
get
{
string pagina = SteamWare.memLayer.ML.StringSessionObj("nextPage");
if (pagina == "")
if (string.IsNullOrEmpty(pagina))
{
pagina = "menu.aspx";
}
+1 -1
View File
@@ -7,7 +7,7 @@ using System.Web.UI.WebControls;
namespace GPW_Admin
{
public partial class menu : System.Web.UI.Page
public partial class menu :BasePage
{
protected void Page_Load(object sender, EventArgs e)
{
+1 -1
View File
@@ -7,7 +7,7 @@ using System.Web.UI.WebControls;
namespace GPW_Admin
{
public partial class progetti : System.Web.UI.Page
public partial class progetti :BasePage
{
protected void Page_Load(object sender, EventArgs e)
{
+1 -1
View File
@@ -7,7 +7,7 @@ using System.Web.UI.WebControls;
namespace GPW_Admin
{
public partial class reportProgetti : System.Web.UI.Page
public partial class reportProgetti :BasePage
{
protected void Page_Load(object sender, EventArgs e)
{
+1 -1
View File
@@ -7,7 +7,7 @@ using System.Web.UI.WebControls;
namespace GPW_Admin
{
public partial class reviewTimbrature : System.Web.UI.Page
public partial class reviewTimbrature :BasePage
{
protected void Page_Load(object sender, EventArgs e)
{
+1 -10
View File
@@ -9,17 +9,8 @@ using SteamWare;
namespace GPW_Admin
{
public partial class spostaFasi : System.Web.UI.Page
public partial class spostaFasi : BasePage
{
/// <summary>
/// effettua traduzione del lemma
/// </summary>
/// <param name="lemma"></param>
/// <returns></returns>
public string traduci(string lemma)
{
return user_std.UtSn.Traduci(lemma);
}
/// <summary>
/// caricamento pagina
/// </summary>
+1 -1
View File
@@ -7,7 +7,7 @@ using System.Web.UI.WebControls;
namespace GPW_Admin
{
public partial class spostaOre : System.Web.UI.Page
public partial class spostaOre :BasePage
{
protected void Page_Load(object sender, EventArgs e)
{
+1 -1
View File
@@ -7,7 +7,7 @@ using System.Web.UI.WebControls;
namespace GPW_Admin
{
public partial class timbratureMensili : System.Web.UI.Page
public partial class timbratureMensili :BasePage
{
protected void Page_Load(object sender, EventArgs e)
{
+1 -1
View File
@@ -7,7 +7,7 @@ using System.Web.UI.WebControls;
namespace GPW_Admin
{
public partial class unauthorized1 : System.Web.UI.Page
public partial class unauthorized1 :BasePage
{
protected void Page_Load(object sender, EventArgs e)
{
-48
View File
@@ -1,48 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using SteamWare;
namespace GPW_Admin
{
public class utility
{
/// <summary>
/// determina se si debba usare CDN x scaricare librerie asp.net ajax
/// </summary>
public static bool EnableCdnAjax
{
get
{
bool answ = false;
try
{
answ = memLayer.ML.confReadBool("EnableCdnAjax");
}
catch
{
}
return answ;
}
}
/// <summary>
/// determina se si debba usare CDN x scaricare librerie jquery
/// </summary>
public static bool EnableCdnJQ
{
get
{
bool answ = false;
try
{
answ = memLayer.ML.confReadBool("EnableCdnJQ");
}
catch
{
}
return answ;
}
}
}
}
+1 -1
View File
@@ -24,7 +24,7 @@
<NuGetPackageImportStamp>
</NuGetPackageImportStamp>
<Use64BitIISExpress />
<TypeScriptToolsVersion>3.7</TypeScriptToolsVersion>
<TypeScriptToolsVersion>3.9</TypeScriptToolsVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
-3
View File
@@ -44,9 +44,6 @@
<add key="copyRight" value="SteamWare" />
<add key="CodModulo" value="GPW" />
<add key="_safePages" value="unauthorized.aspx#forceUser.aspx#login#login.aspx#test.aspx#Test.aspx" />
<!--Ottimizzazioni liberie esterne-->
<add key="EnableCdnAjax" value="false" />
<add key="EnableCdnJQ" value="false" />
<!--Gestione forzatura priam timbratura ad entrata-->
<add key="firstIsIN" value="true" />
<!--Gestione notifiche anomalie-->
+427 -427
View File
@@ -9,465 +9,465 @@ using GPW_data;
namespace GPW.WebUserControls
{
public partial class mod_bCodeTimb : System.Web.UI.UserControl
{
/// <summary>
/// salva il dato se il prox sia entrata...
/// </summary>
protected bool nextIsEntrata
public partial class mod_bCodeTimb : System.Web.UI.UserControl
{
get
{
return memLayer.ML.BoolSessionObj("nextIsEntrata");
}
set
{
memLayer.ML.setSessionVal("nextIsEntrata", value);
}
}
/// <summary>
/// dataora associata all'evento scansioen BCode
/// </summary>
protected DateTime orarioBCode
{
get
{
return (DateTime)memLayer.ML.objSessionObj("dataOraBCode");
}
set
{
memLayer.ML.setSessionVal("dataOraBCode", value);
}
}
/// <summary>
/// indica i secondi di countdown rimasti x auto-commit
/// </summary>
protected int countDown
{
get
{
return memLayer.ML.IntSessionObj("countDownBCode");
}
set
{
memLayer.ML.setSessionVal("countDownBCode", value);
}
}
/// <summary>
/// pagina corrente
/// </summary>
protected string paginaCorrente
{
get
{
string answ = "";
Uri MyUrl = Request.Url;
string delimStr = "/";
char[] delimiter = delimStr.ToCharArray();
string[] finalUrl = MyUrl.LocalPath.ToString().Split(delimiter);
int n = finalUrl.Length;
answ = finalUrl[n - 1].ToString();
return answ;
}
}
/// <summary>
/// prox messaggio utente (da mostrare)
/// </summary>
protected string nextUsrMsg
{
get
{
string answ = "";
try
/// <summary>
/// salva il dato se il prox sia entrata...
/// </summary>
protected bool nextIsEntrata
{
answ = memLayer.ML.StringSessionObj("nextUsrMsg");
}
catch
{ }
if (answ == "")
{
answ = "...waiting...";
}
return answ;
}
set
{
memLayer.ML.setSessionVal("nextUsrMsg", value);
}
}
/// <summary>
/// caricamento pagina
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
chekIpPostazione();
if (!Page.IsPostBack)
{
DataProxy.idxDipendente = -1;
bool visibile = false;
setCtrlState(visibile);
checkBarcode();
}
timerConf.Tick += new EventHandler<EventArgs>(timerConf_Tick);
lblDipendenteAttivo.Text = nextUsrMsg;
txtBarcode.Focus();
}
/// <summary>
/// verifica IP della postazione chiamante, se non è tra quelli permessi (o non è indicato "*") rimanda a pagina precedente...
/// </summary>
private void chekIpPostazione()
{
// recupero IP
string IPv4 = Request.UserHostName;
// controllo se IP locale = approvata...
if (!memLayer.ML.confReadString("ipv4StazBCode").Contains(IPv4) && memLayer.ML.confReadString("ipv4StazBCode") != "*")
{
Response.Redirect("~/Default.aspx");
}
}
/// <summary>
/// allo scadere del timer controllo countdown!
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
void timerConf_Tick(object sender, EventArgs e)
{
contatorePag = 0;
if (countDown > 1)
{
countDown = countDown - 1;
lblCountDown.Text = countDown.ToString();
txtBarcode.Focus();
}
else
{
// salvo operazione di default!
registraTimbratura(nextIsEntrata);
// reset visualizzazione
setCtrlState(false);
timerConf.Enabled = false;
// reset valori
Response.Redirect(paginaCorrente);
}
}
/// <summary>
/// imposta lo stato visibile dei controlli
/// </summary>
/// <param name="visibile"></param>
private void setCtrlState(bool visibile)
{
pnlTimer.Visible = visibile;
//imgRun.Visible = visibile;
if (DataProxy.idxDipendente > 0)
{
grView.Visible = true;
}
else
{
grView.Visible = visibile;
}
}
/// <summary>
/// verifica in che stato debbano essere i buttons (se barcode utente valido)
/// </summary>
private void checkButtons()
{
// controllo se il prox comando DOVREBBE essere entrata o uscita
nextIsEntrata = true;
// controllo dipendente
if (DataProxy.idxDipendente > 0)
{
// ricavo ultima timbratura..
nextIsEntrata = timbratrice.nextIsEntrata(DataProxy.idxDipendente);
string tipoTimb = "uscita";
// di conseguenza cambio abilitazione ad un buttons
if (nextIsEntrata)
{
btnEntrata.CssClass = "btnPreferred";
btnUscita.CssClass = "btnStd";
tipoTimb = "ENTRATA";
}
else
{
btnEntrata.CssClass = "btnStd";
btnUscita.CssClass = "btnPreferred";
tipoTimb = "USCITA";
}
lblNextTimbr.Text = string.Format("Allo scadere del timer verrà registrata una timbratura di <b>{0}</b>", tipoTimb);
}
else
{
btnEntrata.CssClass = "btnStd";
btnUscita.CssClass = "btnStd";
lblNextTimbr.Text = "";
}
}
/// <summary>
/// controlla se ci sia un barcode valido, tra:
/// - idxDipendente (INT, eventuale padding di zero...)
/// - matr dipendente
/// - cf dipendente
/// </summary>
private void checkBarcode()
{
if (barcodeIn != "")
{
// mostro i buttons enabled
btnEntrata.Enabled = true;
btnUscita.Enabled = true;
lblMessaggi.Text = "Barcode";
switch (tipoBCode)
{
case tipoCodiceBarcode.idxDipendente:
// calcolo idxOperatore...
int idxOper = 0;
try
get
{
idxOper = Convert.ToInt32(barcodeIn.ToLowerInvariant().Replace("idx", ""));
return memLayer.ML.BoolSessionObj("nextIsEntrata");
}
catch
{ }
// controllo esista il codice idxDipendente scansionato
if (DataProxy.DP.taDipendenti.getByIdx(idxOper).Rows.Count == 0)
set
{
setCtrlState(false);
DataProxy.idxDipendente = 0;
orarioBCode = DateTime.Now;
timerConf.Enabled = false;
nextUsrMsg = "...waiting...";
lblMessaggi.Text += " - codice non valido / non trovato.";
pnlAll.CssClass = "stileComandoKo";
memLayer.ML.setSessionVal("nextIsEntrata", value);
}
}
/// <summary>
/// dataora associata all'evento scansioen BCode
/// </summary>
protected DateTime orarioBCode
{
get
{
return (DateTime)memLayer.ML.objSessionObj("dataOraBCode");
}
set
{
memLayer.ML.setSessionVal("dataOraBCode", value);
}
}
/// <summary>
/// indica i secondi di countdown rimasti x auto-commit
/// </summary>
protected int countDown
{
get
{
return memLayer.ML.IntSessionObj("countDownBCode");
}
set
{
memLayer.ML.setSessionVal("countDownBCode", value);
}
}
/// <summary>
/// pagina corrente
/// </summary>
protected string paginaCorrente
{
get
{
string answ = "";
Uri MyUrl = Request.Url;
string delimStr = "/";
char[] delimiter = delimStr.ToCharArray();
string[] finalUrl = MyUrl.LocalPath.ToString().Split(delimiter);
int n = finalUrl.Length;
answ = finalUrl[n - 1].ToString();
return answ;
}
}
/// <summary>
/// prox messaggio utente (da mostrare)
/// </summary>
protected string nextUsrMsg
{
get
{
string answ = "";
try
{
answ = memLayer.ML.StringSessionObj("nextUsrMsg");
}
catch
{ }
if (string.IsNullOrEmpty(answ))
{
answ = "...waiting...";
}
return answ;
}
set
{
memLayer.ML.setSessionVal("nextUsrMsg", value);
}
}
/// <summary>
/// caricamento pagina
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
chekIpPostazione();
if (!Page.IsPostBack)
{
DataProxy.idxDipendente = -1;
bool visibile = false;
setCtrlState(visibile);
checkBarcode();
}
timerConf.Tick += new EventHandler<EventArgs>(timerConf_Tick);
lblDipendenteAttivo.Text = nextUsrMsg;
txtBarcode.Focus();
}
/// <summary>
/// verifica IP della postazione chiamante, se non è tra quelli permessi (o non è indicato "*") rimanda a pagina precedente...
/// </summary>
private void chekIpPostazione()
{
// recupero IP
string IPv4 = Request.UserHostName;
// controllo se IP locale = approvata...
if (!memLayer.ML.confReadString("ipv4StazBCode").Contains(IPv4) && memLayer.ML.confReadString("ipv4StazBCode") != "*")
{
Response.Redirect("~/Default.aspx");
}
}
/// <summary>
/// allo scadere del timer controllo countdown!
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
void timerConf_Tick(object sender, EventArgs e)
{
contatorePag = 0;
if (countDown > 1)
{
countDown = countDown - 1;
lblCountDown.Text = countDown.ToString();
txtBarcode.Focus();
}
else
{
setCtrlState(true);
DataProxy.idxDipendente = idxOper;
orarioBCode = DateTime.Now;
DS_Applicazione.DipendentiRow rigaDip = DataProxy.DP.taDipendenti.getByIdx(idxOper)[0];
nextUsrMsg = string.Format("{0} {1} - {2: HH:mm:ss}", rigaDip.Cognome, rigaDip.Nome, orarioBCode);
lblMessaggi.Text += " - impostato dipendente!";
pnlAll.CssClass = "stileComandoOk";
// faccio partire countdown
countDown = SteamWare.memLayer.ML.confReadInt("secTimeoutBCode");
lblCountDown.Text = countDown.ToString();
timerConf.Enabled = true;
// salvo operazione di default!
registraTimbratura(nextIsEntrata);
// reset visualizzazione
setCtrlState(false);
timerConf.Enabled = false;
// reset valori
Response.Redirect(paginaCorrente);
}
txtBarcode.Focus();
break;
case tipoCodiceBarcode.matrDipendente:
// fare!!!
txtBarcode.Focus();
break;
case tipoCodiceBarcode.cfDipendente:
// fare!!!
txtBarcode.Focus();
break;
case tipoCodiceBarcode.Comando:
// procedo SOLO se ho cod dipendente
if (DataProxy.DP.taDipendenti.getByIdx(DataProxy.idxDipendente).Rows.Count > 0)
}
/// <summary>
/// imposta lo stato visibile dei controlli
/// </summary>
/// <param name="visibile"></param>
private void setCtrlState(bool visibile)
{
pnlTimer.Visible = visibile;
//imgRun.Visible = visibile;
if (DataProxy.idxDipendente > 0)
{
timerConf.Enabled = false;
setCtrlState(false);
grView.Visible = true;
}
nextUsrMsg = "...waiting...";
// controlla se sia entra/esci (IN/OUT)
if (barcodeIn.ToUpperInvariant() == "CMDIN")
else
{
// registro ingresso!
registraTimbratura(true);
Response.Redirect(paginaCorrente);
grView.Visible = visibile;
}
else if (barcodeIn.ToUpperInvariant() == "CMDOUT")
}
/// <summary>
/// verifica in che stato debbano essere i buttons (se barcode utente valido)
/// </summary>
private void checkButtons()
{
// controllo se il prox comando DOVREBBE essere entrata o uscita
nextIsEntrata = true;
// controllo dipendente
if (DataProxy.idxDipendente > 0)
{
// registro uscita!
registraTimbratura(false);
Response.Redirect(paginaCorrente);
// ricavo ultima timbratura..
nextIsEntrata = timbratrice.nextIsEntrata(DataProxy.idxDipendente);
string tipoTimb = "uscita";
// di conseguenza cambio abilitazione ad un buttons
if (nextIsEntrata)
{
btnEntrata.CssClass = "btnPreferred";
btnUscita.CssClass = "btnStd";
tipoTimb = "ENTRATA";
}
else
{
btnEntrata.CssClass = "btnStd";
btnUscita.CssClass = "btnPreferred";
tipoTimb = "USCITA";
}
lblNextTimbr.Text = string.Format("Allo scadere del timer verrà registrata una timbratura di <b>{0}</b>", tipoTimb);
}
//else if (barcodeIn.ToUpperInvariant() == "CMD")
//{
// Response.Redirect(paginaCorrente);
//}
//DataProxy.idxDipendente = -1;
else
{
btnEntrata.CssClass = "btnStd";
btnUscita.CssClass = "btnStd";
lblNextTimbr.Text = "";
}
}
/// <summary>
/// controlla se ci sia un barcode valido, tra:
/// - idxDipendente (INT, eventuale padding di zero...)
/// - matr dipendente
/// - cf dipendente
/// </summary>
private void checkBarcode()
{
if (barcodeIn != "")
{
// mostro i buttons enabled
btnEntrata.Enabled = true;
btnUscita.Enabled = true;
lblMessaggi.Text = "Barcode";
switch (tipoBCode)
{
case tipoCodiceBarcode.idxDipendente:
// calcolo idxOperatore...
int idxOper = 0;
try
{
idxOper = Convert.ToInt32(barcodeIn.ToLowerInvariant().Replace("idx", ""));
}
catch
{ }
// controllo esista il codice idxDipendente scansionato
if (DataProxy.DP.taDipendenti.getByIdx(idxOper).Rows.Count == 0)
{
setCtrlState(false);
DataProxy.idxDipendente = 0;
orarioBCode = DateTime.Now;
timerConf.Enabled = false;
nextUsrMsg = "...waiting...";
lblMessaggi.Text += " - codice non valido / non trovato.";
pnlAll.CssClass = "stileComandoKo";
}
else
{
setCtrlState(true);
DataProxy.idxDipendente = idxOper;
orarioBCode = DateTime.Now;
DS_Applicazione.DipendentiRow rigaDip = DataProxy.DP.taDipendenti.getByIdx(idxOper)[0];
nextUsrMsg = string.Format("{0} {1} - {2: HH:mm:ss}", rigaDip.Cognome, rigaDip.Nome, orarioBCode);
lblMessaggi.Text += " - impostato dipendente!";
pnlAll.CssClass = "stileComandoOk";
// faccio partire countdown
countDown = SteamWare.memLayer.ML.confReadInt("secTimeoutBCode");
lblCountDown.Text = countDown.ToString();
timerConf.Enabled = true;
}
txtBarcode.Focus();
break;
case tipoCodiceBarcode.matrDipendente:
// fare!!!
txtBarcode.Focus();
break;
case tipoCodiceBarcode.cfDipendente:
// fare!!!
txtBarcode.Focus();
break;
case tipoCodiceBarcode.Comando:
// procedo SOLO se ho cod dipendente
if (DataProxy.DP.taDipendenti.getByIdx(DataProxy.idxDipendente).Rows.Count > 0)
{
timerConf.Enabled = false;
setCtrlState(false);
}
nextUsrMsg = "...waiting...";
// controlla se sia entra/esci (IN/OUT)
if (barcodeIn.ToUpperInvariant() == "CMDIN")
{
// registro ingresso!
registraTimbratura(true);
Response.Redirect(paginaCorrente);
}
else if (barcodeIn.ToUpperInvariant() == "CMDOUT")
{
// registro uscita!
registraTimbratura(false);
Response.Redirect(paginaCorrente);
}
//else if (barcodeIn.ToUpperInvariant() == "CMD")
//{
// Response.Redirect(paginaCorrente);
//}
//DataProxy.idxDipendente = -1;
txtBarcode.Focus();
break;
default:
txtBarcode.Focus();
break;
}
barcodeIn = "";
}
else
{
lblMessaggi.Text = "...attesa barcode...";
}
grView.DataBind();
checkButtons();
txtBarcode.Focus();
break;
default:
txtBarcode.Focus();
break;
}
barcodeIn = "";
}
else
{
lblMessaggi.Text = "...attesa barcode...";
}
grView.DataBind();
checkButtons();
txtBarcode.Focus();
}
/// <summary>
/// valore barcode
/// </summary>
public string barcodeIn
{
get
{
return txtBarcode.Text.Trim();
}
set
{
txtBarcode.Text = value;
}
}
/// <summary>
/// salvo entrata
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnEntrata_Click(object sender, EventArgs e)
{
// salvo entrata...
registraTimbratura(true);
Response.Redirect(paginaCorrente);
}
/// <summary>
/// salvo uscita
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnUscita_Click(object sender, EventArgs e)
{
// salvo uscita
registraTimbratura(false);
Response.Redirect(paginaCorrente);
}
/// <summary>
/// registro timbratura
/// </summary>
/// <param name="isEntrata"></param>
/// <returns></returns>
private void registraTimbratura(bool isEntrata)
{
// salvo evento entrata...
string IPv4 = Request.UserHostName;
// auto-approvazione da web.config
bool approvata = memLayer.ML.confReadBool("barcodeAutoApprove");
if (DataProxy.idxDipendente > 0)
{
string CognomeNome = "";
if (memLayer.ML.confReadBool("showNameAfterCmd"))
/// <summary>
/// valore barcode
/// </summary>
public string barcodeIn
{
CognomeNome = DataProxy.DP.CognomeNomeByIdx(DataProxy.idxDipendente);
get
{
return txtBarcode.Text.Trim();
}
set
{
txtBarcode.Text = value;
}
}
if (nextIsEntrata)
/// <summary>
/// salvo entrata
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnEntrata_Click(object sender, EventArgs e)
{
nextUsrMsg = string.Format("{1} ENTRATA {0:HH:mm:ss}", orarioBCode, CognomeNome);
// salvo entrata...
registraTimbratura(true);
Response.Redirect(paginaCorrente);
}
else
/// <summary>
/// salvo uscita
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnUscita_Click(object sender, EventArgs e)
{
nextUsrMsg = string.Format("{1} USCITA {0:HH:mm:ss}", orarioBCode, CognomeNome);
// salvo uscita
registraTimbratura(false);
Response.Redirect(paginaCorrente);
}
timbratrice.registraTimbratura(DataProxy.idxDipendente, orarioBCode, isEntrata, IPv4, "Web", approvata);
//aggiorno timbrature visualizzate
setButtons();
grView.DataBind();
}
else
{
lblMessaggi.Text = "IdxDipendente non trovato! timbratura impossibile";
pnlAll.CssClass = "stileComandoND";
}
}
/// <summary>
/// imposta i buttons secondo i valori in sessione...
/// </summary>
private void setButtons()
{
// mostrare e abilitare secondo condizioni al contorno
}
/// <summary>
/// decodifica il tipo barcode acquisito
/// </summary>
public tipoCodiceBarcode tipoBCode
{
get
{
tipoCodiceBarcode answ = tipoCodiceBarcode.ND;
// controllo non si tratti di un comando...
string preCmd = memLayer.ML.confReadString("prefComandi");
if (barcodeIn.StartsWith(preCmd, StringComparison.InvariantCultureIgnoreCase))
/// <summary>
/// registro timbratura
/// </summary>
/// <param name="isEntrata"></param>
/// <returns></returns>
private void registraTimbratura(bool isEntrata)
{
answ = tipoCodiceBarcode.Comando;
// salvo evento entrata...
string IPv4 = Request.UserHostName;
// auto-approvazione da web.config
bool approvata = memLayer.ML.confReadBool("barcodeAutoApprove");
if (DataProxy.idxDipendente > 0)
{
string CognomeNome = "";
if (memLayer.ML.confReadBool("showNameAfterCmd"))
{
CognomeNome = DataProxy.DP.CognomeNomeByIdx(DataProxy.idxDipendente);
}
if (nextIsEntrata)
{
nextUsrMsg = string.Format("{1} ENTRATA {0:HH:mm:ss}", orarioBCode, CognomeNome);
}
else
{
nextUsrMsg = string.Format("{1} USCITA {0:HH:mm:ss}", orarioBCode, CognomeNome);
}
timbratrice.registraTimbratura(DataProxy.idxDipendente, orarioBCode, isEntrata, IPv4, "Web", approvata);
//aggiorno timbrature visualizzate
setButtons();
grView.DataBind();
}
else
{
lblMessaggi.Text = "IdxDipendente non trovato! timbratura impossibile";
pnlAll.CssClass = "stileComandoND";
}
}
// controllo se sia un codice "idx"
else if (barcodeIn.StartsWith("idx", StringComparison.InvariantCultureIgnoreCase))
/// <summary>
/// imposta i buttons secondo i valori in sessione...
/// </summary>
private void setButtons()
{
answ = tipoCodiceBarcode.idxDipendente;
// mostrare e abilitare secondo condizioni al contorno
}
// controllo se sia un codice "matr"
else if (barcodeIn.StartsWith("matr", StringComparison.InvariantCultureIgnoreCase))
/// <summary>
/// decodifica il tipo barcode acquisito
/// </summary>
public tipoCodiceBarcode tipoBCode
{
answ = tipoCodiceBarcode.matrDipendente;
get
{
tipoCodiceBarcode answ = tipoCodiceBarcode.ND;
// controllo non si tratti di un comando...
string preCmd = memLayer.ML.confReadString("prefComandi");
if (barcodeIn.StartsWith(preCmd, StringComparison.InvariantCultureIgnoreCase))
{
answ = tipoCodiceBarcode.Comando;
}
// controllo se sia un codice "idx"
else if (barcodeIn.StartsWith("idx", StringComparison.InvariantCultureIgnoreCase))
{
answ = tipoCodiceBarcode.idxDipendente;
}
// controllo se sia un codice "matr"
else if (barcodeIn.StartsWith("matr", StringComparison.InvariantCultureIgnoreCase))
{
answ = tipoCodiceBarcode.matrDipendente;
}
// controllo se sia un codice "cf"
else if (barcodeIn.StartsWith("cf", StringComparison.InvariantCultureIgnoreCase))
{
answ = tipoCodiceBarcode.cfDipendente;
}
return answ;
}
}
// controllo se sia un codice "cf"
else if (barcodeIn.StartsWith("cf", StringComparison.InvariantCultureIgnoreCase))
/// <summary>
/// inverte valore booleano
/// </summary>
/// <param name="isEnt"></param>
/// <returns></returns>
public bool invBool(object valore)
{
answ = tipoCodiceBarcode.cfDipendente;
bool answ = true;
try
{
answ = !Convert.ToBoolean(valore);
}
catch
{ }
return answ;
}
/// <summary>
/// evento cambio testo
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void txtBarcode_TextChanged(object sender, EventArgs e)
{
// solo se ho ALMENO 3 char...
if (barcodeIn.Length >= 3)
{
contatorePag = 0;
checkBarcode();
}
}
return answ;
}
}
/// <summary>
/// inverte valore booleano
/// </summary>
/// <param name="isEnt"></param>
/// <returns></returns>
public bool invBool(object valore)
{
bool answ = true;
try
{
answ = !Convert.ToBoolean(valore);
}
catch
{ }
return answ;
}
/// <summary>
/// evento cambio testo
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void txtBarcode_TextChanged(object sender, EventArgs e)
{
// solo se ho ALMENO 3 char...
if (barcodeIn.Length >= 3)
{
contatorePag = 0;
checkBarcode();
}
}
/// <summary>
/// variabile che conta numero di refresh parziali prima di fare reload completo
/// </summary>
protected int contatorePag
{
get
{
return memLayer.ML.IntSessionObj("numChiamatePaginaBCode");
}
set
{
memLayer.ML.setSessionVal("numChiamatePaginaBCode", value);
}
}
/// <summary>
/// variabile che conta numero di refresh parziali prima di fare reload completo
/// </summary>
protected int contatorePag
{
get
{
return memLayer.ML.IntSessionObj("numChiamatePaginaBCode");
}
set
{
memLayer.ML.setSessionVal("numChiamatePaginaBCode", value);
}
}
}
}
}
+3 -3
View File
@@ -24,7 +24,8 @@
<NuGetPackageImportStamp>
</NuGetPackageImportStamp>
<Use64BitIISExpress />
<TypeScriptToolsVersion>3.5</TypeScriptToolsVersion>
<TypeScriptToolsVersion>3.9</TypeScriptToolsVersion>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
@@ -128,7 +129,6 @@
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System" />
<Reference Include="System.Data" />
<Reference Include="System.Core" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Diagnostics.PerformanceCounter, Version=4.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Diagnostics.PerformanceCounter.4.7.0\lib\net461\System.Diagnostics.PerformanceCounter.dll</HintPath>
@@ -197,7 +197,6 @@
<Reference Include="System.Web.Http.WebHost, Version=5.2.7.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebApi.WebHost.5.2.7\lib\net45\System.Web.Http.WebHost.dll</HintPath>
</Reference>
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Drawing" />
<Reference Include="System.Web" />
<Reference Include="System.Xml" />
@@ -227,6 +226,7 @@
<Reference Include="Microsoft.AspNet.FriendlyUrls">
<HintPath>..\packages\Microsoft.AspNet.FriendlyUrls.Core.1.0.2\lib\net45\Microsoft.AspNet.FriendlyUrls.dll</HintPath>
</Reference>
<Reference Include="System.Xml.Linq" />
<Reference Include="WebGrease, Version=1.6.5135.21930, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\WebGrease.1.6.0\lib\WebGrease.dll</HintPath>
<Private>True</Private>
+232 -227
View File
@@ -1,85 +1,89 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0"?>
<!--
For more information on how to configure your ASP.NET application, please visit
http://go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration>
<configSections>
<sectionGroup name="elmah">
<section name="security" requirePermission="false" type="Elmah.SecuritySectionHandler, Elmah" />
<section name="errorLog" requirePermission="false" type="Elmah.ErrorLogSectionHandler, Elmah" />
<section name="errorMail" requirePermission="false" type="Elmah.ErrorMailSectionHandler, Elmah" />
<section name="errorFilter" requirePermission="false" type="Elmah.ErrorFilterSectionHandler, Elmah" />
</sectionGroup>
</configSections>
<system.web>
<compilation debug="true" targetFramework="4.6.2" />
<httpRuntime targetFramework="4.6.2" />
<pages>
<namespaces>
<add namespace="System.Web.Optimization" />
</namespaces>
<controls>
<add assembly="Microsoft.AspNet.Web.Optimization.WebForms" namespace="Microsoft.AspNet.Web.Optimization.WebForms" tagPrefix="webopt" />
<configSections>
<sectionGroup name="elmah">
<section name="security" requirePermission="false" type="Elmah.SecuritySectionHandler, Elmah"/>
<section name="errorLog" requirePermission="false" type="Elmah.ErrorLogSectionHandler, Elmah"/>
<section name="errorMail" requirePermission="false" type="Elmah.ErrorMailSectionHandler, Elmah"/>
<section name="errorFilter" requirePermission="false" type="Elmah.ErrorFilterSectionHandler, Elmah"/>
</sectionGroup>
</configSections>
<!--
Per una descrizione delle modifiche al file web.config, vedere il sito Web all'indirizzo http://go.microsoft.com/fwlink/?LinkId=235367.
<add tagPrefix="ajaxToolkit" assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" /></controls>
</pages>
<customErrors mode="Off" />
<globalization culture="it-IT" enableClientBasedCulture="true" uiCulture="it" />
<httpModules>
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" />
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" />
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" />
</httpModules>
<sessionState mode="Custom" customProvider="MySessionStateStore">
<providers>
<!-- For more details check https://github.com/Azure/aspnet-redis-providers/wiki -->
<add name="MySessionStateStore" type="Microsoft.Web.Redis.RedisSessionStateProvider" host="127.0.0.1" accessKey="" ssl="false" applicationName="GPW_WRKLG" />
</providers>
</sessionState>
</system.web>
<appSettings>
<!--Impostazione gestione serializzazione variabili in sessione (es per Redis)-->
<add key="serializeSession" value="true" />
<!--Conf generale-->
<add key="appName" value="GPW" />
<add key="titleApp" value="GPW" />
<add key="welcomeApp" value="GPW_welcome" />
<add key="SiteName" value="Steamware" />
<!--<add key="mainRev" value="1.8"/>
Gli attributi seguenti possono essere impostati sul tag <httpRuntime>.
<system.Web>
<httpRuntime targetFramework="4.7.2" />
</system.Web>
-->
<system.web>
<compilation debug="true" targetFramework="4.6.2"/>
<httpRuntime targetFramework="4.6.2"/>
<pages>
<namespaces>
<add namespace="System.Web.Optimization"/>
</namespaces>
<controls>
<add assembly="Microsoft.AspNet.Web.Optimization.WebForms" namespace="Microsoft.AspNet.Web.Optimization.WebForms" tagPrefix="webopt"/>
<add tagPrefix="ajaxToolkit" assembly="AjaxControlToolkit" namespace="AjaxControlToolkit"/>
</controls>
</pages>
<customErrors mode="Off"/>
<globalization culture="it-IT" enableClientBasedCulture="true" uiCulture="it"/>
<httpModules>
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah"/>
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah"/>
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah"/>
</httpModules>
<sessionState mode="Custom" customProvider="MySessionStateStore">
<providers>
<!-- For more details check https://github.com/Azure/aspnet-redis-providers/wiki -->
<add name="MySessionStateStore" type="Microsoft.Web.Redis.RedisSessionStateProvider" host="127.0.0.1" accessKey="" ssl="false" applicationName="GPW_WRKLG"/>
</providers>
</sessionState>
</system.web>
<appSettings>
<!--Impostazione gestione serializzazione variabili in sessione (es per Redis)-->
<add key="serializeSession" value="true"/>
<!--Conf generale-->
<add key="appName" value="GPW"/>
<add key="titleApp" value="GPW"/>
<add key="welcomeApp" value="GPW_welcome"/>
<add key="SiteName" value="Steamware"/>
<!--<add key="mainRev" value="1.8"/>
<add key="minRev" value="375"/>-->
<add key="copyRight" value="SteamWare" />
<add key="CodModulo" value="GPW" />
<add key="_safePages" value="unauthorized#forceUser#login#login#test#Test" />
<!--Ottimizzazioni liberie esterne-->
<add key="EnableCdnAjax" value="false" />
<add key="EnableCdnJQ" value="false" />
<!--Gestione forzatura priam timbratura ad entrata-->
<add key="firstIsIN" value="true" />
<!--Gestione notifiche anomalie-->
<add key="adminAnomalieEmail" value="samuele@steamware.net" />
<add key="adminContinuatoEmail" value="samuele@steamware.net" />
<add key="adminOreLavEmail" value="samuele@steamware.net" />
<add key="gg2Chk" value="60" />
<add key="gg2ChkCont" value="30" />
<add key="gg2ChkOreCaricate" value="30" />
<add key="checkAnomTimb" value="true" />
<add key="checkAnomAppr" value="true" />
<add key="checkAnomOreLav" value="true" />
<add key="checkAnomOreLavComm" value="true" />
<add key="checkAnomContinuato" value="true" />
<add key="sendEmailToUser" value="true" />
<add key="firstHour2Check" value="6" />
<add key="enableDailyCheck" value="true" />
<!--Timeout vari-->
<add key="intUpdatePagina_ms" value="120000" />
<add key="intUpdateFooter_ms" value="1000" />
<add key="maxRefreshToReload" value="30" />
<!--Abilitazione link timbrature-->
<add key="showRepTimb" value="true" />
<!--Gestione Barcode-->
<!--<add key="secTimeoutBCode" value="8" />
<add key="copyRight" value="SteamWare"/>
<add key="CodModulo" value="GPW"/>
<add key="_safePages" value="unauthorized#forceUser#login#login#test#Test"/>
<!--Gestione forzatura priam timbratura ad entrata-->
<add key="firstIsIN" value="true"/>
<!--Gestione notifiche anomalie-->
<add key="adminAnomalieEmail" value="samuele@steamware.net"/>
<add key="adminContinuatoEmail" value="samuele@steamware.net"/>
<add key="adminOreLavEmail" value="samuele@steamware.net"/>
<add key="gg2Chk" value="60"/>
<add key="gg2ChkCont" value="30"/>
<add key="gg2ChkOreCaricate" value="30"/>
<add key="checkAnomTimb" value="true"/>
<add key="checkAnomAppr" value="true"/>
<add key="checkAnomOreLav" value="true"/>
<add key="checkAnomOreLavComm" value="true"/>
<add key="checkAnomContinuato" value="true"/>
<add key="sendEmailToUser" value="true"/>
<add key="firstHour2Check" value="6"/>
<add key="enableDailyCheck" value="true"/>
<!--Timeout vari-->
<add key="intUpdatePagina_ms" value="120000"/>
<add key="intUpdateFooter_ms" value="1000"/>
<add key="maxRefreshToReload" value="30"/>
<!--Abilitazione link timbrature-->
<add key="showRepTimb" value="true"/>
<!--Gestione Barcode-->
<!--<add key="secTimeoutBCode" value="8" />
<add key="prefComandi" value="CMD" />
<add key="prefIdx" value="idx" />
<add key="prefMatr" value="matr" />
@@ -88,162 +92,163 @@
<add key="uscita" value="CMDOUT" />
<add key="ipv4StazBCode" value="*" />
<add key="showNameAfterCmd" value="true" />-->
<!--ricerca autocomplete-->
<add key="maxNumSuggest" value="30" />
<!--Logging-->
<add key="_logDir" value="~/logs/" />
<add key="doShrinkFolder" value="true" />
<add key="_logLevel" value="6" />
<add key="_logMaxMb" value="30" />
<!--Definizione default x registrazione commesse-->
<add key="defRegAttMin" value="60" />
<add key="maxErr" value="30" />
<add key="maxErrMin" value="-30" />
<add key="maxErrPlus" value="91" />
<!--default visualizzazione timbrature-->
<add key="reviewShowCN" value="true" />
<add key="reviewShowOreMin" value="false" />
<add key="reviewShowStraord" value="true" />
<!--gestione warning x calcolo real/budget-->
<add key="warningRatioPerc" value="80" />
<!--Definizione URL e rete locale-->
<add key="localNet" value="10.74.82" />
<add key="dhcpLeaseTime" value="15" />
<!--Conf x grafici a barre-->
<add key="maxBarplotLargh" value="1000" />
<!--Conf attivazione funzionalità opzionali-->
<add key="barcodeAutoApprove" value="true" />
<add key="regAttEnabled" value="true" />
<!--Gestione selettore periodo-->
<add key="defDayFrom" value="-10" />
<add key="mostraSelOra" value="false" />
<!--Timbratrice x Zucchetti-->
<add key="codTimbra" value="90" />
<!--Gestione email-->
<add key="_fromEmail" value="steamwarebot@gmail.com" />
<add key="_smtpCli" value="smtp.gmail.com" />
<add key="_emailUser" value="steamwarebot@gmail.com" />
<add key="_emailPwd" value="drmfsls16" />
<add key="_enableSSL" value="true" />
<!--gestione tac cloud-->
<add key="TagCloudMode" value="elenco" />
<!--Gestione auth dispositivi mobile-->
<add key="authKey" value="keyhammer" />
<add key="baseUrl" value="http://iis02/GPW/" />
<add key="baseWebUrl" value="http://seriate.steamware.net:8083/GPW/" />
<add key="GpwSmartUrl" value="../../GPW/SMART" />
<add key="GpwBCodeUrl" value="../../GPW/BCODE" />
<!--Gestione SSRS-->
<add key="reportBaseUrl" value="http://sql-steam/ReportServer?/Steamware/" />
<!--COnf DB-->
<add key="PermessiConnectionString" value="Data Source=SQL-STEAM\SQL2012;Initial Catalog=GPW;Persist Security Info=True;User ID=sa;Password=keyhammer" />
<add key="UtenteCdcConnectionString" value="Data Source=SQL-STEAM\SQL2012;Initial Catalog=Steamware_Anagrafica;Persist Security Info=True;User ID=sa;Password=keyhammer" />
<add key="VocabolarioConnectionString" value="Data Source=SQL-STEAM\SQL2012;Initial Catalog=GPW_vocabolario;Persist Security Info=True;User ID=sa;Password=keyhammer" />
<add key="GPWConnectionString" value="Data Source=SQL-STEAM\SQL2012;Initial Catalog=GPW;Persist Security Info=True;User ID=sa;Password=keyhammer" />
<add key="ChartImageHandler" value="storage=file;timeout=20;dir=c:\TempImageFiles\;" />
</appSettings>
<connectionStrings>
<add name="GPW_data.Properties.Settings.GPWConnectionString" connectionString="Data Source=SQL-STEAM\SQL2012;Initial Catalog=GPW;Persist Security Info=True;User ID=sa;Password=keyhammer" providerName="System.Data.SqlClient" />
<add name="ErrorLog" connectionString="Data Source=SQL2016DEV;Initial Catalog=Elmah;Persist Security Info=True;User ID=sa;Password=keyhammer16;" providerName="System.Data.SqlClient" />
</connectionStrings>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="DnsClient" publicKeyToken="4574bb5573c51424" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.3.2.0" newVersion="1.3.2.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="SharpCompress" publicKeyToken="afb0a02973931d96" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-0.26.0.0" newVersion="0.26.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.1.1.3" newVersion="4.1.1.3" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.IO.Compression" publicKeyToken="b77a5c561934e089" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.1.2.0" newVersion="4.1.2.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.1.4.0" newVersion="4.1.4.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.6.0" newVersion="4.0.6.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-12.0.0.0" newVersion="12.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.6.5135.21930" newVersion="1.6.5135.21930" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Antlr3.Runtime" publicKeyToken="eb42632606e9261f" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.5.0.2" newVersion="3.5.0.2" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime.InteropServices.RuntimeInformation" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.1.0" newVersion="4.0.1.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<system.webServer>
<validation validateIntegratedModeConfiguration="false" />
<modules>
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" preCondition="managedHandler" />
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" preCondition="managedHandler" />
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" preCondition="managedHandler" />
<remove name="Session" />
<add name="Session" type="Microsoft.AspNet.SessionState.SessionStateModuleAsync, Microsoft.AspNet.SessionState.SessionStateModule, Version=1.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" preCondition="integratedMode" />
</modules>
<staticContent>
<remove fileExtension=".woff" />
<mimeMap fileExtension=".woff" mimeType="application/x-font-woff" />
<remove fileExtension=".woff2" />
<mimeMap fileExtension=".woff2" mimeType="application/x-font-woff" />
<remove fileExtension=".svg" />
<mimeMap fileExtension=".svg" mimeType="image/svg+xml" />
<remove fileExtension=".json" />
<mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>
<!--ricerca autocomplete-->
<add key="maxNumSuggest" value="30"/>
<!--Logging-->
<add key="_logDir" value="~/logs/"/>
<add key="doShrinkFolder" value="true"/>
<add key="_logLevel" value="6"/>
<add key="_logMaxMb" value="30"/>
<!--Definizione default x registrazione commesse-->
<add key="defRegAttMin" value="60"/>
<add key="maxErr" value="30"/>
<add key="maxErrMin" value="-30"/>
<add key="maxErrPlus" value="91"/>
<!--default visualizzazione timbrature-->
<add key="reviewShowCN" value="true"/>
<add key="reviewShowOreMin" value="false"/>
<add key="reviewShowStraord" value="true"/>
<!--gestione warning x calcolo real/budget-->
<add key="warningRatioPerc" value="80"/>
<!--Definizione URL e rete locale-->
<add key="localNet" value="10.74.82"/>
<add key="dhcpLeaseTime" value="15"/>
<!--Conf x grafici a barre-->
<add key="maxBarplotLargh" value="1000"/>
<!--Conf attivazione funzionalità opzionali-->
<add key="barcodeAutoApprove" value="true"/>
<add key="regAttEnabled" value="true"/>
<!--Gestione selettore periodo-->
<add key="defDayFrom" value="-10"/>
<add key="mostraSelOra" value="false"/>
<!--Timbratrice x Zucchetti-->
<add key="codTimbra" value="90"/>
<!--Gestione email-->
<add key="_fromEmail" value="steamwarebot@gmail.com"/>
<add key="_smtpCli" value="smtp.gmail.com"/>
<add key="_emailUser" value="steamwarebot@gmail.com"/>
<add key="_emailPwd" value="drmfsls16"/>
<add key="_enableSSL" value="true"/>
<!--gestione tac cloud-->
<add key="TagCloudMode" value="elenco"/>
<!--Gestione auth dispositivi mobile-->
<add key="authKey" value="keyhammer"/>
<add key="baseUrl" value="http://iis02/GPW/"/>
<add key="baseWebUrl" value="http://seriate.steamware.net:8083/GPW/"/>
<add key="GpwSmartUrl" value="../../GPW/SMART"/>
<add key="GpwBCodeUrl" value="../../GPW/BCODE"/>
<!--Gestione SSRS-->
<add key="reportBaseUrl" value="http://sql-steam/ReportServer?/Steamware/"/>
<!--COnf DB-->
<add key="PermessiConnectionString" value="Data Source=SQL-STEAM\SQL2012;Initial Catalog=GPW;Persist Security Info=True;User ID=sa;Password=keyhammer"/>
<add key="UtenteCdcConnectionString" value="Data Source=SQL-STEAM\SQL2012;Initial Catalog=Steamware_Anagrafica;Persist Security Info=True;User ID=sa;Password=keyhammer"/>
<add key="VocabolarioConnectionString" value="Data Source=SQL-STEAM\SQL2012;Initial Catalog=GPW_vocabolario;Persist Security Info=True;User ID=sa;Password=keyhammer"/>
<add key="GPWConnectionString" value="Data Source=SQL-STEAM\SQL2012;Initial Catalog=GPW;Persist Security Info=True;User ID=sa;Password=keyhammer"/>
<add key="ChartImageHandler" value="storage=file;timeout=20;dir=c:\TempImageFiles\;"/>
</appSettings>
<connectionStrings>
<add name="GPW_data.Properties.Settings.GPWConnectionString" connectionString="Data Source=SQL-STEAM\SQL2012;Initial Catalog=GPW;Persist Security Info=True;User ID=sa;Password=keyhammer" providerName="System.Data.SqlClient"/>
<add name="ErrorLog" connectionString="Data Source=SQL2016DEV;Initial Catalog=Elmah;Persist Security Info=True;User ID=sa;Password=keyhammer16;" providerName="System.Data.SqlClient"/>
</connectionStrings>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="DnsClient" publicKeyToken="4574bb5573c51424" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-1.3.2.0" newVersion="1.3.2.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="SharpCompress" publicKeyToken="afb0a02973931d96" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-0.26.0.0" newVersion="0.26.0.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.1.1.3" newVersion="4.1.1.3"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.IO.Compression" publicKeyToken="b77a5c561934e089" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.1.2.0" newVersion="4.1.2.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.1.4.0" newVersion="4.1.4.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.0.6.0" newVersion="4.0.6.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-12.0.0.0" newVersion="12.0.0.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-1.6.5135.21930" newVersion="1.6.5135.21930"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Antlr3.Runtime" publicKeyToken="eb42632606e9261f" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-3.5.0.2" newVersion="3.5.0.2"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime.InteropServices.RuntimeInformation" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.0.1.0" newVersion="4.0.1.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
<system.webServer>
<validation validateIntegratedModeConfiguration="false"/>
<modules>
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" preCondition="managedHandler"/>
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" preCondition="managedHandler"/>
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" preCondition="managedHandler"/>
<remove name="Session"/>
<add name="Session" type="Microsoft.AspNet.SessionState.SessionStateModuleAsync, Microsoft.AspNet.SessionState.SessionStateModule, Version=1.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" preCondition="integratedMode"/>
</modules>
<staticContent>
<remove fileExtension=".woff"/>
<mimeMap fileExtension=".woff" mimeType="application/x-font-woff"/>
<remove fileExtension=".woff2"/>
<mimeMap fileExtension=".woff2" mimeType="application/x-font-woff"/>
<remove fileExtension=".svg"/>
<mimeMap fileExtension=".svg" mimeType="image/svg+xml"/>
<remove fileExtension=".json"/>
<mimeMap fileExtension=".json" mimeType="application/json"/>
</staticContent>
<handlers>
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<remove name="OPTIONSVerbHandler" />
<remove name="TRACEVerbHandler" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers></system.webServer>
<elmah>
<errorLog type="Elmah.SqlErrorLog, Elmah" connectionStringName="ErrorLog" />
<security allowRemoteAccess="false" />
</elmah>
<location path="elmah.axd" inheritInChildApplications="false">
<system.web>
<httpHandlers>
<add verb="POST,GET,HEAD" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah" />
</httpHandlers>
</system.web>
<system.webServer>
<handlers>
<add name="ELMAH" verb="POST,GET,HEAD" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah" preCondition="integratedMode" />
</handlers>
</system.webServer>
</location>
<!--<location path="~/Controllers">
<remove name="ExtensionlessUrlHandler-Integrated-4.0"/>
<remove name="OPTIONSVerbHandler"/>
<remove name="TRACEVerbHandler"/>
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0"/>
</handlers>
</system.webServer>
<elmah>
<errorLog type="Elmah.SqlErrorLog, Elmah" connectionStringName="ErrorLog"/>
<security allowRemoteAccess="false"/>
</elmah>
<location path="elmah.axd" inheritInChildApplications="false">
<system.web>
<httpHandlers>
<add verb="POST,GET,HEAD" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah"/>
</httpHandlers>
</system.web>
<system.webServer>
<handlers>
<add name="ELMAH" verb="POST,GET,HEAD" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah" preCondition="integratedMode"/>
</handlers>
</system.webServer>
</location>
<!--<location path="~/Controllers">
<system.web>
<authorization>
<allow users="?"/>
</authorization>
</system.web>
</location>-->
</configuration>
</configuration>
@@ -61,7 +61,7 @@ namespace GPW_Commesse.WebUserControls
protected void txtSel_TextChanged(object sender, EventArgs e)
{
if (txtSel.Text.Trim() == "")
if (string.IsNullOrEmpty(txtSel.Text.Trim()))
{
hiddenFieldID.Text = defaultVal;
_valore = defaultVal;
@@ -130,7 +130,7 @@ namespace GPW_Commesse.WebUserControls
{
answ = txtSel.Text.Trim();
}
if (answ == "")
if (string.IsNullOrEmpty(answ))
{
answ = txtSel.Text.Trim();
}
@@ -54,7 +54,7 @@ namespace GPW_Commesse.WebUserControls
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)// || txtData.Text == "")
if (!Page.IsPostBack)
{
setInitVal();
valoreDateTime = dataOra;
@@ -32,7 +32,7 @@ public partial class mod_filtro : ApplicationUserControl
{
get
{
bool answ=false;
bool answ = false;
try
{
memLayer.ML.isInSessionObject(string.Format("valFiltro_{0}", this.ID));
@@ -40,7 +40,7 @@ public partial class mod_filtro : ApplicationUserControl
catch
{ }
return answ;
}
}
}
protected bool _changeCheckEnabled = true;
protected bool _changeCheckVisible = true;
@@ -76,8 +76,8 @@ public partial class mod_filtro : ApplicationUserControl
base.OnInit(e);
if (!Page.IsPostBack)
{
if (_showFiltered == "") _showFiltered = "mostraSoloSelez";
if (_showAll == "") _showAll = "mostraTutti";
if (string.IsNullOrEmpty(_showFiltered)) _showFiltered = "mostraSoloSelez";
if (string.IsNullOrEmpty(_showAll)) _showAll = "mostraTutti";
}
}
@@ -304,7 +304,7 @@ public partial class mod_filtro : ApplicationUserControl
chkFilt.Checked = true;
}
}
catch(Exception exc)
catch (Exception exc)
{
logger.lg.scriviLog(string.Format("Eccezione:{0}{1}", Environment.NewLine, exc), tipoLog.EXCEPTION);
dlFilt.SelectedIndex = 0;
@@ -376,7 +376,7 @@ public partial class mod_filtro : ApplicationUserControl
updateChkLbl();
}
}
/// <summary>
/// oggetto ODS con cui popolare il selettore, VINCOLO abbia campi value(key) / label
/// </summary>
@@ -53,7 +53,7 @@ namespace GPW_Commesse.WebUserControls
/// </summary>
private void checkUser()
{
if (user_std.UtSn.CognomeNome == "")
if (string.IsNullOrEmpty(user_std.UtSn.CognomeNome))
{
// fix
memLayer.ML.setSessionVal("preUrlString", "", true);
@@ -19,8 +19,8 @@ public partial class mod_ricercaGenerica : ApplicationUserControl
#endregion
# region area protected
#region area protected
protected override void Page_Load(object sender, EventArgs e)
{
base.Page_Load(sender, e);
@@ -64,7 +64,7 @@ public partial class mod_ricercaGenerica : ApplicationUserControl
/// </summary>
protected void salvaCerca()
{
if (testoRicerca == "")
if (string.IsNullOrEmpty(testoRicerca))
{
SteamWare.memLayer.ML.emptySessionVal("valoreCercato");
}
+1 -1
View File
@@ -14,7 +14,7 @@ namespace GPW.A4
get
{
string pagina = SteamWare.memLayer.ML.StringSessionObj("nextPage");
if (pagina == "")
if (string.IsNullOrEmpty(pagina))
{
pagina = "commesseUtente";
}
+1 -1
View File
@@ -24,7 +24,7 @@
<NuGetPackageImportStamp>
</NuGetPackageImportStamp>
<Use64BitIISExpress />
<TypeScriptToolsVersion>3.5</TypeScriptToolsVersion>
<TypeScriptToolsVersion>3.9</TypeScriptToolsVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
-3
View File
@@ -57,9 +57,6 @@
<add key="copyRight" value="SteamWare" />
<add key="CodModulo" value="GPW" />
<add key="_safePages" value="unauthorized.aspx#forceUser.aspx#login#login.aspx#test.aspx#Test.aspx" />
<!--Ottimizzazioni liberie esterne-->
<add key="EnableCdnAjax" value="false" />
<add key="EnableCdnJQ" value="false" />
<!--Gestione forzatura priam timbratura ad entrata-->
<add key="firstIsIN" value="true" />
<add key="ttlAbilitaAll" value="10" />
@@ -98,7 +98,7 @@ namespace GPW_Smart.WebUserControls
try
{
HttpCookie cookie = Request.Cookies["AuthGPW"];
if (cookie == null || cookie.Value == "")
if (cookie == null || string.IsNullOrEmpty(cookie.Value ))
{
// rimando pagina x registrazione devices
Response.Redirect("~/regNewDevice.aspx");
+1 -1
View File
@@ -26,7 +26,7 @@
</NuGetPackageImportStamp>
<TargetFrameworkProfile />
<Use64BitIISExpress />
<TypeScriptToolsVersion>3.7</TypeScriptToolsVersion>
<TypeScriptToolsVersion>3.9</TypeScriptToolsVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>