Files
GPW/GPW_Admin/WebUserControls/cmp_userLicense.ascx.cs
T

111 lines
3.2 KiB
C#

using GPW_data;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace GPW_Admin.WebUserControls
{
public partial class cmp_userLicense : BaseUserControl
{
#region Public Properties
public int idxDipSel
{
get
{
int answ = 0;
int.TryParse(hfIdxDip.Value, out answ);
return answ;
}
set
{
hfIdxDip.Value = $"{value}";
}
}
#endregion Public Properties
#region Protected Methods
protected void lbrRelease_Click(object sender, EventArgs e)
{
// riesegue controllo ed disattiva
DataProxy.DP.taDipendenti.updateActive(false, idxDipSel);
frmView.DataBind();
raiseReset();
}
protected void lbtActivate_Click(object sender, EventArgs e)
{
// riesegue controllo ed attiva
DataProxy.DP.taDipendenti.updateActive(true, idxDipSel);
frmView.DataBind();
raiseReset();
}
protected void Page_Load(object sender, EventArgs e)
{
}
#endregion Protected Methods
#region Public Methods
public bool canActivate(object attivo, object dtAssunzione, object dtCessazione)
{
bool answ = false;
bool isAttivo = true;
DateTime oggi = DateTime.Today;
DateTime assunto = DateTime.Today;
DateTime cessato = DateTime.Today.AddDays(1);
bool.TryParse($"{attivo}", out isAttivo);
if (!isAttivo)
{
DateTime.TryParse($"{dtAssunzione}", out assunto);
// verifica date coerenti inizio
if (oggi.Subtract(assunto).TotalDays < 365 * 60)
{
// verifica ci siano licenze...
if (licenzeGPW.checkLicenze && (licenzeGPW.licenzeAttive > licenzeGPW.utentiAttivi))
{
answ = true;
}
}
}
return answ;
}
public bool canRemove(object attivo, object dtAssunzione, object dtCessazione)
{
bool answ = false;
bool isAttivo = false;
DateTime oggi = DateTime.Today;
DateTime assunto = DateTime.Today;
DateTime cessato = DateTime.Today.AddDays(1);
bool.TryParse($"{attivo}", out isAttivo);
if (isAttivo)
{
DateTime.TryParse($"{dtAssunzione}", out assunto);
// verifica date coerenti inizio
if (oggi.Subtract(assunto).TotalDays < 365 * 60)
{
// verifica attivazione < 2 mesi
if (oggi.Subtract(assunto).TotalDays > 60)
{
// verifica sia sbloccabile la licenza (online)
// FARE !!! verifica ONLINE
answ = true;
}
}
}
return answ;
}
#endregion Public Methods
}
}