Files
SIG/GPS/Soporte.aspx.vb
JORGE LUIS CAUDILLO ESPARZA c35cf91883 Commit inicial Ventas Productivo
2019-08-14 16:40:54 -07:00

396 lines
19 KiB
VB.net

Imports Extensiones
Imports System.Data
Partial Class GPS_Soporte
Inherits ClsPaginas
#Region "PROPIEDADES"
Private Property TmpDT As DataTable
Get
Return CType(ViewState("TmpDT"), DataTable)
End Get
Set(value As DataTable)
ViewState("TmpDT") = value
End Set
End Property
#End Region
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
CargaDispositivos()
End If
End Sub
Private Sub CargaDispositivos()
Dim GPS As New ClsGPS
If GPS.DispositivosGet(-1, -1, -1, UsuarioActual.CveEmpresa) AndAlso GPS.DtResultados.Rows.Count > 0 Then
DdlDispositivo.DataSource = GPS.DtResultados
DdlDispositivosLog.DataSource = GPS.DtResultados
End If
GPS.Dispose()
DdlDispositivo.DataBind()
DdlDispositivosLog.DataBind()
DdlDispositivo.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlDispositivosLog.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlClientes.DataSource = GlobalDTCliente(UsuarioActual.CveEmpresa)
DdlClientes.DataBind()
DdlClientes.Items.Insert(0, New ListItem("Todos", "-1"))
End Sub
Private Sub CargaDatos()
Dim GPS As New ClsGPS
If GPS.DispositivosGet(DdlDispositivo.SelectedValue, -1, -1) AndAlso GPS.DtResultados.Rows.Count > 0 Then
TxtIp.Text = GPS.DtResultados.Rows(0)("IP").ToString
TxtPuerto.Text = "80"
TxtAPN.Text = GPS.DtResultados.Rows(0)("APN").ToString
TxtPlanDatos.Text = GPS.DtResultados.Rows(0)("PlanDato").ToString
TxtSim.Text = GPS.DtResultados.Rows(0)("SSID").ToString
TxtNoLinea.Text = GPS.DtResultados.Rows(0)("NumeroTelefono").ToString
TxtMarca.Text = GPS.DtResultados.Rows(0)("Marca").ToString
TxtModelo.Text = GPS.DtResultados.Rows(0)("Modelo").ToString
TxtImei.Text = GPS.DtResultados.Rows(0)("IMEI").ToString
TxtSerie.Text = GPS.DtResultados.Rows(0)("Serie").ToString
TxtUnidad.Text = "SIG"
TxtCliente.Text = GPS.DtResultados.Rows(0)("Cliente").ToString
TxtEstatus.Text = If(GPS.DtResultados.Rows(0)("Estatus").ToString = "1", "Activo", "Inactivo")
TxtFechaInstalacion.Text = GPS.DtResultados.Rows(0)("FechaInstalacion").ToString
'TxtFechaReinstalacion.Text = GPS.DtResultados.Rows(0)("FechaReinstalacion").ToString
bodydatos.Visible = True
ltlSerieConsulta.Text = GPS.DtResultados.Rows(0)("Serie").ToString
Else
Alert("No se encontraron resultados con el equipo seleccionado", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
GPS.Dispose()
CargaReportes()
UpInfo.Update()
End Sub
Protected Sub BtnCargaDispositivo_Click(sender As Object, e As EventArgs) Handles BtnCargaDispositivo.Click
CargaDatos()
End Sub
Private Sub CargaReportes()
Dim GPS As New ClsGPS
RegistraScript("DeleteMarkers();")
If DdlTipoConsulta.SelectedValue = "Last" Then
If GPS.GetRepDispositivo(DdlDispositivo.SelectedValue.ToEntero, MinFecha, MaxFecha, "Top 1") Then
If GPS.DtResultados.Rows.Count > 0 Then
Dim Coord As String = SQLToGmaps(GPS.DtResultados.Rows(0)("Punto"), "POINT")
RegistraScript($"CreaMarcador({Coord},'{DdlDispositivo.SelectedItem.Text}');")
GvReportes.DataSource = GPS.DtResultados
GvVLog.DataSource = GPS.DtResultados
bodyreportes.Visible = True
Else
Alert("No se encontraron resultados con el equipo seleccionado", TipoMensaje.MsgAdvertencia)
End If
End If
ElseIf DdlTipoConsulta.SelectedValue = "Last10" Then
If GPS.GetRepDispositivo(DdlDispositivo.SelectedValue.ToEntero, MinFecha, MaxFecha, "TOP 10") Then
If GPS.DtResultados.Rows.Count > 0 Then
For Each row As DataRow In GPS.DtResultados.Rows
Dim Coord As String = SQLToGmaps(row("Punto"), "POINT")
RegistraScript($"CreaMarcador({Coord},'{DdlDispositivo.SelectedItem.Text}: {row("FechaIng").ToString}');")
Next
GvReportes.DataSource = GPS.DtResultados
GvVLog.DataSource = GPS.DtResultados
bodyreportes.Visible = True
Else
Alert("No se encontraron resultados con el equipo seleccionado", TipoMensaje.MsgAdvertencia)
End If
End If
ElseIf DdlTipoConsulta.SelectedValue = "Today" Then
If GPS.GetRepDispositivo(DdlDispositivo.SelectedValue.ToEntero, DateTime.Today.AddHours(-1), DateTime.Today.AddDays(1)) Then
If GPS.DtResultados.Rows.Count > 0 Then
For Each row As DataRow In GPS.DtResultados.Rows
Dim Coord As String = SQLToGmaps(row("Punto"), "POINT")
RegistraScript($"CreaMarcador({Coord},'{DdlDispositivo.SelectedItem.Text}: {row("FechaIng")}');")
Next
GvReportes.DataSource = GPS.DtResultados
GvVLog.DataSource = GPS.DtResultados
bodyreportes.Visible = True
Else
Alert("No se encontraron resultados con el equipo seleccionado", TipoMensaje.MsgAdvertencia)
End If
End If
ElseIf DdlTipoConsulta.SelectedValue = "Yesterday" Then
If GPS.GetRepDispositivo(DdlDispositivo.SelectedValue.ToEntero, DateTime.Today.AddDays(-1).AddHours(-1), DateTime.Today) Then
If GPS.DtResultados.Rows.Count > 0 Then
For Each row As DataRow In GPS.DtResultados.Rows
Dim Coord As String = SQLToGmaps(row("Punto"), "POINT")
RegistraScript($"CreaMarcador({Coord},'{DdlDispositivo.SelectedItem.Text}: {row("FechaIng")}');")
Next
GvReportes.DataSource = GPS.DtResultados
GvVLog.DataSource = GPS.DtResultados
bodyreportes.Visible = True
Else
Alert("No se encontraron resultados con el equipo seleccionado", TipoMensaje.MsgAdvertencia)
End If
End If
ElseIf DdlTipoConsulta.SelectedValue = "Week" Then
If GPS.GetRepDispositivo(DdlDispositivo.SelectedValue.ToEntero, DateTime.Today.AddDays(-7).AddHours(-1), DateTime.Today.AddDays(1)) Then
If GPS.DtResultados.Rows.Count > 0 Then
Dim dr As DataRow = TmpDT.NewRow
For Each row As DataRow In GPS.DtResultados.Rows
Dim Coord As String = SQLToGmaps(row("Punto"), "POINT")
RegistraScript($"CreaMarcador({Coord},'{DdlDispositivo.SelectedItem.Text}: {row("FechaIng")}');")
Next
GvReportes.DataSource = GPS.DtResultados
GvVLog.DataSource = GPS.DtResultados
bodyreportes.Visible = True
Else
Alert("No se encontraron resultados con el equipo seleccionado", TipoMensaje.MsgAdvertencia)
End If
End If
ElseIf DdlTipoConsulta.SelectedValue = "All" Then
Dim FechaI = If(txtFechaI.Text.Trim = "", MinFecha, txtFechaI.Text.Trim.ToDateTime.AddHours(-1))
Dim FechaF = If(txtFechaF.Text.Trim = "", MaxFecha, txtFechaF.Text.Trim.ToDateTime.AddDays(1))
If GPS.GetRepDispositivo(DdlDispositivo.SelectedValue.ToEntero, FechaI.AddHours(-1), FechaF.AddDays(1)) Then
If GPS.DtResultados.Rows.Count > 0 Then
Dim dr As DataRow = TmpDT.NewRow
For Each row As DataRow In GPS.DtResultados.Rows
Dim Coord As String = SQLToGmaps(row("Punto"), "POINT")
RegistraScript($"CreaMarcador({Coord},'{DdlDispositivo.SelectedItem.Text}: {row("FechaIng")}');")
Next
GvReportes.DataSource = GPS.DtResultados
GvVLog.DataSource = GPS.DtResultados
bodyreportes.Visible = True
Else
Alert("No se encontraron resultados con el equipo seleccionado", TipoMensaje.MsgAdvertencia)
End If
End If
End If
If GPS.DtResultados.Rows.Count > 0 Then
Dim CveTrama = GPS.DtResultados.Rows(0)("CveTrama").ToString.ToEntero
If GPS.RepEventosDispositivosGet(CveTrama) Then
Dim nRows As Double = (GPS.DtResultados.Rows.Count / 3)
If nRows > 0 Then
If Math.Abs(nRows Mod 1) < Double.Epsilon Then
gvH1.DataSource = GPS.DtResultados().FiltraParametros($"RowNumber <= {nRows}")
gvH2.DataSource = GPS.DtResultados().FiltraParametros($"RowNumber > {nRows} AND RowNumber <= {nRows * 2} ")
gvH3.DataSource = GPS.DtResultados().FiltraParametros($"RowNumber > {nRows * 2} AND RowNumber <= {nRows * 3} ")
Else
nRows = Math.Ceiling(nRows)
gvH1.DataSource = GPS.DtResultados().FiltraParametros($"RowNumber <= {nRows}")
gvH2.DataSource = GPS.DtResultados().FiltraParametros($"RowNumber > {nRows} AND RowNumber <= {nRows * 2} ")
gvH3.DataSource = GPS.DtResultados().FiltraParametros($"RowNumber > {nRows * 2} AND RowNumber <= {GPS.DtResultados.Rows.Count} ")
End If
Else
gvH1.DataSource = Nothing
gvH2.DataSource = Nothing
gvH3.DataSource = Nothing
gvH2.Visible = False
gvH3.Visible = False
End If
Else
gvH1.DataSource = Nothing
gvH2.DataSource = Nothing
gvH3.DataSource = Nothing
gvH2.Visible = False
gvH3.Visible = False
End If
End If
GPS.Dispose()
gvH1.DataBind()
gvH2.DataBind()
gvH3.DataBind()
GvReportes.DataBind()
GvVLog.DataBind()
UpReportes.Update()
UPVlog.Update()
upHistorico.Update()
End Sub
Private Function SQLToGmaps(CoordsSQL As String, Tipo As String) As String
Dim CoordsPoligono As String = CoordsSQL.Replace($"{Tipo}", "").Replace(")", "").Replace("(", "")
Dim CoordsPuntos() As String = CoordsPoligono.Split(","c)
Dim Var As String = ""
For Each coordenada As String In CoordsPuntos
If coordenada Is CoordsPuntos.Last Then
Dim latlng() As String = coordenada.Trim.Split(" ")
Var = $"{Var}{{lat: {latlng(1)}, lng: {latlng(0)} }}"
Else
Dim latlng() As String = coordenada.Trim.Split(" ")
Var = $"{Var}{{lat: {latlng(1)}, lng: {latlng(0)} }},"
End If
Next
Return Var
End Function
Private Sub CreaTmpDT(Opcion As String)
TmpDT = New DataTable
If Opcion = 1 Then
TmpDT.Columns.Add("Fecha", GetType(String))
TmpDT.Columns.Add("Valor", GetType(String))
TmpDT.Columns.Add("CveTrama", GetType(Integer))
ElseIf Opcion = 2 Then
TmpDT.Columns.Add("Trama", GetType(String))
TmpDT.Columns.Add("CveTrama", GetType(Integer))
End If
End Sub
Protected Sub DdlTipoConsulta_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlTipoConsulta.SelectedIndexChanged
If DdlTipoConsulta.SelectedValue = "All" Then
liFechai.Visible = True
liFechaF.Visible = True
Else
liFechai.Visible = False
liFechaF.Visible = False
End If
upDispositivo.Update()
End Sub
Protected Sub BtnCargaLog_Click(sender As Object, e As EventArgs) Handles BtnCargaLog.Click
Dim GPS As New ClsGPS
If GPS.DispositivosGet(DdlDispositivo.SelectedValue, -1, -1) AndAlso GPS.DtResultados.Rows.Count > 0 Then
ltlSerieLog.Text = GPS.DtResultados.Rows(0)("Serie").ToString
Else
Alert("No se encontraron resultados con el equipo seleccionado", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
GPS.Dispose()
CargaLog()
End Sub
Protected Sub DdlTipoConsultaLog_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlTipoConsultaLog.SelectedIndexChanged
If DdlTipoConsultaLog.SelectedValue = "All" Then
liFechaLogI.Visible = True
liFechaLogF.Visible = True
Else
liFechaLogI.Visible = False
liFechaLogF.Visible = False
End If
UpDispositivoLog.Update()
End Sub
Private Sub CargaLog()
Dim GPS As New ClsGPS
CreaTmpDT(2)
RegistraScript("DeleteMarkers();")
If DdlTipoConsultaLog.SelectedValue = "Last" Then
If GPS.GetRepDispositivo(DdlDispositivosLog.SelectedValue.ToEntero, MinFecha, MaxFecha) Then
If GPS.DtResultados.Rows.Count > 0 Then
Dim dr As DataRow = TmpDT.NewRow
dr("Trama") = GPS.DtResultados(0)("Trama").ToString
dr("CveTrama") = GPS.DtResultados(0)("CveTrama").ToString
TmpDT.Rows.Add(dr)
GVLog.DataSource = TmpDT
bodyreportes.Visible = True
Else
Alert("No se encontraron resultados con el equipo seleccionado", TipoMensaje.MsgAdvertencia)
End If
End If
ElseIf DdlTipoConsultaLog.SelectedValue = "Last10" Then
If GPS.GetRepDispositivo(DdlDispositivosLog.SelectedValue.ToEntero, MinFecha, MaxFecha) Then
If GPS.DtResultados.Rows.Count > 0 Then
Dim dr As DataRow = TmpDT.NewRow
For rowindex = 0 To 9 Step 1
dr = TmpDT.NewRow
dr("Trama") = GPS.DtResultados(rowindex)("Trama").ToString
dr("CveTrama") = GPS.DtResultados(rowindex)("CveTrama").ToString
TmpDT.Rows.Add(dr)
Next
GVLog.DataSource = TmpDT
Else
Alert("No se encontraron resultados con el equipo seleccionado", TipoMensaje.MsgAdvertencia)
End If
End If
ElseIf DdlTipoConsultaLog.SelectedValue = "Today" Then
If GPS.GetRepDispositivo(DdlDispositivosLog.SelectedValue.ToEntero, DateTime.Today.AddHours(-1), DateTime.Today.AddDays(1)) Then
If GPS.DtResultados.Rows.Count > 0 Then
Dim dr As DataRow = TmpDT.NewRow
For Each row As DataRow In GPS.DtResultados.Rows
dr = TmpDT.NewRow
dr("Trama") = row("Trama").ToString
dr("CveTrama") = row("CveTrama").ToString
TmpDT.Rows.Add(dr)
Next
GVLog.DataSource = TmpDT
Else
Alert("No se encontraron resultados con el equipo seleccionado", TipoMensaje.MsgAdvertencia)
End If
End If
ElseIf DdlTipoConsultaLog.SelectedValue = "Yesterday" Then
If GPS.GetRepDispositivo(DdlDispositivosLog.SelectedValue.ToEntero, DateTime.Today.AddDays(-1).AddHours(-1), DateTime.Today) Then
If GPS.DtResultados.Rows.Count > 0 Then
Dim dr As DataRow = TmpDT.NewRow
For Each row As DataRow In GPS.DtResultados.Rows
Dim Coord As String = SQLToGmaps(row("Punto"), "POINT")
dr = TmpDT.NewRow
dr("Trama") = row("Trama").ToString
dr("CveTrama") = row("CveTrama").ToString
TmpDT.Rows.Add(dr)
Next
GVLog.DataSource = TmpDT
Else
Alert("No se encontraron resultados con el equipo seleccionado", TipoMensaje.MsgAdvertencia)
End If
End If
ElseIf DdlTipoConsultaLog.SelectedValue = "Week" Then
If GPS.GetRepDispositivo(DdlDispositivosLog.SelectedValue.ToEntero, DateTime.Today.AddDays(-7).AddHours(-1), DateTime.Today.AddDays(1)) Then
If GPS.DtResultados.Rows.Count > 0 Then
Dim dr As DataRow = TmpDT.NewRow
For Each row As DataRow In GPS.DtResultados.Rows
dr = TmpDT.NewRow
dr("Trama") = row("Trama").ToString
dr("CveTrama") = row("CveTrama").ToString
TmpDT.Rows.Add(dr)
Next
GVLog.DataSource = TmpDT
Else
Alert("No se encontraron resultados con el equipo seleccionado", TipoMensaje.MsgAdvertencia)
End If
End If
ElseIf DdlTipoConsultaLog.SelectedValue = "All" Then
Dim FechaI = If(TxtFechaLogI.Text.Trim = "", MinFecha, TxtFechaLogI.Text.Trim.ToDateTime.AddHours(-1))
Dim FechaF = If(TxtFechaLogF.Text.Trim = "", MaxFecha, TxtFechaLogF.Text.Trim.ToDateTime.AddDays(1))
If GPS.GetRepDispositivo(DdlDispositivosLog.SelectedValue.ToEntero, FechaI, FechaF) Then
If GPS.DtResultados.Rows.Count > 0 Then
Dim dr As DataRow = TmpDT.NewRow
For Each row As DataRow In GPS.DtResultados.Rows
dr = TmpDT.NewRow
dr("Trama") = row("Trama").ToString
dr("CveTrama") = row("CveTrama").ToString
TmpDT.Rows.Add(dr)
Next
GVLog.DataSource = TmpDT
Else
GVLog.DataSource = Nothing
Alert("No se encontraron resultados con el equipo seleccionado", TipoMensaje.MsgAdvertencia)
End If
End If
End If
GPS.Dispose()
GVLog.DataBind()
UpGVLog.Update()
End Sub
Protected Sub btnAgregar_Click(sender As Object, e As EventArgs) Handles btnAgregar.Click
Dim GPS As New ClsGPS
If GPS.DispositivosGet(-1, -1, DdlClientes.SelectedValue, UsuarioActual.CveEmpresa) Then
GvConsultaM.DataSource = GPS.DtResultados
Else
GvConsultaM.DataSource = GPS.DtResultados
End If
GPS.Dispose()
GvConsultaM.DataBind()
DvConsultar.Visible = True
End Sub
End Class