Web service GPS, Requiere agregar lo siguiente en el web.config:

<endpoint address="http://gps.rcontrol.com.mx/Tracking/wcf/RCService.svc"
            binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IRCService" contract="RCGPSService.IRCService" name="BasicHttpBinding_IRCService" />
This commit is contained in:
2020-06-26 21:09:32 -07:00
parent 2a460c6ab8
commit 0614b23161
14 changed files with 1001 additions and 0 deletions

View File

@@ -0,0 +1,153 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RecursoConfiableTracking.aspx.vb" Inherits="GPS_RecursoConfiableTracking" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server">
Recurso Confiable con Prestadores AVL
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel runat="server" ID="UPPImportarSaldo" RenderMode="Inline" UpdateMode="Conditional">
<ContentTemplate>
<li>
<asp:LinkButton ID="LnkAgregarTracking" runat="server" OnClick="LnkAgregarTracking_Click" Text="<i class='fa fa-truck'></i> Agregar Tracking"></asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HA" runat="Server">
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UPFiltros" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="portlet solid grey-cascade portlet-filter" style="">
<div class="portlet-title portlet-filterT smalltitle " style="">
<div class="tools">
<asp:Button ID="BtnConsultar" runat="server" Text="Consultar" OnClick="BtnConsultar_Click" class="btn btn-primary" />
</div>
<div class="titlefiltros caption" style="margin-top: -8px;">
<ul class="list-inline" style="font-size: 12px;">
<li>Vehículo:
<asp:DropDownList ID="DdlDispositivoFiltro" runat="server" Width="200px" DataTextField="Display" DataValueField="CveDispositivo" CssClass="form-control input-sm select2me">
</asp:DropDownList>
</li>
<li>Estatus:
<asp:DropDownList ID="DdlEstatus" runat="server" Width="200px" CssClass="form-control input-sm select2me">
<asp:ListItem Text="Todos" Value="-1"></asp:ListItem>
<asp:ListItem Text="Activo" Value="1"></asp:ListItem>
<asp:ListItem Text="Inactivo" Value="0"></asp:ListItem>
</asp:DropDownList>
</li>
<li>Fecha Inicio:
<div class="input-group input-sm date date-picker " data-date-format="dd/mm/yyyy hh:mm" style="display: inline-block;">
<asp:TextBox ID="txtFechaI" runat="server" CssClass="form-control input-sm ADDateTimePicker" CausesValidation="true" MaxLength="18" Width="132px "></asp:TextBox>
</div>
</li>
<li>Fecha Fin:
<div class="input-group input-sm date date-picker " data-date-format="dd/mm/yyyy" style="display: inline-block;">
<asp:TextBox ID="txtFechaF" runat="server" CssClass="form-control input-sm ADDateTimePicker" CausesValidation="true" MaxLength="18" Width="132px "></asp:TextBox>
</div>
</li>
</ul>
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<div class="row">
<div class="col-md-12">
<div class="row" style="margin-left: 0px; margin-top: 5px; margin-bottom: 5px; text-align: right" align="left">
<div style="margin-right: 15px">
<input type="text" id="TxtBusquedaG" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusquedaG','{0}')", GvDatos.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusquedaG','{0}')", GvDatos.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
</div>
<asp:UpdatePanel runat="server" ID="UpDatos" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" Style="overflow-x: auto;" GridLines="None" OnRowDeleting="GvDatos_RowDeleting" OnRowDataBound="GvDatos_RowDataBound"
DataKeyNames="CveRCTracking,CveEstatus" CssClass="table table-striped table-advance table-hover Widthall ScrollAD" data-sort="true" data-sortindex="1" AutoGenerateColumns="False" EmptyDataText="No se encontraron registros" ToolTip="Listado de Trayectos">
<Columns>
<asp:BoundField DataField="Nombre" HeaderText="Nombre del Trayecto" ItemStyle-HorizontalAlign="Left" ItemStyle-Width="20%" />
<asp:BoundField DataField="NoEconomico" HeaderText="Vehículo" ItemStyle-HorizontalAlign="Left" ItemStyle-Width="15%" />
<asp:BoundField DataField="FechaIngreso" HeaderText="Fecha Ingreso" DataFormatString="{0:dd/MM/yyyy HH:mm:ss}" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="15%" />
<asp:BoundField DataField="UsuarioIngreso" HeaderText="Usuario Ingresó" ItemStyle-HorizontalAlign="Left" ItemStyle-Width="15%" />
<asp:TemplateField HeaderText="Estatus" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="15%">
<ItemTemplate>
<asp:Label ID="LblEstatus" Text='<%# Eval("Estatus") %>' runat="server"></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="FechaCambioEstatus" HeaderText="Fecha Cambio Estatus" DataFormatString="{0:dd/MM/yyyy HH:mm:ss}" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="15%" />
<asp:BoundField DataField="UsuarioModifico" HeaderText="Usuario Modificó" ItemStyle-HorizontalAlign="Left" ItemStyle-Width="15%" />
<asp:TemplateField HeaderText="Cambiar Estatus" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="5%">
<ItemTemplate>
<asp:LinkButton ID="LnkCambiarEstatus" runat="server" OnClick="LnkCambiarEstatus_Click" CssClass="Texto" Text="<i class='fa fa-pencil-square-o'></i>" data-toggle="confirmation" data-popout="true" data-original-title="Desea cambiar el estatus?" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Comandos" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="10%">
<ItemTemplate>
<asp:LinkButton ID="imgD" runat="server" AlternateText="Eliminar" CausesValidation="False" CommandName="Delete" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="Desea eliminar el trayecto?" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
<div id="DivAgregar" class="modal ADS fade" role="dialog">
<asp:UpdatePanel runat="server" ID="UpAgregar" UpdateMode="Conditional" class="modal-dialog">
<ContentTemplate>
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
<h4 class="modal-title" id="ModalAgregarTitle" runat="server">Agregar Tracking</h4>
</div>
<div class="modal-body">
<div class="row">
<div class="col-md-12">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtNombre" runat="server" CssClass="form-control" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtNombre" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Nombre''</b> es necesario, por favor ingréselo." ValidationGroup="GrpShipment"></asp:RequiredFieldValidator>
<label for="<%= TxtNombre.ClientID.ToString()%>">Nombre:</label>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlDispositivo" DataTextField="Display" DataValueField="CveDispositivo" CssClass="form-control select2me" Style="width: 100%" runat="server" AutoPostBack="true" OnSelectedIndexChanged="DdlDispositivo_SelectedIndexChanged"></asp:DropDownList>
<asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" InitialValue="-1" CssClass="help-block errorimput" ControlToValidate="DdlDispositivo" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Dispositivo''</b> es necesario, por favor ingréselo." ValidationGroup="GrpShipment"></asp:RequiredFieldValidator>
<label for="<%= DdlDispositivo.ClientID.ToString()%>">Vehículo:</label>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtShipment" runat="server" CssClass="form-control" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVShipment" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtShipment" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Shipment''</b> es necesario, por favor ingréselo." ValidationGroup="GrpShipment"></asp:RequiredFieldValidator>
<label for="<%= TxtShipment.ClientID.ToString()%>">Shipment:</label>
</div>
</div>
</div>
</div>
<div class="modal-footer">
<asp:LinkButton ID="BtnAgregar" runat="server" Text="Agregar" OnClick="BtnAgregar_Click" CssClass="btn btn-primary" Enabled="false" ValidationGroup="GrpShipment"></asp:LinkButton>
<button data-dismiss="modal" class="btn btn-default">Cancelar</button>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

View File

@@ -0,0 +1,119 @@
Option Strict On
Option Explicit On
Imports System.Data
Imports System.IO
Imports System.Net
Imports Extensiones
Imports Microsoft.Reporting.WebForms
Imports Newtonsoft.Json.Linq
Imports System.Linq
Imports System.Net.Http
Partial Class GPS_RecursoConfiableTracking
Inherits ClsPaginas
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
CargaDatos()
End If
End Sub
Private Sub CargaDatos()
CargaDispositivos()
CargaTracking()
End Sub
Public Sub CargaDispositivos()
DdlDispositivoFiltro.DataSource = GlobalDTDispositivosUsuarios(UsuarioActual.CveCliente, UsuarioActual.CveUsuario)
DdlDispositivoFiltro.DataBind()
DdlDispositivoFiltro.Items.Insert(0, New ListItem("Todos", "-1"))
DdlDispositivo.DataSource = GlobalDTDispositivosUsuarios(UsuarioActual.CveCliente, UsuarioActual.CveUsuario).FiltraParametros("PlacasVehiculo <> ''")
DdlDispositivo.DataBind()
DdlDispositivo.Items.Insert(0, New ListItem("Seleccione", "-1"))
UpAgregar.Update()
End Sub
Private Sub CargaTracking()
Dim FechaI As DateTime = If(IsDate(txtFechaI.Text), txtFechaI.Text.ToDateTime(), MinFecha)
Dim FechaF As DateTime = If(IsDate(txtFechaF.Text), txtFechaF.Text.ToDateTime(), MaxFecha)
Dim ObjGPS As New ClsGPS
If ObjGPS.GetRCTracking(-1, DdlDispositivoFiltro.SelectedValue.ToEntero(), DdlEstatus.SelectedValue.ToEntero(), UsuarioActual.CveCliente, UsuarioActual.CveEmpresa, FechaI, FechaF) Then
GvDatos.DataSource = ObjGPS.DtResultados
End If
ObjGPS.Dispose()
GvDatos.DataBind()
UpDatos.Update()
End Sub
Protected Sub LnkAgregarTracking_Click(sender As Object, e As EventArgs)
RegistraScript("$('#DivAgregar').modal('show');")
End Sub
Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs)
CargaTracking()
End Sub
Protected Sub LnkCambiarEstatus_Click(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim CveRCTracking As Integer = GvRow.DataKey("CveRCTracking").ToEntero()
Dim Estatus As Boolean = CBool(GvRow.DataKey("CveEstatus").ToEntero())
Dim ObjGPS As New ClsGPS
If ObjGPS.UpdateRCTrackingEstatus(CveRCTracking, Not Estatus, UsuarioActual.CveUsuario) Then
Alert("El tracking fue desactivado correctamente")
Else
Alert("Ocurrió un error al actualizar el estatus", TipoMensaje.MsgError)
End If
ObjGPS.Dispose()
CargaDatos()
End Sub
Protected Sub GvDatos_RowDeleting(sender As Object, e As GridViewDeleteEventArgs)
End Sub
Protected Sub BtnAgregar_Click(sender As Object, e As EventArgs)
Dim Nombre As String = TxtNombre.Text.Trim()
Dim CveDispositivo As Integer = DdlDispositivo.SelectedValue.ToEntero()
Dim Shipment As String = TxtShipment.Text.Trim()
Dim ObjGPS As New ClsGPS
Dim CveRCTracking As Integer = ObjGPS.AddRCTracking(Nombre, CveDispositivo, Shipment, UsuarioActual.CveUsuario, UsuarioActual.CveCliente, UsuarioActual.CveEmpresa)
If CveRCTracking > 0 Then
Alert("El tracking fue agregado correctamente")
Else
Alert("Ocurrió un error el tracking", TipoMensaje.MsgError)
End If
ObjGPS.Dispose()
CargaDatos()
RegistraScript("$('#DivAgregar').modal('hide');")
End Sub
Protected Sub DdlDispositivo_SelectedIndexChanged(sender As Object, e As EventArgs)
Dim CveDispositivo As Integer = DdlDispositivo.SelectedValue.ToEntero()
Dim RowDispositivo As DataRow = GlobalDTDispositivosUsuarios(UsuarioActual.CveCliente, UsuarioActual.CveUsuario).FiltroPrimero($"CveDispositivo = {CveDispositivo}")
If RowDispositivo IsNot Nothing Then
If String.IsNullOrEmpty(RowDispositivo("PlacasVehiculo").ToString()) Then
Alert("El vehiculo no tiene placas asignadas", TipoMensaje.MsgAdvertencia)
BtnAgregar.Enabled = False
Else
BtnAgregar.Enabled = True
End If
End If
UpAgregar.Update()
End Sub
Protected Sub GvDatos_RowDataBound(sender As Object, e As GridViewRowEventArgs)
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.DBCampo("CveEstatus") = "1" Then
e.Row.FCLabel("LblEstatus").CssClass = "badge badge-success"
ElseIf e.Row.DBCampo("CveEstatus") = "0" Then
e.Row.FCLabel("LblEstatus").CssClass = "badge badge-secondary"
End If
End If
End Sub
End Class