--V&A mostrar diagrama de grantt

This commit is contained in:
2024-04-11 20:03:31 -07:00
parent e48a010b43
commit 61ed328d5d
2 changed files with 723 additions and 520 deletions

View File

@@ -18,6 +18,11 @@
.miGrid {
color: white;
}
#chartdiv {
width: 100%;
height: 500px;
}
</style>
</asp:Content>
@@ -36,242 +41,264 @@
<asp:Content ID="Content4" ContentPlaceHolderID="C" runat="Server">
<asp:Panel ID="PnlGeneral" runat="server">
<ajax:TabContainer ID="Tab" runat="server" Width="100%" ActiveTabIndex="0">
<%--Calendario Tab--%>
<ajax:TabPanel ID="TabAlta" runat="server" HeaderText="Calendario">
<ContentTemplate>
<div class="portlet solid grey-cascade portlet-filter" id="idnecesaria">
<div class="portlet-title portlet-filterT smalltitle">
<div class="tools">
<asp:Button runat="server" Text="Consultar" class="btn btn-primary" OnClick="Consultar" />
<a href="javascript:;" class="expand"></a>
</div>
<div class="titlefiltros caption">
<div class="row" style="height: 32px;">
<label class="col-md-1">Tipo Vista: </label>
<div class="col-md-2">
<asp:RadioButtonList ID="RBTipoVista" runat="server" AutoPostBack="True" RepeatDirection="Horizontal">
<asp:ListItem Text="Fecha de Salida" Value="fecha" Selected="True" />
<asp:ListItem Text="Duración" Value="duracion" />
</asp:RadioButtonList>
<div class="row">
<div class="col-md-12">
<%-- Filtros --%>
<asp:UpdatePanel ID="UPFiltros" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="portlet solid grey-cascade portlet-filter">
<%-- Filtro Visible - Consulta --%>
<div class="portlet-title portlet-filterT smalltitle">
<div class="tools">
<asp:Button ID="BtnConsultar" runat="server" Text="Consultar" class="btn btn-primary" OnClick="BtnConsultar_Click" />
<a href="javascript:;" class="expand"></a>
</div>
<div class="titlefiltros caption">
<div class="row" style="height: 32px;">
<%-- Fecha Inicial --%>
<label class="col-md-1 truncate">Fecha Inicial</label>
<div class="col-md-1" style="min-width: 115px">
<div class="input-group input-sm input-small date date-picker "
data-date-format="dd/mm/yyyy"
style="width: 100px !important; padding: 0px;">
<asp:TextBox Width="80px" ID="txtFechaI" runat="server" CssClass="form-control"
MaxLength="10"></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="imgCalendario" class="btn default" Text="<i class='fa fa-calendar'></i>"
runat="server"></asp:LinkButton>
</span>
</div>
<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="txtFechaI"
Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="Calendario" TargetControlID="txtFechaI"
PopupButtonID="ImgCalendario" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
</div>
<%-- Fecha Final --%>
<label class="col-md-1 truncate">Fecha Fin</label>
<div class="col-md-1" style="min-width: 115px">
<div class="input-group input-sm input-small date date-picker" data-date-format="dd/mm/yyyy"
style="width: 100px !important; padding: 0px;">
<asp:TextBox Width="80px" ID="txtFechaF" runat="server" CssClass="form-control"
MaxLength="10"></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="imgCalendarioF" class="btn default "
Text="<i class='fa fa-calendar'></i>"
runat="server"></asp:LinkButton>
</span>
</div>
<ajax:MaskedEditExtender ID="MEEFechaF" runat="server" TargetControlID="txtFechaF"
Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="Calendario2" TargetControlID="txtFechaF"
PopupButtonID="imgCalendarioF" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
</div>
<%-- Cliente --%>
<label class="col-md-1">Cliente</label>
<div class="col-md-2">
<ADS:Dropdownlost CssClassDdl="select2me" ID="DdlCliente" Width="86%"
data-metodo="getcliente"
runat="server" DataTextField="NombreComercial" DataValueField="CveCliente"
CssStyle="width: 86%;"
UsaWebService="true" Enabled="false"></ADS:Dropdownlost>
</div>
<%-- Estatus --%>
<label class="col-md-1 ">Estatus:</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlEstatusConsulta" data-text="Todos" AppendDataBoundItems="true"
DataTextField="ContratoEstatus"
DataValueField="CveContratoEstatus" CssClass="form-control ddlFiltros input-sm select2me Widthall"
Style="width: 100%;" runat="server">
</asp:DropDownList>
</div>
</div>
</div>
</div>
</div>
<div class="portlet-body" style="display: none">
</div>
</div>
<div class="row">
<div class="col-md-12 col-sm-12">
<div class="portlet light calendar ">
<div class="tipo_vista">
<div>
<h4 class="bold ribbon-color-success">&nbsp;</h4>
</div>
<%-- Filtro Oculto --%>
<div class="portlet-body row" style="display: none">
<%-- Centro de Costos --%>
<label class="col-md-1 truncate ">Centro de Costos</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlSubProyectos" data-text="Todos" AppendDataBoundItems="true"
DataTextField="SubProyecto" DataValueField="CveSubProyecto" CssClass="form-control ddlFiltros input-sm select2me Widthall"
Style="width: 100%;" runat="server">
</asp:DropDownList>
</div>
<div class="portlet-body">
<div id="calendar">
</div>
<%-- Tipo de Unidad --%>
<label class="col-md-1 ">Tipo de Unidad</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlTipoUnidad" data-text="Todos" AppendDataBoundItems="true"
DataTextField="TipoActivoFijo" DataValueField="CveTipoActivoFijo" CssClass="form-control ddlFiltros input-sm select2me Widthall"
Style="width: 100%;" runat="server">
</asp:DropDownList>
</div>
<%-- Chofer --%>
<label class="col-md-1 ">Chofer:</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlChoferFiltro" data-text="Todos" AppendDataBoundItems="true"
DataTextField="NombreCompleto" DataValueField="CvePersonal" CssClass="form-control ddlFiltros input-sm select2me Widthall"
Style="width: 100%;" runat="server">
</asp:DropDownList>
</div>
</div>
</div>
</div>
</ContentTemplate>
</ajax:TabPanel>
<%--Contratos Tab--%>
<ajax:TabPanel ID="TabPanel1" runat="server" HeaderText="Contratos">
<ContentTemplate>
<%-- Filtros --%>
<asp:UpdatePanel ID="UPFiltros" runat="server" UpdateMode="Conditional">
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
<div class="row">
<div class="col-md-12">
<ajax:TabContainer ID="Tab" runat="server" Width="100%" ActiveTabIndex="0">
<%--Calendario Tab--%>
<ajax:TabPanel ID="TabAlta" runat="server" HeaderText="Calendario">
<ContentTemplate>
<div class="portlet solid grey-cascade portlet-filter">
<%-- Filtro Visible - Consulta --%>
<div class="portlet solid grey-cascade portlet-filter" id="idnecesaria">
<div class="portlet-title portlet-filterT smalltitle">
<div class="tools">
<asp:Button ID="BtnConsultar" runat="server" Text="Consultar" class="btn btn-primary" OnClick="BtnConsultar_Click" />
<a href="javascript:;" class="expand"></a>
</div>
<div class="titlefiltros caption">
<div class="row" style="height: 32px;">
<%-- Fecha Inicial --%>
<label class="col-md-1 truncate">Fecha Inicial</label>
<div class="col-md-1" style="min-width: 115px">
<div class="input-group input-sm input-small date date-picker "
data-date-format="dd/mm/yyyy"
style="width: 100px !important; padding: 0px;">
<asp:TextBox Width="80px" ID="txtFechaI" runat="server" CssClass="form-control"
MaxLength="10"></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="imgCalendario" class="btn default" Text="<i class='fa fa-calendar'></i>"
runat="server"></asp:LinkButton>
</span>
</div>
<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="txtFechaI"
Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left">
</ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="Calendario" TargetControlID="txtFechaI"
PopupButtonID="ImgCalendario" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
</div>
<div class="row" style="height: 32px;">
<label class="col-md-1">Tipo Vista: </label>
<div class="col-md-2">
<asp:RadioButtonList ID="RBTipoVista" runat="server" AutoPostBack="True" RepeatDirection="Horizontal">
<asp:ListItem Text="Fecha de Salida" Value="fecha" Selected="True" />
<asp:ListItem Text="Duración" Value="duracion" />
</asp:RadioButtonList>
</div>
</div>
</div>
<div class="portlet-body" style="display: none">
</div>
</div>
<div class="row">
<div class="col-md-12 col-sm-12">
<div class="portlet light calendar ">
<div class="tipo_vista">
<div>
<h4 class="bold ribbon-color-success">&nbsp;</h4>
</div>
<%-- Fecha Final --%>
<label class="col-md-1 truncate">Fecha Fin</label>
<div class="col-md-1" style="min-width: 115px">
<div class="input-group input-sm input-small date date-picker" data-date-format="dd/mm/yyyy"
style="width: 100px !important; padding: 0px;">
<asp:TextBox Width="80px" ID="txtFechaF" runat="server" CssClass="form-control"
MaxLength="10"></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="imgCalendarioF" class="btn default "
Text="<i class='fa fa-calendar'></i>"
runat="server"></asp:LinkButton>
</span>
</div>
<ajax:MaskedEditExtender ID="MEEFechaF" runat="server" TargetControlID="txtFechaF"
Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left">
</ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="Calendario2" TargetControlID="txtFechaF"
PopupButtonID="imgCalendarioF" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
</div>
<%-- Cliente --%>
<label class="col-md-1">Cliente</label>
<div class="col-md-2">
<ADS:Dropdownlost CssClassDdl="select2me" ID="DdlCliente" Width="86%"
data-metodo="getcliente"
runat="server" DataTextField="NombreComercial" DataValueField="CveCliente"
CssStyle="width: 86%;"
UsaWebService="true" Enabled="false"></ADS:Dropdownlost>
</div>
<%-- Estatus --%>
<label class="col-md-1 ">Estatus:</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlEstatusConsulta" data-text="Todos" AppendDataBoundItems="true"
DataTextField="ContratoEstatus"
DataValueField="CveContratoEstatus" CssClass="form-control ddlFiltros input-sm select2me Widthall"
Style="width: 100%;" runat="server">
</asp:DropDownList>
</div>
<div class="portlet-body">
<div id="calendar">
</div>
</div>
</div>
</div>
<%-- Filtro Oculto --%>
<div class="portlet-body row" style="display: none">
<%-- Centro de Costos --%>
<label class="col-md-1 truncate ">Centro de Costos</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlSubProyectos" data-text="Todos" AppendDataBoundItems="true"
DataTextField="SubProyecto" DataValueField="CveSubProyecto" CssClass="form-control ddlFiltros input-sm select2me Widthall"
Style="width: 100%;" runat="server">
</asp:DropDownList>
</div>
<%-- Tipo de Unidad --%>
<label class="col-md-1 ">Tipo de Unidad</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlTipoUnidad" data-text="Todos" AppendDataBoundItems="true"
DataTextField="TipoActivoFijo" DataValueField="CveTipoActivoFijo" CssClass="form-control ddlFiltros input-sm select2me Widthall"
Style="width: 100%;" runat="server">
</asp:DropDownList>
</div>
<%-- Chofer --%>
<label class="col-md-1 ">Chofer:</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlChoferFiltro" data-text="Todos" AppendDataBoundItems="true"
DataTextField="NombreCompleto" DataValueField="CvePersonal" CssClass="form-control ddlFiltros input-sm select2me Widthall"
Style="width: 100%;" runat="server">
</asp:DropDownList>
</div>
</ContentTemplate>
</ajax:TabPanel>
<%--Contratos Tab--%>
<ajax:TabPanel ID="TabPanel1" runat="server" HeaderText="Contratos">
<ContentTemplate>
<%-- Contratos --%>
<asp:UpdatePanel ID="UpTitulos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvContratos" runat="server" AutoGenerateColumns="false" EmptyDataText="No se Encontró Contrato Registrado"
CssClass="table table-striped table-hover Widthall ScrollAD mysmallbtn miGrid"
GridLines="None"
data-sort="true" DataKeyNames="CveContrato, NumeroContrato, DescripcionContrato, Ubicacion, FechaInicial, FechaFinal, CveCliente, NombreComercial, CveTipoAF, Importe, ImporteMin, ImporteMax, Observaciones, CveAF, CveChofer, CveChofer2, CveContratosEstatus, CantidadPasajeros,CveMoneda">
<Columns>
<asp:TemplateField HeaderText="Contrato">
<ItemTemplate>
<asp:HyperLink ForeColor="White" runat="server" NavigateUrl='<%# "~/Transportes/RepContratoDetalle.aspx?CveContrato=" + If(Eval("CveContrato") IsNot DBNull.Value, Eval("CveContrato").ToString(), String.Empty) %>'
Text='<%# Eval("NumeroContrato") %>'></asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="120px">
<HeaderTemplate>
Fecha<br />
Salida
</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlFechaI" runat="server" Text='<%# Eval("FechaInicial", "{0:dd/MM/yyyy HH:mm}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Viaje">
<ItemTemplate>
<asp:Literal ID="LtlDescripcionContrato" runat="server" Text='<%# Eval("DescripcionContrato") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Cliente">
<ItemTemplate>
<asp:Literal ID="LtNombreComercial" runat="server" Text='<%# Eval("NombreComercial") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Chofer">
<ItemTemplate>
<asp:Literal ID="LtlChofer" runat="server" Text='<%# Eval("NombreChofer") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Chofer2">
<ItemTemplate>
<asp:Literal ID="LtlChofer2" runat="server" Text='<%# Eval("NombreChofer2") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Unidad">
<ItemTemplate>
<asp:Literal ID="LtlAF" runat="server" Text='<%# Eval("NombreAF") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha Final" ItemStyle-Width="100px">
<HeaderTemplate>
Fecha<br />
Regreso
</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlFechaFinal" runat="server" Text='<%# Eval("FechaFinal", "{0:d}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estatus">
<ItemTemplate>
<asp:Label ID="LtlContrato" runat="server" Text='<%# Eval("ContratoEstatus") %>'>
</asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="Acciones">
<ItemTemplate>
<asp:LinkButton ID="BtnEditar" runat="server" AlternateText="Editar" OnClick="UpdateModal"
CssClass="btn btn-circle btn-xs green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</ContentTemplate>
</ajax:TabPanel>
<%--Calendario Tab--%>
<ajax:TabPanel ID="TabGrantt" runat="server" HeaderText="Cronograma">
<ContentTemplate>
<div class="row">
<div class="col-md-12 col-sm-12">
<div class="portlet light calendar ">
<div class="tipo_vista">
<div>
<h4 class="bold ribbon-color-success">&nbsp;</h4>
</div>
</div>
<div class="portlet-body">
<div id="chartdiv">
</div>
</div>
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<%-- Contratos --%>
<asp:UpdatePanel ID="UpTitulos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvContratos" runat="server" AutoGenerateColumns="false" EmptyDataText="No se Encontró Contrato Registrado"
CssClass="table table-striped table-hover Widthall ScrollAD mysmallbtn miGrid"
GridLines="None"
data-sort="true" DataKeyNames="CveContrato, NumeroContrato, DescripcionContrato, Ubicacion, FechaInicial, FechaFinal, CveCliente, NombreComercial, CveTipoAF, Importe, ImporteMin, ImporteMax, Observaciones, CveAF, CveChofer, CveChofer2, CveContratosEstatus, CantidadPasajeros,CveMoneda">
<Columns>
<asp:TemplateField HeaderText="Contrato">
<ItemTemplate>
<asp:HyperLink ForeColor="White" runat="server" NavigateUrl='<%# "~/Transportes/RepContratoDetalle.aspx?CveContrato=" + If(Eval("CveContrato") IsNot DBNull.Value, Eval("CveContrato").ToString(), String.Empty) %>'
Text='<%# Eval("NumeroContrato") %>'></asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="120px">
<HeaderTemplate>
Fecha<br />
Salida
</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlFechaI" runat="server" Text='<%# Eval("FechaInicial", "{0:dd/MM/yyyy HH:mm}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Viaje">
<ItemTemplate>
<asp:Literal ID="LtlDescripcionContrato" runat="server" Text='<%# Eval("DescripcionContrato") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Cliente">
<ItemTemplate>
<asp:Literal ID="LtNombreComercial" runat="server" Text='<%# Eval("NombreComercial") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Chofer">
<ItemTemplate>
<asp:Literal ID="LtlChofer" runat="server" Text='<%# Eval("NombreChofer") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Chofer2">
<ItemTemplate>
<asp:Literal ID="LtlChofer2" runat="server" Text='<%# Eval("NombreChofer2") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Unidad">
<ItemTemplate>
<asp:Literal ID="LtlAF" runat="server" Text='<%# Eval("NombreAF") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha Final" ItemStyle-Width="100px">
<HeaderTemplate>
Fecha<br />
Regreso
</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlFechaFinal" runat="server" Text='<%# Eval("FechaFinal", "{0:d}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estatus" >
<ItemTemplate>
<asp:Label ID="LtlContrato" runat="server" Text='<%# Eval("ContratoEstatus") %>'>
</asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="Acciones">
<ItemTemplate>
<asp:LinkButton ID="BtnEditar" runat="server" AlternateText="Editar" OnClick="UpdateModal"
CssClass="btn btn-circle btn-xs green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</ContentTemplate>
</ajax:TabPanel>
</ajax:TabContainer>
</ajax:TabPanel>
</ajax:TabContainer>
</div>
</div>
</asp:Panel>
<%-- Modal --%>
<div id="ModalActualizar" class="modal ADS fade" role="dialog">
@@ -290,14 +317,14 @@
<div class="row my-1">
<label class="col-md-4 bold text-primary">Folio:</label>
<div class="col-md-8">
<asp:TextBox ID="TxtFolio" runat="server" Width="100%"></asp:TextBox>
<asp:TextBox ID="TxtFolio" runat="server" Width="100%"></asp:TextBox>
</div>
</div>
<div class="row my-1">
<label class="col-md-4 bold text-primary">Numero de Pasajeros:</label>
<div class="col-md-8">
<asp:TextBox ID="TxtCantidadPasajeros" runat="server" Width="100%"></asp:TextBox>
<asp:TextBox ID="TxtCantidadPasajeros" runat="server" Width="100%"></asp:TextBox>
</div>
</div>
@@ -314,7 +341,7 @@
<label class="col-md-4">Servicio:</label>
<div class="col-md-8">
<asp:TextBox ID="TxtDescripcion" runat="server" Width="100%" TextMode="MultiLine"
Rows="2" ></asp:TextBox>
Rows="2"></asp:TextBox>
</div>
</div>
@@ -322,14 +349,14 @@
<label class="col-md-4">Observaciones:</label>
<div class="col-md-8">
<asp:TextBox ID="TxtObservaciones" runat="server" Width="100%" TextMode="MultiLine"
Rows="2" ></asp:TextBox>
Rows="2"></asp:TextBox>
</div>
</div>
<div class="row my-1">
<label class="col-md-4">Lugar de Salida:</label>
<div class="col-md-8">
<asp:TextBox ID="TxtUbicacion" runat="server" Width="100%"></asp:TextBox>
<asp:TextBox ID="TxtUbicacion" runat="server" Width="100%"></asp:TextBox>
</div>
</div>
@@ -337,7 +364,7 @@
<label class="col-md-4">Fecha Salida:</label>
<div class="col-md-8">
<asp:TextBox ID="TxtFechaSalida" runat="server" CssClass="form-control"
Width="100%"></asp:TextBox>
Width="100%"></asp:TextBox>
</div>
</div>
@@ -346,7 +373,7 @@
<label class="col-md-4">Fecha Regreso:</label>
<div class="col-md-8">
<asp:TextBox ID="TxtFechaRegreso" runat="server" CssClass="form-control"
Width="100%"></asp:TextBox>
Width="100%"></asp:TextBox>
</div>
</div>
@@ -454,7 +481,148 @@
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="JS" runat="Server">
<script src="https://cdn.amcharts.com/lib/5/index.js"></script>
<script src="https://cdn.amcharts.com/lib/5/xy.js"></script>
<script src="https://cdn.amcharts.com/lib/5/themes/Animated.js"></script>
<script>
function cargaDiagramaGrant(data, categorias) {
am5.ready(function () {
// Create root element
// https://www.amcharts.com/docs/v5/getting-started/#Root_element
var root = am5.Root.new("chartdiv");
root.dateFormatter.setAll({
dateFormat: "dd/MM/yyyy HH:mm",
dateFields: ["valueX", "openValueX"]
});
var am5locales_es_ES = {
"Jan": "Enero",
"Feb": "Febrero",
"Mar": "Marzo",
"Apr": "Abril",
"May": "Mayo",
"Jun": "Junio",
"Jul": "Julio",
"Aug": "Agosto",
"Sep": "Septiembre",
"Oct": "Octubre",
"Nov": "Noviembre",
"Dec": "Diciembre",
"January": "Enero",
"February": "Febrero",
"March": "Marzo",
"April": "Abril",
"May": "Mayo",
"June": "Junio",
"July": "Julio",
"August": "Agosto",
"September": "Septiembre",
"October": "Octubre",
"November": "Noviembre",
"December": "Diciembre",
}
//root.language.setTranslationsAny({
// "January!": "¡Hola!",
// "Bye": "Adios"
//});
root.locale = am5locales_es_ES;
// Set themes
// https://www.amcharts.com/docs/v5/concepts/themes/
root.setThemes([
am5themes_Animated.new(root)
]);
// Create chart
// https://www.amcharts.com/docs/v5/charts/xy-chart/
var chart = root.container.children.push(am5xy.XYChart.new(root, {
panX: false,
panY: false,
wheelX: "panX",
wheelY: "zoomX",
layout: root.verticalLayout,
paddingLeft: 0
}));
// Add legend
// https://www.amcharts.com/docs/v5/charts/xy-chart/legend-xy-series/
var legend = chart.children.push(am5.Legend.new(root, {
centerX: am5.p50,
x: am5.p50
}))
var colors = chart.get("colors");
// Create axes
// https://www.amcharts.com/docs/v5/charts/xy-chart/axes/
var yAxis = chart.yAxes.push(
am5xy.CategoryAxis.new(root, {
categoryField: "category",
renderer: am5xy.AxisRendererY.new(root, {
inversed: true,
minorGridEnabled: true
}),
tooltip: am5.Tooltip.new(root, {
themeTags: ["axis"],
animationDuration: 200
})
})
);
yAxis.data.setAll(categorias);
var xAxis = chart.xAxes.push(
am5xy.DateAxis.new(root, {
baseInterval: { timeUnit: "minute", count: 1 },
renderer: am5xy.AxisRendererX.new(root, {
minorGridEnabled: true,
minGridDistance: 90
})
})
);
// Add series
// https://www.amcharts.com/docs/v5/charts/xy-chart/series/
var series = chart.series.push(am5xy.ColumnSeries.new(root, {
xAxis: xAxis,
yAxis: yAxis,
openValueXField: "fromDate",
valueXField: "toDate",
categoryYField: "category",
sequencedInterpolation: true
}));
series.columns.template.setAll({
templateField: "columnSettings",
strokeOpacity: 0,
tooltipText: "{category}: {openValueX} - {valueX}"
});
series.data.processor = am5.DataProcessor.new(root, {
dateFields: ["fromDate", "toDate"],
dateFormat: "yyyy-MM-dd HH:mm"
});
series.data.setAll(data);
// Add scrollbars
chart.set("scrollbarX", am5.Scrollbar.new(root, {
orientation: "horizontal"
}));
// Make stuff animate on load
// https://www.amcharts.com/docs/v5/concepts/animations/
series.appear();
chart.appear(1000, 100);
}); // end am5.ready()
}
var PrimeraCargaCalendario = true;
var currentUpdateEvent;
var addStartDate;

View File

@@ -5,6 +5,8 @@ Imports ADSNetLibrary.SIGAPI.Helpers
Imports Extensiones.ModExtensiones
Imports GemBox.Spreadsheet
Imports Microsoft.Reporting.WebForms
Imports Newtonsoft.Json.Linq
Partial Class RepContratosCalendario
Inherits ClsPaginas
@@ -29,8 +31,6 @@ Partial Class RepContratosCalendario
#End Region
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
txtFechaI.Text = DateTime.Now.AddMonths(-1).ToShortDateString
txtFechaF.Text = DateTime.Now.AddDays(7).ToShortDateString
@@ -39,7 +39,6 @@ Partial Class RepContratosCalendario
CargaDatos()
End If
InicializaCalendar()
End Sub
Private Sub CargaDatos()
Dim ObjContratos As New ClsContratos
@@ -49,16 +48,56 @@ Partial Class RepContratosCalendario
If CveCliente = 0 Then CveCliente = -1
If ObjContratos.GetContratosReporte(UsuarioActual.CveEmpresa, txtFechaI.Text.ToDate, txtFechaF.Text.ToDate, DdlCliente.SelectedValue.ToEntero, CveSubProyecto:=DdlSubProyectos.SelectedValue.ToEntero, CveEstatus:=DdlEstatusConsulta.SelectedValue.ToEntero, CveTipoContrato:=34) Then
GvContratos.DataSource = ObjContratos.DtResultados
DtAvance = ObjContratos.DtResultados.Copy()
End If
DtAvance = ObjContratos.DtResultados
GvContratos.DataSource = DtAvance
ObjContratos.Dispose()
GvContratos.DataBind()
UpTitulos.Update()
CargaCronograma()
End Sub
Private Sub CargaCronograma()
If DtAvance IsNot Nothing Then
For Each Row As DataRow In DtAvance.Rows
If String.IsNullOrEmpty(Row("NombreAF").ToString()) Then
Row("NombreAF") = "Unidad no asignada"
End If
Next
Dim jsonData As New JArray()
Dim jsonCategorias As New JArray()
Dim random = New Random()
'DATOS
For Each Row As DataRow In DtAvance.FiltraParametros("NombreAF <> ''").Rows
Dim obj As New JObject(
New JProperty("category", Row("NombreAF")),
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("columnSettings", New JObject(
New JProperty("fill", String.Format("#{0:X6}", random.Next(16777216)))
))
)
jsonData.Add(obj)
Next
'CATEGORIAS
For Each Row As DataRow In DtAvance.FiltraParametros("NombreAF <> ''", "", {"NombreAF"}).Rows
Dim obj As New JObject(
New JProperty("category", Row("NombreAF"))
)
jsonCategorias.Add(obj)
Next
RegistraScript($"cargaDiagramaGrant({jsonData.ToString()},{jsonCategorias.ToString()});", "A1")
End If
End Sub
Private Sub InicializaCalendar()
RegistraScript("InitCalendar();")
DirectCast(Master.FindControl("TSM"), ScriptManager).EnablePageMethods = True
End Sub
@@ -158,10 +197,6 @@ Partial Class RepContratosCalendario
UpModal.Update()
RegistraScript("$('#ModalActualizar').modal('show');")
End Sub
Protected Sub Consultar(sender As Object, e As EventArgs)
End Sub
Protected Sub LnkExcel_Click(sender As Object, e As EventArgs) Handles LnkExcel.Click
GvContratos.ExportToExcel("ReporteCompras" & NowADS().ToShortDateString)
End Sub