This commit is contained in:
AbrahamCastilloV
2024-02-21 10:28:54 -07:00
30 changed files with 1446 additions and 918 deletions

View File

@@ -79,11 +79,13 @@ Partial Class Boletos
Dim ObjViaje As New ClsTransportes
If ObjContratos.GetContratos(CveViaje, UsuarioActual.CveEmpresa) Then
Contrato = ObjContratos.DtResultados
Contrato = ObjContratos.DtResultados.Copy()
If ObjContratos.DtResultados IsNot Nothing AndAlso ObjContratos.DtResultados.Rows.Count > 0 Then
TxtRuta.Text = Contrato.Rows(0)("SubProyecto").ToString
TxtFecha.Text = Contrato.Rows(0)("FechaInicial").ToString.ToDate.ToShortDateString
DtPasajeros = New DataTable
DtPasajeros.Columns.Add("CveViajePasajero", GetType(Integer))
DtPasajeros.Columns.Add("Numero", GetType(Integer))
DtPasajeros.Columns.Add("Nombre", GetType(String))
DtPasajeros.Columns.Add("Visa", GetType(String))
@@ -115,6 +117,9 @@ Partial Class Boletos
End If
End If
ObjContratos.Dispose()
ObjViaje.Dispose()
Else
ObjContratos.Dispose()
ObjViaje.Dispose()
@@ -122,8 +127,6 @@ Partial Class Boletos
Response.Redirect($"~/Transportes/RepContratos.aspx")
End If
ObjContratos.Dispose()
ObjViaje.Dispose()
'Boletos Vendidos
@@ -176,8 +179,6 @@ Partial Class Boletos
LbCostos.Text = $"El precio de su boleto es ${ImporteR.FormatoNumero}"
LbCostos.Visible = True
BtnAgregarPasajero.Visible = True
LbAviso.Visible = True
Else
ViewState("Importe") = 0
BtnAgregarPasajero.Visible = False
@@ -233,11 +234,17 @@ Partial Class Boletos
Sexo = dr("CveSexo").ToString.ToBool
Obs = dr("Observaciones").ToString
If ObjTransporte.AddViajesPasajeros(CveViaje, CveDestinoOrigen, CveDestinoFinal, Importe, Asiento.ToEntero, Nombre, Visa, Celular, Sexo, Obs, UsuarioActual.CveUsuario, UsuarioActual.CveVendedor) > 1 Then
ObjTransporte.Commit()
Dim CveViajePasajero = ObjTransporte.AddViajesPasajeros(CveViaje, CveDestinoOrigen, CveDestinoFinal, Importe, Asiento.ToEntero, Nombre, Visa, Celular, Sexo, Obs, UsuarioActual.CveUsuario, UsuarioActual.CveVendedor)
If CveViajePasajero < 1 Then
TieneError = True
SbAlert.Append("Ocurrió un error al generar el viaje")
Exit For
End If
dr("CveViajePasajero") = CveViajePasajero
Next
DtPasajeros.Clear()
If Not TieneError Then
Retorno = CrearRemision(ObjTransporte)
@@ -247,8 +254,11 @@ Partial Class Boletos
TieneError = Retorno.TieneError
If Not TieneError Then
If Retorno.CveVenta > 0 AndAlso Not Retorno.TieneError Then
SbAlert.AppendFormat("{0}", Retorno.Mensajes(Retorno.Mensajes.Count - 1))
If Not Retorno.TieneError Then
If Retorno.CveVenta <= 0 Then
Retorno.TieneError = True
End If
Else
TieneError = True
SbAlert.Append("Ocurrió un error al generar la factura")
@@ -261,6 +271,12 @@ Partial Class Boletos
Else
TieneError = True
End If
Else
If Retorno.Mensajes IsNot Nothing AndAlso Retorno.Mensajes.Count > 0 Then
For Each Mensaje As String In Retorno.Mensajes
SbAlert.AppendFormat("{0} <br/>", Mensaje)
Next
End If
End If
Else
TieneError = True
@@ -280,18 +296,28 @@ Partial Class Boletos
ObjTransporte.RollBack()
ObjTransporte.Dispose()
Else
SbAlert.Append("El boleto se genero correctamente")
ObjTransporte.Commit()
ObjTransporte.Dispose()
DdlPartida.SelectedValueExist("-1")
DdlDestino.SelectedValueExist("-1")
SbAlert.Append("El boleto se genero correctamente.")
DtPasajeros.Clear()
GvB.DataSource = DtPasajeros
GvB.DataBind()
DdlPartida.SelectedIndex = -1
'DdlPartida.SelectedValueExist("-1")
DdlDestino.SelectedIndex = -1
'DdlDestino.SelectedValueExist("-1")
AsientoSeleccionado = ""
CargaDatos()
End If
Alert(SbAlert.ToString(), If(TieneError, TipoMensaje.MsgError, TipoMensaje.MsgInformacion), ShowCloseButton:=False)
End Try
UpPanel.Update()
End Sub
@@ -368,48 +394,89 @@ Partial Class Boletos
End Sub
Private Function CrearRemision(ByRef objTrans As ClsTransportes) As Modelos.Factura.MMensajeFactura
Dim Retorno As Modelos.Factura.MMensajeFactura = Nothing
Dim Retorno As New Modelos.Factura.MMensajeFactura
Dim CveCliente As Integer = 1154164
Dim CveMoneda As Integer = 2
Dim CveSubProyecto As Integer = GlobalDTSubProyectos(-1, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveSubProyecto").ToEntero()
Dim CveSubProyecto As Integer = -1
Dim CvePSBoleto As Integer = 912720
If EsProduccion Then
CvePSBoleto = 986337
CveCliente = 1172306
End If
If CveCliente <= 0 Then
Retorno.Mensajes.Add("No se pudo cargar el cliente")
Return Retorno
End If
If CveSubProyecto <= 0 Then
Retorno.Mensajes.Add("No se pudo cargar el subproyecto")
Return Retorno
End If
Dim ObjFactura = Modelos.Factura.CrearVentaNueva(UsuarioActual, -1, CveCliente, CveMoneda, "Rem")
Dim ObjFactura = Modelos.Factura.CrearVentaNueva(UsuarioActual, CveSubProyecto, CveCliente, CveMoneda, "Rem")
If ObjFactura IsNot Nothing Then
'TOMA EL SUBPROYECTO DEL CLIENTE
CveSubProyecto = ObjFactura.Cliente.CveSubProyecto
Dim CvePSBoleto As Integer = 912720
For Each Dr As DataRow In DtPasajeros.Rows
Dim Obs = Dr("Nombre").ToString
Dim Importe = Dr("Importe").ToString.ToDecimal()
If Importe <= 0 Then
Retorno.Mensajes.Add("El importe debe ser mayor a 0")
If CveSubProyecto <= 0 Then
Retorno.Mensajes.Add("No se pudo cargar el subproyecto")
Return Retorno
End If
ObjFactura.AgregarPS(CvePSBoleto, 1, Importe, 0, Obs, CveSubProyecto:=CveSubProyecto, PorcentajeIVA:=0)
Next
ObjFactura.CveSubProyecto = CveSubProyecto
ObjFactura.CveSubProyectoCobranza = CveSubProyecto
ObjFactura.CveSubProyectoEjecucion = CveSubProyecto
ObjFactura.SetSubProyecto()
ObjFactura.SetSubProyectoMatriz()
ObjFactura.CalculaTotales()
For Each Dr As DataRow In DtPasajeros.Rows
Dim Obs = Dr("Observaciones").ToString
Dim Importe = Dr("Importe").ToString.ToDecimal()
Try
Retorno = ObjFactura.EmitirFactura(False, Transac:=objTrans.IniciaTransacSQL())
Catch ex As Exception
Retorno = Nothing
GuardaLog(ex.ToString())
End Try
If Importe <= 0 Then
Retorno.Mensajes.Add("El importe debe ser mayor a 0")
Return Retorno
End If
If ObjFactura IsNot Nothing Then
ObjFactura.Dispose()
Dim PorcentajeIVA As Decimal = 0
Dim DrPS As DataRow = ClsPaginas.GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePSBoleto).FiltroPrimero("") ' Estado = -1
If DrPS Is Nothing Then
Retorno.Mensajes.Add("No se pudo agregar el producto")
Return Retorno
End If
If DrPS("IVA").ToString().Contiene("-1", "") Then
PorcentajeIVA = ObjFactura.SubProyecto.IVA
Else
PorcentajeIVA = DrPS("IVA").ToString().ToDecimal()
End If
If PorcentajeIVA > 0 Then
Importe = (Importe / (1D + PorcentajeIVA)).RoundSQL(6)
End If
If Not ObjFactura.AgregarPS(CvePSBoleto, 1D, Importe, 0D, Obs, CveSubProyecto:=CveSubProyecto, PorcentajeIVA:=PorcentajeIVA, CveViajePasajero:=Dr("CveViajePasajero").ToString().ToEntero()) Then
Retorno.Mensajes.Add("No se pudo agregar el producto")
Return Retorno
End If
Next
ObjFactura.CalculaTotales()
Try
Retorno = ObjFactura.EmitirFactura(False, Transac:=objTrans.IniciaTransacSQL())
Catch ex As Exception
Retorno = Nothing
GuardaLog(ex.ToString())
End Try
If ObjFactura IsNot Nothing Then
ObjFactura.Dispose()
End If
Else
Retorno.Mensajes.Add("No se pudo generar la factura")
End If
Return Retorno

View File

@@ -1,5 +1,6 @@
Option Explicit On
Option Strict On
Imports System.Data
Imports ADSNetLibrary.Helpers
Imports ADSNetLibrary.SIGAPI.Helpers
@@ -32,16 +33,10 @@ Partial Class ListadoBoletos
CveViaje = Request.QueryString("CveViaje").ToEntero
Ruta = IfNull(Request("Ruta"), "").ToString
LblViaje.Text = Ruta
InicializaCombos()
CargaDatos()
End If
End Sub
Private Sub InicializaCombos()
End Sub
Private Sub CargaDatos()
Dim ObjTransportes As New ClsTransportes
If ObjTransportes.GetViajesPasajeros(CveViaje) Then
@@ -82,26 +77,68 @@ Partial Class ListadoBoletos
Protected Sub BtnCancelar_Click(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim CveViajePasajero As String = GvRow.DataKey("CveViajePasajero")
Dim CveViajePasajero As Integer = GvRow.DataKey("CveViajePasajero").ToEntero()
Dim Estatus As String = GvRow.DataKey("Estatus")
Dim cambiarEstatus As Boolean = Not Estatus.ToBool
Dim ObjTransportes As New ClsTransportes
ObjTransportes.IniciaTransacSQL()
Try
If ObjTransportes.UpdateViajesPasajeros(CveViajePasajero.ToEntero, Activar:=cambiarEstatus, Estatus:=cambiarEstatus) Then
If Not cambiarEstatus Then
Alert($"El boleto ha sido cancelado correctamente.")
Else
Alert($"El boleto ha sido reactivado correctamente.")
End If
End If
ObjTransportes.Commit()
Catch ex As Exception
ObjTransportes.RollBack()
Alert($"No se pudo cambiar el estatus del boleto {ex}", TipoMensaje.MsgError)
Dim cambiarEstatus As Boolean = Not Estatus.ToBool
Dim TieneError As Boolean = False
Try
Dim DtRem As DataTable = Nothing
Dim ObjTran As New ClsTransportes
If ObjTran.GetRemisionBoleto(CveViajePasajero.ToEntero, UsuarioActual.CveEmpresa) Then
DtRem = ObjTran.DtResultados.Copy()
End If
ObjTran.Dispose()
If DtRem IsNot Nothing Then
If DtRem.Rows.Count > 0 Then
Dim CveVenta As Integer = DtRem.Rows(0)("CveVenta").ToString().ToEntero()
Dim BoletosVigentes As Integer = DtRem.Rows(0)("BoletosVigentes").ToString().ToEntero()
If CveVenta > 0 Then
Dim ObjRem As New Modelos.Factura(UsuarioActual, CveVenta, UsuarioActual.CveEmpresa, VerificaAlmacen:=False)
If ObjRem.DtDetalle.Rows.Count > 0 Then
'SI SOLO TIENE UNA PARTIDA CANCELAR LA REMISION
If ObjRem.DtDetalle.Rows.Count = 1 OrElse BoletosVigentes <= 1 Then
Dim RespCancelacion = ObjRem.CancelarFactura(False, ValidarSAT:=False, CancelarBoletos:=True, ListaRemisionesCancelar:=New List(Of Integer))
If RespCancelacion IsNot Nothing Then
TieneError = RespCancelacion.HuboError
Else
TieneError = True
End If
Else
TieneError = Not ObjRem.CancelarBoleto(CveViajePasajero)
End If
Else
TieneError = True
End If
End If
Else
'SI NO TIENE VENTA, SOLO CANCELAR EL BOLETO
Dim ObjTran2 As New ClsTransportes
If Not ObjTran2.UpdateViajesPasajeros(CveViajePasajero, Activar:=cambiarEstatus, Estatus:=cambiarEstatus) Then
TieneError = True
End If
ObjTran2.Dispose()
End If
End If
Catch ex As Exception
TieneError = True
GuardaLog(ex.ToString())
Finally
ObjTransportes.Dispose()
If TieneError Then
Alert($"Ocurrió un error al cancelar el boleto.", TipoMensaje.MsgError)
Else
Alert($"El boleto ha sido cancelado correctamente.")
End If
CargaDatos()
End Try
End Sub
End Class

View File

@@ -16,8 +16,7 @@
}
.miGrid {
color: white;
text-align: center;
color: white;
}
</style>
</asp:Content>
@@ -51,9 +50,9 @@
<div class="row" style="height: 32px;">
<label class="col-md-1">Tipo Vista: </label>
<div class="col-md-2">
<asp:RadioButtonList ID="RBTipoVista" runat="server" AutoPostBack="True" RepeatDirection="Horizontal">
<asp:ListItem Text="Duración" Value="duracion" />
<asp:RadioButtonList ID="RBTipoVista" runat="server" AutoPostBack="True" RepeatDirection="Horizontal">
<asp:ListItem Text="Fecha de Salida" Value="fecha" Selected="True" />
<asp:ListItem Text="Duración" Value="duracion" />
</asp:RadioButtonList>
</div>
@@ -163,8 +162,8 @@
<%-- Centro de Costos --%>
<label class="col-md-1 truncate ">Centro de Costos</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlCentroCostos" data-text="Todos" AppendDataBoundItems="true"
DataTextField="" DataValueField="" CssClass="form-control ddlFiltros input-sm select2me Widthall"
<asp:DropDownList ID="DdlSubProyectos" data-text="Todos" AppendDataBoundItems="true"
DataTextField="SubProyecto" DataValueField="CveSubProyecto" CssClass="form-control ddlFiltros input-sm select2me Widthall"
Style="width: 100%;" runat="server">
</asp:DropDownList>
</div>
@@ -194,7 +193,7 @@
<asp:GridView ID="GvContratos" runat="server" AutoGenerateColumns="false" EmptyDataText="No se Encontró Contrato Registrado"
CssClass="table table-striped table-hover Widthall ScrollAD mysmallbtn miGrid"
GridLines="None"
data-sort="true" DataKeyNames="CveContrato, NumeroContrato, DescripcionContrato, Ubicacion, FechaInicial, FechaFinal, CveCliente,NombreComercial, CveTipoAF, Importe, ImporteMin, ImporteMax, Observaciones, CveAF, CveChofer, CveChofer2, CveContratosEstatus, CantidadPasajeros">
data-sort="true" DataKeyNames="CveContrato, NumeroContrato, DescripcionContrato, Ubicacion, FechaInicial, FechaFinal, CveCliente, NombreComercial, CveTipoAF, Importe, ImporteMin, ImporteMax, Observaciones, CveAF, CveChofer, CveChofer2, CveContratosEstatus, CantidadPasajeros,CveMoneda">
<Columns>
<asp:TemplateField HeaderText="Contrato">
<ItemTemplate>
@@ -203,7 +202,7 @@
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" ItemStyle-Width="120px">
<asp:TemplateField ItemStyle-Width="120px">
<HeaderTemplate>
Fecha<br />
Salida
@@ -219,7 +218,7 @@
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="Cliente">
<asp:TemplateField HeaderText="Cliente">
<ItemTemplate>
<asp:Literal ID="LtNombreComercial" runat="server" Text='<%# Eval("NombreComercial") %>'></asp:Literal>
</ItemTemplate>
@@ -243,7 +242,7 @@
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha Final" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="100px">
<asp:TemplateField HeaderText="Fecha Final" ItemStyle-Width="100px">
<HeaderTemplate>
Fecha<br />
Regreso
@@ -253,7 +252,7 @@
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estatus" ItemStyle-CssClass="bold">
<asp:TemplateField HeaderText="Estatus" >
<ItemTemplate>
<asp:Label ID="LtlContrato" runat="server" Text='<%# Eval("ContratoEstatus") %>'>
</asp:Label>

View File

@@ -47,7 +47,7 @@ Partial Class RepContratosCalendario
Dim CveCliente As Integer = DdlCliente.SelectedValue.ToEntero
If CveCliente = 0 Then CveCliente = -1
If ObjContratos.GetContratosReporte(UsuarioActual.CveEmpresa, txtFechaI.Text.ToDate, txtFechaF.Text.ToDate, DdlCliente.SelectedValue.ToEntero, CveEstatus:=DdlEstatusConsulta.SelectedValue.ToEntero, CveTipoContrato:=34) Then
If ObjContratos.GetContratosReporte(UsuarioActual.CveEmpresa, txtFechaI.Text.ToDate, txtFechaF.Text.ToDate, DdlCliente.SelectedValue.ToEntero, CveSubProyecto:=DdlSubProyectos.SelectedValue.ToEntero, CveEstatus:=DdlEstatusConsulta.SelectedValue.ToEntero, CveTipoContrato:=34) Then
GvContratos.DataSource = ObjContratos.DtResultados
End If
DtAvance = ObjContratos.DtResultados
@@ -97,9 +97,11 @@ Partial Class RepContratosCalendario
DdlEstatusContrato.DataSource = GlobalDTContratosEstatus(UsuarioActual.CveEmpresa)
DdlEstatusContrato.DataBind()
DdlEstatusContrato.Items.Insert(0, New ListItem("-", ""))
DdlEstatusContrato.Items.Insert(0, New ListItem("Todos", "-1"))
DdlSubProyectos.DataSource = GlobalDTSubProyectos(-1, CveEmpresa:=UsuarioActual.CveEmpresa)
DdlSubProyectos.DataBind()
DdlSubProyectos.Items.Insert(0, New ListItem("Todos", "-1"))
'CargarCentrosDeCosto(Nothing, DdlSubProyectos, Nothing, LblSubProyecto)