diff --git a/Transportes/RepContratosCalendario.aspx b/Transportes/RepContratosCalendario.aspx index aac9025d4..e099a267b 100644 --- a/Transportes/RepContratosCalendario.aspx +++ b/Transportes/RepContratosCalendario.aspx @@ -541,6 +541,7 @@ "December": "Diciembre", }; + var dateAxis; function cargaDiagramaGrant(data, categorias, TipoVista) { @@ -564,7 +565,7 @@ // Create chart // https://www.amcharts.com/docs/v5/charts/xy-chart/ var chart = root.container.children.push(am5xy.XYChart.new(root, { - panX: false, + panX: true, panY: false, wheelX: "panX", wheelY: "zoomX", @@ -599,12 +600,14 @@ yAxis.data.setAll(categorias); - var dateAxis = am5xy.DateAxis.new(root, { + dateAxis = am5xy.DateAxis.new(root, { baseInterval: { timeUnit: "minute", count: 1 }, renderer: am5xy.AxisRendererX.new(root, { minorGridEnabled: true, minGridDistance: 90 }) + //min: new Date(2024, 6, 15).getTime(), + //max: new Date(2024, 6, 31).getTime() }); var xAxis = chart.xAxes.push( @@ -627,7 +630,7 @@ series.columns.template.setAll({ templateField: "columnSettings", strokeOpacity: 0, - tooltipText: "UNIDAD: {unidad} -- CONTRATO: {contrato} -- CÓDIGO: {category} -- DURACIÓN: {openValueX} - {valueX}" + tooltipText: "UNIDAD: {category}-{unidad} \nCONTRATO: {contrato} \nDURACIÓN: {openValueX} - {valueX}" }); series.data.processor = am5.DataProcessor.new(root, { @@ -666,7 +669,6 @@ let parametros = '&cveContrato=' + cveContrato +'&U=' + '<%= UsuarioActual.CveUsuario %>' + '&E='+ '<%= UsuarioActual.CveEmpresa %>'+ '&tipoVista=' + '<%= RBTipoVista.Text %>' + '&CveUsuarioPara:' + $('#DdlTecnico').val(); + '&CveSubProyecto:' + $('#DdlSubProyecto').val(); fetch(url + parametros).then(response => response.json()).then(json => { - console.log(json); updateEvent(json[0],null,false); }).catch(err => console.log('Solicitud fallida', err)); }); @@ -687,29 +689,25 @@ // Set it on chart's container chart.root.dom.style.height = chartHeight + "px"; - //ev.target.get("xAxis").zoomToValues(100, 200); + // ev.target.get("xAxis").zoomToValues(new Date(2024,6,15).getTime(), new Date(2024,6,20).getTime()); }); - //series.events.once("datavalidated", function(ev) { - - //}); - - //chart.events.on("ready", function () { - // dateAxis.zoomToDates( - // new Date(2024, 7, 4), - // new Date(2024, 7, 15) - // ); - //}) - //root.language.setTranslationAny("May", "Mayo"); - // Make stuff animate on load // https://www.amcharts.com/docs/v5/concepts/animations/ series.appear(); chart.appear(1000, 100); + }); // end am5.ready() } + function zoomAxis(anioI,mesI,diaI,anioF,mesF,diaF) { + setTimeout(() => { + dateAxis.zoomToDates(new Date(anioI, mesI, diaI), new Date(anioF, mesF, diaF)); + }, 1500); + + } + var PrimeraCargaCalendario = true; var currentUpdateEvent; var addStartDate; diff --git a/Transportes/RepContratosCalendario.aspx.vb b/Transportes/RepContratosCalendario.aspx.vb index c8ae56d44..beaf9c67a 100644 --- a/Transportes/RepContratosCalendario.aspx.vb +++ b/Transportes/RepContratosCalendario.aspx.vb @@ -42,8 +42,8 @@ Partial Class RepContratosCalendario Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load If Not IsPostBack Then - txtFechaI.Text = DateTime.Now.ToShortDateString - txtFechaF.Text = DateTime.Now.AddMonths(1).ToShortDateString + txtFechaI.Text = NowADS().FirstDayOfMonth.ToShortDateString() + txtFechaF.Text = GetLastDayOfMonth(NowADS()).ToShortDateString() InicializaCombos() InicializaCalendar() CargaDatos() @@ -71,6 +71,9 @@ Partial Class RepContratosCalendario End Sub + Public Shared Function GetLastDayOfMonth(ByVal dateTime As DateTime) As DateTime + Return New DateTime(dateTime.Year, dateTime.Month, DateTime.DaysInMonth(dateTime.Year, dateTime.Month)) + End Function Private Sub CargaCronograma(Optional TipoVista As Integer = -1) If DtAvance IsNot Nothing Then @@ -94,13 +97,14 @@ Partial Class RepContratosCalendario Dim obj As New JObject( New JProperty("category", Row("CodigoAF")), New JProperty("fromDate", Row("FechaInicial").ToString().ToDateTime().ToString("dd/MM/yyyy HH:mm").ToDateTime()), - New JProperty("toDate", Row("FechaFinal").ToString().ToDateTime().ToString("dd/MM/yyyy HH:mm").ToDateTime()), + New JProperty("toDate", Row("FechaFinal").ToString().ToDateTime.ToString("dd/MM/yyyy HH:mm").ToDateTime()), New JProperty("columnSettings", New JObject( New JProperty("fill", String.Format("#{0:X6}", random.Next(16777216))) )), New JProperty("unidad", Row("NombreAF")), New JProperty("cveContrato", Row("CveContrato")), - New JProperty("contrato", Row("NumeroContrato")) + New JProperty("contrato", Row("NumeroContrato")), + New JProperty("fechaFinalViaje", Row("FechaFinal").ToString().ToDateTime().ToString("dd/MM/yyyy HH:mm")) ) jsonData.Add(obj) strAF.AppendFormat("{0},", Row("CveAF")) @@ -117,8 +121,12 @@ Partial Class RepContratosCalendario ) jsonCategorias.Add(obj) Next + Dim FechaI = txtFechaI.Text.ToDateTime() + Dim FechaF = txtFechaF.Text.ToDateTime() - RegistraScript($"cargaDiagramaGrant({jsonData.ToString()},{jsonCategorias.ToString()},{TipoVista});", "A1") + Dim ScriptZoom = $"zoomAxis({FechaI.Year},{FechaI.Month - 1},{FechaI.Day},{FechaF.Year},{FechaF.Month - 1},{FechaF.Day});" + + RegistraScript($"cargaDiagramaGrant({jsonData.ToString()},{jsonCategorias.ToString()},{TipoVista});{ScriptZoom}", "A1") UPPGantt.Update() End If End Sub