111 lines
3.2 KiB
C#
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
|
|
}
|
|
} |