Fix selezione periodo che non permette editing oltre 2 week
This commit is contained in:
@@ -9,9 +9,6 @@
|
||||
<%@ Register Src="~/WebUserControls/cmp_rilTemp.ascx" TagPrefix="uc2" TagName="cmp_rilTemp" %>
|
||||
<%@ Register Src="~/WebUserControls/cmp_chart.ascx" TagPrefix="uc2" TagName="cmp_chart" %>
|
||||
|
||||
|
||||
|
||||
|
||||
<asp:HiddenField runat="server" ID="hfDataFrom" />
|
||||
<asp:HiddenField runat="server" ID="hfDataTo" />
|
||||
|
||||
@@ -164,4 +161,4 @@
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -16,44 +16,25 @@ namespace GPW_Commesse.WebUserControls
|
||||
/// elenco giornate e resoconto
|
||||
/// </summary>
|
||||
elenco,
|
||||
|
||||
/// <summary>
|
||||
/// edit timbrature attivo
|
||||
/// </summary>
|
||||
editTimb,
|
||||
|
||||
/// <summary>
|
||||
/// edit Registro Attività attivo
|
||||
/// </summary>
|
||||
editRegAtt,
|
||||
|
||||
/// <summary>
|
||||
/// edit Rilievo Temperatura attivo
|
||||
/// </summary>
|
||||
editRilTemp
|
||||
}
|
||||
|
||||
public partial class mod_commUtLog : BaseUserControl
|
||||
{
|
||||
/// <summary>
|
||||
/// Determina se visualizzare entrambe le schede...
|
||||
/// </summary>
|
||||
protected bool openBoth
|
||||
{
|
||||
get
|
||||
{
|
||||
return cmp_toggle.toggleValue;
|
||||
}
|
||||
}
|
||||
public string cssClassProgetti
|
||||
{
|
||||
get
|
||||
{
|
||||
string answ = "";
|
||||
if (openBoth)
|
||||
{
|
||||
answ = " d-inline-block text-truncate";
|
||||
}
|
||||
return answ;
|
||||
}
|
||||
}
|
||||
|
||||
public modoCommesse activeMode
|
||||
{
|
||||
get
|
||||
@@ -72,205 +53,20 @@ namespace GPW_Commesse.WebUserControls
|
||||
memLayer.ML.setSessionVal("activeModeComm", value);
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// Avvio pagina
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
|
||||
public string cssClassProgetti
|
||||
{
|
||||
memLayer.ML.setSessionVal("maxErrMin", memLayer.ML.confReadInt("maxErrMin"));
|
||||
memLayer.ML.setSessionVal("maxErrPlus", memLayer.ML.confReadInt("maxErrPlus"));
|
||||
if (!Page.IsPostBack)
|
||||
get
|
||||
{
|
||||
activeMode = modoCommesse.elenco;
|
||||
intervalloDate periodo = new intervalloDate();
|
||||
periodo.fine = DateTime.Now.AddDays(1);
|
||||
periodo.inizio = periodo.fine.AddDays(memLayer.ML.confReadInt("defDayFrom"));
|
||||
mod_periodoAnalisi1.intervalloAnalisi = periodo;
|
||||
// salvo link in HF
|
||||
hfDataFrom.Value = periodo.inizio.ToString();
|
||||
hfDataTo.Value = periodo.fine.ToString();
|
||||
// imposto modo tag cloud
|
||||
string modoTC = memLayer.ML.confReadString("TagCloudMode");
|
||||
switch (modoTC)
|
||||
{
|
||||
case "elenco":
|
||||
mod_TagCloudProgetti1.modo = TagCloudMode.elenco;
|
||||
break;
|
||||
case "elencoCPF":
|
||||
mod_TagCloudProgetti1.modo = TagCloudMode.elencoCPF;
|
||||
break;
|
||||
case "piramide":
|
||||
mod_TagCloudProgetti1.modo = TagCloudMode.piramide;
|
||||
break;
|
||||
case "standard":
|
||||
default:
|
||||
mod_TagCloudProgetti1.modo = TagCloudMode.standard;
|
||||
break;
|
||||
}
|
||||
}
|
||||
showPanels();
|
||||
grView.DataBind();
|
||||
mod_commUtMancTimbr1.eh_nuovoValore += new EventHandler(mod_commUtMancTimbr1_eh_nuovoValore);
|
||||
mod_commAttivitaDesk1.eh_nuovoValore += new EventHandler(mod_commAttivitaDesk1_eh_nuovoValore);
|
||||
mod_TagCloudProgetti1.eh_newVal += new EventHandler(mod_TagCloudProgetti1_eh_newVal);
|
||||
mod_TagCloudProgetti1.eh_refresh += mod_TagCloudProgetti1_eh_refresh;
|
||||
mod_periodoAnalisi1.eh_doUpdate += mod_periodoAnalisi1_eh_doUpdate;
|
||||
cmp_toggle.ehToggle += Cmp_toggle_ehToggle;
|
||||
cmp_rilTemp.ehCancel += cmp_rilTemp_ehCancel;
|
||||
cmp_rilTemp.ehSave += cmp_rilTemp_ehSave;
|
||||
}
|
||||
|
||||
private void cmp_rilTemp_ehSave(object sender, EventArgs e)
|
||||
{
|
||||
activeMode = modoCommesse.elenco;
|
||||
showPanels();
|
||||
}
|
||||
|
||||
private void cmp_rilTemp_ehCancel(object sender, EventArgs e)
|
||||
{
|
||||
activeMode = modoCommesse.elenco;
|
||||
showPanels();
|
||||
grView.SelectedIndex = -1;
|
||||
grView.DataBind();
|
||||
}
|
||||
|
||||
private void Cmp_toggle_ehToggle(object sender, EventArgs e)
|
||||
{
|
||||
showPanels();
|
||||
}
|
||||
|
||||
void mod_TagCloudProgetti1_eh_refresh(object sender, EventArgs e)
|
||||
{
|
||||
mod_commAttivitaDesk1.doUpdate();
|
||||
grView.DataBind();
|
||||
}
|
||||
|
||||
void mod_periodoAnalisi1_eh_doUpdate(object sender, EventArgs e)
|
||||
{
|
||||
// 2016.04.07: salvo intervallo nei 2 hidden field
|
||||
hfDataFrom.Value = mod_periodoAnalisi1.intervalloAnalisi.inizio.ToString();
|
||||
hfDataTo.Value = mod_periodoAnalisi1.intervalloAnalisi.fine.ToString();
|
||||
// update
|
||||
mod_commAttivitaDesk1.doUpdate();
|
||||
grView.DataBind();
|
||||
}
|
||||
|
||||
void mod_TagCloudProgetti1_eh_newVal(object sender, EventArgs e)
|
||||
{
|
||||
mod_commAttivitaDesk1.doUpdate();
|
||||
grView.DataBind();
|
||||
}
|
||||
|
||||
void mod_commAttivitaDesk1_eh_nuovoValore(object sender, EventArgs e)
|
||||
{
|
||||
mod_TagCloudProgetti1.doUpdate();
|
||||
grView.DataBind();
|
||||
}
|
||||
|
||||
void mod_commUtMancTimbr1_eh_nuovoValore(object sender, EventArgs e)
|
||||
{
|
||||
grView.DataBind();
|
||||
}
|
||||
/// <summary>
|
||||
/// inverte valore booleano
|
||||
/// </summary>
|
||||
/// <param name="isEnt"></param>
|
||||
/// <returns></returns>
|
||||
public bool invBool(object valore)
|
||||
{
|
||||
bool answ = true;
|
||||
try
|
||||
{
|
||||
answ = !Convert.ToBoolean(valore);
|
||||
}
|
||||
catch
|
||||
{ }
|
||||
return answ;
|
||||
}
|
||||
|
||||
|
||||
private void editTemp(string dataRif)
|
||||
{
|
||||
CultureInfo ita = new CultureInfo("it-IT");
|
||||
cmp_rilTemp.dtRif = Convert.ToDateTime(dataRif, ita);
|
||||
cmp_chart.dtRif = Convert.ToDateTime(dataRif, ita);
|
||||
//salvo in sessione dati x detail timbrature
|
||||
memLayer.ML.setSessionVal("idxDip_det", DataProxy.idxDipendente);
|
||||
// imposto modalità
|
||||
activeMode = modoCommesse.editRilTemp;
|
||||
showPanels();
|
||||
}
|
||||
|
||||
|
||||
protected void lbShowTemp_Click(object sender, EventArgs e)
|
||||
{
|
||||
string dataRif = ((LinkButton)sender).CommandArgument;
|
||||
// verifico se dip sia attivo...
|
||||
if (DataProxy.currDipIsActive)
|
||||
{
|
||||
editTemp(dataRif);
|
||||
}
|
||||
}
|
||||
|
||||
private void editTimbr(string dataRif)
|
||||
{
|
||||
DateTime adesso = DateTime.Now;
|
||||
CultureInfo ita = new CultureInfo("it-IT");
|
||||
mod_commUtMancTimbr1.valoreDateTime = Convert.ToDateTime(dataRif, ita).AddHours(adesso.Hour).AddMinutes(adesso.Minute - adesso.Minute % 5);
|
||||
//salvo in sessione dati x detail timbrature
|
||||
memLayer.ML.setSessionVal("inizioDet", Convert.ToDateTime(dataRif, ita).Date);
|
||||
memLayer.ML.setSessionVal("fineDet", Convert.ToDateTime(dataRif, ita).Date.AddDays(1));
|
||||
memLayer.ML.setSessionVal("idxDip_det", DataProxy.idxDipendente);
|
||||
// imposto modalità
|
||||
activeMode = modoCommesse.editTimb;
|
||||
showPanels();
|
||||
}
|
||||
protected void lnkEditTimbr_Click(object sender, EventArgs e)
|
||||
{
|
||||
string dataRif = ((LinkButton)sender).CommandArgument;
|
||||
// verifico se dip sia attivo...
|
||||
if (DataProxy.currDipIsActive)
|
||||
{
|
||||
editTimbr(dataRif);
|
||||
// apro anche data dell'altro SE abilitato
|
||||
string answ = "";
|
||||
if (openBoth)
|
||||
{
|
||||
editCommDay(dataRif);
|
||||
answ = " d-inline-block text-truncate";
|
||||
}
|
||||
return answ;
|
||||
}
|
||||
}
|
||||
private void editCommDay(string dataRif)
|
||||
{
|
||||
CultureInfo ita = new CultureInfo("it-IT");
|
||||
mod_commAttivitaDesk1.idxDipCurr = DataProxy.idxDipendente;
|
||||
mod_commAttivitaDesk1.valoreDateTime = Convert.ToDateTime(dataRif, ita);
|
||||
mod_TagCloudProgetti1.dataRif = Convert.ToDateTime(dataRif, ita);
|
||||
//salvo in sessione dati x detail timbrature
|
||||
memLayer.ML.setSessionVal("inizioDet", Convert.ToDateTime(dataRif, ita).Date);
|
||||
memLayer.ML.setSessionVal("fineDet", Convert.ToDateTime(dataRif, ita).Date.AddDays(1));
|
||||
memLayer.ML.setSessionVal("idxDip_det", DataProxy.idxDipendente);
|
||||
// imposto modalità
|
||||
activeMode = modoCommesse.editRegAtt;
|
||||
showPanels();
|
||||
mod_commAttivitaDesk1.doUpdate();
|
||||
}
|
||||
|
||||
protected void lnkEditComm_Click(object sender, EventArgs e)
|
||||
{
|
||||
string dataRif = ((LinkButton)sender).CommandArgument;
|
||||
// verifico se dip sia attivo...
|
||||
if (DataProxy.currDipIsActive)
|
||||
{
|
||||
editCommDay(dataRif);
|
||||
// apro anche data dell'altro SE abilitato
|
||||
if (openBoth)
|
||||
{
|
||||
editTimbr(dataRif);
|
||||
}
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// indica se sia abilitato l'editing delle attività legate alle commesse e l'utente sia attivo!!!
|
||||
/// </summary>
|
||||
@@ -281,8 +77,20 @@ namespace GPW_Commesse.WebUserControls
|
||||
return memLayer.ML.confReadBool("regAttEnabled") && DataProxy.currDipIsActive;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// Determina se visualizzare entrambe le schede...
|
||||
/// </summary>
|
||||
protected bool openBoth
|
||||
{
|
||||
get
|
||||
{
|
||||
return cmp_toggle.toggleValue;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Calcola classe da permesso
|
||||
/// </summary>
|
||||
/// <param name="minPerm"></param>
|
||||
/// <returns></returns>
|
||||
@@ -295,126 +103,33 @@ namespace GPW_Commesse.WebUserControls
|
||||
}
|
||||
return answ;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// prepara tooltip permessi/straordinarie
|
||||
/// formatta la durata in ore secondo web.config (centesimale/ore:min)
|
||||
/// </summary>
|
||||
/// <param name="minStra"></param>
|
||||
/// <param name="minPerm"></param>
|
||||
/// <param name="oreCent"></param>
|
||||
/// <returns></returns>
|
||||
public string tooltipPermStra(object minStra, object minPerm)
|
||||
public string formatDurata(object oreCent)
|
||||
{
|
||||
string answ = "";
|
||||
decimal ore = 0;
|
||||
try
|
||||
{
|
||||
if (memLayer.ML.confReadBool("reviewShowOreMin"))
|
||||
{
|
||||
answ = string.Format("Straordinarie: {0} - Permessi: {1} (h:mm)", utils.formOreMin(Convert.ToDecimal(minStra) / 60), utils.formOreMin(Convert.ToDecimal(minPerm) / 60));
|
||||
}
|
||||
else
|
||||
{
|
||||
answ = string.Format("Straordinarie: {0:0.##} h - Permessi: {1:0.##} h", Convert.ToDouble(minStra) / 60, Convert.ToDouble(minPerm) / 60);
|
||||
}
|
||||
ore = Convert.ToDecimal(oreCent);
|
||||
}
|
||||
catch
|
||||
{ }
|
||||
return answ;
|
||||
}
|
||||
/// <summary>
|
||||
/// imposta visualizzazione dei pannelli opzionali laterali a seocnda del modo attivo
|
||||
/// </summary>
|
||||
protected void showPanels()
|
||||
{
|
||||
// imposto valori default
|
||||
bool commesse = false;
|
||||
bool temp = false;
|
||||
bool timbr = false;
|
||||
divDx.Attributes.Remove("class");
|
||||
divCn.Attributes.Remove("class");
|
||||
divSx.Attributes.Remove("class");
|
||||
if (openBoth)
|
||||
string answ = "";
|
||||
if (memLayer.ML.confReadBool("reviewShowOreMin"))
|
||||
{
|
||||
switch (activeMode)
|
||||
{
|
||||
case modoCommesse.editTimb:
|
||||
case modoCommesse.editRegAtt:
|
||||
commesse = true;
|
||||
timbr = true;
|
||||
divCn.Attributes.Add("class", "col-sm-6 px-1");
|
||||
divSx.Attributes.Add("class", "col-sm-2 pr-0");
|
||||
divDx.Attributes.Add("class", "col-sm-4 pl-0");
|
||||
divDx.Visible = true;
|
||||
divSx.Visible = true;
|
||||
break;
|
||||
case modoCommesse.editRilTemp:
|
||||
temp = true;
|
||||
divCn.Attributes.Add("class", "col-sm-7 col-md-8 col-lg-9");
|
||||
divSx.Attributes.Add("class", "col-sm-5 col-md-4 col-lg-3");
|
||||
divDx.Visible = false;
|
||||
divSx.Visible = true;
|
||||
break;
|
||||
case modoCommesse.elenco:
|
||||
default:
|
||||
divCn.Attributes.Add("class", "col-12");
|
||||
divDx.Visible = false;
|
||||
divSx.Visible = false;
|
||||
break;
|
||||
}
|
||||
answ = utils.formOreMin(ore);
|
||||
}
|
||||
else
|
||||
{
|
||||
switch (activeMode)
|
||||
{
|
||||
case modoCommesse.editTimb:
|
||||
timbr = true;
|
||||
divCn.Attributes.Add("class", "col-sm-7 col-md-8 col-lg-9");
|
||||
divSx.Attributes.Add("class", "col-sm-5 col-md-4 col-lg-3");
|
||||
divDx.Visible = false;
|
||||
divSx.Visible = true;
|
||||
break;
|
||||
case modoCommesse.editRilTemp:
|
||||
temp = true;
|
||||
divCn.Attributes.Add("class", "col-12");
|
||||
divDx.Visible = false;
|
||||
divSx.Visible = false;
|
||||
break;
|
||||
case modoCommesse.editRegAtt:
|
||||
commesse = true;
|
||||
divCn.Attributes.Add("class", "col-sm-6 col-md-7 col-lg-8");
|
||||
divDx.Attributes.Add("class", "col-sm-6 col-md-5 col-lg-4");
|
||||
divDx.Visible = true;
|
||||
divSx.Visible = false;
|
||||
break;
|
||||
case modoCommesse.elenco:
|
||||
default:
|
||||
divCn.Attributes.Add("class", "col-12");
|
||||
divDx.Visible = false;
|
||||
divSx.Visible = false;
|
||||
break;
|
||||
}
|
||||
answ = ore.ToString("0.00");
|
||||
}
|
||||
// fix finale!
|
||||
pnlEditCom.Visible = commesse;
|
||||
pnlEditOre.Visible = timbr;
|
||||
mod_commAttivitaDesk1.Visible = commesse;
|
||||
mod_commUtMancTimbr1.Visible = timbr;
|
||||
divRilTemp.Visible = temp;
|
||||
cmp_rilTemp.Visible = temp;
|
||||
cmp_chart.Visible = true;
|
||||
return answ;
|
||||
}
|
||||
|
||||
upMain.Update();
|
||||
upCharts.Update();
|
||||
}
|
||||
/// <summary>
|
||||
/// chiamata del button close (entrambi)
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void btnClose_Click(object sender, EventArgs e)
|
||||
{
|
||||
activeMode = modoCommesse.elenco;
|
||||
showPanels();
|
||||
grView.DataBind();
|
||||
}
|
||||
/// <summary>
|
||||
/// fornisce img x check coerenza ore timbrate e commesse
|
||||
/// </summary>
|
||||
@@ -434,47 +149,24 @@ namespace GPW_Commesse.WebUserControls
|
||||
{ }
|
||||
return answ;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// formatta stringa giustificativi
|
||||
/// inverte valore booleano
|
||||
/// </summary>
|
||||
/// <param name="_minPerm">permessi</param>
|
||||
/// <param name="_minFer">ferie</param>
|
||||
/// <param name="_minMal">malattia</param>
|
||||
/// <param name="_minFest">festività</param>
|
||||
/// <param name="_minMPP">MPP</param>
|
||||
/// <param name="isEnt"></param>
|
||||
/// <returns></returns>
|
||||
public string txtGiust(object _minPerm, object _minFer, object _minMal, object _minFest, object _minMPP, object _min104, object _minCassa)
|
||||
public bool invBool(object valore)
|
||||
{
|
||||
string answ = "";
|
||||
double minPerm = Convert.ToInt32(_minPerm);
|
||||
double minFer = Convert.ToInt32(_minFer);
|
||||
double minMal = Convert.ToInt32(_minMal);
|
||||
double minFest = Convert.ToInt32(_minFest);
|
||||
double minMpp = Convert.ToInt32(_minMPP);
|
||||
double min104 = Convert.ToInt32(_min104);
|
||||
double minCassa = Convert.ToInt32(_minCassa);
|
||||
if (memLayer.ML.confReadBool("reviewShowOreMin"))
|
||||
bool answ = true;
|
||||
try
|
||||
{
|
||||
if (minPerm > 0) answ += string.Format("{0} Pe ", utils.formOreMin(Convert.ToDecimal(minPerm / 60)));
|
||||
if (minFer > 0) answ += string.Format("{0} Fe ", utils.formOreMin(Convert.ToDecimal(minFer / 60)));
|
||||
if (minMal > 0) answ += string.Format("{0} Ma ", utils.formOreMin(Convert.ToDecimal(minMal / 60)));
|
||||
if (minFest > 0) answ += string.Format("{0} Fs ", utils.formOreMin(Convert.ToDecimal(minFest / 60)));
|
||||
if (minMpp > 0) answ += string.Format("{0} Mpp ", utils.formOreMin(Convert.ToDecimal(minMpp / 60)));
|
||||
if (min104 > 0) answ += string.Format("{0} 104 ", utils.formOreMin(Convert.ToDecimal(min104 / 60)));
|
||||
if (minCassa > 0) answ += string.Format("{0} Cassa ", utils.formOreMin(Convert.ToDecimal(minCassa / 60)));
|
||||
}
|
||||
else
|
||||
{
|
||||
if (minPerm > 0) answ += string.Format("{0:0.00} Pe ", minPerm / 60);
|
||||
if (minFer > 0) answ += string.Format("{0:0.00} Fe ", minFer / 60);
|
||||
if (minMal > 0) answ += string.Format("{0:0.00} Ma ", minMal / 60);
|
||||
if (minFest > 0) answ += string.Format("{0:0.00} Fs ", minFest / 60);
|
||||
if (minMpp > 0) answ += string.Format("{0:0.00} Mpp ", minMpp / 60);
|
||||
if (min104 > 0) answ += string.Format("{0:0.00} 104 ", min104 / 60);
|
||||
if (minCassa > 0) answ += string.Format("{0:0.00} Cassa ", minCassa / 60);
|
||||
answ = !Convert.ToBoolean(valore);
|
||||
}
|
||||
catch
|
||||
{ }
|
||||
return answ;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// formatta stringa tooltip giustificativi
|
||||
/// </summary>
|
||||
@@ -516,31 +208,363 @@ namespace GPW_Commesse.WebUserControls
|
||||
}
|
||||
return answ;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// formatta la durata in ore secondo web.config (centesimale/ore:min)
|
||||
/// prepara tooltip permessi/straordinarie
|
||||
/// </summary>
|
||||
/// <param name="oreCent"></param>
|
||||
/// <param name="minStra"></param>
|
||||
/// <param name="minPerm"></param>
|
||||
/// <returns></returns>
|
||||
public string formatDurata(object oreCent)
|
||||
public string tooltipPermStra(object minStra, object minPerm)
|
||||
{
|
||||
decimal ore = 0;
|
||||
string answ = "";
|
||||
try
|
||||
{
|
||||
ore = Convert.ToDecimal(oreCent);
|
||||
if (memLayer.ML.confReadBool("reviewShowOreMin"))
|
||||
{
|
||||
answ = string.Format("Straordinarie: {0} - Permessi: {1} (h:mm)", utils.formOreMin(Convert.ToDecimal(minStra) / 60), utils.formOreMin(Convert.ToDecimal(minPerm) / 60));
|
||||
}
|
||||
else
|
||||
{
|
||||
answ = string.Format("Straordinarie: {0:0.##} h - Permessi: {1:0.##} h", Convert.ToDouble(minStra) / 60, Convert.ToDouble(minPerm) / 60);
|
||||
}
|
||||
}
|
||||
catch
|
||||
{ }
|
||||
return answ;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// formatta stringa giustificativi
|
||||
/// </summary>
|
||||
/// <param name="_minPerm">permessi</param>
|
||||
/// <param name="_minFer">ferie</param>
|
||||
/// <param name="_minMal">malattia</param>
|
||||
/// <param name="_minFest">festività</param>
|
||||
/// <param name="_minMPP">MPP</param>
|
||||
/// <returns></returns>
|
||||
public string txtGiust(object _minPerm, object _minFer, object _minMal, object _minFest, object _minMPP, object _min104, object _minCassa)
|
||||
{
|
||||
string answ = "";
|
||||
double minPerm = Convert.ToInt32(_minPerm);
|
||||
double minFer = Convert.ToInt32(_minFer);
|
||||
double minMal = Convert.ToInt32(_minMal);
|
||||
double minFest = Convert.ToInt32(_minFest);
|
||||
double minMpp = Convert.ToInt32(_minMPP);
|
||||
double min104 = Convert.ToInt32(_min104);
|
||||
double minCassa = Convert.ToInt32(_minCassa);
|
||||
if (memLayer.ML.confReadBool("reviewShowOreMin"))
|
||||
{
|
||||
answ = utils.formOreMin(ore);
|
||||
if (minPerm > 0) answ += string.Format("{0} Pe ", utils.formOreMin(Convert.ToDecimal(minPerm / 60)));
|
||||
if (minFer > 0) answ += string.Format("{0} Fe ", utils.formOreMin(Convert.ToDecimal(minFer / 60)));
|
||||
if (minMal > 0) answ += string.Format("{0} Ma ", utils.formOreMin(Convert.ToDecimal(minMal / 60)));
|
||||
if (minFest > 0) answ += string.Format("{0} Fs ", utils.formOreMin(Convert.ToDecimal(minFest / 60)));
|
||||
if (minMpp > 0) answ += string.Format("{0} Mpp ", utils.formOreMin(Convert.ToDecimal(minMpp / 60)));
|
||||
if (min104 > 0) answ += string.Format("{0} 104 ", utils.formOreMin(Convert.ToDecimal(min104 / 60)));
|
||||
if (minCassa > 0) answ += string.Format("{0} Cassa ", utils.formOreMin(Convert.ToDecimal(minCassa / 60)));
|
||||
}
|
||||
else
|
||||
{
|
||||
answ = ore.ToString("0.00");
|
||||
if (minPerm > 0) answ += string.Format("{0:0.00} Pe ", minPerm / 60);
|
||||
if (minFer > 0) answ += string.Format("{0:0.00} Fe ", minFer / 60);
|
||||
if (minMal > 0) answ += string.Format("{0:0.00} Ma ", minMal / 60);
|
||||
if (minFest > 0) answ += string.Format("{0:0.00} Fs ", minFest / 60);
|
||||
if (minMpp > 0) answ += string.Format("{0:0.00} Mpp ", minMpp / 60);
|
||||
if (min104 > 0) answ += string.Format("{0:0.00} 104 ", min104 / 60);
|
||||
if (minCassa > 0) answ += string.Format("{0:0.00} Cassa ", minCassa / 60);
|
||||
}
|
||||
return answ;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// chiamata del button close (entrambi)
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void btnClose_Click(object sender, EventArgs e)
|
||||
{
|
||||
activeMode = modoCommesse.elenco;
|
||||
showPanels();
|
||||
grView.DataBind();
|
||||
}
|
||||
|
||||
protected void lbShowTemp_Click(object sender, EventArgs e)
|
||||
{
|
||||
string dataRif = ((LinkButton)sender).CommandArgument;
|
||||
// verifico se dip sia attivo...
|
||||
if (DataProxy.currDipIsActive)
|
||||
{
|
||||
editTemp(dataRif);
|
||||
}
|
||||
}
|
||||
|
||||
protected void lnkEditComm_Click(object sender, EventArgs e)
|
||||
{
|
||||
string dataRif = ((LinkButton)sender).CommandArgument;
|
||||
// verifico se dip sia attivo...
|
||||
if (DataProxy.currDipIsActive)
|
||||
{
|
||||
editCommDay(dataRif);
|
||||
// apro anche data dell'altro SE abilitato
|
||||
if (openBoth)
|
||||
{
|
||||
editTimbr(dataRif);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
protected void lnkEditTimbr_Click(object sender, EventArgs e)
|
||||
{
|
||||
string dataRif = ((LinkButton)sender).CommandArgument;
|
||||
// verifico se dip sia attivo...
|
||||
if (DataProxy.currDipIsActive)
|
||||
{
|
||||
editTimbr(dataRif);
|
||||
// apro anche data dell'altro SE abilitato
|
||||
if (openBoth)
|
||||
{
|
||||
editCommDay(dataRif);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Avvio pagina
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
memLayer.ML.setSessionVal("maxErrMin", memLayer.ML.confReadInt("maxErrMin"));
|
||||
memLayer.ML.setSessionVal("maxErrPlus", memLayer.ML.confReadInt("maxErrPlus"));
|
||||
if (!Page.IsPostBack)
|
||||
{
|
||||
activeMode = modoCommesse.elenco;
|
||||
intervalloDate periodo = new intervalloDate();
|
||||
periodo.fine = DateTime.Now.AddDays(1);
|
||||
periodo.inizio = periodo.fine.AddDays(memLayer.ML.confReadInt("defDayFrom"));
|
||||
mod_periodoAnalisi1.intervalloAnalisi = periodo;
|
||||
// salvo link in HF
|
||||
hfDataFrom.Value = periodo.inizio.ToString();
|
||||
hfDataTo.Value = periodo.fine.ToString();
|
||||
// imposto modo tag cloud
|
||||
string modoTC = memLayer.ML.confReadString("TagCloudMode");
|
||||
switch (modoTC)
|
||||
{
|
||||
case "elenco":
|
||||
mod_TagCloudProgetti1.modo = TagCloudMode.elenco;
|
||||
break;
|
||||
|
||||
case "elencoCPF":
|
||||
mod_TagCloudProgetti1.modo = TagCloudMode.elencoCPF;
|
||||
break;
|
||||
|
||||
case "piramide":
|
||||
mod_TagCloudProgetti1.modo = TagCloudMode.piramide;
|
||||
break;
|
||||
|
||||
case "standard":
|
||||
default:
|
||||
mod_TagCloudProgetti1.modo = TagCloudMode.standard;
|
||||
break;
|
||||
}
|
||||
}
|
||||
showPanels();
|
||||
grView.DataBind();
|
||||
mod_commUtMancTimbr1.eh_nuovoValore += new EventHandler(mod_commUtMancTimbr1_eh_nuovoValore);
|
||||
mod_commAttivitaDesk1.eh_nuovoValore += new EventHandler(mod_commAttivitaDesk1_eh_nuovoValore);
|
||||
mod_TagCloudProgetti1.eh_newVal += new EventHandler(mod_TagCloudProgetti1_eh_newVal);
|
||||
mod_TagCloudProgetti1.eh_refresh += mod_TagCloudProgetti1_eh_refresh;
|
||||
mod_periodoAnalisi1.eh_doUpdate += mod_periodoAnalisi1_eh_doUpdate;
|
||||
cmp_toggle.ehToggle += Cmp_toggle_ehToggle;
|
||||
cmp_rilTemp.ehCancel += cmp_rilTemp_ehCancel;
|
||||
cmp_rilTemp.ehSave += cmp_rilTemp_ehSave;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// imposta visualizzazione dei pannelli opzionali laterali a seocnda del modo attivo
|
||||
/// </summary>
|
||||
protected void showPanels()
|
||||
{
|
||||
// 2016.04.07: salvo intervallo nei 2 hidden field
|
||||
hfDataFrom.Value = mod_periodoAnalisi1.intervalloAnalisi.inizio.ToString();
|
||||
hfDataTo.Value = mod_periodoAnalisi1.intervalloAnalisi.fine.ToString();
|
||||
|
||||
// imposto valori default
|
||||
bool commesse = false;
|
||||
bool temp = false;
|
||||
bool timbr = false;
|
||||
divDx.Attributes.Remove("class");
|
||||
divCn.Attributes.Remove("class");
|
||||
divSx.Attributes.Remove("class");
|
||||
if (openBoth)
|
||||
{
|
||||
switch (activeMode)
|
||||
{
|
||||
case modoCommesse.editTimb:
|
||||
case modoCommesse.editRegAtt:
|
||||
commesse = true;
|
||||
timbr = true;
|
||||
divCn.Attributes.Add("class", "col-sm-6 px-1");
|
||||
divSx.Attributes.Add("class", "col-sm-2 pr-0");
|
||||
divDx.Attributes.Add("class", "col-sm-4 pl-0");
|
||||
divDx.Visible = true;
|
||||
divSx.Visible = true;
|
||||
break;
|
||||
|
||||
case modoCommesse.editRilTemp:
|
||||
temp = true;
|
||||
divCn.Attributes.Add("class", "col-sm-7 col-md-8 col-lg-9");
|
||||
divSx.Attributes.Add("class", "col-sm-5 col-md-4 col-lg-3");
|
||||
divDx.Visible = false;
|
||||
divSx.Visible = true;
|
||||
break;
|
||||
|
||||
case modoCommesse.elenco:
|
||||
default:
|
||||
divCn.Attributes.Add("class", "col-12");
|
||||
divDx.Visible = false;
|
||||
divSx.Visible = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
switch (activeMode)
|
||||
{
|
||||
case modoCommesse.editTimb:
|
||||
timbr = true;
|
||||
divCn.Attributes.Add("class", "col-sm-7 col-md-8 col-lg-9");
|
||||
divSx.Attributes.Add("class", "col-sm-5 col-md-4 col-lg-3");
|
||||
divDx.Visible = false;
|
||||
divSx.Visible = true;
|
||||
break;
|
||||
|
||||
case modoCommesse.editRilTemp:
|
||||
temp = true;
|
||||
divCn.Attributes.Add("class", "col-12");
|
||||
divDx.Visible = false;
|
||||
divSx.Visible = false;
|
||||
break;
|
||||
|
||||
case modoCommesse.editRegAtt:
|
||||
commesse = true;
|
||||
divCn.Attributes.Add("class", "col-sm-6 col-md-7 col-lg-8");
|
||||
divDx.Attributes.Add("class", "col-sm-6 col-md-5 col-lg-4");
|
||||
divDx.Visible = true;
|
||||
divSx.Visible = false;
|
||||
break;
|
||||
|
||||
case modoCommesse.elenco:
|
||||
default:
|
||||
divCn.Attributes.Add("class", "col-12");
|
||||
divDx.Visible = false;
|
||||
divSx.Visible = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
// fix finale!
|
||||
pnlEditCom.Visible = commesse;
|
||||
pnlEditOre.Visible = timbr;
|
||||
mod_commAttivitaDesk1.Visible = commesse;
|
||||
mod_commUtMancTimbr1.Visible = timbr;
|
||||
divRilTemp.Visible = temp;
|
||||
cmp_rilTemp.Visible = temp;
|
||||
cmp_chart.Visible = true;
|
||||
|
||||
upMain.Update();
|
||||
upCharts.Update();
|
||||
}
|
||||
|
||||
private void cmp_rilTemp_ehCancel(object sender, EventArgs e)
|
||||
{
|
||||
activeMode = modoCommesse.elenco;
|
||||
showPanels();
|
||||
grView.SelectedIndex = -1;
|
||||
grView.DataBind();
|
||||
}
|
||||
|
||||
private void cmp_rilTemp_ehSave(object sender, EventArgs e)
|
||||
{
|
||||
activeMode = modoCommesse.elenco;
|
||||
showPanels();
|
||||
}
|
||||
|
||||
private void Cmp_toggle_ehToggle(object sender, EventArgs e)
|
||||
{
|
||||
showPanels();
|
||||
}
|
||||
|
||||
private void editCommDay(string dataRif)
|
||||
{
|
||||
CultureInfo ita = new CultureInfo("it-IT");
|
||||
mod_commAttivitaDesk1.idxDipCurr = DataProxy.idxDipendente;
|
||||
mod_commAttivitaDesk1.valoreDateTime = Convert.ToDateTime(dataRif, ita);
|
||||
mod_TagCloudProgetti1.dataRif = Convert.ToDateTime(dataRif, ita);
|
||||
//salvo in sessione dati x detail timbrature
|
||||
memLayer.ML.setSessionVal("inizioDet", Convert.ToDateTime(dataRif, ita).Date);
|
||||
memLayer.ML.setSessionVal("fineDet", Convert.ToDateTime(dataRif, ita).Date.AddDays(1));
|
||||
memLayer.ML.setSessionVal("idxDip_det", DataProxy.idxDipendente);
|
||||
// imposto modalità
|
||||
activeMode = modoCommesse.editRegAtt;
|
||||
showPanels();
|
||||
mod_commAttivitaDesk1.doUpdate();
|
||||
}
|
||||
|
||||
private void editTemp(string dataRif)
|
||||
{
|
||||
CultureInfo ita = new CultureInfo("it-IT");
|
||||
cmp_rilTemp.dtRif = Convert.ToDateTime(dataRif, ita);
|
||||
cmp_chart.dtRif = Convert.ToDateTime(dataRif, ita);
|
||||
//salvo in sessione dati x detail timbrature
|
||||
memLayer.ML.setSessionVal("idxDip_det", DataProxy.idxDipendente);
|
||||
// imposto modalità
|
||||
activeMode = modoCommesse.editRilTemp;
|
||||
showPanels();
|
||||
}
|
||||
|
||||
private void editTimbr(string dataRif)
|
||||
{
|
||||
DateTime adesso = DateTime.Now;
|
||||
CultureInfo ita = new CultureInfo("it-IT");
|
||||
mod_commUtMancTimbr1.valoreDateTime = Convert.ToDateTime(dataRif, ita).AddHours(adesso.Hour).AddMinutes(adesso.Minute - adesso.Minute % 5);
|
||||
//salvo in sessione dati x detail timbrature
|
||||
memLayer.ML.setSessionVal("inizioDet", Convert.ToDateTime(dataRif, ita).Date);
|
||||
memLayer.ML.setSessionVal("fineDet", Convert.ToDateTime(dataRif, ita).Date.AddDays(1));
|
||||
memLayer.ML.setSessionVal("idxDip_det", DataProxy.idxDipendente);
|
||||
// imposto modalità
|
||||
activeMode = modoCommesse.editTimb;
|
||||
showPanels();
|
||||
}
|
||||
|
||||
private void mod_commAttivitaDesk1_eh_nuovoValore(object sender, EventArgs e)
|
||||
{
|
||||
mod_TagCloudProgetti1.doUpdate();
|
||||
grView.DataBind();
|
||||
}
|
||||
|
||||
private void mod_commUtMancTimbr1_eh_nuovoValore(object sender, EventArgs e)
|
||||
{
|
||||
grView.DataBind();
|
||||
}
|
||||
|
||||
private void mod_periodoAnalisi1_eh_doUpdate(object sender, EventArgs e)
|
||||
{
|
||||
// update
|
||||
mod_commAttivitaDesk1.doUpdate();
|
||||
grView.DataBind();
|
||||
}
|
||||
|
||||
private void mod_TagCloudProgetti1_eh_newVal(object sender, EventArgs e)
|
||||
{
|
||||
mod_commAttivitaDesk1.doUpdate();
|
||||
grView.DataBind();
|
||||
}
|
||||
|
||||
private void mod_TagCloudProgetti1_eh_refresh(object sender, EventArgs e)
|
||||
{
|
||||
mod_commAttivitaDesk1.doUpdate();
|
||||
grView.DataBind();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user