--zoom a a diagrama segun filtros de fechas

This commit is contained in:
2024-07-08 14:40:33 -07:00
parent c82c104123
commit 4f5aec24f1
2 changed files with 28 additions and 22 deletions

View File

@@ -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;

View File

@@ -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