diff --git a/App_Code/ClsPaginas.vb b/App_Code/ClsPaginas.vb index f733f1889..4415487d8 100644 --- a/App_Code/ClsPaginas.vb +++ b/App_Code/ClsPaginas.vb @@ -9476,6 +9476,7 @@ Public Class ClsPaginas PaginaDict.Add("/Transportes/ListadoContratos.aspx".ToUpper(), 598) PaginaDict.Add("/Transportes/ListadoViajes.aspx".ToUpper(), 598) PaginaDict.Add("/Transportes/Boletos.aspx".ToUpper(), 598) + PaginaDict.Add("/Transportes/ListadoBoletos.aspx".ToUpper(), 598) #End Region 'Antes de aquí. diff --git a/OS/OrdenesServicios.aspx b/OS/OrdenesServicios.aspx index 2101a511f..60aba9788 100644 --- a/OS/OrdenesServicios.aspx +++ b/OS/OrdenesServicios.aspx @@ -1304,20 +1304,31 @@ Serie - + Lote - + Fecha Cad. - - + + <%--
+ + + + + + + + +
--%>
diff --git a/OS/OrdenesServicios.aspx.vb b/OS/OrdenesServicios.aspx.vb index 322193c0b..9e9ad2737 100644 --- a/OS/OrdenesServicios.aspx.vb +++ b/OS/OrdenesServicios.aspx.vb @@ -5,6 +5,8 @@ Imports Extensiones Imports System.IO Imports System.Data Imports Telerik.Web.UI +Imports System.Data.SqlClient +Imports Stimulsoft.Report.StiOptions.Export Partial Class OS_OrdenesServicios Inherits ClsPaginas @@ -838,11 +840,14 @@ Partial Class OS_OrdenesServicios Dim ObjMateriales As New ClsOS If ObjMateriales.GetDetalleMateriales(CveOsDetalle, CveOS, -1) Then + For Each RowE As DataRow In ObjMateriales.DtResultados.Rows Dim Row As DataRow = Nothing Row = TmpDTMaterialesDetalle.NewRow() + + Row("CveConsecutivo") = Consecutivo Row("CveConsecutivoDetalle") = CveConsecutivoDetalle Row("CveOSDetalle") = CveOsDetalle @@ -3084,6 +3089,8 @@ Partial Class OS_OrdenesServicios Dim CveSubProyectoPedido As Integer = DTSolicitudDev.FiltroPrimeroValor("CveSubProyecto").ToEntero Dim CveVentaPedido As Integer = DTSolicitudDev.FiltroPrimeroValor("CveVenta").ToEntero + + Dim CveAlmacenDestino As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa, 10).FiltroPrimeroValor("CveAlmacen", $"CveSubProyecto = {CveSubProyectoPedido}").ToEntero If Not CveAlmacenDestino > 0 Then @@ -3129,10 +3136,10 @@ Partial Class OS_OrdenesServicios End If Next - If SbErroresDev.ToString.Length > 0 Then - Alert($"Se encontraron los siguientes errores:
{SbErroresDev.ToString}", TipoMensaje.MsgAdvertencia) - Exit Sub - End If + 'If SbErroresDev.ToString.Length > 0 Then + ' Alert($"Se encontraron los siguientes errores:
{SbErroresDev.ToString}", TipoMensaje.MsgAdvertencia) + ' Exit Sub + 'End If Dim ProcesoOK As Boolean = True Dim ObjV As New ClsVentas @@ -3157,11 +3164,23 @@ Partial Class OS_OrdenesServicios Next End If + + Dim Respuesta = New RespuestaFacturacion() + + If PropcesoOK Then + + Respuesta = GeneraRemision(CveVentaPedido, ObjV.IniciaTransacSQL()) + If Not Respuesta.CveVenta > 0 Then + PropcesoOK = False + End If + + End If + If ProcesoOK Then Dim ObjInventario As New ClsInventarios(ObjV.IniciaTransacSQL()) - Dim CveMovimiento As Integer = ObjInventario.AddMovimiento(CveAlmacenActual, 8, CveMoneda, ClsPaginas.NowADS(), -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, CveVentaPedido, CveSubProyectoPedido, -1, CveOS:=CveOS, CveAlmacenDestino:=CveAlmacenDestino) + Dim CveMovimiento As Integer = ObjInventario.AddMovimiento(CveAlmacenActual, 8, CveMoneda, ClsPaginas.NowADS(), -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, Respuesta.CveVenta, CveSubProyectoPedido, -1, CveOS:=CveOS, CveAlmacenDestino:=CveAlmacenDestino) Dim Folio As Integer = ObjInventario.Folio If CveMovimiento > 0 Then @@ -3191,7 +3210,7 @@ Partial Class OS_OrdenesServicios If ProcesoOK Then - Dim CveMovimientoSalida As Integer = ObjInventario.AddMovimiento(CveAlmacenDestino, 9, CveMoneda, ClsPaginas.NowADS(), -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, CveVentaPedido, CveSubProyectoPedido, -1, CveOS:=CveOS, CveMovimientoRelacionado:=CveMovimiento) + Dim CveMovimientoSalida As Integer = ObjInventario.AddMovimiento(CveAlmacenDestino, 9, CveMoneda, ClsPaginas.NowADS(), -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, Respuesta.CveVenta, CveSubProyectoPedido, -1, CveOS:=CveOS, CveMovimientoRelacionado:=CveMovimiento) If ObjInventario.GetMovimientosDetalle(CveMovimiento, UsuarioActual.CveEmpresa) AndAlso ObjInventario.DtResultados.Rows.Count > 0 Then @@ -3231,11 +3250,11 @@ Partial Class OS_OrdenesServicios End If End If - If ProcesoOK Then - 'ObjV.RollBack() + + If PropcesoOK Then ObjV.Commit() Alert("El material utilizado se guardó correctamente") - RegistraScript("$('#DivModalMaterialUtilizado').modal('hide');") + RegistraScript("$('#DVModalSolicitarDevolucion').modal('hide');") Else ObjV.RollBack() End If @@ -3244,4 +3263,92 @@ Partial Class OS_OrdenesServicios End Sub + Private Function GeneraRemision(CveVentaPedido As Integer, ByRef TransaccionSQL As SqlTransaction) As RespuestaFacturacion + + Dim Respuesta = New RespuestaFacturacion() + + Dim CveRemiocionGenerada As Integer = -1 + + Dim ObjVentas As New ClsVentas(TransaccionSQL) + Dim ProcesoOK As Boolean = True + + Dim CveSubProyectoPedido As Integer = -1 + Dim CveMoneda As Integer = -1 + + If ObjVentas.GetVenta(CveVenta, UsuarioActual.CveEmpresa, VerificaAlmacen:=False) Then + Dim DbRowVenta As DataRow = ObjVentas.DtResultados.Copy().Rows(0) + CveMoneda = DbRowVenta("CveMoneda").ToString.ToEntero + CveSubProyectoPedido = DbRowVenta("CveSubProyecto").ToString().ToEntero() + End If + + Dim ObjFactura = Modelos.Factura.CrearVentaNueva(UsuarioActual, CveSubProyectoPedido, CveCliente, CveMoneda, "Ped") + + If ObjFactura IsNot Nothing Then + + If ProcesoOK Then + + For Each GvRow As GridViewRow In GvSolicitarDevolucion.Rows + + Dim CvePS As Integer = GvRow.DataKey("CvePS").ToEntero + Dim Cantidad As Decimal = GvRow.DataKey("Cantidad").ToDecimal + Dim CantidadDev As Decimal = GvRow.FCTextBox("TxtDev").Text.ToDecimal + Dim CantidadRegistro = Cantidad - CantidadDev + Dim PU As Decimal = GvRow.DataKey("PU").ToDecimal + Dim Descuento As Decimal = GvRow.DataKey("Descuento").ToDecimal + Dim Obs As String = GvRow.DataKey("Observaciones") + + If Not ObjFactura.AgregarPS(CvePS, CantidadRegistro, PU, Descuento, Obs, CveSubProyecto:=CveSubProyectoPedido) Then + Alert("Error al agregar producto", TipoMensaje.MsgAdvertencia) + ProcesoOK = False + Exit For + End If + + Next + + If ProcesoOK Then + ObjFactura.CalculaTotales() + + + Dim Resp As New Modelos.Factura.MMensajeFactura + Resp = ObjFactura.EmitirFactura(False, Transac:=TransaccionSQL) + + If Resp.CveVenta > 0 Then + Respuesta.CveVenta = Resp.CveVenta + Respuesta.SerieFolio = Resp.SerieFolio + Else + ProcesoOK = False + End If + + End If + + + End If + + Else + ProcesoOK = False + End If + + Return Respuesta + + End Function + + + + + + + + Friend Class RespuestaFacturacion + Public Property CveVenta As Integer = -1 + Public Property SerieFolio As String = "-1" + Public Sub New() + + End Sub + End Class + + + + + + End Class \ No newline at end of file diff --git a/Transportes/Boletos.aspx b/Transportes/Boletos.aspx index 85959c08e..dd12a91c2 100644 --- a/Transportes/Boletos.aspx +++ b/Transportes/Boletos.aspx @@ -37,7 +37,7 @@ display: inline-block; width: 45px; height: 45px; - background-color: #E7505A; + background-color: #F3565D; border-radius: 10px !important; margin: 5px; cursor: pointer; @@ -217,60 +217,7 @@ -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+ diff --git a/Transportes/Boletos.aspx.vb b/Transportes/Boletos.aspx.vb index 43a671f0d..3b878b195 100644 --- a/Transportes/Boletos.aspx.vb +++ b/Transportes/Boletos.aspx.vb @@ -1,5 +1,5 @@ -Imports Extensiones -Imports System.Data +Imports System.Data +Imports Extensiones Partial Class Boletos Inherits ClsPaginas @@ -66,22 +66,20 @@ Partial Class Boletos 'Boletos Vendidos Dim dt As DataTable If ObjViaje.GetViajesPasajeros(CveViaje) Then - GvBoletos.DataSource = ObjViaje.DtResultados dt = ObjViaje.DtResultados Dim cph As ContentPlaceHolder = CType(Me.Master.FindControl("C"), ContentPlaceHolder) For Each dr As DataRow In dt.Rows Dim lnk As LinkButton = CType(cph.FindControl($"A{dr("Asiento")}"), LinkButton) If lnk IsNot Nothing Then - lnk.Enabled = False ' se vendieron - lnk.BackColor = Drawing.Color.Red - 'falta ponerlelos colores rojos, colorear con + lnk.Enabled = False + lnk.CssClass = "nodisponible" + lnk.ToolTip = dr("Nombre").ToString End If Next End If End If ObjViaje.Dispose() - GvBoletos.DataBind() End Sub diff --git a/Transportes/ListadoBoletos.aspx b/Transportes/ListadoBoletos.aspx new file mode 100644 index 000000000..56f94003e --- /dev/null +++ b/Transportes/ListadoBoletos.aspx @@ -0,0 +1,107 @@ +<%@ Page Language="VB" AutoEventWireup="false" MasterPageFile="~/Site.master" CodeFile="ListadoBoletos.aspx.vb" + Inherits="ListadoBoletos" EnableEventValidation="true" %> + + + Listado de Boletos + + + + + + + + + +
  • + Contratos +
  • +
  • + Viajes +
  • +
    +
    +
    + + + +
    + " + style="display: inline-block; margin-right: -20px; width: 150px;" /> + " + style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"> + +
    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + diff --git a/Transportes/ListadoBoletos.aspx.vb b/Transportes/ListadoBoletos.aspx.vb new file mode 100644 index 000000000..0addc5160 --- /dev/null +++ b/Transportes/ListadoBoletos.aspx.vb @@ -0,0 +1,43 @@ +Option Explicit On +Option Strict On +Imports ADSNetLibrary.SIGAPI.Helpers +Imports Extensiones.ModExtensiones + +Partial Class ListadoBoletos + Inherits ClsPaginas + Private Property CveViaje As Integer + Get + Return ViewState("CveViaje").ToString().ToEntero + End Get + Set(value As Integer) + ViewState("CveViaje") = value + End Set + End Property + Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load + If Not IsPostBack Then + If Request.QueryString("CveViaje") Is Nothing Then + Response.Redirect("/Transportes/ListadoViajes.aspx") + End If + CveViaje = Request.QueryString("CveViaje").ToEntero + + InicializaCombos() + CargaDatos() + End If + End Sub + + Private Sub InicializaCombos() + + End Sub + + Private Sub CargaDatos() + Dim ObjTransportes As New ClsTransportes + + If ObjTransportes.GetViajesPasajeros(CveViaje) Then + + GvBoletos.DataSource = ObjTransportes.DtResultados + ObjTransportes.Dispose() + GvBoletos.DataBind() + End If + End Sub + +End Class \ No newline at end of file diff --git a/Transportes/ListadoViajes.aspx b/Transportes/ListadoViajes.aspx index 9377bb548..67bcd60c0 100644 --- a/Transportes/ListadoViajes.aspx +++ b/Transportes/ListadoViajes.aspx @@ -103,9 +103,13 @@ CssClass="btn btn-circle btn-sm red" OnClick="RemoveViaje" Text="" data-toggle="confirmation" data-popout="true" data-original-title='<%# If(Eval("CveMasivo").ToString <> "", "Eliminación masiva", "Confirmar") %>' data-btn-ok-label="si" /> + + CssClass="btn btn-circle btn-sm blue" Text="" + OnClick="GoViaje" /> + diff --git a/Transportes/ListadoViajes.aspx.vb b/Transportes/ListadoViajes.aspx.vb index 4207e0c93..83208732e 100644 --- a/Transportes/ListadoViajes.aspx.vb +++ b/Transportes/ListadoViajes.aspx.vb @@ -232,5 +232,9 @@ Partial Class ListadoViajes Dim CveViaje As String = GvRow.DataKey("CveViaje") Response.Redirect(String.Format("~/Transportes/Boletos.aspx?CveViaje={0}", CveViaje)) End Sub - + Protected Sub GoBoletos(sender As Object, e As EventArgs) + Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) + Dim CveViaje As String = GvRow.DataKey("CveViaje") + Response.Redirect(String.Format("~/Transportes/ListadoBoletos.aspx?CveViaje={0}", CveViaje)) + End Sub End Class