fix gestione periodo/date

This commit is contained in:
Samuele Locatelli
2017-03-06 13:27:43 +01:00
parent 4a9b68cfea
commit dd4227bbc0
2 changed files with 3 additions and 263 deletions
+1 -1
View File
@@ -137,7 +137,7 @@ namespace XPS.WebUserControls
{
// imposto data minima a x mesi fa...
intervalloDate periodo= new intervalloDate();
periodo.fine = DateTime.Today;
periodo.fine = DateTime.Today.AddDays(1);
periodo.inizio = periodo.fine.AddMonths(-memLayer.ML.CRI("prevMonth"));
mod_periodoAnalisi.intervalloAnalisi = periodo;
}
+2 -262
View File
@@ -135,9 +135,8 @@ namespace XPS.WebUserControls
private void aggiornaPeriodo()
{
_intervallo = new intervalloDate();
_intervallo.inizio = datario.convDate(txtInizio.Text, memLayer.ML.CRS("ddMMyyyy"), memLayer.ML.CRS("culture")); // Convert.ToDateTime(txtInizio.Text);
_intervallo.fine = datario.convDate(txtFine.Text, memLayer.ML.CRS("ddMMyyyy"), memLayer.ML.CRS("culture")).Date.AddDays(1); //((DateTime)Convert.ToDateTime(txtFine.Text)).Date.AddDays(1);
//_intervallo.fine = ((DateTime)Convert.ToDateTime(txtFine.Text)).Date.AddDays(1).AddMinutes(-1);
_intervallo.inizio = datario.convDate(txtInizio.Text, memLayer.ML.CRS("ddMMyyyy"), memLayer.ML.CRS("culture"));
_intervallo.fine = datario.convDate(txtFine.Text, memLayer.ML.CRS("ddMMyyyy"), memLayer.ML.CRS("culture")).Date.AddDays(1);
intervalloAnalisi = _intervallo;
reportUpdate();
@@ -238,265 +237,6 @@ namespace XPS.WebUserControls
#endregion
#endregion
///// <summary>
///// gestione del selettore rapido dell'intervallo temporale...
///// </summary>
///// <param name="sender"></param>
///// <param name="e"></param>
//protected void ddlPeriodo_SelectedIndexChanged(object sender, EventArgs e)
//{
// // verifico cosa sia cambiato ed imposto date...
// datario _datario = new datario();
// switch (ddlPeriodo.SelectedValue)
// {
// case "15gg":
// _intervallo = _datario.ultimiGiorni(DateTime.Now, 15);
// break;
// case "30gg":
// _intervallo = _datario.ultimiGiorni(DateTime.Now, 30);
// break;
// case "2M":
// _intervallo = _datario.ultimiMesi(DateTime.Now, 2);
// break;
// case "3M":
// _intervallo = _datario.ultimiMesi(DateTime.Now, 3);
// break;
// case "6M":
// _intervallo = _datario.ultimiMesi(DateTime.Now, 6);
// break;
// case "12M":
// _intervallo = _datario.ultimiMesi(DateTime.Now, 12);
// break;
// default:
// break;
// }
// if ((intervalloAnalisi.inizio != _intervallo.inizio) || (intervalloAnalisi.fine != _intervallo.fine))
// {
// verificaCoerenzaDate();
// aggiornaDateMostrate(false);
// aggiornaPeriodo();
// }
//}
///// <summary>
///// effettua update delle date mostrate da intervallo analisi (ed eventualmente riporta update...)
///// </summary>
///// <param name="doReportUpdate"></param>
//private void aggiornaDateMostrate(bool doReportUpdate)
//{
// scriviDate();
// if (doReportUpdate)
// {
// reportUpdate();
// }
//}
///// <summary>
///// scrive nuove date in controllo
///// </summary>
//private void scriviDate()
//{
// // se intervallo non è valorizzato leggo da sessione...
// if (!_intervallo.isValid)
// {
// _intervallo = intervalloAnalisi;
// }
// txtInizio.Text = datario.convDate(txtInizio.Text, memLayer.ML.CRS("ddMMyyyy"), memLayer.ML.CRS("culture")).ToString(memLayer.ML.CRS("ddMMyyyy")); //_intervallo.inizio.ToShortDateString();// ToString("dd/MM/yyyy");
// txtFine.Text = _intervallo.fine.ToShortDateString();
//}
//private void setIntervallo()
//{
// intervalloDate _intervallo;
// try
// {
// _intervallo = (intervalloDate)Session["_intervallo"];
// }
// catch
// {
// _intervallo = new intervalloDate();
// _intervallo.fine = DateTime.Now;
// _intervallo.inizio = DateTime.Now.AddMonths(-2);
// Session["_intervallo"] = _intervallo;
// Session["_inizio"] = _intervallo.inizio;
// Session["_fine"] = _intervallo.fine;
// }
// scriviDate();
//}
//protected void Page_Load(object sender, EventArgs e)
//{
//}
//private void aggiornaPeriodo()
//{
// _intervallo = new intervalloDate();
// _intervallo.inizio = datario.convDate(txtInizio.Text, memLayer.ML.CRS("ddMMyyyy"), memLayer.ML.CRS("culture")); //Convert.ToDateTime(txtInizio.Text);
// _intervallo.fine = Convert.ToDateTime(txtFine.Text);
// verificaCoerenzaDate();
// reportUpdate();
//}
///// <summary>
///// verifica che le date dell'intervallo siano coerenti (inizio < fine)
///// </summary>
//private void verificaCoerenzaDate()
//{
// // controllo date siano coerenti (fine > inizio)...
// if (_intervallo.inizio >= _intervallo.fine)
// {
// // controllo non siano date successive ad oggi...
// if (_intervallo.fine > DateTime.Now)
// {
// _intervallo.fine = DateTime.Now;
// }
// _intervallo.inizio = _intervallo.fine.AddDays(-1);
// }
// //intervalloAnalisi = _intervallo;
// aggiornaDateMostrate(false);
//}
///// <summary>
///// evento cambio testo data inizio
///// </summary>
///// <param name="sender"></param>
///// <param name="e"></param>
//protected void txtInizio_TextChanged(object sender, EventArgs e)
//{
// // imposto il selettore a discesa...
// setPeriodoFree();
// aggiornaPeriodo();
//}
///// <summary>
///// evento cambio testo data fine
///// </summary>
///// <param name="sender"></param>
///// <param name="e"></param>
//protected void txtFine_TextChanged(object sender, EventArgs e)
//{
// // imposto il selettore a discesa...
// setPeriodoFree();
// aggiornaPeriodo();
//}
///// <summary>
///// riporta aggiornamento a controller
///// </summary>
//protected void reportUpdate()
//{
// intervalloAnalisi = _intervallo;
// // alzo l'evento d update/inserimento e ricarico cache...
// if (eh_doUpdate != null)
// {
// eh_doUpdate(this, new EventArgs());
// }
//}
//#endregion
//#region area public
//public intervalloDate intervalloAnalisi
//{
// get
// {
// return (intervalloDate)Session["_intervallo"];
// }
// set
// {
// intervalloDate interv = value;
// Session["_intervallo"] = interv;
// Session["_inizio"] = interv.inizio;
// Session["_fine"] = interv.fine;
// }
//}
///// <summary>
///// effettua update
///// </summary>
///// <param name="doReportUpdate"></param>
//public void doUpdate(bool doReportUpdate)
//{
// aggiornaDateMostrate(doReportUpdate);
//}
///// <summary>
///// imposta periodo libero di selezione
///// </summary>
//public void setPeriodoFree()
//{
// ddlPeriodo.SelectedIndex = 0;
//}
//#region gestione eventi
//public event EventHandler eh_doUpdate;
//#endregion
///// <summary>
///// effettua uno zoom 2 X sulle date attuali
///// </summary>
//public void dateZoom()
//{
// // calcolo zoom 2X
// double intervMinutiOrig = intervalloAnalisi.fine.Subtract(intervalloAnalisi.inizio).TotalMinutes;
// // leggo data in cui lo zoom era centrato...
// DateTime centroZoom = Convert.ToDateTime(memLayer.ML.objSessionObj("zoomCenter"));
// // calcolo posizione relativa zoom...
// double posizioneZoom = centroZoom.Subtract(intervalloAnalisi.inizio).TotalMinutes / intervMinutiOrig;
// // init!
// _intervallo = intervalloAnalisi;
// // verifico che azione fare
// if (posizioneZoom < 0.25) // se è nel 1/4 lascio zoom inalterato e "vado a sx" di 1/2 intervallo
// {
// if (intervMinutiOrig > 120)
// {
// _intervallo.inizio = _intervallo.inizio.AddMinutes(-intervMinutiOrig / 2.0);
// _intervallo.fine = _intervallo.fine.AddMinutes(-intervMinutiOrig / 2.0);
// }
// else
// {
// _intervallo.inizio = _intervallo.inizio.AddMinutes(-60);
// _intervallo.fine = _intervallo.fine.AddMinutes(-60);
// }
// }
// else if (posizioneZoom > 0.75) // se è nel 3/4 lascio zoom inalterato e "vado a dx"
// {
// // mi imposto al max tra spostamento di 1/2 e l'ultimo dato disponibile...
// if (intervMinutiOrig > 120)
// {
// _intervallo.fine = _intervallo.fine.AddMinutes(intervMinutiOrig / 2.0);
// if (_intervallo.fine > DateTime.Now)
// {
// _intervallo.fine = DateTime.Now;
// }
// _intervallo.inizio = _intervallo.fine.AddMinutes(-intervMinutiOrig);
// }
// else
// {
// _intervallo.inizio = _intervallo.inizio.AddMinutes(60);
// _intervallo.fine = _intervallo.fine.AddMinutes(60);
// }
// }
// else // zoom!!!
// {
// if (intervMinutiOrig > 120)
// {
// _intervallo.inizio = _intervallo.inizio.AddMinutes(intervMinutiOrig / 4.0);
// _intervallo.fine = _intervallo.fine.AddMinutes(-intervMinutiOrig / 4.0);
// }
// else // 1 ora di zoom!
// {
// _intervallo.inizio = _intervallo.inizio.Date.AddHours(_intervallo.inizio.TimeOfDay.Hours);
// _intervallo.fine = _intervallo.inizio.AddHours(1);
// }
// }
// // arrotondo all'ora...
// _intervallo.inizio = _intervallo.inizio.Date.AddHours(_intervallo.inizio.TimeOfDay.Hours);
// _intervallo.fine = _intervallo.fine.Date.AddHours(_intervallo.fine.TimeOfDay.Hours);
// // aggiorno in sessione
// intervalloAnalisi = _intervallo;
// Response.Redirect("~/DettaglioMacchina.aspx");
//}
//#endregion
}
}