Files
gpw_next/GPW.CORE.WRKLOG/Data/MessageService.cs
T
2022-06-07 20:11:59 +02:00

202 lines
4.6 KiB
C#

using GPW.CORE.Data;
using GPW.CORE.Data.DbModels;
using System.Security.Cryptography;
using System.Text;
namespace GPW.CORE.WRKLOG.Data
{
public class MessageService
{
#region Private Fields
private string _pageIcon = "";
private string _pageName = "";
private DipendentiModel? _rigaDip;
private string _searchVal = "";
private bool showSearch;
#endregion Private Fields
#region Public Fields
public int orarioDip = 0;
#endregion Public Fields
#region Public Events
public event Action EA_HideSearch = null!;
public event Action EA_PageUpdated = null!;
public event Action EA_SearchUpdated = null!;
public event Action EA_ShowSearch = null!;
#endregion Public Events
#region Public Properties
public RegAttivitaModel? clonedRA { get; set; } = null;
/// <summary>
/// Calcola HASH del codice impiego = payload utente
/// </summary>
/// <returns></returns>
public string HashDip
{
get
{
DataValidator cDV = new DataValidator(_rigaDip);
string hash = cDV.HashDip;
return hash;
}
}
public int IdxDipendente
{
get
{
int answ = 0;
if (_rigaDip != null)
{
answ = _rigaDip.IdxDipendente;
}
return answ;
}
}
public bool IsActive
{
get
{
bool answ = false;
if (_rigaDip != null && _rigaDip.Attivo != null)
{
answ = (bool)_rigaDip.Attivo;
}
return answ;
}
}
public string PageIcon
{
get => _pageIcon;
set
{
if (_pageIcon != value)
{
_pageIcon = value;
ReportPageUpd();
}
}
}
public string PageName
{
get => _pageName;
set
{
if (_pageName != value)
{
_pageName = value;
ReportPageUpd();
}
}
}
public bool PayloadOk { get; set; } = false;
public RegAttivitaModel? recordRA { get; set; } = null;
public DipendentiModel? RigaDip
{
get => _rigaDip;
set
{
if (_rigaDip != value)
{
_rigaDip = value;
if (EA_SearchUpdated != null)
{
EA_SearchUpdated?.Invoke();
}
}
}
}
public string SearchVal
{
get => _searchVal;
set
{
if (_searchVal != value)
{
_searchVal = value;
if (EA_SearchUpdated != null)
{
EA_SearchUpdated?.Invoke();
}
}
}
}
public int selWeekNum { get; set; } = 0;
public int selYear { get; set; } = DateTime.Today.Year;
public bool ShowSearch
{
get => showSearch;
set
{
if (showSearch != value)
{
showSearch = value;
if (showSearch)
{
if (EA_ShowSearch != null)
{
EA_ShowSearch?.Invoke();
}
}
else
{
if (EA_HideSearch != null)
{
EA_HideSearch?.Invoke();
}
}
}
}
}
public DateTime targetDate { get; set; } = DateTime.Today;
#endregion Public Properties
#region Private Methods
private void ReportPageUpd()
{
if (EA_PageUpdated != null)
{
EA_PageUpdated?.Invoke();
}
}
private void ReportSearch()
{
if (EA_SearchUpdated != null)
{
EA_SearchUpdated?.Invoke();
}
}
#endregion Private Methods
}
}