Cambios estatus de trayectos

This commit is contained in:
2021-06-01 11:02:31 -07:00
parent 8ad48a3394
commit 8252d8365b
5 changed files with 389 additions and 13 deletions

View File

@@ -644,7 +644,10 @@
}, 250);
}
function creaPoligono(coords, color, Geocerca, Estatus, InicioFin, CveEstatus, CveEstatusAnterior, cruzo) {
var geoReferenciaSeguir = '';
var estatusSiguiente = '';
function creaPoligono(coords, color, Geocerca, Estatus, InicioFin, CveEstatus, CveEstatusAnterior, cruzo, geocercaASeguir, estatusaSeguir) {
var polygon = new google.maps.Polygon({
paths: coords,
strokeColor: color,
@@ -656,6 +659,11 @@
polygon.setMap(map);
polygons.push(polygon);
if (geocercaASeguir != '') {
geoReferenciaSeguir = geocercaASeguir;
estatusSiguiente = estatusaSeguir;
}
CreaMarcadorPoligono(coords, Geocerca, Estatus, InicioFin, CveEstatus, CveEstatusAnterior, cruzo)
}
@@ -935,7 +943,7 @@
}
}
LblETA.innerText = formatETA(duracionTotal);
LblETA.innerHTML = formatETA(duracionTotal) + '<br> <b>Geocerca:</b> ' + geoReferenciaSeguir + '.<br> <b>Estatus:</b> ' + estatusSiguiente;
})
.catch((error) => {
alert('Error:' + error);

View File

@@ -50,6 +50,15 @@ Partial Class GPS_TrayectoDetalle
ViewState("CveEstatusActual") = value
End Set
End Property
Private Property OrdenActual As Integer
Get
Return CType(ViewState("OrdenActual"), Integer)
End Get
Set(value As Integer)
ViewState("OrdenActual") = value
End Set
End Property
#End Region
@@ -148,6 +157,7 @@ Partial Class GPS_TrayectoDetalle
LblTitulo.Text = $"Trayecto: {RowEstatus("Trayecto")}"
LtlEstatusActual.Text = RowEstatus("Estatus").ToString()
CveEstatusActual = RowEstatus("CveEstatusActual").ToString().ToEntero()
OrdenActual = RowEstatus("OrdenActual").ToString().ToEntero()
If CBool(RowEstatus("EsFin")) Then
BtnTerminarTrayeto.Visible = False
@@ -158,7 +168,7 @@ Partial Class GPS_TrayectoDetalle
LtlDispositivo.Text = RowEstatus("Vehiculo").ToString()
LtlFechaI.Text = If(String.IsNullOrEmpty(RowEstatus("FechaInicio").ToString()), "No ha ingresado a la geocerca de inicio", String.Format("{0:dd/MM/yyyy HH:mm tt}", RowEstatus("FechaInicio").ToString().ToDateTime()))
LtlFechaF.Text = If(String.IsNullOrEmpty(RowEstatus("FechaFin").ToString()), "No ha Terminado", String.Format("{0:dd/MM/yyyy HH:mm tt}", RowEstatus("FechaFin").ToString().ToDateTime()))
LtlFechaF.Text = If(String.IsNullOrEmpty(RowEstatus("FechaFin").ToString()), "No ha terminado", String.Format("{0:dd/MM/yyyy HH:mm tt}", RowEstatus("FechaFin").ToString().ToDateTime()))
LtlVMedia.Text = String.Format("{0:N2} KM/H", RowEstatus("VMedia"))
LtlVMax.Text = String.Format("{0:N2} KM/H", RowEstatus("VMax"))
LtlTiempo.Text = String.Format("{0}", RowEstatus("TiempoOperativo"))
@@ -214,18 +224,41 @@ Partial Class GPS_TrayectoDetalle
Dim CoordAnterior As String = ""
Dim CveEstatus As Integer = -1
Dim CveEstatusAnterior As Integer = -1
Dim GeoreferenciaASeguir As String = ""
Dim EstatusSiguiente As String = ""
Dim OrdenEstatus As Integer = 0
'GEOCERCAS
For Each Row As DataRow In DtGeocercas.Rows
count += 1
Coord = SQLToGmaps(Row("Geom").ToString, "POLYGON")
CveEstatus = Row("CveEstatusTrayecto").ToString.ToEntero
CveEstatusAnterior = Row("CveEstatusAnterior").ToString.ToEntero
OrdenEstatus = Row("OrdenEstatus").ToString.ToEntero
Dim EsInicio As Boolean = CBool(IfNull(Row("EsInicio"), 0))
Dim EsFin As Boolean = CBool(IfNull(Row("EsFin"), 0))
Dim InicioFin As Integer = If(EsInicio, 1, If(EsFin, 2, 0))
Dim Cruzo As String = IfNull(Row("Cruzo"), "0").ToString()
RegistraScript($"creaPoligono({Coord}, '{Row("Color").ToString}', '{Row("GeoReferencia")}', '{Row("EstatusTrayecto")}',{InicioFin},{CveEstatus},{CveEstatusAnterior},{Cruzo})", count.ToString())
'MARCA PARA QUE NO CALCULE EL TIEMPO DE LAS GEOCERCAS RESTANTES
If Not String.IsNullOrEmpty(GeoreferenciaASeguir) Then
Cruzo = "1"
End If
'VERIFICA SI SE ACTUALIZO MANUALMENTE
If Cruzo = "0" Then
If OrdenEstatus <= OrdenActual Then
Cruzo = "1"
End If
End If
If Cruzo = "0" Then
GeoreferenciaASeguir = Row("GeoReferencia").ToString()
EstatusSiguiente = Row("EstatusTrayecto").ToString()
End If
RegistraScript($"creaPoligono({Coord}, '{Row("Color").ToString}', '{Row("GeoReferencia")}', '{Row("EstatusTrayecto")}',{InicioFin},{CveEstatus},{CveEstatusAnterior},{Cruzo},'{GeoreferenciaASeguir}','{EstatusSiguiente}')", count.ToString())
Next
End If
@@ -324,11 +357,16 @@ Partial Class GPS_TrayectoDetalle
Dim ObjGPS As New ClsGPS
Try
If ObjGPS.GetEstatusTrayectos(-1, UsuarioActual.CveCliente) Then
DtEstatus = ObjGPS.DtResultados.Copy()
Dim CveEstatusFinal As Integer = -1
If ObjGPS.GetTrayectosGeoReferencias(CveTrayecto) Then
'TOMA LA GEOCERCA FINAL
Dim Row As DataRow = ObjGPS.DtResultados.FiltroPrimero($"EsFin = True")
If Row IsNot Nothing Then
CveEstatusFinal = Row("CveEstatusTrayecto").ToString().ToEntero()
End If
End If
Dim CveEstatusFinal As Integer = DtEstatus.FiltroPrimeroValor("CveEstatusTrayecto", "EsFin = True").ToEntero()
If CveEstatusFinal > 0 Then
If ObjGPS.UpdateTrayectoEstatus(CveTrayecto, CveEstatusFinal) Then
Alert("El trayecto se finalizo correctamente", JSBtnAceptar:="RefrescarPagina();", ShowCloseButton:=False)
@@ -336,6 +374,19 @@ Partial Class GPS_TrayectoDetalle
Else
Alert("No se pudo obtener el estatus final", TipoMensaje.MsgError)
End If
'If ObjGPS.GetEstatusTrayectos(-1, UsuarioActual.CveCliente) Then
' DtEstatus = ObjGPS.DtResultados.Copy()
'End If
'Dim CveEstatusFinal As Integer = DtEstatus.FiltroPrimeroValor("CveEstatusTrayecto", "EsFin = True").ToEntero()
'If CveEstatusFinal > 0 Then
' If ObjGPS.UpdateTrayectoEstatus(CveTrayecto, CveEstatusFinal) Then
' Alert("El trayecto se finalizo correctamente", JSBtnAceptar:="RefrescarPagina();", ShowCloseButton:=False)
' End If
'Else
' Alert("No se pudo obtener el estatus final", TipoMensaje.MsgError)
'End If
Catch ex As Exception
OnError("Ocurrió un error al actualizar el trayecto", ex)
End Try

View File

@@ -322,6 +322,40 @@
<asp:RequiredFieldValidator ID="RequiredFieldValidator5" runat="server" InitialValue="-1" CssClass="help-block errorimput" ControlToValidate="DdlDispositivoNuevo" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Dispositivo''</b> es necesario, por favor ingréselo." ValidationGroup="GrpNuevo"></asp:RequiredFieldValidator>
<label for="<%= DdlDispositivoNuevo.ClientID.ToString()%>" style="width: 50%">Vehículo:</label>
</div>
<div class="form-group form-md-line-input">
Notificar:
<asp:CheckBox ID="ChkNotificarApartirDe" AutoPostBack="true" OnCheckedChanged="ChkNotificacionApartirDe_CheckedChanged" Checked="false" CssClass="md-checksd" runat="server" />
</div>
<div class="row" id="DivNotificarApartirDe" runat="server" visible="false">
<div class="col-md-12">
<div class="row">
<div class="col-md-12">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtCorreNotApartidDe" runat="server" CssClass="form-control" CausesValidation="true"></asp:TextBox>
<label for="<%= TxtCorreNotApartidDe.ClientID.ToString()%>">Correo(s):</label>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlIntervaloAPartirDe" CssClass="form-control select2me" runat="server">
<asp:ListItem Selected="True" Text="30 Min" Value="30"></asp:ListItem>
<asp:ListItem Text="60 Min" Value="60"></asp:ListItem>
<asp:ListItem Text="2 Hrs" Value="120"></asp:ListItem>
</asp:DropDownList>
<label for="<%= DdlIntervaloAPartirDe.ClientID.ToString()%>" style="width: 50%">Intervalo:</label>
</div>
</div>
<div class="col-md-6">
<div class="form-group form-md-line-input">
Enviar Liga:
<asp:CheckBox ID="ChkEnviarLigaApartirDe" Checked="false" CssClass="make-switchsd" runat="server" />
</div>
</div>
</div>
</div>
</div>
<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="TxtBusqued2a" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqued2a','{0}')", GvEstatus.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />

View File

@@ -113,8 +113,8 @@ Partial Class GPS_Trayectos
Dim ObjGPS As New ClsGPS
If ObjGPS.GetEstatusTrayectos(-1, UsuarioActual.CveCliente) Then
GvEstatus.DataSource = ObjGPS.DtResultados.FiltraParametros("CveCliente > 0")
GvEstatusNuevo.DataSource = ObjGPS.DtResultados
DdlEstatusTrayecto.DataSource = ObjGPS.DtResultados
GvEstatusNuevo.DataSource = ObjGPS.DtResultados.FiltraParametros("CveCliente > 0")
DdlEstatusTrayecto.DataSource = ObjGPS.DtResultados.FiltraParametros("CveCliente > 0")
End If
ObjGPS.Dispose()
GvEstatus.DataBind()
@@ -237,7 +237,9 @@ Partial Class GPS_Trayectos
Dim Nombre As String = TxtNombreNuevo.Text
Dim CveDispositivo As Integer = DdlDispositivoNuevo.SelectedValue.ToEntero
If CveDispositivo > 0 Then
Dim CveTrayectoNuevo As Integer = ObjGPS.AddTrayecto(Nombre, DateTime.Now, "", CveDispositivo, UsuarioActual.CveCliente)
Dim CveTrayectoNuevo As Integer = ObjGPS.AddTrayecto(Nombre, DateTime.Now, "", CveDispositivo, UsuarioActual.CveCliente, EnviarNotificacion:=ChkNotificarApartirDe.Checked,
CorreosNotificacion:=TxtCorreNotApartidDe.Text, Intervalo:=If(ChkNotificarApartirDe.Checked, DdlIntervaloAPartirDe.SelectedValue.ToEntero(), 0),
EnviarLiga:=ChkEnviarLigaApartirDe.Checked)
If CveTrayectoNuevo > 0 Then
For Each Row As GridViewRow In GvEstatusNuevo.Rows
If Row.RowType = DataControlRowType.DataRow Then
@@ -413,6 +415,10 @@ Partial Class GPS_Trayectos
DivNotificaciones.Visible = ChkNotificacion.Checked
UpAgregar.Update()
End Sub
Protected Sub ChkNotificacionApartirDe_CheckedChanged(sender As Object, e As EventArgs)
DivNotificarApartirDe.Visible = ChkNotificarApartirDe.Checked
UpDdlTrayecto.Update()
End Sub
Protected Sub LnkEnviar_Click(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)