From 065dd86c61815ea0c62063fe5a8c0a10daabfebc Mon Sep 17 00:00:00 2001 From: AbrahamCastilloV Date: Tue, 6 Feb 2024 02:33:00 -0700 Subject: [PATCH] =?UTF-8?q?--Se=20crean=20los=20m=C3=A9todos=20faltantes?= =?UTF-8?q?=20del=20CRUD=20para=20la=20tabla=20de=20destinos,=20rutas=20e?= =?UTF-8?q?=20importes=20con=20sus=20respectivos=20procedimientos=20almace?= =?UTF-8?q?nados.=20=20Se=20agregan=20los=20datakeys=20a=20los=20Gv=20de?= =?UTF-8?q?=20Rutas,=20Destinos=20e=20importes,=20se=20agregan=20c=C3=B3di?= =?UTF-8?q?gos=20de=20color=20a=20los=20estatus,=20se=20unifican=20los=20b?= =?UTF-8?q?otones=20para=20agregar=20y=20modificar=20las=20clases=20y=20se?= =?UTF-8?q?=20agrega=20un=20modal=20din=C3=A1mico=20con=20el=20panel=20apr?= =?UTF-8?q?opiado=20para=20cada=20textbox.=20=20Se=20agrega=20una=20Cve=20?= =?UTF-8?q?para=20guardar=20el=20valor=20de=20la=20clave=20al=20ser=20modi?= =?UTF-8?q?ficado,=20se=20agregan=20los=20dropdownlist=20de=20CveOrigen=20?= =?UTF-8?q?y=20CveFinal=20para=20los=20importes=20y=20CveRuta,=20se=20crea?= =?UTF-8?q?=20el=20m=C3=A9todo=20para=20mostrar=20modal=20din=C3=A1mico=20?= =?UTF-8?q?y=20los=20m=C3=A9todos=20del=20CRUD.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- App_Code/ClsTransportes.vb | 179 +++++++++++- Transportes/CatRutas.aspx | 541 ++++++++++++++++++++++++----------- Transportes/CatRutas.aspx.vb | 230 ++++++++++++++- 3 files changed, 763 insertions(+), 187 deletions(-) diff --git a/App_Code/ClsTransportes.vb b/App_Code/ClsTransportes.vb index 979375c2e..612d9f694 100644 --- a/App_Code/ClsTransportes.vb +++ b/App_Code/ClsTransportes.vb @@ -333,6 +333,68 @@ Public Class ClsTransportes Return Retorno End Function + + Public Function AddDestino(Destino As String, Estatus As String, EsNacional As String, CveUsuario As Integer, CveEmpresa As Integer) As Integer + Dim Retorno As Integer = -1 + + DataAdapter("PA_Trans_DestinosAdd") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveDestino", SqlDbType.Int).Direction = ParameterDirection.Output + .Add("@Destino", SqlDbType.VarChar).Value = Destino + .Add("@EsNacional", SqlDbType.VarChar).Value = Convert.ToBoolean(EsNacional) + .Add("@Estatus", SqlDbType.Bit).Value = Convert.ToBoolean(Estatus) + .Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + Try + SqlAdapter.Fill(Data) + Retorno = CInt(SqlAdapter.SelectCommand.Parameters("@CveDestino").Value.ToString) + Catch ex As Exception + OnError("Ocurrió un error al agregar el destino.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function + + Public Function UpdateDestino(CveDestino As Integer, Destino As String, Estatus As String, EsNacional As String, CveUsuario As Integer, CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Trans_DestinosUpdate") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveDestino", SqlDbType.Int).Value = CveDestino + .Add("@Destino", SqlDbType.VarChar).Value = Destino + .Add("@EsNacional", SqlDbType.VarChar).Value = Convert.ToBoolean(EsNacional) + .Add("@Estatus", SqlDbType.Bit).Value = Convert.ToBoolean(Estatus) + .Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al actualizar el destino.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function + + Public Function RemoveDestino(CveDestino As Integer) As Boolean + Dim Retorno As Boolean = False + + + DataAdapter("PA_Trans_DestinosRemove") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveDestino", SqlDbType.Int).Value = CveDestino + End With + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al eliminar el destino.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function #End Region #Region "Rutas" @@ -351,15 +413,73 @@ Public Class ClsTransportes Try SqlAdapter.Fill(Data) Retorno = True + Catch ex As Exception OnError("Ocurrió un error al obtener las rutas.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) End Try + Return Retorno + End Function + Public Function AddRuta(Ruta As String, Estatus As String, CveUsuario As Integer, CveEmpresa As Integer) As Integer + Dim Retorno As Integer = -1 + + DataAdapter("PA_Trans_RutasAdd") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveRuta", SqlDbType.Int).Direction = ParameterDirection.Output + .Add("@Ruta", SqlDbType.VarChar).Value = Ruta + .Add("@Estatus", SqlDbType.Bit).Value = Convert.ToBoolean(Estatus) + .Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + Try + SqlAdapter.Fill(Data) + Retorno = CInt(SqlAdapter.SelectCommand.Parameters("@CveRuta").Value.ToString) + Catch ex As Exception + OnError("Ocurrió un error al agregar la ruta.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function + Public Function UpdateRuta(CveRuta As Integer, Ruta As String, Estatus As String, CveUsuario As Integer, CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Trans_RutasUpdate") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveRuta", SqlDbType.Int).Value = CveRuta + .Add("@Ruta", SqlDbType.VarChar).Value = Ruta + .Add("@Estatus", SqlDbType.Bit).Value = Convert.ToBoolean(Estatus) + .Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al actualizar la ruta.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function + Public Function RemoveRuta(CveRuta As Integer) As Boolean + Dim Retorno As Boolean = False + + + DataAdapter("PA_Trans_RutasRemove") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveRuta", SqlDbType.Int).Value = CveRuta + End With + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al eliminar la ruta.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + Return Retorno End Function #End Region -#Region "Tarifas" +#Region "Importes" Public Function GetDestinosTarifas(CveDestinoOrigen As Integer, CveDestinoFinal As Integer) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_Trans_DestinosTarifasGet") @@ -376,6 +496,63 @@ Public Class ClsTransportes Return Retorno End Function + + Public Function AddDestinosTarifas(CveRuta As String, CveDestinoOrigen As String, CveDestinoFinal As String, Importe As String) As Integer + Dim Retorno As Integer = -1 + + DataAdapter("PA_Trans_DestinosTarifasAdd") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveDestinoTarifa", SqlDbType.Int).Direction = ParameterDirection.Output + .Add("@CveRuta", SqlDbType.Int).Value = CveRuta.ToEntero + .Add("@CveDestinoOrigen", SqlDbType.Int).Value = CveDestinoOrigen.ToEntero + .Add("@CveDestinoFinal", SqlDbType.Int).Value = CveDestinoFinal.ToEntero + .Add("@Importe", SqlDbType.SmallMoney).Value = Importe.ToDecimal + End With + Try + SqlAdapter.Fill(Data) + Retorno = CInt(SqlAdapter.SelectCommand.Parameters("@CveDestinoTarifa").Value.ToString) + Catch ex As Exception + OnError("Ocurrió un error al agregar el importe.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function + Public Function UpdateDestinosTarifas(CveDestinoTarifa As Integer, CveRuta As String, CveDestinoOrigen As String, CveDestinoFinal As String, Importe As String) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Trans_DestinosTarifasUpdate") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveDestinoTarifa", SqlDbType.Int).Value = CveDestinoTarifa + .Add("@CveRuta", SqlDbType.Int).Value = CveRuta.ToEntero + .Add("@CveDestinoOrigen", SqlDbType.Int).Value = CveDestinoOrigen.ToEntero + .Add("@CveDestinoFinal", SqlDbType.Int).Value = CveDestinoFinal.ToEntero + .Add("@Importe", SqlDbType.SmallMoney).Value = Importe.ToDecimal + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al actualizar el importe.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function + Public Function RemoveDestinosTarifas(CveDestinoTarifa As Integer) As Boolean + Dim Retorno As Boolean = False + + + DataAdapter("PA_Trans_DestinosTarifasRemove") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveDestinoTarifa", SqlDbType.Int).Value = CveDestinoTarifa + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al eliminar el importe.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function #End Region End Class diff --git a/Transportes/CatRutas.aspx b/Transportes/CatRutas.aspx index 8b90e470c..fadda2efd 100644 --- a/Transportes/CatRutas.aspx +++ b/Transportes/CatRutas.aspx @@ -13,199 +13,392 @@ justify-content: space-between; margin-block: 1rem; } + + .my-1 { + margin-block: 1rem; + } + + + + <%--Calendario Tab--%> + + <%--Rutas Tab--%> + + +
+
+ +
+
+ " + style="display: inline-block; margin-right: -10px; width: 150px;" /> + " + style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"> + +
- - <%--Calendario Tab--%> - - <%--Rutas Tab--%> - - -
-
- -
-
- " - style="display: inline-block; margin-right: -10px; width: 150px;" /> - " - style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"> - -
+
+ + + + + + + -
- - - - - - - + + + + + - - - - - + + + + + - - - - - + + + + + + + + +
+
+ <%--Destinos Tab--%> + + +
+
+ +
+
+
+ " + style="display: inline-block; margin-right: -10px; width: 150px;" /> + " + style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"> + +
- - - - - - - - - - - <%--Rutas Tab--%> - - -
-
- -
-
-
- " - style="display: inline-block; margin-right: -10px; width: 150px;" /> - " - style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"> - +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%--Importes Tab--%> + + +
+
+ +
+
+
+ " + style="display: inline-block; margin-right: -10px; width: 150px;" /> + " + style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"> + +
+
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - <%--Importes Tab--%> - - -
-
- -
-
-
- " - style="display: inline-block; margin-right: -10px; width: 150px;" /> - " - style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"> - -
-
-
- - - - - - - - - - - - - - + CssClass="table table-striped table-hover Widthall ScrollAD mysmallbtn" GridLines="None" + data-sort="true" DataKeyNames="CveDestinoTarifa, CveRuta, CveDestinoOrigen, CveDestinoFinal, Importe, Destino, Salida"> + + + + + + - - - - - + + + + + - - - - - + + + + + - - - - - - + + + + + + + + + + - - -
-
+ + + + + + + + + + + + + + - - + diff --git a/Transportes/CatRutas.aspx.vb b/Transportes/CatRutas.aspx.vb index a58e3da56..2a6162a04 100644 --- a/Transportes/CatRutas.aspx.vb +++ b/Transportes/CatRutas.aspx.vb @@ -1,10 +1,21 @@ Option Explicit On Option Strict On + Partial Class CatRutas Inherits ClsPaginas + + Private Property Cve As Integer + Get + Return ViewState("Cve").ToString().ToEntero + End Get + Set(value As Integer) + ViewState("Cve") = value + End Set + End Property Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load If Not IsPostBack Then - InicializaCalendar() + ViewState("Cve") = 0 + InicializarCombos() CargaDatos() End If @@ -34,48 +45,243 @@ Partial Class CatRutas GvImportes.DataBind() End If End If - End Sub - Private Sub InicializaCalendar() + UpPanel.Update() End Sub + Private Sub InicializarCombos() + Dim ObjDestinos As New ClsTransportes() + + If ObjDestinos.GetDestinos() Then + + If ObjDestinos.DtResultados.Rows.Count > 0 Then + + DdlOrigen.DataSource = ObjDestinos.DtResultados + DdlOrigen.DataBind() + DdlOrigen.Items.Insert(0, New ListItem("Seleccione Partida", "")) + + DdlFinal.DataSource = ObjDestinos.DtResultados + DdlFinal.DataBind() + DdlFinal.Items.Insert(0, New ListItem("Seleccione Destino", "")) + End If + End If + ObjDestinos.Dispose() + + + Dim ObjRutas As New ClsTransportes() + If ObjRutas.GetRutas(-1, -1, -1, "", True, DateTime.Now) Then + + If ObjRutas.DtResultados.Rows.Count > 0 Then + DdlRutas.DataSource = ObjRutas.DtResultados + DdlRutas.DataBind() + DdlRutas.Items.Insert(0, New ListItem("Seleccione Ruta", "")) + End If + End If + End Sub + + Protected Sub MostrarModal(sender As Object, e As EventArgs) + TxtRuta.Text = "" + DdlRutaEstatus.SelectedValue = "" + TxtDestino.Text = "" + DdlEsNacional.SelectedValue = "" + DdlDestinoEstatus.SelectedValue = "" + DdlOrigen.SelectedValue = "" + DdlFinal.SelectedValue = "" + TxtImporte.Text = "" + BtnAddRuta.Visible = False + BtnAddDestino.Visible = False + BtnAddImporte.Visible = False + PnRuta.Visible = False + PnDestino.Visible = False + PnImporte.Visible = False + Dim id As String = DirectCast(sender, LinkButton).ID + + If id.Contains("Editar") Then + Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) + + Select Case id + Case "BtnEditarRuta" + ModalLabel.Text = "Editar Ruta" + PnRuta.Visible = True + TxtRuta.Text = GvRow.DataKey("Ruta") + DdlRutaEstatus.SelectedValue = GvRow.DataKey("Estatus") + BtnAddRuta.Visible = True + BtnAddRuta.Text = "Editar" + ViewState("Cve") = GvRow.DataKey("CveRuta").ToEntero + + + Case "BtnEditarDestino" + ModalLabel.Text = "Editar Destino" + TxtDestino.Text = GvRow.DataKey("Destino") + DdlEsNacional.SelectedValue = GvRow.DataKey("EsNacional") + DdlDestinoEstatus.SelectedValue = GvRow.DataKey("Estatus") + PnDestino.Visible = True + BtnAddDestino.Visible = True + BtnAddDestino.Text = "Editar" + ViewState("Cve") = GvRow.DataKey("CveDestino").ToEntero + + + Case "BtnEditarImporte" + ModalLabel.Text = "Editar Importe" + DdlRutas.SelectedValue = GvRow.DataKey("CveRuta") + DdlOrigen.SelectedValue = GvRow.DataKey("CveDestinoOrigen") + DdlFinal.SelectedValue = GvRow.DataKey("CveDestinoFinal") + TxtImporte.Text = GvRow.DataKey("Importe") + PnImporte.Visible = True + BtnAddImporte.Visible = True + BtnAddImporte.Text = "Editar" + ViewState("Cve") = GvRow.DataKey("CveDestinoTarifa").ToEntero + + + End Select + End If + + If id.Contains("Agregar") Then + Select Case id + Case "BtnAgregarRuta" + ModalLabel.Text = "Agregar Ruta" + PnRuta.Visible = True + BtnAddRuta.Visible = True + BtnAddRuta.Text = "Guardar" + Case "BtnAgregarDestino" + ModalLabel.Text = "Agregar Destino" + PnDestino.Visible = True + BtnAddDestino.Visible = True + BtnAddDestino.Text = "Guardar" + Case "BtnAgregarImporte" + ModalLabel.Text = "Agregar Importe" + PnImporte.Visible = True + BtnAddImporte.Visible = True + BtnAddImporte.Text = "Guardar" + + End Select + End If + UpModal.Update() + RegistraScript(String.Format("$('#{0}').modal('show');", "Modal")) + End Sub + + #Region "Rutas" Protected Sub AddRuta(sender As Object, e As EventArgs) - End Sub - Protected Sub UpdateRuta(sender As Object, e As EventArgs) + Dim ObjRuta As New ClsTransportes + ObjRuta.IniciaTransacSQL() + Try + If BtnAddRuta.Text = "Guardar" Then + If ObjRuta.AddRuta(TxtRuta.Text, DdlRutaEstatus.SelectedValue, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) > 1 Then + ObjRuta.Commit() + Alert("Ruta Agregada Correctamente.") + End If + End If + + If BtnAddRuta.Text = "Editar" Then + If ObjRuta.UpdateRuta(Cve, TxtRuta.Text, DdlRutaEstatus.SelectedValue, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then + ObjRuta.Commit() + Alert("Ruta Actualizada Correctamente.") + End If + End If + Catch ex As Exception + ObjRuta.RollBack() + Finally + CargaDatos() + ObjRuta.Dispose() + End Try + End Sub - Protected Sub RemoveRuta(sender As Object, e As EventArgs) + Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) + Dim ObjRuta As New ClsTransportes + If ObjRuta.RemoveRuta(GvRow.DataKey("CveRuta").ToEntero) Then + Alert("Ruta eliminada correctamente") + CargaDatos() + End If + + ObjRuta.Dispose() End Sub #End Region #Region "Destinos" Protected Sub AddDestino(sender As Object, e As EventArgs) - End Sub - Protected Sub UpdateDestino(sender As Object, e As EventArgs) + Dim ObjDestino As New ClsTransportes + ObjDestino.IniciaTransacSQL() + Try + If BtnAddDestino.Text = "Guardar" Then + If ObjDestino.AddDestino(TxtDestino.Text, DdlDestinoEstatus.SelectedValue, DdlEsNacional.SelectedValue, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) > 1 Then + ObjDestino.Commit() + Alert("Destino agregado correctamente.") + End If + End If + + If BtnAddDestino.Text = "Editar" Then + If ObjDestino.UpdateDestino(Cve, TxtDestino.Text, DdlDestinoEstatus.SelectedValue, DdlEsNacional.SelectedValue, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then + ObjDestino.Commit() + Alert("Destino actualizado correctamente.") + End If + End If + Catch ex As Exception + ObjDestino.RollBack() + Finally + CargaDatos() + ObjDestino.Dispose() + End Try + End Sub - Protected Sub RemoveDestino(sender As Object, e As EventArgs) + Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) + Dim ObjDestino As New ClsTransportes + If ObjDestino.RemoveDestino(GvRow.DataKey("CveDestino").ToEntero) Then + Alert("Destino eliminado correctamente") + CargaDatos() + End If + + ObjDestino.Dispose() End Sub #End Region #Region "Importes" Protected Sub AddImporte(sender As Object, e As EventArgs) - End Sub - Protected Sub UpdateImporte(sender As Object, e As EventArgs) + Dim ObjImporte As New ClsTransportes + ObjImporte.IniciaTransacSQL() + Try + If BtnAddImporte.Text = "Guardar" Then + If ObjImporte.AddDestinosTarifas(DdlRutas.SelectedValue, DdlOrigen.SelectedValue, DdlFinal.SelectedValue, TxtImporte.Text) > 1 Then + ObjImporte.Commit() + Alert("Importe agregado correctamente.") + End If + End If + + If BtnAddImporte.Text = "Editar" Then + If ObjImporte.UpdateDestinosTarifas(Cve, DdlRutas.SelectedValue, DdlOrigen.SelectedValue, DdlFinal.SelectedValue, TxtImporte.Text) Then + ObjImporte.Commit() + Alert("Importe actualizado correctamente.") + End If + End If + Catch ex As Exception + ObjImporte.RollBack() + Finally + CargaDatos() + ObjImporte.Dispose() + End Try + End Sub - Protected Sub RemoveImporte(sender As Object, e As EventArgs) + Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) + Dim ObjImporte As New ClsTransportes + If ObjImporte.RemoveDestinosTarifas(GvRow.DataKey("CveDestinoTarifa").ToEntero) Then + Alert("Importe eliminada correctamente") + CargaDatos() + End If + + ObjImporte.Dispose() End Sub #End Region