This commit is contained in:
2024-01-22 18:51:26 -07:00
8 changed files with 2928 additions and 5969 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -4,9 +4,9 @@ Option Strict On
Imports System.Data
Imports Extensiones
Partial Class Inventarios_PaquetesArmadoDesarmado
Inherits ClsPaginas
Inherits ClsPaginas
#Region " PROPIEDADES "
Public Property CveAlmacenArmado As Integer
Get
@@ -123,26 +123,26 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
Set(value As DataTable)
ViewState("DtExistenciasDesarmado") = value
End Set
End Property
End Property
#End Region
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
InicializaValores()
If Request("CvePS") IsNot Nothing Then
DdlPaqueteArmado.SelectedValueExist(Request("CvePS").ToString())
End If
If Request("Cantidad") IsNot Nothing Then
TxtCantidadArmado.Text = Request("Cantidad").ToString()
End If
If Request("CvePS") IsNot Nothing Then
DdlPaqueteArmado.SelectedValueExist(Request("CvePS").ToString())
End If
If Request("Cantidad") IsNot Nothing Then
TxtCantidadArmado.Text = Request("Cantidad").ToString()
End If
End If
End Sub
End Sub
#Region " INICIALIZA VALORES "
Private Sub InicializaValores()
CreaDtSeriesDesarmado()
@@ -197,9 +197,9 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
CveVendedor = -1
CveCliente = -1
End Sub
End Sub
#End Region
#Region " APARTADOS "
Protected Sub DdlAlmacenArmado_SelectedIndexChanged(sender As Object, e As EventArgs)
RowApartadosArmado.Visible = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveAlmacen", $"CveAlmacen = {DdlAlmacenArmado.SelectedValue.ToEntero} AND CveTipoAlmacen = 9").ToEntero > 0
@@ -208,9 +208,9 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
Protected Sub DdlAlmacenDesarmado_SelectedIndexChanged(sender As Object, e As EventArgs)
RowApartadosDesarmado.Visible = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveAlmacen", $"CveAlmacen = {DdlAlmacenDesarmado.SelectedValue.ToEntero} AND CveTipoAlmacen = 9").ToEntero > 0
UpFiltraDesarmado.Update()
End Sub
End Sub
#End Region
#Region " PROCESAR - VERIFICAR EXISTENCIAS "
Protected Sub BtnVerificarExistenciasArmado_Click(sender As Object, e As EventArgs)
TipoMovimiento = 1
@@ -386,10 +386,10 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
UpDatosDesarmado.Update()
UpGeneralesDesarmado.Update()
End Sub
End Sub
#End Region
#Region " GUARDAR "
Protected Sub BtnGuadarArmado_Click(sender As Object, e As EventArgs)
If Not GvDatosArmado.Rows.Count > 0 Then
@@ -458,7 +458,7 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
End If
Dim ObjInventario As New ClsInventarios
Dim ObjInventario As New ClsInventarios
Dim ObjConta As New ClsContabilidad(ObjInventario.IniciaTransacSQL())
Dim TieneError As Boolean = False
@@ -475,269 +475,269 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
Dim ConcepPrePoliza2 = "ARMPAQ2"
Dim Modulo As String = "ARMPAQ1/ARMPAQ2"
Try
Select Case (Tipo)
Case 1 ' ARMADO
'SALIDA COMPONENTES
CveMovimientoSalida = ObjInventario.AddMovimiento(CveAlmacenArmado, 5, 1, Fecha, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObservacionesArmado.Text, CveVendedor:=CveVendedor, CveCliente:=If(UsuarioActual.Empresa.Funcionalidad(146) = "1", -1, CveCliente), Modulo:="ARMPAQ1")
FolioSalida = ObjInventario.Folio
If CveMovimientoSalida <= 0 Then
TieneError = True
MensajeError = "Ocurrió un error al guardar el movimiento de salida. Por favor vuelva a intentar."
Exit Select
End If
For Each Gvr As GridViewRow In GvDatosArmado.Rows
If Gvr.DataKey("Cantidad").ToString.ToDouble > 0 Then
Dim Lote As String = If(Gvr.FCTextBox("TxtLote").Text = "", "-1", Gvr.FCTextBox("TxtLote").Text)
Dim FechaCaducidad As String = If(Gvr.FCTextBox("TxtCaducidad").Text = "", "-1", Gvr.FCTextBox("TxtCaducidad").Text)
Dim CveSeccionAlmacen As Integer = Gvr.FCDropDownList("DdlSeccionAlmacen").SelectedValue.ToEntero()
If CBool(Gvr.DataKey("AplicaSerie")) Then
For Each Dr As DataRow In DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0}", Gvr.DataKey("Consec").ToEntero)).Rows
If Not ObjInventario.GetExistenciasPS(Gvr.DataKey("CvePS").ToString.ToEntero, Gvr.DataKey("CveUM").ToString.ToEntero, UsuarioActual.CveEmpresa, DdlAlmacenArmado.SelectedValue.ToEntero, FechaMovto:=Fecha.ToDateTime.ToString("yyyy/MM/dd HH:mm"), Serie:=Dr("Serie").ToString, CveVendedor:=CveVendedor, CveCliente:=If(UsuarioActual.Empresa.Funcionalidad(146) = "1", -1, CveCliente)) >= 1 Then
MensajeError = String.Format("El Producto <b>{0}</b> con Serie: <b>{1}</b> no tiene existencia suficiente", Dr("PS"), Dr("Serie"))
TieneError = True
Exit For
End If
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoSalida, 1, Gvr.DataKey("CveUM").ToString.ToEntero, Gvr.DataKey("CvePS").ToString.ToEntero, 0, -1,
CveSeccionAlmacen:=CveSeccionAlmacen, Serie:=Dr("Serie").ToString, Lote:=Lote, FechaCaducidad:=FechaCaducidad.ToDate) Then
MensajeError = "Ocurrió un error al guardar los detalles con serie del movimiento de salida. Por favor vuelva a intentar."
TieneError = True
Exit For
End If
Next
If TieneError Then
Exit For
End If
Else
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoSalida, Gvr.DataKey("Cantidad").ToString.ToDecimal, Gvr.DataKey("CveUM").ToString.ToEntero,
Gvr.DataKey("CvePS").ToString.ToEntero, 0, -1, CveSeccionAlmacen:=CveSeccionAlmacen, Lote:=Lote,
FechaCaducidad:=FechaCaducidad.ToDate) Then
MensajeError = "Ocurrió un error al guardar los detalles del movimiento de salida. Por favor vuelva a intentar."
TieneError = True
Exit For
End If
End If
End If
Next
'ENTRADA PAQUETE
If Not TieneError Then
CveMovimientoEntrada = ObjInventario.AddMovimiento(CveAlmacenArmado, 19, 1, Fecha, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObservacionesArmado.Text, CveVendedor:=CveVendedor, CveCliente:=If(UsuarioActual.Empresa.Funcionalidad(146) = "1", -1, CveCliente), CveMovimientoRelacionado:=CveMovimientoSalida, Modulo:="ARMPAQ2")
FolioEntrada = ObjInventario.Folio
If CveMovimientoEntrada <= 0 Then
MensajeError = "Ocurrió un error al guardar el movimiento de entrada correctamente. Por favor vuelva a intentar."
TieneError = True
Else
If ObjInventario.GetMovimientosDetalle(CveMovimientoSalida, UsuarioActual.CveEmpresa) Then
Dim PUTemp As Decimal = 0
For Each Dr As DataRow In ObjInventario.DtResultados.Rows
PUTemp += Dr("PU").ToString.ToDecimal * Dr("Cantidad").ToString.ToDecimal
Next
PUTemp = PUTemp / TxtCantidadArmado.Text.ToDecimal
Dim CvePSTemp = CvePaqueteArmado
Dim CveSeccionAlmacen As Integer = -1
Dim Drp As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePaqueteArmado).FiltroPrimero("")
Dim CveUMTemp As Integer = Drp("CveUM").ToString.ToEntero
Dim AplicaSeccion As Boolean = CBool(Drp("AplicaSeccion"))
If AplicaSeccion Then
CveSeccionAlmacen = GlobalDTInvPSSeccionesAlmacen(UsuarioActual.CveEmpresa, CveAlmacenArmado, CvePaqueteArmado).FiltroPrimeroValor("CveSeccionAlmacen").ToEntero
End If
If AplicaSerie Then
Dim ContadorPaquete = 1
Dim DtSeriesComponentes As New DataTable
For Each Gvr As GridViewRow In GvSeriesPaqueteArmado.Rows
'AGREGA MOVTO DETALLE DE LA ENTRADA DEL PAQUETE
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoEntrada, 1, CveUMTemp, CvePSTemp, PUTemp, CveSeccionAlmacen:=CveSeccionAlmacen, Serie:=Gvr.FCTextBox("TxtSerie").Text.Trim) Then
TieneError = True
MensajeError = "Ocurrió un error al guardar los detalles con serie del movimiento de entrada"
Exit For
End If
'INGRESA EN TABLA DE CONTROL DE PAQUETES CON SERIE
For Each Gvr2 As GridViewRow In GvDatosArmado.Rows
If CBool(Gvr2.DataKey("AplicaSerie")) Then
DtSeriesComponentes = New DataTable
DtSeriesComponentes = DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0}", Gvr2.DataKey("Consec").ToEntero)).Copy
Dim CantidadComponente = DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0}", Gvr2.DataKey("Consec").ToEntero)).Rows.Count / TxtCantidadArmado.Text.ToEntero
For index As Integer = (ContadorPaquete - 1) * CantidadComponente.ToEntero To (ContadorPaquete * CantidadComponente.ToEntero) - 1
If Not ObjInventario.AddPaqueteRelacionSeries(CvePSTemp, Gvr.FCTextBox("TxtSerie").Text.Trim, DtSeriesComponentes.Rows(index)("CvePS").ToString.ToEntero, DtSeriesComponentes.Rows(index)("Serie").ToString) Then
TieneError = True
Exit For
End If
Next
End If
Next
ContadorPaquete = ContadorPaquete + 1
Next
Else
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoEntrada, TxtCantidadArmado.Text.ToDecimal, CveUMTemp, CvePSTemp, PUTemp, CveSeccionAlmacen:=CveSeccionAlmacen) Then
TieneError = True
MensajeError = "Ocurrió un error al guardar los detalles del movimiento de entrada"
End If
End If
Else
TieneError = True
MensajeError = "Ocurrió un error al guardar los movimientos de entrada"
End If
End If
End If
Case 2 'DESARMADO
'SALIDA PAQUETE
CveMovimientoSalida = ObjInventario.AddMovimiento(CveAlmacenDesarmado, 20, 1, Fecha, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObservacionesDesarmado.Text, CveVendedor:=CveVendedor, CveCliente:=If(UsuarioActual.Empresa.Funcionalidad(146) = "1", -1, CveCliente), Modulo:="ARMPAQ3")
FolioSalida = ObjInventario.Folio
If CveMovimientoSalida <= 0 Then
TieneError = True
MensajeError = "Ocurrió un error al guardar el movimiento de salida. Por favor vuelva a intentar."
Exit Select
End If
Dim CvePSTemp As Integer = CvePaqueteDesarmado
Dim CveSeccionAlmacen As Integer = -1
Dim Drp As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePaqueteDesarmado).FiltroPrimero("")
Dim CveUMTemp As Integer = Drp("CveUM").ToString.ToEntero
'Dim AplicaSeccion As Boolean = CBool(Drp("AplicaSeccion"))
'If AplicaSeccion Then
' CveSeccionAlmacen = GlobalDTInvPSSeccionesAlmacen(UsuarioActual.CveEmpresa, CveAlmacenDesarmado, CvePaqueteDesarmado).FiltroPrimeroValor("CveSeccionAlmacen").ToEntero
'End If
If AplicaSerie Then
For Each Gvr As GridViewRow In GvSeriesPaqueteDesarmado.Rows
'AGREGA MOVTO DETALLE DE LA SALIDA DEL PAQUETE
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoSalida, 1, CveUMTemp, CvePSTemp, 0, CveSeccionAlmacen:=-3, Serie:=Gvr.DataKey("Serie").ToString) Then
TieneError = True
MensajeError = "Ocurrió un error al guardar los detalles con serie del movimiento de salida"
Exit For
End If
'ELIMINA EN TABLA DE CONTROL DE PAQUETES CON SERIE
If Not ObjInventario.RemovePaqueteRelacionSeries(CvePSTemp, Gvr.DataKey("Serie").ToString) Then
TieneError = True
MensajeError = "Ocurrió un error al guardar los detalles con serie del movimiento de salida"
Exit For
End If
Next
Else
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoSalida, TxtCantidadDesarmado.Text.ToDecimal, CveUMTemp, CvePSTemp, 0, CveSeccionAlmacen:=CveSeccionAlmacen) Then
TieneError = True
MensajeError = "Ocurrió un error al guardar los movimientos de salida"
End If
End If
'ENTRADA COMPONENTES
If Not TieneError Then
CveMovimientoEntrada = ObjInventario.AddMovimiento(CveAlmacenDesarmado, 4, 1, Fecha, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObservacionesDesarmado.Text, CveVendedor:=CveVendedor, CveCliente:=If(UsuarioActual.Empresa.Funcionalidad(146) = "1", -1, CveCliente), CveMovimientoRelacionado:=CveMovimientoSalida, Modulo:="ARMPAQ4")
FolioEntrada = ObjInventario.Folio
If CveMovimientoEntrada <= 0 Then
MensajeError = "Ocurrió un error al guardar el movimiento de entrada correctamente. Por favor vuelva a intentar."
TieneError = True
Else
For Each Gvr As GridViewRow In GvDatosDesarmado.Rows
Dim Lote As String = If(Gvr.FCTextBox("TxtLote").Text = "", "-1", Gvr.FCTextBox("TxtLote").Text)
Dim FechaCaducidad As String = If(Gvr.FCTextBox("TxtCaducidad").Text = "", "-1", Gvr.FCTextBox("TxtCaducidad").Text)
If CBool(Gvr.DataKey("AplicaSeccion")) Then
CveSeccionAlmacen = GlobalDTInvPSSeccionesAlmacen(UsuarioActual.CveEmpresa, CveAlmacenDesarmado, CvePaqueteDesarmado).FiltroPrimeroValor("CveSeccionAlmacen").ToEntero
End If
If CBool(Gvr.DataKey("AplicaSerie")) Then
For Each Dr As DataRow In DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0}", Gvr.DataKey("Consec").ToEntero)).Rows
If Not ObjInventario.GetExistenciasPS(Gvr.DataKey("CvePS").ToString.ToEntero, Gvr.DataKey("CveUM").ToString.ToEntero, UsuarioActual.CveEmpresa, DdlAlmacenArmado.SelectedValue.ToEntero, FechaMovto:=Fecha.ToDateTime.ToString("yyyy/MM/dd HH:mm"), Serie:=Dr("Serie").ToString, CveVendedor:=CveVendedor, CveCliente:=If(UsuarioActual.Empresa.Funcionalidad(146) = "1", -1, CveCliente)) >= 1 Then
MensajeError = String.Format("El Producto <b>{0}</b> con Serie: <b>{1}</b> no tiene existencia suficiente", Dr("PS"), Dr("Serie"))
TieneError = True
Exit For
End If
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoEntrada, 1, Gvr.DataKey("CveUM").ToString.ToEntero, Gvr.DataKey("CvePS").ToString.ToEntero, Gvr.FCTextBox("TxtCosto").Text.ToDecimal, -1,
CveSeccionAlmacen:=CveSeccionAlmacen, Serie:=Dr("Serie").ToString, Lote:=Lote, FechaCaducidad:=FechaCaducidad.ToDate) Then
MensajeError = "Ocurrió un error al guardar los detalles con serie del movimiento de salida. Por favor vuelva a intentar."
TieneError = True
Exit For
End If
Next
If TieneError Then
Exit For
End If
Else
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoEntrada, Gvr.DataKey("Cantidad").ToString.ToDecimal, Gvr.DataKey("CveUM").ToString.ToEntero,
Gvr.DataKey("CvePS").ToString.ToEntero, Gvr.FCTextBox("TxtCosto").Text.ToDecimal, -1, CveSeccionAlmacen:=CveSeccionAlmacen, Lote:=Lote,
FechaCaducidad:=FechaCaducidad.ToDate) Then
MensajeError = "Ocurrió un error al guardar los detalles del movimiento de salida. Por favor vuelva a intentar."
TieneError = True
Exit For
End If
End If
Next
End If
End If
ConcepPrePoliza1 = "ARMPAQ3"
ConcepPrePoliza2 = "ARMPAQ4"
Modulo = "ARMPAQ3/ARMPAQ4"
End Select
'CONTABILIZAR MOVIMIENTOS
If Not TieneError Then
Dim ImportePrePoliza As Decimal = 0D
If ObjInventario.GetMovimientosDetalle(CveMovimientoEntrada, UsuarioActual.CveEmpresa) Then
ImportePrePoliza = ObjInventario.DtResultados.SUMD("Total")
End If
Dim MovAlmacen As Boolean = True
Dim OrigenMov As Integer = GlobalDTInvConceptos.FiltroPrimeroValor("Origen", "CveConcepto = " & 19).ToEntero
If OrigenMov = 1 Then
MovAlmacen = True
Else
MovAlmacen = False
End If
Dim CvePrePoliza As Integer = ObjConta.AddPrePolizas(Modulo, 74, ImportePrePoliza, ImportePrePoliza, 1, Fecha, Modulo, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not MovAlmacen, ImportePrePoliza, ImportePrePoliza, 68, ConcepPrePoliza2, ConcepPrePoliza2, CveMovimientoAlmacen:=CveMovimientoEntrada, CveSubProyecto:=-1, Contabilizable:=True) Then
TieneError = True
End If
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, MovAlmacen, ImportePrePoliza, ImportePrePoliza, 68, ConcepPrePoliza1, ConcepPrePoliza1, CveMovimientoAlmacen:=CveMovimientoSalida, Contabilizable:=True) Then
TieneError = True
End If
If ObjConta.ValidacionesPrePoliza(CvePrePoliza, UsuarioActual, Opcion:=6) Then
If ObjConta.ValorPolizaDescuadre > 0 Then
GuardaLogAD($"Inventarios/RecepcionAlmacen-PPCompOC | Error:{ObjConta.MensajePolizaDescuadre} Diferencia:{ObjConta.ValorDiferencia} | CvePrePoliza:{CvePrePoliza}", "LogPrePolizas")
TieneError = True
End If
End If
End If
Catch ex As Exception
TieneError = True
OnError("Ocurrió un error al generar el movimiento", ex)
End Try
Try
Select Case (Tipo)
Case 1 ' ARMADO
'SALIDA COMPONENTES
CveMovimientoSalida = ObjInventario.AddMovimiento(CveAlmacenArmado, 5, 1, Fecha, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObservacionesArmado.Text, CveVendedor:=CveVendedor, CveCliente:=If(UsuarioActual.Empresa.Funcionalidad(146) = "1", -1, CveCliente), Modulo:="ARMPAQ1")
FolioSalida = ObjInventario.Folio
If CveMovimientoSalida <= 0 Then
TieneError = True
MensajeError = "Ocurrió un error al guardar el movimiento de salida. Por favor vuelva a intentar."
Exit Select
End If
For Each Gvr As GridViewRow In GvDatosArmado.Rows
If Gvr.DataKey("Cantidad").ToString.ToDouble > 0 Then
Dim Lote As String = If(Gvr.FCTextBox("TxtLote").Text = "", "-1", Gvr.FCTextBox("TxtLote").Text)
Dim FechaCaducidad As String = If(Gvr.FCTextBox("TxtCaducidad").Text = "", "-1", Gvr.FCTextBox("TxtCaducidad").Text)
Dim CveSeccionAlmacen As Integer = Gvr.FCDropDownList("DdlSeccionAlmacen").SelectedValue.ToEntero()
If CBool(Gvr.DataKey("AplicaSerie")) Then
For Each Dr As DataRow In DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0}", Gvr.DataKey("Consec").ToEntero)).Rows
If Not ObjInventario.GetExistenciasPS(Gvr.DataKey("CvePS").ToString.ToEntero, Gvr.DataKey("CveUM").ToString.ToEntero, UsuarioActual.CveEmpresa, DdlAlmacenArmado.SelectedValue.ToEntero, FechaMovto:=Fecha.ToDateTime.ToString("yyyy/MM/dd HH:mm"), Serie:=Dr("Serie").ToString, CveVendedor:=CveVendedor, CveCliente:=If(UsuarioActual.Empresa.Funcionalidad(146) = "1", -1, CveCliente)) >= 1 Then
MensajeError = String.Format("El Producto <b>{0}</b> con Serie: <b>{1}</b> no tiene existencia suficiente", Dr("PS"), Dr("Serie"))
TieneError = True
Exit For
End If
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoSalida, 1, Gvr.DataKey("CveUM").ToString.ToEntero, Gvr.DataKey("CvePS").ToString.ToEntero, 0, -1,
CveSeccionAlmacen:=CveSeccionAlmacen, Serie:=Dr("Serie").ToString, Lote:=Lote, FechaCaducidad:=FechaCaducidad.ToDate) Then
MensajeError = "Ocurrió un error al guardar los detalles con serie del movimiento de salida. Por favor vuelva a intentar."
TieneError = True
Exit For
End If
Next
If TieneError Then
Exit For
End If
Else
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoSalida, Gvr.DataKey("Cantidad").ToString.ToDecimal, Gvr.DataKey("CveUM").ToString.ToEntero,
Gvr.DataKey("CvePS").ToString.ToEntero, 0, -1, CveSeccionAlmacen:=CveSeccionAlmacen, Lote:=Lote,
FechaCaducidad:=FechaCaducidad.ToDate) Then
MensajeError = "Ocurrió un error al guardar los detalles del movimiento de salida. Por favor vuelva a intentar."
TieneError = True
Exit For
End If
End If
End If
Next
'ENTRADA PAQUETE
If Not TieneError Then
CveMovimientoEntrada = ObjInventario.AddMovimiento(CveAlmacenArmado, 19, 1, Fecha, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObservacionesArmado.Text, CveVendedor:=CveVendedor, CveCliente:=If(UsuarioActual.Empresa.Funcionalidad(146) = "1", -1, CveCliente), CveMovimientoRelacionado:=CveMovimientoSalida, Modulo:="ARMPAQ2")
FolioEntrada = ObjInventario.Folio
If CveMovimientoEntrada <= 0 Then
MensajeError = "Ocurrió un error al guardar el movimiento de entrada correctamente. Por favor vuelva a intentar."
TieneError = True
Else
If ObjInventario.GetMovimientosDetalle(CveMovimientoSalida, UsuarioActual.CveEmpresa) Then
Dim PUTemp As Decimal = 0
For Each Dr As DataRow In ObjInventario.DtResultados.Rows
PUTemp += Dr("PU").ToString.ToDecimal * Dr("Cantidad").ToString.ToDecimal
Next
PUTemp = PUTemp / TxtCantidadArmado.Text.ToDecimal
Dim CvePSTemp = CvePaqueteArmado
Dim CveSeccionAlmacen As Integer = -1
Dim Drp As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePaqueteArmado).FiltroPrimero("")
Dim CveUMTemp As Integer = Drp("CveUM").ToString.ToEntero
Dim AplicaSeccion As Boolean = CBool(Drp("AplicaSeccion"))
If AplicaSeccion Then
CveSeccionAlmacen = GlobalDTInvPSSeccionesAlmacen(UsuarioActual.CveEmpresa, CveAlmacenArmado, CvePaqueteArmado).FiltroPrimeroValor("CveSeccionAlmacen").ToEntero
End If
If AplicaSerie Then
Dim ContadorPaquete = 1
Dim DtSeriesComponentes As New DataTable
For Each Gvr As GridViewRow In GvSeriesPaqueteArmado.Rows
'AGREGA MOVTO DETALLE DE LA ENTRADA DEL PAQUETE
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoEntrada, 1, CveUMTemp, CvePSTemp, PUTemp, CveSeccionAlmacen:=CveSeccionAlmacen, Serie:=Gvr.FCTextBox("TxtSerie").Text.Trim) Then
TieneError = True
MensajeError = "Ocurrió un error al guardar los detalles con serie del movimiento de entrada"
Exit For
End If
'INGRESA EN TABLA DE CONTROL DE PAQUETES CON SERIE
For Each Gvr2 As GridViewRow In GvDatosArmado.Rows
If CBool(Gvr2.DataKey("AplicaSerie")) Then
DtSeriesComponentes = New DataTable
DtSeriesComponentes = DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0}", Gvr2.DataKey("Consec").ToEntero)).Copy
Dim CantidadComponente = DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0}", Gvr2.DataKey("Consec").ToEntero)).Rows.Count / TxtCantidadArmado.Text.ToEntero
For index As Integer = (ContadorPaquete - 1) * CantidadComponente.ToEntero To (ContadorPaquete * CantidadComponente.ToEntero) - 1
If Not ObjInventario.AddPaqueteRelacionSeries(CvePSTemp, Gvr.FCTextBox("TxtSerie").Text.Trim, DtSeriesComponentes.Rows(index)("CvePS").ToString.ToEntero, DtSeriesComponentes.Rows(index)("Serie").ToString) Then
TieneError = True
Exit For
End If
Next
End If
Next
ContadorPaquete = ContadorPaquete + 1
Next
Else
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoEntrada, TxtCantidadArmado.Text.ToDecimal, CveUMTemp, CvePSTemp, PUTemp, CveSeccionAlmacen:=CveSeccionAlmacen) Then
TieneError = True
MensajeError = "Ocurrió un error al guardar los detalles del movimiento de entrada"
End If
End If
Else
TieneError = True
MensajeError = "Ocurrió un error al guardar los movimientos de entrada"
End If
End If
End If
Case 2 'DESARMADO
'SALIDA PAQUETE
CveMovimientoSalida = ObjInventario.AddMovimiento(CveAlmacenDesarmado, 20, 1, Fecha, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObservacionesDesarmado.Text, CveVendedor:=CveVendedor, CveCliente:=If(UsuarioActual.Empresa.Funcionalidad(146) = "1", -1, CveCliente), Modulo:="ARMPAQ3")
FolioSalida = ObjInventario.Folio
If CveMovimientoSalida <= 0 Then
TieneError = True
MensajeError = "Ocurrió un error al guardar el movimiento de salida. Por favor vuelva a intentar."
Exit Select
End If
Dim CvePSTemp As Integer = CvePaqueteDesarmado
Dim CveSeccionAlmacen As Integer = -1
Dim Drp As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePaqueteDesarmado).FiltroPrimero("")
Dim CveUMTemp As Integer = Drp("CveUM").ToString.ToEntero
'Dim AplicaSeccion As Boolean = CBool(Drp("AplicaSeccion"))
'If AplicaSeccion Then
' CveSeccionAlmacen = GlobalDTInvPSSeccionesAlmacen(UsuarioActual.CveEmpresa, CveAlmacenDesarmado, CvePaqueteDesarmado).FiltroPrimeroValor("CveSeccionAlmacen").ToEntero
'End If
If AplicaSerie Then
For Each Gvr As GridViewRow In GvSeriesPaqueteDesarmado.Rows
'AGREGA MOVTO DETALLE DE LA SALIDA DEL PAQUETE
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoSalida, 1, CveUMTemp, CvePSTemp, 0, CveSeccionAlmacen:=-3, Serie:=Gvr.DataKey("Serie").ToString) Then
TieneError = True
MensajeError = "Ocurrió un error al guardar los detalles con serie del movimiento de salida"
Exit For
End If
'ELIMINA EN TABLA DE CONTROL DE PAQUETES CON SERIE
If Not ObjInventario.RemovePaqueteRelacionSeries(CvePSTemp, Gvr.DataKey("Serie").ToString) Then
TieneError = True
MensajeError = "Ocurrió un error al guardar los detalles con serie del movimiento de salida"
Exit For
End If
Next
Else
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoSalida, TxtCantidadDesarmado.Text.ToDecimal, CveUMTemp, CvePSTemp, 0, CveSeccionAlmacen:=CveSeccionAlmacen) Then
TieneError = True
MensajeError = "Ocurrió un error al guardar los movimientos de salida"
End If
End If
'ENTRADA COMPONENTES
If Not TieneError Then
CveMovimientoEntrada = ObjInventario.AddMovimiento(CveAlmacenDesarmado, 4, 1, Fecha, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObservacionesDesarmado.Text, CveVendedor:=CveVendedor, CveCliente:=If(UsuarioActual.Empresa.Funcionalidad(146) = "1", -1, CveCliente), CveMovimientoRelacionado:=CveMovimientoSalida, Modulo:="ARMPAQ4")
FolioEntrada = ObjInventario.Folio
If CveMovimientoEntrada <= 0 Then
MensajeError = "Ocurrió un error al guardar el movimiento de entrada correctamente. Por favor vuelva a intentar."
TieneError = True
Else
For Each Gvr As GridViewRow In GvDatosDesarmado.Rows
Dim Lote As String = If(Gvr.FCTextBox("TxtLote").Text = "", "-1", Gvr.FCTextBox("TxtLote").Text)
Dim FechaCaducidad As String = If(Gvr.FCTextBox("TxtCaducidad").Text = "", "-1", Gvr.FCTextBox("TxtCaducidad").Text)
If CBool(Gvr.DataKey("AplicaSeccion")) Then
CveSeccionAlmacen = GlobalDTInvPSSeccionesAlmacen(UsuarioActual.CveEmpresa, CveAlmacenDesarmado, CvePaqueteDesarmado).FiltroPrimeroValor("CveSeccionAlmacen").ToEntero
End If
If CBool(Gvr.DataKey("AplicaSerie")) Then
For Each Dr As DataRow In DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0}", Gvr.DataKey("Consec").ToEntero)).Rows
If Not ObjInventario.GetExistenciasPS(Gvr.DataKey("CvePS").ToString.ToEntero, Gvr.DataKey("CveUM").ToString.ToEntero, UsuarioActual.CveEmpresa, DdlAlmacenArmado.SelectedValue.ToEntero, FechaMovto:=Fecha.ToDateTime.ToString("yyyy/MM/dd HH:mm"), Serie:=Dr("Serie").ToString, CveVendedor:=CveVendedor, CveCliente:=If(UsuarioActual.Empresa.Funcionalidad(146) = "1", -1, CveCliente)) >= 1 Then
MensajeError = String.Format("El Producto <b>{0}</b> con Serie: <b>{1}</b> no tiene existencia suficiente", Dr("PS"), Dr("Serie"))
TieneError = True
Exit For
End If
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoEntrada, 1, Gvr.DataKey("CveUM").ToString.ToEntero, Gvr.DataKey("CvePS").ToString.ToEntero, Gvr.FCTextBox("TxtCosto").Text.ToDecimal, -1,
CveSeccionAlmacen:=CveSeccionAlmacen, Serie:=Dr("Serie").ToString, Lote:=Lote, FechaCaducidad:=FechaCaducidad.ToDate) Then
MensajeError = "Ocurrió un error al guardar los detalles con serie del movimiento de salida. Por favor vuelva a intentar."
TieneError = True
Exit For
End If
Next
If TieneError Then
Exit For
End If
Else
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoEntrada, Gvr.DataKey("Cantidad").ToString.ToDecimal, Gvr.DataKey("CveUM").ToString.ToEntero,
Gvr.DataKey("CvePS").ToString.ToEntero, Gvr.FCTextBox("TxtCosto").Text.ToDecimal, -1, CveSeccionAlmacen:=CveSeccionAlmacen, Lote:=Lote,
FechaCaducidad:=FechaCaducidad.ToDate) Then
MensajeError = "Ocurrió un error al guardar los detalles del movimiento de salida. Por favor vuelva a intentar."
TieneError = True
Exit For
End If
End If
Next
End If
End If
ConcepPrePoliza1 = "ARMPAQ3"
ConcepPrePoliza2 = "ARMPAQ4"
Modulo = "ARMPAQ3/ARMPAQ4"
End Select
'CONTABILIZAR MOVIMIENTOS
If Not TieneError Then
Dim ImportePrePoliza As Decimal = 0D
If ObjInventario.GetMovimientosDetalle(CveMovimientoEntrada, UsuarioActual.CveEmpresa) Then
ImportePrePoliza = ObjInventario.DtResultados.SUMD("Total")
End If
Dim MovAlmacen As Boolean = True
Dim OrigenMov As Integer = GlobalDTInvConceptos.FiltroPrimeroValor("Origen", "CveConcepto = " & 19).ToEntero
If OrigenMov = 1 Then
MovAlmacen = True
Else
MovAlmacen = False
End If
Dim CvePrePoliza As Integer = ObjConta.AddPrePolizas(Modulo, 74, ImportePrePoliza, ImportePrePoliza, 1, Fecha, Modulo, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not MovAlmacen, ImportePrePoliza, ImportePrePoliza, 68, ConcepPrePoliza2, ConcepPrePoliza2, CveMovimientoAlmacen:=CveMovimientoEntrada, CveSubProyecto:=-1, Contabilizable:=True) Then
TieneError = True
End If
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, MovAlmacen, ImportePrePoliza, ImportePrePoliza, 68, ConcepPrePoliza1, ConcepPrePoliza1, CveMovimientoAlmacen:=CveMovimientoSalida, Contabilizable:=True) Then
TieneError = True
End If
If ObjConta.ValidacionesPrePoliza(CvePrePoliza, UsuarioActual, Opcion:=6) Then
If ObjConta.ValorPolizaDescuadre > 0 Then
GuardaLogAD($"Inventarios/RecepcionAlmacen-PPCompOC | Error:{ObjConta.MensajePolizaDescuadre} Diferencia:{ObjConta.ValorDiferencia} | CvePrePoliza:{CvePrePoliza}", "LogPrePolizas")
TieneError = True
End If
End If
End If
Catch ex As Exception
TieneError = True
OnError("Ocurrió un error al generar el movimiento", ex)
End Try
If Not TieneError Then
Dim Msg As New StringBuilder
Msg.AppendFormat("<br/>El Movimiento de salida se registro con el Folio: <b><a href=""/Inventarios/EntradasSalidas.aspx?CveMovimiento={0}"" target=""_blank"">{1}</a></b>", CveMovimientoSalida, FolioSalida)
@@ -802,10 +802,10 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
'End If
End Sub
End Sub
#End Region
#Region " GV ARMADO "
Protected Sub GvDatosArmado_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvDatosArmado.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
@@ -818,7 +818,7 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
'e.Row.FCTextBox("TbCantidadF").Text = Contador.ToString
'If AplicaSerie Then
e.Row.FCLinkButton("BtnSeriePaquete").Visible = True
e.Row.FCLinkButton("BtnSeriePaquete").Visible = True
e.Row.FCLinkButton("BtnSeriePaquete").Attributes.Add("data-toggle", "tooltip")
'End If
@@ -830,24 +830,24 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
e.Row.FCDropDownList("DdlSeccionAlmacen").Visible = False
Else
CargaSeccionesAlmacen(e.Row.FCDropDownList("DdlSeccionAlmacen"), DdlAlmacenArmado.SelectedValue.ToEntero, e.Row.DBCampo("CvePS").ToEntero, UsuarioActual.CveEmpresa)
End If
End If
If e.Row.DataKey("AplicaCaducidad") = "True" Then
e.Row.FCTextBox("TxtCaducidad").Visible = True
e.Row.FCLinkButton("LnkCaducidad").Visible = True
e.Row.FCTextBox("TxtCaducidad").ReadOnly = False
CType(e.Row.FindControl("RFVCaducidad"), RequiredFieldValidator).Enabled = True
e.Row.FCTextBox("TxtCaducidad").ReadOnly = False
CType(e.Row.FindControl("RFVCaducidad"), RequiredFieldValidator).Enabled = True
e.Row.FCTextBox("TxtCaducidad").Enabled = True
Else
e.Row.FCTextBox("TxtCaducidad").Visible = False
e.Row.FCLinkButton("LnkCaducidad").Visible = False
e.Row.FCTextBox("TxtCaducidad").Enabled = True
e.Row.FCTextBox("TxtCaducidad").Enabled = True
e.Row.FCTextBox("TxtCaducidad").ReadOnly = True
CType(e.Row.FindControl("RFVCaducidad"), RequiredFieldValidator).Enabled = False
End If
End If
e.Row.FCTextBox("TxtLote").Visible = e.Row.DataKey("AplicaLote") = "True"
''FUNCIONALIDAD PISTOLA DE CODIGOS
@@ -856,9 +856,9 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
'End If
End If
End Sub
End Sub
#End Region
#Region " GV DESARMADO "
Protected Sub GvDatosDesarmado_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvDatosDesarmado.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
@@ -879,14 +879,14 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
e.Row.FCTextBox("TxtCaducidad").Visible = True
e.Row.FCLinkButton("LnkCaducidad").Visible = True
e.Row.FCTextBox("TxtCaducidad").ReadOnly = False
CType(e.Row.FindControl("RFVCaducidad"), RequiredFieldValidator).Enabled = True
e.Row.FCTextBox("TxtCaducidad").ReadOnly = False
CType(e.Row.FindControl("RFVCaducidad"), RequiredFieldValidator).Enabled = True
e.Row.FCTextBox("TxtCaducidad").Enabled = True
Else
e.Row.FCTextBox("TxtCaducidad").Visible = False
e.Row.FCLinkButton("LnkCaducidad").Visible = False
e.Row.FCTextBox("TxtCaducidad").Enabled = True
e.Row.FCTextBox("TxtCaducidad").Enabled = True
e.Row.FCTextBox("TxtCaducidad").ReadOnly = True
CType(e.Row.FindControl("RFVCaducidad"), RequiredFieldValidator).Enabled = False
End If
@@ -895,9 +895,9 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
e.Row.FCTextBox("TxtCosto").Attributes.Add("onkeyup", "SumaValores();")
End If
End Sub
End Sub
#End Region
#Region " SERIE LOTE "
Private Sub CreaDtDetalle()
If DtDatosDetalle Is Nothing Then
@@ -1091,11 +1091,11 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
Protected Sub GvSerie_RowDeleting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles GvSerie.RowDeleting
DtDatosDetalle.Rows.Remove(DtDatosDetalle.Rows(e.RowIndex))
CargaSerie(2)
End Sub
End Sub
#End Region
#Region " SERIE DEL PAQUETE "
'SERIES ARMADO
'SERIES ARMADO
Protected Sub BtnSeriePaquete_Click(sender As Object, e As EventArgs)
Dim i = 1
Dim Dt As New DataTable
@@ -1196,8 +1196,8 @@ Partial Class Inventarios_PaquetesArmadoDesarmado
GvSeriesPaqueteDesarmado.DataBind()
UpSeriesPaqueteDesarmado.Update()
End Sub
End Sub
#End Region
End Class

View File

@@ -1,5 +1,6 @@
<%@ Page Language="VB" Title="Transportes V&A - Comprar Boleto" AutoEventWireup="false" MasterPageFile="~/Site.master" CodeFile="Boletos.aspx.vb"
Inherits="Boletos" %>
<%@ Page Language="VB" Title="Transportes V&A - Comprar Boleto" AutoEventWireup="false"
MasterPageFile="~/Site.master" CodeFile="Boletos.aspx.vb"
Inherits="Boletos" EnableEventValidation="true" %>
<asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server">
Comprar Boleto
@@ -11,6 +12,10 @@
margin-block: 1rem;
}
.mx-1 {
margin: 0 2rem;
}
.disponible {
display: inline-block;
width: 45px;
@@ -23,15 +28,15 @@
text-align: center;
}
.disponible:hover,.disponible.activo {
.disponible:hover, .disponible.activo {
background-color: #45b6af;
color: #fff;
}
{
background-color: #45b6af;
color: #fff;
}
{
background-color: #45b6af;
color: #fff;
}
.nodisponible {
display: inline-block;
@@ -56,9 +61,10 @@
text-align: center;
color: black
}
.btnChofer a{
color:#2C3E50;
}
.btnChofer a {
color: #2C3E50;
}
.btnChofer:hover {
@@ -67,408 +73,406 @@
</style>
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel runat="server" UpdateMode="Conditional" ID="upPanel">
<ContentTemplate>
<div class="row">
<div class="col-md-8">
<div class="portlet light xspadding bordered">
<div class="portlet-title">
<div class="caption font-green">
<i class="fa fa-users font-green"></i>
<span class="caption-subject bold uppercase">Datos del Cliente </span>
</div>
<div class="actions">
<div class="btn-group">
</div>
</div>
</div>
<div class="portlet-body form">
<div class="form-group form-md-line-input input-iconright ">
<asp:TextBox ID="TxtNombre" CssClass="form-control" runat="server" MaxLength="200" ClientIDMode="Static"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVTxtNombre" runat="server" ControlToValidate="TxtNombre" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Nombre''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<label for="<%= TxtNombre.ClientID.ToString()%>">Nombre:</label>
<i></i>
</div>
<div class="row " >
<div class="col-md-12">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtVisa" runat="server" Width="100%" CssClass="form-control" ></asp:TextBox>
<label for="<%= TxtVisa.ClientID.ToString()%>">Visa:</label>
<asp:UpdatePanel runat="server" UpdateMode="Conditional" ID="upPanel">
<ContentTemplate>
<div class="col-md-8">
<div class="portlet light xspadding bordered">
<div class="portlet-title">
<div class="caption font-green">
<i class="fa fa-users font-green"></i>
<span class="caption-subject bold uppercase">Datos del Cliente </span>
</div>
</div>
<div class="actions">
<div class="btn-group">
</div>
</div>
</div>
<div class="portlet-body form">
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="RblSexo" CssClass="form-control" runat="server" >
<asp:ListItem Text="Masculino" Value="1" Selected="True" />
<asp:ListItem Text="Femenino" Value="0" />
</asp:DropDownList>
<label for="<%= RblSexo.ClientID.ToString()%>">Sexo:</label>
<div class="form-group form-md-line-input input-iconright ">
<asp:TextBox ID="TxtNombre" CssClass="form-control" runat="server" MaxLength="200"
ClientIDMode="Static"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVTxtNombre" runat="server" ControlToValidate="TxtNombre"
CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Nombre''</b> es necesario, por favor ingréselo."
ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<label for="<%= TxtNombre.ClientID.ToString()%>">Nombre:</label>
<i></i>
</div>
</div>
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtCelular" runat="server" Width="100%" CssClass="form-control" ></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator12" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtCelular" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Celular''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<label for="<%= TxtCelular.ClientID.ToString()%>">Celular:</label>
</div>
</div>
</div>
<div class="form-group form-md-line-input input-iconright ">
<asp:TextBox ID="TxtObservaciones" CssClass="form-control" runat="server" MaxLength="200" ClientIDMode="Static"></asp:TextBox>
<label for="<%= TxtObservaciones.ClientID.ToString()%>">Observaciones:</label>
<i></i>
</div>
</div>
</div>
<div class="portlet light xspadding bordered ">
<div class="portlet-title">
<div class="caption font-yellow">
<i class=" fa fa-bus font-yellow"></i>
<span class="caption-subject bold uppercase">Datos del Viaje</span>
</div>
</div>
<div class="portlet-body form">
<div class="row ">
<div class="col-md-12">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtVisa" runat="server" Width="100%" CssClass="form-control"></asp:TextBox>
<label for="<%= TxtVisa.ClientID.ToString()%>">Visa:</label>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtRuta" runat="server" Width="100%" Enabled="false" CssClass="form-control" ></asp:TextBox>
<label for="<%= TxtRuta.ClientID.ToString()%>">Ruta:</label>
</div>
</div>
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlPartida" DataTextField="Destino"
AutoPostBack="true"
DataValueField="CveDestino" Class="form-control input-sm select2me" OnSelectedIndexChanged="DdlPartida_SelectedIndexChanged"
Width="200px" runat="server">
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVPartida" runat="server" ControlToValidate="DdlPartida"
Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Partida''</b> es necesario, por favor ingréselo."
ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<label for="<%= DdlPartida.ClientID.ToString()%>">Partida:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="RblSexo" CssClass="form-control" runat="server">
<asp:ListItem Text="Masculino" Value="1" Selected="True" />
<asp:ListItem Text="Femenino" Value="0" />
</asp:DropDownList>
<label for="<%= RblSexo.ClientID.ToString()%>">Sexo:</label>
<i></i>
</div>
</div>
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtCelular" runat="server" Width="100%" CssClass="form-control"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator12" runat="server" CssClass="help-block errorimput"
ControlToValidate="TxtCelular" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Celular''</b> es necesario, por favor ingréselo."
ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<label for="<%= TxtCelular.ClientID.ToString()%>">Celular:</label>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtFecha" runat="server" Width="100%" Enabled="false" CssClass="form-control" ></asp:TextBox>
<div class="form-group form-md-line-input input-iconright ">
<asp:TextBox ID="TxtObservaciones" CssClass="form-control" runat="server" MaxLength="200"
ClientIDMode="Static"></asp:TextBox>
<label for="<%= TxtObservaciones.ClientID.ToString()%>">Observaciones:</label>
<i></i>
</div>
</div>
</div>
<div class="portlet light xspadding bordered ">
<div class="portlet-title">
<div class="caption font-yellow">
<i class=" fa fa-bus font-yellow"></i>
<span class="caption-subject bold uppercase">Datos del Viaje</span>
</div>
</div>
<div class="portlet-body form">
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtRuta" runat="server" Width="100%" Enabled="false" CssClass="form-control"></asp:TextBox>
<label for="<%= TxtRuta.ClientID.ToString()%>">Ruta:</label>
</div>
</div>
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlPartida" AppendDataBoundItems="true" DataTextField="Destino"
AutoPostBack="true"
DataValueField="CveDestino" Class="form-control input-sm select2me"
OnTextChanged="CotizarTarifa"
Width="200px" runat="server">
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVPartida" runat="server" ControlToValidate="DdlPartida"
Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Partida''</b> es necesario, por favor ingréselo."
ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<label for="<%= DdlPartida.ClientID.ToString()%>">Partida:</label>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtFecha" runat="server" Width="100%" Enabled="false" CssClass="form-control"></asp:TextBox>
<label for="<%= TxtFecha.ClientID.ToString()%>">Fecha:</label>
</div>
</div>
<div class="col-md-6">
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlDestino" AppendDataBoundItems="true" DataTextField="Destino"
AutoPostBack="true"
DataValueField="CveDestino" Class="form-control input-sm select2me"
OnTextChanged="CotizarTarifa"
Width="200px" runat="server">
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVDestino" runat="server" ControlToValidate="DdlDestino"
Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Destino''</b> es necesario, por favor ingréselo."
ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<label for="<%= DdlDestino.ClientID.ToString()%>">Destino:</label>
</div>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlDestino" DataTextField="Destino"
AutoPostBack="true"
DataValueField="CveDestino" Class="form-control input-sm select2me"
OnSelectedIndexChanged="DdlDestino_SelectedIndexChanged"
Width="200px" runat="server">
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVDestino" runat="server" ControlToValidate="DdlDestino"
Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Destino''</b> es necesario, por favor ingréselo."
ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<label for="<%= DdlDestino.ClientID.ToString()%>">Destino:</label>
</div>
</div>
</div>
<div class="row">
<asp:Label runat="server" ID="TxtCosto" CssClass="text-success bold text-center"></asp:Label>
<div class="row">
<asp:Label runat="server" ID="TxtCosto" CssClass="text-success bold mx-1"></asp:Label>
<br />
<div class="text-center">
<asp:Button ID="BtnGuardar" Visible="False" OnClick="AddBoleto" runat="server" CssClass="btn btn-success margin-top-15"
<asp:Button ID="BtnGuardar" Visible="False" OnClick="AddBoleto" runat="server" CssClass="btn btn-success "
Text="Comprar Boleto"
ValidationGroup="GrpGuardar"></asp:Button>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</div>
<div class="col-md-4">
<div class="portlet light xspadding bordered margin-bottom-10">
<table>
<tbody>
<tr>
<td colspan="2" class="btnChofer my-1">
<asp:LinkButton ID="chofer" runat="server"
Text="<i class='fa fa-user'><br/>Chofer</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible"
runat="server" ID="A1" Text="<i class='fa fa-user my-1'><br/>1</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A2" runat="server"
Text="<i class='fa fa-user my-1'><br/>2</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A3" runat="server"
Text="<i class='fa fa-user my-1'><br/>3</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A4" runat="server"
Text="<i class='fa fa-user my-1'><br/>4</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A5" runat="server"
Text="<i class='fa fa-user my-1'><br/>5</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A6" runat="server"
Text="<i class='fa fa-user my-1'><br/>6</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A7" runat="server"
Text="<i class='fa fa-user my-1'><br/>7</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A8" runat="server"
Text="<i class='fa fa-user my-1'><br/>8</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A9" runat="server"
Text="<i class='fa fa-user my-1'><br/>9</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A10" runat="server"
Text="<i class='fa fa-user my-1'><br/>10</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A11" runat="server"
Text="<i class='fa fa-user my-1'><br/>11</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A12" runat="server"
Text="<i class='fa fa-user my-1'><br/>12</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A13" runat="server"
Text="<i class='fa fa-user my-1'><br/>13</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A14" runat="server"
Text="<i class='fa fa-user my-1'><br/>14</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A15" runat="server"
Text="<i class='fa fa-user my-1'><br/>15</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A16" runat="server"
Text="<i class='fa fa-user my-1'><br/>16</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A17" runat="server"
Text="<i class='fa fa-user my-1'><br/>17</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A18" runat="server"
Text="<i class='fa fa-user my-1'><br/>18</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A19" runat="server"
Text="<i class='fa fa-user my-1'><br/>19</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A20" runat="server"
Text="<i class='fa fa-user my-1'><br/>20</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A21" runat="server"
Text="<i class='fa fa-user my-1'><br/>21</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A22" runat="server"
Text="<i class='fa fa-user my-1'><br/>22</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A23" runat="server"
Text="<i class='fa fa-user my-1'><br/>23</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A24" runat="server"
Text="<i class='fa fa-user my-1'><br/>24</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A25" runat="server"
Text="<i class='fa fa-user my-1'><br/>25</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A26" runat="server"
Text="<i class='fa fa-user my-1'><br/>26</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A27" runat="server"
Text="<i class='fa fa-user my-1'><br/>27</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A28" runat="server"
Text="<i class='fa fa-user my-1'><br/>28</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A29" runat="server"
Text="<i class='fa fa-user my-1'><br/>29</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A30" runat="server"
Text="<i class='fa fa-user my-1'><br/>30</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A31" runat="server"
Text="<i class='fa fa-user my-1'><br/>31</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A32" runat="server"
Text="<i class='fa fa-user my-1'><br/>32</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A33" runat="server"
Text="<i class='fa fa-user my-1'><br/>33</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A34" runat="server"
Text="<i class='fa fa-user my-1'><br/>34</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A35" runat="server"
Text="<i class='fa fa-user my-1'><br/>35</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A36" runat="server"
Text="<i class='fa fa-user my-1'><br/>36</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A37" runat="server"
Text="<i class='fa fa-user my-1'><br/>37</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A38" runat="server"
Text="<i class='fa fa-user my-1'><br/>38</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A39" runat="server"
Text="<i class='fa fa-user my-1'><br/>39</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A40" runat="server"
Text="<i class='fa fa-user my-1'><br/>40</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A41" runat="server"
Text="<i class='fa fa-user my-1'><br/>41</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A42" runat="server"
Text="<i class='fa fa-user my-1'><br/>42</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A43" runat="server"
Text="<i class='fa fa-user my-1'><br/>43</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A44" runat="server"
Text="<i class='fa fa-user my-1'><br/>44</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A45" runat="server"
Text="<i class='fa fa-user my-1'><br/>45</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A46" runat="server"
Text="<i class='fa fa-user my-1'><br/>46</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A47" runat="server"
Text="<i class='fa fa-user my-1'><br/>47</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A48" runat="server"
Text="<i class='fa fa-user my-1'><br/>48</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A49" runat="server"
Text="<i class='fa fa-user my-1'><br/>49</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A50" runat="server"
Text="<i class='fa fa-user my-1'><br/>50</i>" />
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="col-md-4">
<div class="portlet light xspadding bordered margin-bottom-10">
<asp:UpdatePanel runat="server" UpdateMode="Conditional" ID="UPPAsientos">
<ContentTemplate>
<table>
<tbody>
<tr>
<td colspan="2" class="btnChofer my-1">
<asp:LinkButton ID="chofer" runat="server"
Text="<i class='fa fa-user'><br/>Chofer</i>" />
</td>
<td colspan="3"></td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible"
runat="server" ID="A1" Text="<i class='fa fa-user my-1'><br/>1</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A2" runat="server"
Text="<i class='fa fa-user my-1'><br/>2</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A3" runat="server"
Text="<i class='fa fa-user my-1'><br/>3</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A4" runat="server"
Text="<i class='fa fa-user my-1'><br/>4</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A5" runat="server"
Text="<i class='fa fa-user my-1'><br/>5</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A6" runat="server"
Text="<i class='fa fa-user my-1'><br/>6</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A7" runat="server"
Text="<i class='fa fa-user my-1'><br/>7</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A8" runat="server"
Text="<i class='fa fa-user my-1'><br/>8</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A9" runat="server"
Text="<i class='fa fa-user my-1'><br/>9</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A10" runat="server"
Text="<i class='fa fa-user my-1'><br/>10</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A11" runat="server"
Text="<i class='fa fa-user my-1'><br/>11</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A12" runat="server"
Text="<i class='fa fa-user my-1'><br/>12</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A13" runat="server"
Text="<i class='fa fa-user my-1'><br/>13</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A14" runat="server"
Text="<i class='fa fa-user my-1'><br/>14</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A15" runat="server"
Text="<i class='fa fa-user my-1'><br/>15</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A16" runat="server"
Text="<i class='fa fa-user my-1'><br/>16</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A17" runat="server"
Text="<i class='fa fa-user my-1'><br/>17</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A18" runat="server"
Text="<i class='fa fa-user my-1'><br/>18</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A19" runat="server"
Text="<i class='fa fa-user my-1'><br/>19</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A20" runat="server"
Text="<i class='fa fa-user my-1'><br/>20</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A21" runat="server"
Text="<i class='fa fa-user my-1'><br/>21</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A22" runat="server"
Text="<i class='fa fa-user my-1'><br/>22</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A23" runat="server"
Text="<i class='fa fa-user my-1'><br/>23</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A24" runat="server"
Text="<i class='fa fa-user my-1'><br/>24</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A25" runat="server"
Text="<i class='fa fa-user my-1'><br/>25</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A26" runat="server"
Text="<i class='fa fa-user my-1'><br/>26</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A27" runat="server"
Text="<i class='fa fa-user my-1'><br/>27</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A28" runat="server"
Text="<i class='fa fa-user my-1'><br/>28</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A29" runat="server"
Text="<i class='fa fa-user my-1'><br/>29</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A30" runat="server"
Text="<i class='fa fa-user my-1'><br/>30</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A31" runat="server"
Text="<i class='fa fa-user my-1'><br/>31</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A32" runat="server"
Text="<i class='fa fa-user my-1'><br/>32</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A33" runat="server"
Text="<i class='fa fa-user my-1'><br/>33</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A34" runat="server"
Text="<i class='fa fa-user my-1'><br/>34</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A35" runat="server"
Text="<i class='fa fa-user my-1'><br/>35</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A36" runat="server"
Text="<i class='fa fa-user my-1'><br/>36</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A37" runat="server"
Text="<i class='fa fa-user my-1'><br/>37</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A38" runat="server"
Text="<i class='fa fa-user my-1'><br/>38</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A39" runat="server"
Text="<i class='fa fa-user my-1'><br/>39</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A40" runat="server"
Text="<i class='fa fa-user my-1'><br/>40</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A41" runat="server"
Text="<i class='fa fa-user my-1'><br/>41</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A42" runat="server"
Text="<i class='fa fa-user my-1'><br/>42</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A43" runat="server"
Text="<i class='fa fa-user my-1'><br/>43</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A44" runat="server"
Text="<i class='fa fa-user my-1'><br/>44</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A45" runat="server"
Text="<i class='fa fa-user my-1'><br/>45</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A46" runat="server"
Text="<i class='fa fa-user my-1'><br/>46</i>" />
</td>
<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A47" runat="server"
Text="<i class='fa fa-user my-1'><br/>47</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A48" runat="server"
Text="<i class='fa fa-user my-1'><br/>48</i>" />
</td>
</tr>
<tr>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A49" runat="server"
Text="<i class='fa fa-user my-1'><br/>49</i>" />
</td>
<td>
<asp:LinkButton OnClick="OnLinkButtonClick" CssClass="disponible" ID="A50" runat="server"
Text="<i class='fa fa-user my-1'><br/>50</i>" />
</td>
</tr>
</tbody>
</table>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">

View File

@@ -20,7 +20,6 @@ Partial Class Boletos
ViewState("Importe") = value
End Set
End Property
Private Property CveViaje As Integer
Get
Return ViewState("CveViaje").ToString().ToEntero
@@ -68,7 +67,6 @@ Partial Class Boletos
'Boletos Vendidos
Dim dt As DataTable
If ObjViaje.GetViajesPasajeros(CveViaje, Estatus:=1) Then 'Poner párametro para estatus y cancelado de viajes
dt = ObjViaje.DtResultados
dt = ObjViaje.DtResultados
Dim cph As ContentPlaceHolder = CType(Me.Master.FindControl("C"), ContentPlaceHolder)
For Each dr As DataRow In dt.Rows
@@ -90,7 +88,7 @@ Partial Class Boletos
End Sub
Private Sub CargaDestinos()
Protected Sub CargaDestinos()
Dim ObjDestinos As New ClsTransportes()
If ObjDestinos.GetDestinos(CveRuta:=CveRuta) Then
@@ -108,7 +106,7 @@ Partial Class Boletos
End If
ObjDestinos.Dispose()
End Sub
Private Sub CotizarTarifa()
Protected Sub CotizarTarifa(sender As Object, e As EventArgs)
If DdlDestino.SelectedValue <> "" And DdlPartida.SelectedValue <> "" Then
Dim ObjDestinos As New ClsTransportes()
@@ -169,6 +167,8 @@ Partial Class Boletos
TxtVisa.Text = ""
TxtCelular.Text = ""
TxtObservaciones.Text = ""
AsientoSeleccionado = ""
upPanel.Update()
End If
Catch ex As Exception
ObjTransporte.RollBack()
@@ -181,10 +181,10 @@ Partial Class Boletos
Protected Sub DdlPartida_SelectedIndexChanged(sender As Object, e As EventArgs)
CotizarTarifa()
CotizarTarifa(sender, e)
End Sub
Protected Sub DdlDestino_SelectedIndexChanged(sender As Object, e As EventArgs)
CotizarTarifa()
CotizarTarifa(sender, e)
End Sub
End Class

View File

@@ -12,10 +12,6 @@
margin-block: .5rem;
}
.fecha {
padding: 3px;
}
.masivo {
color: green;
}
@@ -223,12 +219,13 @@
</div>
</div>
<div class="row my-1 truncate">
<label class="col-md-4 input-group date date-picker " data-date-format="dd/mm/yyyy">
Fecha Viaje:</label>
<div class="col-md-8 fecha">
<div class="input-group input-sm input-small date date-picker">
<asp:TextBox ID="TxtFechaViaje" runat="server" CssClass="form-control" CausesValidation="True"
<div class="row margin-bottom-5">
<label class="col-md-4">
<asp:Label runat="server" Text="Fecha Viaje:"></asp:Label></label>
<div class="col-md-8">
<div class="">
<asp:TextBox ID="TxtFechaViaje" runat="server" Class="form-control input-sm select2me"
Width="200px" CausesValidation="True"
type="date"
MaxLength="10">
</asp:TextBox>

View File

@@ -2722,7 +2722,7 @@ Partial Class Ventas
If Request("CveManifiesto") IsNot Nothing AndAlso IsNumeric(Request("CveManifiesto")) AndAlso Request("CveManifiesto").ToEntero() > 0 Then
Using ObjCGame As New ClsCGame()
If ObjCGame.ManifiestoGet(Request("CveManifiesto").ToEntero(), -1, -1, -1, -1, -1, -1, -1, -1, UsuarioActual.CveEmpresa, "-1", "-1") Then
If ObjCGame.ManifiestoGet(Request("CveManifiesto").ToEntero(), -1, -1, -1, -1, -1, -1, -1, -1, UsuarioActual.CveEmpresa, "-1", "-1") AndAlso ObjCGame.DtResultados.Rows.Count > 0 Then
DdlSubProyectoDatos.SelectedValueExist(ObjCGame.DtResultados.Rows(0)("CveSubProyecto").ToString())
End If
@@ -2733,6 +2733,10 @@ Partial Class Ventas
End If
End Using
If AplicaComercioExterior Then
CargaGvComercioExterior()
End If
End If
If Request("CveEmbarqueManifiesto") IsNot Nothing AndAlso IsNumeric(Request("CveEmbarqueManifiesto")) AndAlso Request("CveEmbarqueManifiesto").ToEntero() > 0 Then
@@ -8294,6 +8298,7 @@ Partial Class Ventas
End Sub
Protected Sub GvPS_RowUpdating(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewUpdateEventArgs) Handles GvPS.RowUpdating
'Dim TipoDescuento As Integer
Dim Cantidad, PU, CantidadInventario As Decimal
Dim ObjDescuento As New Modelos.VentaDescuentos
Dim CuentaPredial As String
@@ -8326,6 +8331,7 @@ Partial Class Ventas
End If
Dim CantidadOriginal As Decimal = GvPS.Rows(e.RowIndex).DataKey("Cantidad").ToDecimal()
Dim TotalOriginal As Decimal = GvPS.Rows(e.RowIndex).DataKey("Total").ToDecimal()
Dim DatarowPS As DataRow = Nothing
DatarowPS = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=TmpDT.Rows(e.RowIndex)("CvePS").ToString().ToEntero()).FiltroPrimero("") ' Estado = -1
@@ -8631,6 +8637,30 @@ Partial Class Ventas
ObjDescuento.Consec = TmpDT.Rows(e.RowIndex)("Consec").ToString().ToEntero()
End If
'RECALCULA LA CANTIDAD DE CONVERSION
If CantidadOriginal <> Cantidad Then
Dim CantidadConversion As Decimal = TmpDT.Rows(e.RowIndex)("CantidadConversion").ToString().ToDecimal()
If AplicaComercioExterior Then
'SI NO VIENE DE MANIFIESTO UTILIZA EL PESO DEL PRODUCTO
If Request("CveManifiesto") Is Nothing Then
If DrPS("PesoKg").ToString().ToDecimal() > 0 Then
CantidadConversion = Cantidad * DrPS("PesoKg").ToString().ToDecimal()
Else
CantidadConversion = Cantidad
End If
Else
Dim TotalNuevo As Decimal = TmpDT.Rows(e.RowIndex)("Total").ToString().ToDecimal()
Dim PorcentajeConversion As Decimal = CantidadConversion / TotalOriginal
CantidadConversion = TotalNuevo * PorcentajeConversion
End If
Else
CantidadConversion = Cantidad
End If
TmpDT.Rows(e.RowIndex)("CantidadConversion") = CantidadConversion
End If
DrPS = Nothing
@@ -18466,7 +18496,7 @@ Partial Class Ventas
'SI NO SE UTILIZA LA CONVERSION, UTILIZA LA CANTIDAD
If CantidadConversion = 0 Then
If DrPS("PesoKg").ToString().ToDecimal() > 0 Then
CantidadConversion = DrPS("PesoKg").ToString().ToDecimal()
CantidadConversion = Cantidad * DrPS("PesoKg").ToString().ToDecimal()
Else
CantidadConversion = Cantidad
End If
@@ -29688,9 +29718,9 @@ Partial Class Ventas
Protected Sub GvComercioExterior_RowDataBound(sender As Object, e As GridViewRowEventArgs)
If e.Row.RowType = DataControlRowType.DataRow Then
Dim CantidadConversion = CDbl(e.Row.DBCampo("CantidadConversion"))
Dim CantidadBase = CDbl(e.Row.DBCampo("Cantidad"))
Dim PUBase = CDbl(e.Row.DBCampo("PU"))
Dim CantidadConversion = e.Row.DBCampo("CantidadConversion").ToDecimal()
Dim CantidadBase = e.Row.DBCampo("Cantidad").ToDecimal()
Dim PUBase = e.Row.DBCampo("PU").ToDecimal()
Dim TotalUSD = (CantidadBase * PUBase)