Files
NKC/NKC_WF/WebUserControls/mod_ricercaGenerica.ascx.cs
Samuele E. Locatelli e60ac347aa More cleanups
2020-07-15 19:15:37 +02:00

190 lines
5.6 KiB
C#

using SteamWare;
using System;
using System.Web.UI;
namespace NKC_WF.WebUserControls
{
public partial class mod_ricercaGenerica : ApplicationUserControl
{
#region gestione eventi
public event EventHandler eh_nuovaRicerca;
#endregion
#region area protected
#region area ricerche dettaglio specifiche
protected bool _cercaMatricole = false;
protected bool _cercaUsername = false;
//protected bool _cercaManufacturer = false;
//protected bool _cercaCategorie = false;
protected bool _cercaModelli = false;
protected bool _cercaMag = false;
#endregion
protected override void Page_Load(object sender, EventArgs e)
{
base.Page_Load(sender, e);
updateText();
}
/// <summary>
/// cambiato valore in ricerca
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void txtCerca_TextChanged(object sender, EventArgs e)
{
salvaCerca();
}
/// <summary>
/// effettuato reset
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void lnkReset_Click(object sender, EventArgs e)
{
txtCerca.Text = "";
salvaCerca();
}
/// <summary>
/// pressione del button di ricerca
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnCerca_Click(object sender, EventArgs e)
{
salvaCerca();
}
/// <summary>
/// testo ricerca trimmato da spazi
/// </summary>
protected string testoRicerca
{
get
{
return txtCerca.Text.Trim();
}
set
{
txtCerca.Text = value;
}
}
protected void salvaCerca()
{
if (string.IsNullOrEmpty(testoRicerca))
{
SteamWare.memLayer.ML.emptySessionVal("valoreCercato");
SteamWare.memLayer.ML.emptySessionVal("listaMatricoleSearch");
}
else
{
SteamWare.memLayer.ML.setSessionVal("valoreCercato", testoRicerca);
// verifico ricerche accessorie
if (_cercaMatricole)
{
salvaCercaMatricole();
}
if (_cercaUsername)
{
salvaCercaUsername();
}
// raise dell'evento
if (eh_nuovaRicerca != null)
{
eh_nuovaRicerca(this, new EventArgs());
}
}
}
/// <summary>
/// ricerca utenti e salva lista matricole x SQL IN
/// </summary>
protected void salvaCercaMatricole()
{
// salvo anche l'elenco delle matricole compatibili...
DataLayer_AnagGen.UTENTEDataTable righeUtenti = DataWrap.DW.taUtente.getByRicercaNomeCognome(testoRicerca);
string listaMatricoleSearch = "";
foreach (DataLayer_AnagGen.UTENTERow riga in righeUtenti)
{
listaMatricoleSearch += string.Format("'{0}', ", riga.MATRICOLA);
}
if (listaMatricoleSearch.Length > 0)
{
listaMatricoleSearch = listaMatricoleSearch.Remove(listaMatricoleSearch.Length - 2);
}
SteamWare.memLayer.ML.setSessionVal("listaMatricoleSearch", listaMatricoleSearch);
}
/// <summary>
/// ricerca utenti e salva lista username x SQL IN
/// </summary>
protected void salvaCercaUsername()
{
// salvo anche l'elenco delle matricole compatibili...
DataLayer_AnagGen.UTENTEDataTable righeUtenti = DataWrap.DW.taUtente.getByRicercaNomeCognome(testoRicerca);
string listaUsernameSearch = "";
foreach (DataLayer_AnagGen.UTENTERow riga in righeUtenti)
{
listaUsernameSearch += string.Format("'{0}', ", riga.USER_NAME);
}
if (listaUsernameSearch.Length > 0)
{
listaUsernameSearch = listaUsernameSearch.Remove(listaUsernameSearch.Length - 2);
}
SteamWare.memLayer.ML.setSessionVal("listaUsernameSearch", listaUsernameSearch);
}
#endregion
#region area public
/// <summary>
/// aggiorna il testo cercato
/// </summary>
public void updateText()
{
if (!string.IsNullOrEmpty(memLayer.ML.StringSessionObj("valoreCercato")) && !Page.IsPostBack)
{
testoRicerca = SteamWare.memLayer.ML.StringSessionObj("valoreCercato");
}
}
/// <summary>
/// indica se generare da stringa search un elenco delle matricole corrispondenti
/// </summary>
public bool cercaMatricole
{
get
{
return _cercaMatricole;
}
set
{
_cercaMatricole = value;
}
}
/// <summary>
/// indica se generare da stringa search un elenco di username corrispondenti
/// </summary>
public bool cercaUsername
{
get
{
return _cercaUsername;
}
set
{
_cercaUsername = value;
}
}
#endregion
}
}