using AppData;
using Newtonsoft.Json;
using SteamWare;
using System;
using System.Collections.Generic;
namespace NKC_WF
{
public class BaseUserControl : System.Web.UI.UserControl
{
///
/// Generico evento di richiesta refresh a aprent
///
public event EventHandler eh_doRefresh;
///
/// Generico evento di richiesta refresh a aprent
///
public event EventHandler eh_doReset;
///
/// Chiamata evento
///
public void raiseEvent()
{
// se qualcuno ascolta sollevo evento nuovo valore...
if (eh_doRefresh != null)
{
eh_doRefresh(this, new EventArgs());
}
}
///
/// Chiamata evento
///
public void raiseReset()
{
// se qualcuno ascolta sollevo evento nuovo valore...
if (eh_doReset != null)
{
eh_doReset(this, new EventArgs());
}
}
///
/// Wrapper traduzione termini
///
///
///
public string traduci(string lemma)
{
return SteamWare.user_std.UtSn.Traduci(lemma);
}
protected Dictionary anagMateriali
{
set
{
string jsonData = JsonConvert.SerializeObject(value);
memLayer.ML.setRSV("anagMateriali", jsonData, 60);
}
get
{
Dictionary answ = new Dictionary();
//cerco in redis...
string rawData = memLayer.ML.getRSV("anagMateriali");
if (!string.IsNullOrEmpty(rawData))
{
answ = JsonConvert.DeserializeObject>(rawData);
}
// sennò nel DB e salvo in redis...
else
{
var tabMat = DataLayer.man.taMat.GetData();
foreach (var item in tabMat)
{
answ.Add(item.MatID, item.MatDesc);
}
// salvo in redis
anagMateriali = answ;
}
// restituisco
return answ;
}
}
public string matByKey(object _matId)
{
string answ = "";
int matId = 0;
int.TryParse(_matId.ToString(), out matId);
try
{
answ = anagMateriali[matId];
}
catch
{ }
return answ;
}
///
/// Recupera IP utente
///
///
public string currIpAddress()
{
string userip = Request.UserHostAddress;
//if (Request.UserHostAddress != null)
//{
// Int64 macinfo = new Int64();
// string macSrc = macinfo.ToString("X");
// if (macSrc == "0")
// {
// if (userip == "127.0.0.1")
// {
// Response.Write("visited Localhost!");
// }
// else
// {
// lblIPAdd.Text = userip;
// }
// }
//}
return userip;
}
///
/// Restituisce URL immagine QRCode
///
/// Parametro da renderizzare con QRCode
///
public string getImgUrl(object QrValue)
{
string baseUrl = $"{memLayer.ML.CRS("matrixUrl")}/HOME/QR_site/JSON?val=";
string payload = "{'baseUrl':'{0}','parameters':['" + $"{QrValue}" + "']}";
string answ = $"{baseUrl}{payload}";
return answ;
}
}
}