From 0d4add5d3ceb252e05308d44b7f5679a5aa6be10 Mon Sep 17 00:00:00 2001 From: rrene Date: Fri, 20 Sep 2024 11:33:38 -0700 Subject: [PATCH] -- mejora SMS, manejo de pago directo --- Ventas/Ventas.aspx | 4 +-- Ventas/Ventas.aspx.vb | 74 +++++++++++++++++++------------------------ 2 files changed, 34 insertions(+), 44 deletions(-) diff --git a/Ventas/Ventas.aspx b/Ventas/Ventas.aspx index e67f1894d..cb2a7d753 100644 --- a/Ventas/Ventas.aspx +++ b/Ventas/Ventas.aspx @@ -602,13 +602,13 @@ - Requiere Técnico: + Req. Técnico: - Fecha de Cirugía: + Fecha de Cx: diff --git a/Ventas/Ventas.aspx.vb b/Ventas/Ventas.aspx.vb index cdef1106b..8e42db2f3 100644 --- a/Ventas/Ventas.aspx.vb +++ b/Ventas/Ventas.aspx.vb @@ -14194,7 +14194,6 @@ Partial Class Ventas End If End If - If UsuarioActual.Empresa.Funcionalidad(578) = "1" AndAlso EsVentaMedica Then Dim CveClientesucursatTemp As Integer = DdlClienteSucursalSucursal() If CveClientesucursatTemp > 0 Then @@ -14227,20 +14226,19 @@ Partial Class Ventas End If If RBLTipoVenta.SelectedValue = "2" Then - If Not ChkRequiereTecnico.Checked Then + If DdlTipoComprobante.SelectedValue = "Rem" Then 'Not ChkRequiereTecnico.Checked, antes CveAlmacenTraspasoDestino = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveAlmacen", $"CveTipoAlmacen = 10 AND CveSubProyecto = {DdlSubProyectoDatos.SelectedValue}").ToString().ToEntero() + ElseIf DdlTipoComprobante.SelectedValue = "Ped" Then + CveAlmacenTraspasoDestino = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveAlmacen", $"CveTipoAlmacen = 4 AND Almacen like '%Pago%' AND CveSubProyecto = {DdlSubProyectoDatos.SelectedValue}").ToString().ToEntero() End If - If CveAlmacenTraspasoDestino <= 0 Then ErrorList.Add("Ocurrió un error al seleccionar el almacen de entrega por adelantado.") End If - Else If CveAlmacenTraspasoDestino <= 0 Then ErrorList.Add("Ocurrió un error al seleccionar el almacen de resguardo del cliente.") End If End If - End If Dim TotalImpuestoLocal As Double = 0 @@ -14297,13 +14295,11 @@ Partial Class Ventas RFCReceptor = factura.ClienteSucursal.RFC End If End If - End If Dim DescripcionVenta As String = "" If TxtDescripcionVenta.Text <> "" Then DescripcionVenta = TxtDescripcionVenta.Text - Dim CveMedico As Integer = -1 Dim CveProcedimiento As Integer = -1 Dim CveTipoVentaGuardar As Integer = -1 @@ -14701,8 +14697,11 @@ Partial Class Ventas ErrorList.Add("Ocurrió un error al actualizar el estatus del pedido2") End If End If + Dim GenerarOS As Boolean = ChkRequiereTecnico.Checked + 'si es pago directo, genera siempre OS + If RBLTipoVenta.SelectedValue = "2" Then GenerarOS = True - If EsVentaMedica AndAlso ErrorList.Count = 0 AndAlso ChkRequiereTecnico.Checked Then + If EsVentaMedica AndAlso ErrorList.Count = 0 AndAlso GenerarOS Then GeneraOS(ObjVentas.IniciaTransacSQL, ErrorList, CveVentaOS:=factura.CveVenta, SerieFolioOS:=factura.SerieFolio) @@ -38565,10 +38564,7 @@ Partial Class Ventas Protected Sub ChkRequiereTecnico_CheckedChanged(sender As Object, e As EventArgs) - TdFechaOS1.Visible = ChkRequiereTecnico.Checked - - UpCliente.Update() End Sub @@ -38732,14 +38728,12 @@ Partial Class Ventas Exit Sub End If End If - If DdlClienteSucursalCliente() > 0 Then CveClienteOS = DdlClienteSucursalCliente() Else Alert("Debe de seleccionar un hospital.", TipoMensaje.MsgAdvertencia) Exit Sub End If - Else If DdlClienteSucursalCliente() > 0 Then ViewState("CveCliente") = DdlClienteSucursalCliente() @@ -38778,8 +38772,8 @@ Partial Class Ventas ChkRequiereTecnico.Checked = ChkRequiereTecnicoModal.Checked TxtFechaOS.Text = TxtFechaModal.Text - TdFechaOS1.Visible = ChkRequiereTecnicoModal.Checked - TdFechaOS2.Visible = ChkRequiereTecnicoModal.Checked + 'TdFechaOS1.Visible = ChkRequiereTecnicoModal.Checked + 'TdFechaOS2.Visible = ChkRequiereTecnicoModal.Checked DdlMedico.SelectedValueExist(DdlMedicoModal.SelectedValue) DdlProcedimiento.SelectedValueExist(DdlProcedimientoModal.SelectedValue) @@ -38797,18 +38791,18 @@ Partial Class Ventas DdlTipoComprobante.SelectedValueExistInsert("Rem", "Remisión") End If ElseIf RBLTipoVenta.SelectedValue.Contiene("3") Then ' A vista - DdlTipoComprobante.Items.Insert(DdlTipoComprobante.Items.Count, New ListItem("Pedido", "Ped")) - DdlTipoComprobante.SelectedValueExist("Ped") - TrVentasMedicas1.Visible = False - TrVentasMedicas2.Visible = False - ChkRequiereTecnico.Enabled = True - ElseIf RBLTipoVenta.SelectedValue.Contiene("4") Then ' consignacion - DdlTipoComprobante.SelectedValueExist("Ing") - TrVentasMedicas1.Visible = False - TrVentasMedicas2.Visible = False - ChkRequiereTecnico.Enabled = True - Else - DdlTipoComprobante.Items.Insert(DdlTipoComprobante.Items.Count, New ListItem("Pedido", "Ped")) + DdlTipoComprobante.Items.Insert(DdlTipoComprobante.Items.Count, New ListItem("Pedido", "Ped")) + DdlTipoComprobante.SelectedValueExist("Ped") + TrVentasMedicas1.Visible = False + TrVentasMedicas2.Visible = False + ChkRequiereTecnico.Enabled = True + ElseIf RBLTipoVenta.SelectedValue.Contiene("4") Then ' consignacion + DdlTipoComprobante.SelectedValueExist("Ing") + TrVentasMedicas1.Visible = False + TrVentasMedicas2.Visible = False + ChkRequiereTecnico.Enabled = True + Else + DdlTipoComprobante.Items.Insert(DdlTipoComprobante.Items.Count, New ListItem("Pedido", "Ped")) DdlTipoComprobante.SelectedValueExist("Ped") TrVentasMedicas1.Visible = True TrVentasMedicas2.Visible = True @@ -38895,7 +38889,7 @@ Partial Class Ventas Protected Sub ChkRequiereTecnicoModal_CheckedChanged(sender As Object, e As EventArgs) - DvModalRequiereOSFecha.Visible = ChkRequiereTecnicoModal.Checked + 'DvModalRequiereOSFecha.Visible = ChkRequiereTecnicoModal.Checked UpDvModalTipoVenta.Update() End Sub @@ -38921,7 +38915,6 @@ Partial Class Ventas For Each GvRow As GridViewRow In GvProductosProcedimiento.Rows If RBLTipoVenta.SelectedValue = "2" Then - Dim Cantidad As Decimal = GvRow.FCTextBox("TxtCantidad").Text.ToDecimal Dim CveUnidadMedida As Integer = GvRow.DataKey("CveUnidadMedida").ToEntero Dim Abreviatura As String = GvRow.DataKey("Abreviatura").ToString @@ -38937,13 +38930,11 @@ Partial Class Ventas Dim ObjPrecioSugerido As Modelos.MPrecioSugerido = CalculaPrecioSugerido(CvePS, CveClasificacion) PrecioSugerido = ObjPrecioSugerido.PrecioSugerido - If ObjPrecioSugerido.CvePrecioLista > 0 AndAlso DivPrecioLista.Visible Then DdlPrecioLista.SelectedValueExist(ObjPrecioSugerido.CvePrecioLista) End If If PrecioSugerido <= 0 Then PrecioSugerido = tPrecioSugerido - GvRow.FCTextBox("TxtPrecio").Text = PrecioSugerido.ToString("#,###.####") End If @@ -38955,21 +38946,20 @@ Partial Class Ventas Private Function GeneraOS(ByRef TransacSQL As SqlClient.SqlTransaction, ByRef errorList As List(Of String), CveVentaOS As Integer, SerieFolioOS As String) As Boolean Dim Errores As Boolean = False - - Dim ObjOrdenServicio As New ClsOS(TransacSQL) - - Dim CveOSTipo As Integer = -1 - - If ObjOrdenServicio.GetTipoOrdenesServicios(UsuarioActual.CveEmpresa) Then - CveOSTipo = ObjOrdenServicio.DtResultados.FiltroPrimeroValor("CveOrdenServicioTipo", " Estatus = 'Activo' ").ToEntero - End If Dim CveVentaAdicional As Integer = -1 - If RBLTipoVenta.SelectedValue.Contiene("5", "6") Then + Dim CveOSTipo As Integer = GlobalDTTipoOrdenServicios(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveOrdenServicioTipo", " Estatus = 'Activo' ").ToEntero + Dim EstatusOrdenServicio As Integer = GlobalDTEstatusOrdenServicios(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveEstatusOrdenServicio", "TipoEstatus = 1").ToEntero + + 'If RBLTipoVenta.SelectedValue.Contiene("5", "6") Then + ' CveVentaAdicional = CveVentaOS + 'End If + + If RBLTipoVenta.SelectedValue.Contiene("2") AndAlso DdlTipoComprobante.SelectedValue = "Rem" Then 'pago directo, sino require técnico, que pase de estatus + EstatusOrdenServicio = GlobalDTEstatusOrdenServicios(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveEstatusOrdenServicio", "TipoEstatus = 4").ToEntero 'tipo: 4.finalizada.3.en proceso CveVentaAdicional = CveVentaOS End If - Dim EstatusOrdenServicio As Integer = GlobalDTEstatusOrdenServicios(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveEstatusOrdenServicio", "TipoEstatus = 1").ToEntero - + Dim ObjOrdenServicio As New ClsOS(TransacSQL) If ObjOrdenServicio.AddOrdenesServicios(CveClienteOS, DdlSubProyectoDatos.SelectedValue.ToEntero, UsuarioActual.Nombre, TxtFechaOS.Text.Replace(",", "").ToDateTime, $"Venta: {LblSerie.Text}-{TxtFolio.Text}", UsuarioActual.CveUsuario, EstatusOrdenServicio, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveVentaOS, CveVentaAdicional, -1, CveOSTipo, CveClienteSucursal:=CveClienteSucursalOS, Direccion:="", Telefono:="", CveModeloAuto:=-1, Año:="", CveMedico:=DdlMedico.SelectedValue.ToEntero,