Files
SIG/Acarreos/RegistroAcarreo.aspx.vb
2023-10-09 11:55:07 -07:00

466 lines
20 KiB
VB.net

Option Explicit On
Option Strict On
Imports Extensiones
Imports System.Data
Imports System.IO
Partial Class Acarreos_EditarAcarreo
Inherits ClsPaginas
#Region " PROPIEDADES"
Private Property CveAcarreo As Integer
Get
If ViewState("CveAcarreo") Is Nothing Then
Return -1
Else
Return ViewState("CveAcarreo").ToString.ToEntero
End If
End Get
Set(value As Integer)
ViewState("CveAcarreo") = value
End Set
End Property
Private Property CveAcarreoProyecto As Integer
Get
If ViewState("CveAcarreoProyecto") Is Nothing Then
Return -1
Else
Return ViewState("CveAcarreoProyecto").ToString.ToEntero
End If
End Get
Set(value As Integer)
ViewState("CveAcarreoProyecto") = value
End Set
End Property
Private Property CveSubProyectoOrigen As Integer
Get
If ViewState("CveSubProyectoOrigen") Is Nothing Then
Return -1
Else
Return ViewState("CveSubProyectoOrigen").ToString.ToEntero
End If
End Get
Set(value As Integer)
ViewState("CveSubProyectoOrigen") = value
End Set
End Property
Private Property CveSubProyectoDestino As Integer
Get
If ViewState("CveSubProyectoDestino") Is Nothing Then
Return -1
Else
Return ViewState("CveSubProyectoDestino").ToString.ToEntero
End If
End Get
Set(value As Integer)
ViewState("CveSubProyectoDestino") = value
End Set
End Property
Private Property CveEstatus As Integer
Get
If ViewState("CveEstatus") Is Nothing Then
Return -1
Else
Return ViewState("CveEstatus").ToString.ToEntero
End If
End Get
Set(value As Integer)
ViewState("CveEstatus") = value
End Set
End Property
Private Property CveTipoAcarreo As Integer
Get
If ViewState("CveTipoAcarreo") Is Nothing Then
Return -1
Else
Return ViewState("CveTipoAcarreo").ToString.ToEntero
End If
End Get
Set(value As Integer)
ViewState("CveTipoAcarreo") = value
End Set
End Property
Private Property Localizacion As String
Get
If ViewState("Localizacion") Is Nothing Then
Return "-1"
Else
Return ViewState("Localizacion").ToString
End If
End Get
Set(value As String)
ViewState("Localizacion") = value
End Set
End Property
Private Property Localizacion2 As String
Get
If ViewState("Localizacion2") Is Nothing Then
Return "-1"
Else
Return ViewState("Localizacion2").ToString
End If
End Get
Set(value As String)
ViewState("Localizacion2") = value
End Set
End Property
Private Property LocalizacionTipo1 As String
Get
If ViewState("Localizacion") Is Nothing Then
Return "-1"
Else
Return ViewState("Localizacion").ToString
End If
End Get
Set(value As String)
ViewState("Localizacion") = value
End Set
End Property
Private Property LocalizacionTipo2 As String
Get
If ViewState("Localizacion2") Is Nothing Then
Return "-1"
Else
Return ViewState("Localizacion2").ToString
End If
End Get
Set(value As String)
ViewState("Localizacion2") = value
End Set
End Property
#End Region
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
DdlTransportista.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlUnidad.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlChofer.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlMaterial.Items.Insert(0, New ListItem("Seleccione", "-1"))
CargaDdlNumContrato()
TxtFecha.Text = NowADS().AddDays(0).ToShortDateString
CargaDatos()
divEstatus.Visible = False
SetPermisos()
End If
End Sub
Private Sub SetPermisos()
If CveAcarreo > 0 Then
If Not UsuarioActual.TienePermisoProceso(188) Then
BtnAgregarAcarreo.Visible = False
End If
End If
End Sub
Private Sub CargaDatos()
Dim script As New StringBuilder
script.Append($"markers = [];")
CveAcarreo = IfNull(Request("CveAcarreo"), "-1").ToString.ToEntero
CargaGvBitacora()
BtnAgregarAcarreo.Text = "Agregar"
If CveAcarreo <> -1 Then
DdlChofer.Items.Clear()
DdlMaterial.Items.Clear()
DdlUnidad.Items.Clear()
DdlTransportista.Items.Clear()
Dim ObjAcar As New ClsAcarreos
If ObjAcar.GetAcarreo(UsuarioActual.CveEmpresa, CveAcarreo) Then
divImagenes.Visible = True
divBitacora.Visible = True
divGPS.Visible = True
Dim dr As DataRow = ObjAcar.DtResultados.Rows(0)
DdlNumContrato.SelectedValue = dr("NumContrato").ToString
If ObjAcar.GetAcarreosProyectos(-1, UsuarioActual.CveEmpresa, -1, DdlNumContrato.SelectedValue) Then
Dim drp As DataRow = ObjAcar.DtResultados.Rows(0)
CveAcarreoProyecto = drp("CveAcarreoProyecto").ToString.ToEntero
CveSubProyectoOrigen = drp("CveSubProyectoOrigen").ToString.ToEntero
CveSubProyectoDestino = drp("CveSubProyectoDestino").ToString.ToEntero
End If
If ObjAcar.GetAcarreosMaterialVolumen(CveAcarreoProyecto, UsuarioActual.CveEmpresa, -1) Then
DdlMaterial.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlMaterial.DataSource = ObjAcar.DtResultados
DdlMaterial.DataBind()
End If
If Not DdlMaterial.SelectedValue = "-1" Then
If ObjAcar.GetAcarreosMaterialVolumen(CveAcarreoProyecto, UsuarioActual.CveEmpresa, -1) Then
Dim drm As DataRow = ObjAcar.DtResultados.Rows(DdlMaterial.SelectedIndex)
TxtVolumen.Text = drm("VolumenTipo").ToString
End If
End If
If ObjAcar.GetTarifasTransportista(CveAcarreoProyecto, UsuarioActual.CveEmpresa) Then
DdlTransportista.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlTransportista.DataSource = ObjAcar.DtResultados
DdlTransportista.DataBind()
End If
If ObjAcar.GetChofer(-1, UsuarioActual.CveEmpresa, 1, DdlTransportista.SelectedValue.ToEntero) Then
DdlChofer.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlChofer.DataSource = ObjAcar.DtResultados
DdlChofer.DataBind()
End If
If ObjAcar.GetUnidad(-1, 1, UsuarioActual.CveEmpresa, DdlTransportista.SelectedValue.ToEntero) Then
DdlUnidad.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlUnidad.DataSource = ObjAcar.DtResultados
DdlUnidad.DataBind()
End If
DdlTransportista.SelectedValue = dr("CveTransportista").ToString
DdlChofer.SelectedValue = dr("CveChofer").ToString
DdlUnidad.SelectedValue = dr("CveUnidad").ToString
DdlMaterial.SelectedValue = dr("CveMaterial").ToString
TxtFolio.Text = dr("Folio").ToString
TxtKm.Text = dr("Km").ToString
TxtVolumen.Text = dr("Volumen").ToString
TxtFecha.Text = dr("Fecha").ToString
BtnAgregarAcarreo.Text = "Guardar Cambios"
CveEstatus = dr("CveEstatus").ToString.ToEntero
CveTipoAcarreo = dr("CveTipoAcarreo").ToString.ToEntero
If CveTipoAcarreo = 1 Then LocalizacionTipo1 = "Destino" Else LocalizacionTipo1 = "Origen"
If LocalizacionTipo1 = "Destino" Then LocalizacionTipo2 = "Origen" Else LocalizacionTipo2 = "Destino"
If dr("Localizacion").ToString <> Nothing Then
Localizacion = SQLToGmaps(dr("Localizacion").ToString, "POINT")
script.Append($"CreaMarcador({Localizacion},'{LocalizacionTipo1}');")
If dr("Localizacion2").ToString <> Nothing Then
Localizacion2 = SQLToGmaps(dr("Localizacion2").ToString, "POINT")
script.Append($"CreaMarcador({Localizacion2},'{LocalizacionTipo2}');")
script.Append($"calculateAndDisplayRoute({Localizacion}, {Localizacion2});")
End If
End If
If CveTipoAcarreo = 1 Then
RBDestino.Checked = True
Else
RBOrigen.Checked = True
End If
If CveEstatus = 1 Then
ChkEstatus.Checked = True
Else
ChkEstatus.Checked = False
End If
divEstatus.Visible = True
If dr("ImagenRemision").ToString <> Nothing Then
ImagenRemision.ImageUrl = String.Format("/Empresas/{0}/Acarreos/{1}", UsuarioActual.CveEmpresa, dr("ImagenRemision").ToString)
ImagenRemision.Visible = True
End If
If dr("ImagenTransporte").ToString <> Nothing Then
ImagenTransporte.ImageUrl = String.Format("/Empresas/{0}/Acarreos/{1}", UsuarioActual.CveEmpresa, dr("ImagenTransporte").ToString)
ImagenTransporte.Visible = True
End If
If dr("ImagenCarga").ToString <> Nothing Then
ImagenCarga.ImageUrl = String.Format("/Empresas/{0}/Acarreos/{1}", UsuarioActual.CveEmpresa, dr("ImagenCarga").ToString)
ImagenCarga.Visible = True
End If
End If
ObjAcar.Dispose()
Else
divEstatus.Visible = False
End If
RegistraScript(script.ToString())
End Sub
Private Sub CargaDdlNumContrato()
Dim ObjAcar As New ClsAcarreos()
If ObjAcar.GetAcarreosProyectos(-1, UsuarioActual.CveEmpresa, -1, "-1") Then
DdlNumContrato.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlNumContrato.DataSource = ObjAcar.DtResultados
DdlNumContrato.DataBind()
End If
ObjAcar.Dispose()
UpDatos.Update()
End Sub
Private Sub CargaGvBitacora()
Dim ObjGral As New ClsGenerales()
If ObjGral.GetHistorialBitacora(CveAcarreo, -1, -1, -1, -1, -1, -1, UsuarioActual.CveEmpresa) Then
GvBitacora.DataSource = ObjGral.DtResultados
GvBitacora.DataBind()
End If
ObjGral.Dispose()
UpDatos.Update()
End Sub
Private Sub BtnAgregarAcarreo_Click(sender As Object, e As EventArgs) Handles BtnAgregarAcarreo.Click
If DdlNumContrato.SelectedValue = "-1" Then
Alert("Tiene que seleccionar un contrato.", TipoMensaje.MsgInformacion)
ElseIf DdlUnidad.SelectedValue = "-1" Then
Alert("Tiene que seleccionar una unidad.", TipoMensaje.MsgInformacion)
ElseIf DdlTransportista.SelectedValue = "-1" Then
Alert("Tiene que seleccionar un transportista.", TipoMensaje.MsgInformacion)
ElseIf DdlChofer.SelectedValue = "-1" Then
Alert("Tiene que seleccionar un chofer.", TipoMensaje.MsgInformacion)
ElseIf DdlMaterial.SelectedValue = "-1" Then
Alert("Tiene que seleccionar un material.", TipoMensaje.MsgInformacion)
ElseIf RBOrigen.Checked = False And RBDestino.Checked = False Then
Alert("Tiene que seleccionar un tipo de acarreo.", TipoMensaje.MsgInformacion)
Else
Dim ObjAcar As New ClsAcarreos
Dim Estatus = 0
Dim Folio As Integer
Dim TipoAcarreo As Integer
If ChkEstatus.Checked Then Estatus = 1
If RBOrigen.Checked Then TipoAcarreo = 0
If RBDestino.Checked Then TipoAcarreo = 1
If CveAcarreo = -1 Then
If ObjAcar.AddAcarreo(DdlUnidad.SelectedValue.ToEntero, DdlChofer.SelectedValue.ToEntero, TxtFolio.Text.ToEntero, TxtFecha.Text.ToDate, CveSubProyectoOrigen, TxtVolumen.Text.ToDouble, 1, TipoAcarreo, UsuarioActual.CveEmpresa, CveSubProyectoDestino, DdlMaterial.SelectedValue.ToEntero, TxtKm.Text.ToDouble, UsuarioActual.CveUsuario, "", "", "", "0", "0", CveAcarreoProyecto) Then
Folio = ObjAcar._Folio
Alert("Agregado Correctamente con el folio: " + Folio.ToString + ".", TipoMensaje.MsgInformacion)
TxtFecha.Text = ""
TxtVolumen.Text = ""
TxtKm.Text = ""
TxtFolio.Text = ""
DdlChofer.Items.Clear()
DdlMaterial.Items.Clear()
DdlUnidad.Items.Clear()
DdlTransportista.Items.Clear()
RBDestino.Checked = False
RBOrigen.Checked = False
TxtFecha.Text = NowADS().AddDays(0).ToShortDateString
DdlNumContrato.SelectedIndex = -1
DdlTransportista.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlUnidad.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlChofer.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlMaterial.Items.Insert(0, New ListItem("Seleccione", "-1"))
End If
Else
If ObjAcar.UpdateAcarreo(CveAcarreo, DdlUnidad.SelectedValue.ToEntero, DdlChofer.SelectedValue.ToEntero, TxtFolio.Text.ToEntero, TxtFecha.Text.ToDate, CveSubProyectoOrigen, TxtVolumen.Text.ToDouble, Estatus, TipoAcarreo, CveSubProyectoDestino, DdlMaterial.SelectedValue.ToEntero, TxtKm.Text.ToDouble, UsuarioActual.CveUsuario, CveAcarreoProyecto) Then
Alert("Actualizado Correctamente.", TipoMensaje.MsgInformacion)
CargaGvBitacora()
End If
End If
ObjAcar.Dispose()
UpDatos.Update()
End If
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(CType(" ", Char()))
Var = $"{Var}{{lat: {latlng(1)}, lng: {latlng(0)} }}"
Else
Dim latlng() As String = coordenada.Trim.Split(CType(" ", Char()))
Var = $"{Var}{{lat: {latlng(1)}, lng: {latlng(0)} }},"
End If
Next
Return Var
End Function
Private Sub DdlNumContrato_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlNumContrato.SelectedIndexChanged
If DdlNumContrato.SelectedValue = "-1" Then
DdlMaterial.Items.Clear()
DdlChofer.Items.Clear()
DdlTransportista.Items.Clear()
DdlUnidad.Items.Clear()
TxtVolumen.Text = ""
DdlTransportista.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlUnidad.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlChofer.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlMaterial.Items.Insert(0, New ListItem("Seleccione", "-1"))
Else
DdlMaterial.Items.Clear()
DdlChofer.Items.Clear()
DdlTransportista.Items.Clear()
DdlUnidad.Items.Clear()
TxtVolumen.Text = ""
Dim ObjAcar As New ClsAcarreos()
If ObjAcar.GetAcarreosProyectos(-1, UsuarioActual.CveEmpresa, -1, DdlNumContrato.SelectedValue) Then
Dim dr As DataRow = ObjAcar.DtResultados.Rows(0)
CveAcarreoProyecto = dr("CveAcarreoProyecto").ToString.ToEntero
CveSubProyectoOrigen = dr("CveSubProyectoOrigen").ToString.ToEntero
CveSubProyectoDestino = dr("CveSubProyectoDestino").ToString.ToEntero
End If
If ObjAcar.GetAcarreosMaterialVolumen(CveAcarreoProyecto, UsuarioActual.CveEmpresa, -1) Then
DdlMaterial.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlMaterial.DataSource = ObjAcar.DtResultados
DdlMaterial.DataBind()
End If
If Not DdlMaterial.SelectedValue = "-1" Then
If ObjAcar.GetAcarreosMaterialVolumen(CveAcarreoProyecto, UsuarioActual.CveEmpresa, -1) Then
Dim dr As DataRow = ObjAcar.DtResultados.Rows(DdlMaterial.SelectedIndex.ToEntero)
TxtVolumen.Text = dr("VolumenTipo").ToString
End If
End If
If ObjAcar.GetTarifasTransportista(CveAcarreoProyecto, UsuarioActual.CveEmpresa) Then
DdlTransportista.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlTransportista.DataSource = ObjAcar.DtResultados
DdlTransportista.DataBind()
End If
If Not DdlTransportista.SelectedValue = "-1" Then
If ObjAcar.GetChofer(-1, UsuarioActual.CveEmpresa, 1, DdlTransportista.SelectedValue.ToEntero) Then
DdlChofer.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlChofer.DataSource = ObjAcar.DtResultados
DdlChofer.DataBind()
End If
Else
DdlChofer.Items.Insert(0, New ListItem("Seleccione", "-1"))
End If
If Not DdlTransportista.SelectedValue = "-1" Then
If ObjAcar.GetUnidad(-1, 1, UsuarioActual.CveEmpresa, DdlTransportista.SelectedValue.ToEntero) Then
DdlUnidad.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlUnidad.DataSource = ObjAcar.DtResultados
DdlUnidad.DataBind()
End If
Else
DdlUnidad.Items.Insert(0, New ListItem("Seleccione", "-1"))
End If
ObjAcar.Dispose()
End If
UpDatos.Update()
End Sub
Private Sub DdlTransportista_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlTransportista.SelectedIndexChanged
DdlChofer.Items.Clear()
DdlUnidad.Items.Clear()
If Not DdlTransportista.SelectedValue = "-1" Then
Dim ObjAcar As New ClsAcarreos()
If ObjAcar.GetChofer(-1, UsuarioActual.CveEmpresa, 1, DdlTransportista.SelectedValue.ToEntero) Then
DdlChofer.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlChofer.DataSource = ObjAcar.DtResultados
DdlChofer.DataBind()
End If
If ObjAcar.GetUnidad(-1, 1, UsuarioActual.CveEmpresa, DdlTransportista.SelectedValue.ToEntero) Then
DdlUnidad.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlUnidad.DataSource = ObjAcar.DtResultados
DdlUnidad.DataBind()
End If
ObjAcar.Dispose()
Else
DdlChofer.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlUnidad.Items.Insert(0, New ListItem("Seleccione", "-1"))
End If
UpDatos.Update()
End Sub
Private Sub DdlMaterial_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlMaterial.SelectedIndexChanged
If Not DdlMaterial.SelectedValue = "-1" Then
Dim ObjAcar As New ClsAcarreos()
If ObjAcar.GetAcarreosMaterialVolumen(CveAcarreoProyecto, UsuarioActual.CveEmpresa, -1) Then
Dim dr As DataRow = ObjAcar.DtResultados.Rows(DdlMaterial.SelectedIndex.ToEntero - 1)
TxtVolumen.Text = dr("VolumenTipo").ToString
End If
ObjAcar.Dispose()
UpDatos.Update()
Else
TxtVolumen.Text = ""
End If
End Sub
End Class