diff --git a/App_Code/ClsClientes.vb b/App_Code/ClsClientes.vb
index 69ac29dc8..42e66ad44 100644
--- a/App_Code/ClsClientes.vb
+++ b/App_Code/ClsClientes.vb
@@ -1680,6 +1680,63 @@ Public Class ClsClientes
Return Retorno
End Function
+ Public Function UpdateClienteNoFrencuente(CveCliente As Integer, Nombre As String, Direccion As String, NoExt As String, NoInt As String, Colonia As String, Localidad As String, Ciudad As String, CveEstado As Integer,
+ RFC As String, CP As String, Telefono As String, Mail As String, CveSubProyecto As Integer, CveUsuario As Integer, CveEmpresa As Integer,
+ NumCuentaPago As String, CveMetodoPago33 As Integer, CveFormaPago33 As Integer, Optional CvePrecioLista As Integer = -1) As Boolean
+ Dim Retorno As Boolean = False
+ DataAdapter("PA_ClientesNoFrecuenteUpdate")
+
+ With SqlAdapter.SelectCommand.Parameters
+ .Add("@CveCliente", SqlDbType.Int).Value = CveCliente
+ .Add("@Nombre", SqlDbType.VarChar).Value = Nombre
+ .Add("@Direccion", SqlDbType.VarChar).Value = Direccion
+ .Add("@NoExt", SqlDbType.VarChar).Value = NoExt
+ .Add("@NoInt", SqlDbType.VarChar).Value = NoInt
+ .Add("@Colonia", SqlDbType.VarChar).Value = Colonia
+ .Add("@Localidad", SqlDbType.VarChar).Value = Localidad
+ .Add("@Ciudad", SqlDbType.VarChar).Value = Ciudad
+ .Add("@CveEstado", SqlDbType.Int).Value = CveEstado
+ ' .Add("@Pais", SqlDbType.VarChar).Value = Pais
+ .Add("@RFC", SqlDbType.VarChar).Value = RFC
+ .Add("@CP", SqlDbType.VarChar).Value = CP
+ .Add("@Telefono", SqlDbType.VarChar).Value = Telefono
+ .Add("@Mail", SqlDbType.VarChar).Value = Mail
+ .Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto
+ .Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario
+ .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
+ .Add("@CveMetodoPago33", SqlDbType.Int).Value = CveMetodoPago33
+ .Add("@CveFormaPago33", SqlDbType.Int).Value = CveFormaPago33
+ .Add("@NumCuentaPago", SqlDbType.VarChar).Value = NumCuentaPago
+ .Add("@CvePrecioLista", SqlDbType.Int).Value = CvePrecioLista
+
+ End With
+
+ Try
+ SqlAdapter.Fill(Data)
+ Retorno = True
+ Catch Ex1 As SqlException
+
+ If Ex1.Message.Contains("Número: 2627;") Then
+ Alert("El Nuevo Cliente no se guardo debido a que actualmente se encuentra registrado", TipoMensaje.MsgAdvertencia)
+
+ ElseIf Ex1.Message.Contains("Número: 2601;") Then
+ If Ex1.Message.Contains("UN_ClientesRFCEmpresa") Then
+ Alert("Ya existe un cliente registrado con el mismo RFC.", TipoMensaje.MsgAdvertencia)
+ End If
+
+ If Ex1.Message.Contains("IND_Clientes_Codigo") Then
+ Alert("Ya existe un cliente registrado con el mismo Código.", TipoMensaje.MsgAdvertencia)
+ End If
+ Else
+ Me.OnError("Ocurrió un error al Intentar guardar el Nuevo Cliente.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
+ End If
+ Catch ex As Exception
+ OnError("Ocurrió un error al guardar el cliente", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
+ End Try
+
+ Return Retorno
+ End Function
+
#Region "UNIFICAR CLIENTES"
Public Function UnificarClientes(CveClienteAUnificar As Integer, CveClienteOriginal As Integer) As Boolean
Dim Retorno As Boolean = False
diff --git a/App_Code/ClsSisNotificaciones.vb b/App_Code/ClsSisNotificaciones.vb
index be0a9a61e..4aafd6454 100644
--- a/App_Code/ClsSisNotificaciones.vb
+++ b/App_Code/ClsSisNotificaciones.vb
@@ -357,7 +357,7 @@ Public Class ClsSisNotificaciones
If LSRutasMail.Count > 0 Then
Dim ObjMail As New ClsSisMail()
Dim ResultadoMail As Integer = 0
- If ObjMail.SendMail(ClsPaginas.EmpresaNotificaciones, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then
+ If ObjMail.SendMail(ClsPaginas.EmpresaNotificacionesGPS, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then
UpdateNotificacionesBitacoraNotifico(CveNotificacionBitacora, 1)
End If
End If
@@ -418,7 +418,7 @@ Public Class ClsSisNotificaciones
End If
If Archivos.Count > 0 Then
- If ObjMail.SendMail(ClsPaginas.EmpresaNotificaciones, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", $"Se adjunta el {Formato} en el Reporte Programado.", "", Archivos) Then
+ If ObjMail.SendMail(ClsPaginas.EmpresaNotificacionesGPS, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", $"Se adjunta el {Formato} en el Reporte Programado.", "", Archivos) Then
UpdateNotificacionesBitacoraNotifico(CveNotificacionBitacora, 1)
End If
End If
@@ -467,7 +467,7 @@ Public Class ClsSisNotificaciones
If LSRutasMail.Count > 0 Then
Dim ObjMail As New ClsSisMail()
Dim ResultadoMail As Integer = 0
- If ObjMail.SendMail(ClsPaginas.EmpresaNotificaciones, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then
+ If ObjMail.SendMail(ClsPaginas.EmpresaNotificacionesGPS, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then
UpdateNotificacionesBitacoraNotifico(CveNotificacionBitacora, 1)
End If
End If
@@ -509,7 +509,7 @@ Public Class ClsSisNotificaciones
If LSRutasMail.Count > 0 Then
Dim ObjMail As New ClsSisMail()
Dim ResultadoMail As Integer = 0
- If ObjMail.SendMail(ClsPaginas.EmpresaNotificaciones, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then
+ If ObjMail.SendMail(ClsPaginas.EmpresaNotificacionesGPS, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then
UpdateNotificacionesBitacoraNotifico(CveNotificacionBitacora, 1)
End If
End If
@@ -557,7 +557,7 @@ Public Class ClsSisNotificaciones
If LSRutasMail.Count > 0 Then
Dim ObjMail As New ClsSisMail()
Dim ResultadoMail As Integer = 0
- If ObjMail.SendMail(ClsPaginas.EmpresaNotificaciones, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then
+ If ObjMail.SendMail(ClsPaginas.EmpresaNotificacionesGPS, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then
UpdateNotificacionesBitacoraNotifico(CveNotificacionBitacora, 1)
End If
End If
@@ -596,7 +596,7 @@ Public Class ClsSisNotificaciones
If LSRutasMail.Count > 0 Then
Dim ObjMail As New ClsSisMail()
Dim ResultadoMail As Integer = 0
- If ObjMail.SendMail(ClsPaginas.EmpresaNotificaciones, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then
+ If ObjMail.SendMail(ClsPaginas.EmpresaNotificacionesGPS, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then
UpdateNotificacionesBitacoraNotifico(CveNotificacionBitacora, 1)
End If
End If
@@ -635,7 +635,7 @@ Public Class ClsSisNotificaciones
If LSRutasMail.Count > 0 Then
Dim ObjMail As New ClsSisMail()
Dim ResultadoMail As Integer = 0
- If ObjMail.SendMail(ClsPaginas.EmpresaNotificaciones, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then
+ If ObjMail.SendMail(ClsPaginas.EmpresaNotificacionesGPS, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then
UpdateNotificacionesBitacoraNotifico(CveNotificacionBitacora, 1)
End If
End If
diff --git a/App_Code/Modelos.vb b/App_Code/Modelos.vb
index 96d8c619a..adda24263 100644
--- a/App_Code/Modelos.vb
+++ b/App_Code/Modelos.vb
@@ -580,6 +580,14 @@ Namespace Modelos
Me.DtRemisionesDocumentosRelacionados = ObjVentas.DtResultados.Copy()
End If
+ 'CARGA LOS IMPUESTOS LOCALES
+ If ObjVentas.GetVentaImpuestosLocales(CveVenta) Then
+ If ObjVentas.DtResultados.Rows.Count > 0 Then
+ DtImpuestosLocales = ObjVentas.DtResultados.Copy()
+ End If
+ End If
+
+
ObjVentas.Dispose()
If Me.RealizarDevolucionAlmacen Then
@@ -1618,8 +1626,8 @@ Namespace Modelos
End If
'Impuestos Locales
- If DtImpuestosLocales IsNot Nothing Then
- For Each gvr As DataRow In DtImpuestosLocales.Rows
+ If factura.DtImpuestosLocales IsNot Nothing Then
+ For Each gvr As DataRow In factura.DtImpuestosLocales.Rows
If Not ObjVentas.AddVentaImpuestoLocales(factura.CveVenta, gvr("CveImpuestoLocal").ToString.ToEntero(), gvr("Importe").ToString().ToDouble()) Then
ErrorList.Add("Ocurrió un error al Guardar Impuestos Locales")
End If
@@ -1627,8 +1635,8 @@ Namespace Modelos
End If
- If DtFirmas IsNot Nothing AndAlso DtFirmas.Rows.Count > 0 Then
- For Each Row As DataRow In DtFirmas.Rows
+ If factura.DtFirmas IsNot Nothing AndAlso factura.DtFirmas.Rows.Count > 0 Then
+ For Each Row As DataRow In factura.DtFirmas.Rows
If Not ObjVentas.AddVentasFirmas(factura.CveVenta, Row("Titulo").ToString, Row("Nombre").ToString, Row("Puesto").ToString, Row("Lado").ToString.ToEntero) Then
ErrorList.Add("Ocurrio un error al Guardar Firmas")
End If
@@ -4828,8 +4836,10 @@ Namespace Modelos
If Not ErrorCancelar Then
Dim Filtro As String = ""
Select Case ObjFactura.TipoDocto
- Case "Ing", "Ped", "Dev"
+ Case "Ing", "Ped"
Filtro = "CveConcepto IN (3, 40)"
+ Case "Dev"
+ Filtro = "CveConcepto = 18"
Case Else
Filtro = "CveConcepto = 9"
End Select
@@ -4860,19 +4870,22 @@ Namespace Modelos
If Not ErrorCancelar AndAlso RealizarDevolucionAlmacen Then
'REALIZA DEVOLUCION A LAS SALIDAS PENDIENTES
For Each RowMovimiento As DataRow In DtSalidas.Rows
- Dim CveConceptoDevolucion As Integer = -1
- Dim CveAlmacenDevolucion As Integer = -1
+ Dim CveConceptoMovimiento As Integer = -1
+ Dim CveAlmacenMovimiento As Integer = -1
Dim CveMovimientoDevolucion As Integer = 0
Dim Folio As Integer = 0
Select Case RowMovimiento("CveConcepto").ToString().ToEntero()
Case 3
- CveConceptoDevolucion = 18 'DEVOLUCION DEL CLIENTE
- CveAlmacenDevolucion = RowMovimiento("CveAlmacen").ToString().ToEntero()
+ CveConceptoMovimiento = 18 'DEVOLUCION DEL CLIENTE
+ CveAlmacenMovimiento = RowMovimiento("CveAlmacen").ToString().ToEntero()
Case 40
- CveConceptoDevolucion = 41 'DEVOLUCIÓN DEL CLIENTE DIRECTA
- CveAlmacenDevolucion = RowMovimiento("CveAlmacen").ToString().ToEntero()
+ CveConceptoMovimiento = 41 'DEVOLUCIÓN DEL CLIENTE DIRECTA
+ CveAlmacenMovimiento = RowMovimiento("CveAlmacen").ToString().ToEntero()
+ Case 18
+ CveConceptoMovimiento = 3 'DEVOLUCIÓN DEL CLIENTE DIRECTA
+ CveAlmacenMovimiento = RowMovimiento("CveAlmacen").ToString().ToEntero()
''SI TIENE REMISIONES RELACIONADAS
'If DtRemisionesFacturadas.Rows.Count > 0 Then
' Dim RowRemision As DataRow = DtExistencias.FiltroPrimero($"CveMovimiento = {RowMovimiento("CveMovimiento").ToString()}")
@@ -4896,12 +4909,20 @@ Namespace Modelos
'SI TIENE SALDO PENDIENTE POR DEVOLVER GENERA UN MOVIMIENTO DE DEVOLUCION
If ObjFactura.SaldoAlmacen <> 0 Then
'SALIDA DE ALMACEN - SALIDA POR TRASPASO CUANDO ES REMISION - DEVOLUCION (SI ES TRASPASO Y TIENE CONTRATO NO HACE DEVOLUCIóN)
- CveMovimientoDevolucion = ObjInventario.AddMovimiento(CveAlmacenDevolucion, CveConceptoDevolucion, 1, Now, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, CveVenta, -1, -1, Observaciones:="", Guia:="", CveContrato:=CveContrato, CveAlmacenDestino:=-1, Modulo:="Mod/CV1")
+ CveMovimientoDevolucion = ObjInventario.AddMovimiento(CveAlmacenMovimiento, CveConceptoMovimiento, 1, Now, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, CveVenta, -1, -1, Observaciones:="", Guia:="", CveContrato:=CveContrato, CveAlmacenDestino:=-1, Modulo:="Mod/CV1")
Folio = ObjInventario.Folio
If CveMovimientoDevolucion > 0 Then
For Each Dr As DataRow In DtExistencias.FiltraParametros($"CveMovimiento = {RowMovimiento("CveMovimiento").ToString()}").Rows
- If Not ObjInventario.AddMovimientoDetalle(CveMovimientoDevolucion, Dr("Cantidad").ToString.ToDecimal, Dr("CveUM").ToString.ToEntero, Dr("CvePS").ToString.ToEntero, Dr("PU").ToString.ToDecimal, -1, Serie:=Dr("Serie").ToString, Lote:=Dr("Lote").ToString, CveVentaDetalle:=Dr("CveVentaDetalle").ToString.ToEntero, CveSeccionAlmacen:=Dr("CveSeccionAlmacen").ToString.ToEntero) Then
+
+ Dim FechaCaducidad As Date = MinFecha
+ If Not String.IsNullOrEmpty(Dr("FechaCaducidad").ToString()) Then
+ If IsDate(Dr("FechaCaducidad")) Then
+ FechaCaducidad = Dr("FechaCaducidad").ToString().ToDate()
+ End If
+ End If
+
+ If Not ObjInventario.AddMovimientoDetalle(CveMovimientoDevolucion, Dr("Cantidad").ToString.ToDecimal, Dr("CveUM").ToString.ToEntero, Dr("CvePS").ToString.ToEntero, Dr("PU").ToString.ToDecimal, -1, Serie:=Dr("Serie").ToString, Lote:=Dr("Lote").ToString, CveVentaDetalle:=Dr("CveVentaDetalle").ToString.ToEntero, CveSeccionAlmacen:=Dr("CveSeccionAlmacen").ToString.ToEntero, FechaCaducidad:=FechaCaducidad) Then
ErrorCancelar = True
MensajeError = "Ocurrió un error al procesar los conceptos de salida. Por favor vuelva a intentar."
Exit For
@@ -4920,12 +4941,17 @@ Namespace Modelos
DtCostos = ObjInventario.DtResultados
Dim tmpCostos As DataTable = DtCostos.FiltraParametros("", "", {"CveClasificacion"})
- Dim IdCtaContableAlmacen As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCtaContable", $"CveAlmacen = {CveAlmacenDevolucion}").ToEntero
+ Dim IdCtaContableAlmacen As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCtaContable", $"CveAlmacen = {CveAlmacenMovimiento}").ToEntero
'Dim CveCuentaAlmacen As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCtaContableSIG", $"CveAlmacen = {CveAlmacenDevolucion}").ToEntero
Dim IdCtaContable As Integer = 0
Dim CveCuenta As Integer = 0
If tmpCostos.Rows.Count > 0 Then
+ Dim Multiplicador As Decimal = -1D
+ If ObjFactura.TipoDocto = "Dev" Then
+ Multiplicador = 1D
+ End If
+
If ObjVentas.GetVenta(CveVenta, UsuarioActual.CveEmpresa) Then
Dim Fecha As Date = Now
Dim CveCliente As Integer = ObjVentas.DtResultados(0)("CveCliente").ToString.ToEntero
@@ -4950,7 +4976,7 @@ Namespace Modelos
CveCuenta = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCuentaCostosSIG", $"CveClasificacion = {RowInv("CveClasificacion")}").ToEntero
If Not ErrorCancelar Then
- If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaDev, False, -1 * ValorInventario, SerieFolio, 69, SerieFolio, Fecha, IdCtaContable, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveMovimientoAlmacen:=CveMovimientoDevolucion, CveSubProyecto:=ObjFactura.CveSubProyecto, ImporteMX:=-1 * ValorInventario, CveCuenta:=CveCuenta, CveClasificacion:=RowInv("CveClasificacion").ToString.ToEntero) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaDev, False, Multiplicador * ValorInventario, SerieFolio, 69, SerieFolio, Fecha, IdCtaContable, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveMovimientoAlmacen:=CveMovimientoDevolucion, CveSubProyecto:=ObjFactura.CveSubProyecto, ImporteMX:=Multiplicador * ValorInventario, CveCuenta:=CveCuenta, CveClasificacion:=RowInv("CveClasificacion").ToString.ToEntero) Then
ErrorCancelar = True
End If
End If
@@ -4958,7 +4984,7 @@ Namespace Modelos
cont += 1
Next
- If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaDev, True, -1 * TotalCosto, SerieFolio, 68, SerieFolio, Fecha, IdCtaContableAlmacen, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveMovimientoAlmacen:=CveMovimientoDevolucion, CveSubProyecto:=ObjFactura.CveSubProyecto, ImporteMX:=-1 * TotalCosto) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaDev, True, Multiplicador * TotalCosto, SerieFolio, 68, SerieFolio, Fecha, IdCtaContableAlmacen, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveMovimientoAlmacen:=CveMovimientoDevolucion, CveSubProyecto:=ObjFactura.CveSubProyecto, ImporteMX:=Multiplicador * TotalCosto) Then
ErrorCancelar = True
End If
@@ -4995,7 +5021,7 @@ Namespace Modelos
'DEVOLUCION REMISION - REGRESA LAS EXISTENCIAS A ENTREGA POR ADELANTADO SI LA FACTURA VIENE DE REMISION
'SI ES DEVOLUCION DEL CLIENTE DEBE REGRESAR A ENTREGA POR ADELANTADO
- If Not ErrorCancelar AndAlso CveConceptoDevolucion = 18 AndAlso RevivirRemisiones Then
+ If Not ErrorCancelar AndAlso CveConceptoMovimiento = 18 AndAlso RevivirRemisiones Then
If Not GeneraMovimientosEntregaPorAdelantadoRemision(CveMovimientoDevolucion, ObjVentas, ObjInventario, DtDevRem, ListaRemisionesCancelar) Then
ErrorCancelar = True
MensajeError = "Ocurrió un error al generar los movimientos de devolución a remisión"
diff --git a/Ashx/E141.ashx b/Ashx/E141.ashx
index 801f1ab28..fca4a8b19 100644
--- a/Ashx/E141.ashx
+++ b/Ashx/E141.ashx
@@ -115,6 +115,45 @@ Public Class E141 : Implements IHttpHandler
End Get
End Property
+ Public Property GlobalDTPSSimplificado(Optional CveClasificacion As Integer = -1, Optional Codigo As String = "-1", Optional Estatus As Integer = 1, Optional AplicaParaVenta As Integer = -1, Optional CvePS As Integer = -1) As DataTable
+ Get
+ Dim AppNombre As String = String.Format("GlobalDTPSSimplificado-{0}", CveEmpresa)
+ If CveEmpresa <> -1 Then
+ 'sino existe, recarga los datos
+ If HttpContext.Current.Application(AppNombre) Is Nothing Then
+ Dim ObjPS As New ClsProductosServicios
+ If ObjPS.GetPSSimplificado(CveEmpresa) Then HttpContext.Current.Application(AppNombre) = ObjPS.DtResultados.AsEnumerable()
+ ObjPS.Dispose()
+
+ End If
+
+
+ Dim Cons = DirectCast(HttpContext.Current.Application(AppNombre), EnumerableRowCollection(Of DataRow))
+
+ Cons = Cons.Where((Function(a) Convert.ToInt32(a!CveEmpresa) = CveEmpresa))
+ If CveClasificacion >= 0 Then Cons = Cons.Where((Function(a) Convert.ToInt32(a!CveClasificacion) = CveClasificacion))
+ Codigo = Codigo.ToUpper()
+ If Codigo <> "-1" Then Cons = Cons.Where((Function(a) Convert.ToString(a!Codigo).ToUpper() = Codigo))
+ If Estatus >= 0 Then Cons = Cons.Where((Function(a) Convert.ToInt32(a!CveEstado) = Estatus))
+ If AplicaParaVenta >= 0 Then Cons = Cons.Where((Function(a) Convert.ToInt32(a!AplicaParaVenta) = AplicaParaVenta))
+ If CvePS >= 0 Then Cons = Cons.Where((Function(a) Convert.ToInt32(a!CvePS) = CvePS))
+
+ Try
+ GlobalDTPSSimplificado = Cons.OrderBy(Function(a) a!PSCodigo).CopyToDataTable
+ Catch ex As Exception
+ GlobalDTPSSimplificado = New DataTable
+ End Try
+
+ Else
+ GlobalDTPSSimplificado = DirectCast(HttpContext.Current.Application(AppNombre), EnumerableRowCollection(Of DataRow)).CopyToDataTable
+ End If
+ End Get
+ Set(value As DataTable)
+ Dim AppNombre As String = String.Format("GlobalDTPSSimplificado-{0}", CveEmpresa)
+ HttpContext.Current.Application(AppNombre) = value
+ End Set
+ End Property
+
Property GlobalDTMonedas() As DataTable
Get
GlobalDTMonedas = DirectCast(HttpContext.Current.Application("GlobalDTMonedas"), DataTable)
@@ -632,11 +671,14 @@ Public Class E141 : Implements IHttpHandler
Dim ObjClientes As New ClsClientes()
Dim ObjInventario As New ClsInventarios(ObjClientes.IniciaTransacSQL())
- ObjClientes.IniciaTransacSQL()
Try
- If Not String.IsNullOrEmpty(JsonRequest("timbrar").ToString) Then
- DebeTimbrar = CBool(JsonRequest("timbrar"))
+ Dim timbrar_request As String = If(JsonRequest("timbrar") Is Nothing, "", JsonRequest("timbrar").ToString())
+
+ If Not String.IsNullOrEmpty(timbrar_request) Then
+ DebeTimbrar = CBool(timbrar_request)
+ Else
+ DebeTimbrar = False
End If
ObjFactura = CreaFactura(ObjInventario, ObjClientes, "Ing", Resp, JsonRequest, Usuario)
@@ -646,7 +688,7 @@ Public Class E141 : Implements IHttpHandler
If Resp.CveVenta > 0 Then
Respuesta.status = "success"
- Respuesta.data = Resp.CveVenta.ToString()
+ Respuesta.data = Resp.SerieFolio
Else
TieneError = True
End If
@@ -674,9 +716,11 @@ Public Class E141 : Implements IHttpHandler
If TieneError Then
ObjClientes.RollBack()
ObjClientes.Dispose()
+ ObjInventario.Dispose()
Else
ObjClientes.Commit()
ObjClientes.Dispose()
+ ObjInventario.Dispose()
If DebeTimbrar Then
Dim SeTimbro As Boolean = ObjFactura.TimbrarFactura()
@@ -690,6 +734,10 @@ Public Class E141 : Implements IHttpHandler
End If
End If
+ If ObjFactura IsNot Nothing Then
+ ObjFactura.Dispose()
+ End If
+
Else
TieneError = True
RespuestaError.message = "No hay un usuario disponible"
@@ -708,26 +756,83 @@ Public Class E141 : Implements IHttpHandler
#Region "D E F I N I R - O B J E T O S"
- Private Function CrearCliente(ObjClientes As ClsClientes, ByRef Resp As Modelos.Factura.MMensajeFactura, JsonRequest As JObject, UsuarioActual As Usuario) As Integer
+ Private Function CrearCliente(TipoDocto As String, ObjClientes As ClsClientes, ByRef Resp As Modelos.Factura.MMensajeFactura, JsonRequest As JObject, UsuarioActual As Usuario) As Integer
Dim CveCliente As Integer = -1
Dim CveSubProyecto As Integer = JsonRequest("branch_office_id").ToEntero()
- Dim Nombre As String = If(JsonRequest("contact_name") Is Nothing, "", JsonRequest("contact_name").ToString())
- Dim Direccion As String = If(JsonRequest("contact_address") Is Nothing, "", JsonRequest("contact_address").ToString())
- Dim NumExt As String = If(JsonRequest("contact_ext_number") Is Nothing, "", JsonRequest("contact_ext_number").ToString())
- Dim NumInt As String = If(JsonRequest("contact_int_number") Is Nothing, "", JsonRequest("contact_int_number").ToString())
- Dim Colonia As String = If(JsonRequest("contact_neighborhood") Is Nothing, "", JsonRequest("contact_neighborhood").ToString())
- Dim Localidad As String = If(JsonRequest("contact_city") Is Nothing, "", JsonRequest("contact_city").ToString())
- Dim Ciudad As String = Localidad
- Dim RFC As String = If(JsonRequest("invoice_rfc") Is Nothing, "XAXX010101000", JsonRequest("invoice_rfc").ToString())
- Dim CP As String = If(JsonRequest("contact_zip_code") Is Nothing, "", JsonRequest("contact_zip_code").ToString())
- Dim Telefono As String = If(JsonRequest("contact_phone") Is Nothing, "", JsonRequest("contact_phone").ToString())
- Dim Correo As String = If(JsonRequest("contact_email") Is Nothing, "", JsonRequest("contact_email").ToString())
+
+
+ Dim Nombre As String = ""
+ Dim Direccion As String = ""
+ Dim NumExt As String = ""
+ Dim NumInt As String = ""
+ Dim Colonia As String = ""
+ Dim Localidad As String = ""
+ Dim Ciudad As String = ""
+ Dim Estado As String = ""
+ Dim RFC As String = ""
+ Dim CP As String = ""
+ Dim Telefono As String = ""
+ Dim Correo As String = ""
+
+ 'DATOS DE CONTACTO
+ Dim contact_name As String = If(JsonRequest("contact_name") Is Nothing, "", JsonRequest("contact_name").ToString())
+ Dim contact_address As String = If(JsonRequest("contact_address") Is Nothing, "", JsonRequest("contact_address").ToString())
+ Dim contact_ext_number As String = If(JsonRequest("contact_ext_number") Is Nothing, "", JsonRequest("contact_ext_number").ToString())
+ Dim contact_int_number As String = If(JsonRequest("contact_int_number") Is Nothing, "", JsonRequest("contact_int_number").ToString())
+ Dim contact_neighborhood As String = If(JsonRequest("contact_neighborhood") Is Nothing, "", JsonRequest("contact_neighborhood").ToString())
+ Dim contact_city As String = If(JsonRequest("contact_city") Is Nothing, "", JsonRequest("contact_city").ToString())
+ Dim contact_zip_code As String = If(JsonRequest("contact_zip_code") Is Nothing, "", JsonRequest("contact_zip_code").ToString())
+ Dim contact_phone As String = If(JsonRequest("contact_phone") Is Nothing, "", JsonRequest("contact_phone").ToString())
+ Dim contact_email As String = If(JsonRequest("contact_email") Is Nothing, "", JsonRequest("contact_email").ToString())
+ Dim contact_state As String = If(JsonRequest("contact_state") Is Nothing, "", JsonRequest("contact_state").ToString())
+
+ 'DATOS DE FACTURACION
+ Dim invoice_rfc As String = If(JsonRequest("invoice_rfc") Is Nothing, "", JsonRequest("invoice_rfc").ToString())
+ Dim invoice_name As String = If(JsonRequest("invoice_name") Is Nothing, "", JsonRequest("invoice_name").ToString())
+ Dim invoice_address As String = If(JsonRequest("invoice_address") Is Nothing, "", JsonRequest("invoice_address").ToString())
+ Dim invoice_city As String = If(JsonRequest("invoice_city") Is Nothing, "", JsonRequest("invoice_city").ToString())
+ Dim invoice_state As String = If(JsonRequest("invoice_state") Is Nothing, "", JsonRequest("invoice_state").ToString())
+ Dim invoice_email As String = If(JsonRequest("invoice_email") Is Nothing, "", JsonRequest("invoice_email").ToString())
+ Dim invoice_phone As String = If(JsonRequest("invoice_phone") Is Nothing, "", JsonRequest("invoice_phone").ToString())
Dim CveEstado As Integer = -1
- If Not String.IsNullOrEmpty(JsonRequest("contact_state").ToString()) Then
- CveEstado = GlobalDTEstado("MEX").FiltroPrimeroValor("CveEstado", $"NombreEstado = '{JsonRequest("contact_state").ToString().Trim}'").ToEntero()
+ If TipoDocto = "Ing" Then
+ RFC = If(Not String.IsNullOrEmpty(invoice_rfc), invoice_rfc, "XAXX010101000")
+ Nombre = If(Not String.IsNullOrEmpty(invoice_name), invoice_name, contact_name)
+ Direccion = If(Not String.IsNullOrEmpty(invoice_address), invoice_address, contact_address)
+ 'SI LA DIRECCION ES LA MISMA QUE LA DE CONTACTO
+ If Direccion = contact_address Then
+ NumExt = If(Not String.IsNullOrEmpty(contact_ext_number), contact_ext_number, "")
+ NumInt = If(Not String.IsNullOrEmpty(contact_int_number), contact_int_number, "")
+ Colonia = If(Not String.IsNullOrEmpty(contact_neighborhood), contact_neighborhood, "")
+ End If
+ Ciudad = If(Not String.IsNullOrEmpty(invoice_city), invoice_city, contact_city)
+ Localidad = Ciudad
+ Estado = If(Not String.IsNullOrEmpty(invoice_state), invoice_state, contact_state)
+ CP = If(Not String.IsNullOrEmpty(contact_zip_code), contact_zip_code, "")
+ Correo = If(Not String.IsNullOrEmpty(invoice_email), invoice_email, contact_email)
+ Telefono = If(Not String.IsNullOrEmpty(invoice_phone), invoice_phone, contact_phone)
+
+ Else
+
+ Nombre = If(Not String.IsNullOrEmpty(contact_name), contact_name, "")
+ Direccion = If(Not String.IsNullOrEmpty(contact_address), contact_address, "")
+ NumExt = If(Not String.IsNullOrEmpty(contact_ext_number), contact_ext_number, "")
+ NumInt = If(Not String.IsNullOrEmpty(contact_int_number), contact_int_number, "")
+ Colonia = If(Not String.IsNullOrEmpty(contact_neighborhood), contact_neighborhood, "")
+ Ciudad = If(Not String.IsNullOrEmpty(contact_city), contact_city, "")
+ Localidad = Ciudad
+ Estado = If(Not String.IsNullOrEmpty(contact_state), contact_state, "")
+ CP = If(Not String.IsNullOrEmpty(contact_zip_code), contact_zip_code, "")
+ Correo = If(Not String.IsNullOrEmpty(contact_email), contact_email, "")
+ Telefono = If(Not String.IsNullOrEmpty(contact_phone), contact_phone, "")
+
+ End If
+
+ If Not String.IsNullOrEmpty(Estado) Then
+ CveEstado = GlobalDTEstado("MEX").FiltroPrimeroValor("CveEstado", $"NombreEstado = '{Estado.Trim}'").ToEntero()
'SI NO ENCUENTRA EL ESTADO INGRESA EL DE SONORA
If CveEstado <= 0 Then
@@ -737,11 +842,18 @@ Public Class E141 : Implements IHttpHandler
CveEstado = 26
End If
+
'SI NO EXISTE EL RFC UTILIZA EL GENERICO
If String.IsNullOrEmpty(RFC) Then
RFC = "XAXX010101000"
End If
+ If String.IsNullOrEmpty(Nombre) Then
+ Resp.TieneError = False
+ Resp.Mensajes.Add("El cliente no tiene un nombre")
+ Return -1
+ End If
+
'VALIDAR QUE NO EXISTA EL RFC
If RFC <> "XAXX010101000" Then
If ObjClientes.GetClientes(-1, "-1", "-1", "-1", RFC, "-1", "-1", -1, UsuarioActual.CveEmpresa, 1, TipoCliente:=-1, TopSelect:=1) Then
@@ -774,11 +886,19 @@ Public Class E141 : Implements IHttpHandler
Resp.TieneError = False
Dim Serie As String = "-1"
Dim CveMoneda As Integer = 1
+
Dim CveSubProyecto As Integer = JsonRequest("branch_office_id").ToEntero()
+
+ If CveSubProyecto <= 0 Then
+ Resp.TieneError = False
+ Resp.Mensajes.Add("La sucursal es requerida")
+ Return Nothing
+ End If
+
Dim CveCliente As Integer = If(JsonRequest("user_id") Is Nothing, 0, JsonRequest("user_id").ToEntero())
If CveCliente <= 0 Then
- CveCliente = CrearCliente(ObjClientes, Resp, JsonRequest, UsuarioActual)
+ CveCliente = CrearCliente(TipoDocto, ObjClientes, Resp, JsonRequest, UsuarioActual)
End If
If CveCliente <= 0 Then
@@ -854,19 +974,6 @@ Public Class E141 : Implements IHttpHandler
ElseIf ObjFactura.TipoDocto = "Ing" Then
- If ObjFactura.Cliente IsNot Nothing AndAlso Not String.IsNullOrEmpty(JsonRequest("invoice_name").ToString()) Then
- ObjFactura.Cliente.Nombre = JsonRequest("invoice_name").ToString()
- ObjFactura.Cliente.NombreComercial = JsonRequest("invoice_name").ToString()
- ObjFactura.Cliente.Direccion = JsonRequest("invoice_address").ToString()
- ObjFactura.Cliente.Colonia = ""
- ObjFactura.Cliente.NoInt = ""
- ObjFactura.Cliente.NoExt = ""
- ObjFactura.Cliente.Localidad = JsonRequest("invoice_city").ToString()
- ObjFactura.Cliente.Estado = JsonRequest("invoice_state").ToString()
- ObjFactura.Cliente.Mail = JsonRequest("invoice_email").ToString()
- ObjFactura.Cliente.Telefono = JsonRequest("invoice_phone").ToString()
- End If
-
'FORMA DE PAGO
If JsonRequest("invoice_way_to_pay") Is Nothing Then
Resp.TieneError = False
@@ -941,10 +1048,73 @@ Public Class E141 : Implements IHttpHandler
End If
+ If ObjFactura.Cliente IsNot Nothing AndAlso TipoDocto = "Ing" Then
+
+ 'DATOS DE CONTACTO
+ Dim contact_name As String = If(JsonRequest("contact_name") Is Nothing, "", JsonRequest("contact_name").ToString())
+ Dim contact_address As String = If(JsonRequest("contact_address") Is Nothing, "", JsonRequest("contact_address").ToString())
+ Dim contact_ext_number As String = If(JsonRequest("contact_ext_number") Is Nothing, "", JsonRequest("contact_ext_number").ToString())
+ Dim contact_int_number As String = If(JsonRequest("contact_int_number") Is Nothing, "", JsonRequest("contact_int_number").ToString())
+ Dim contact_neighborhood As String = If(JsonRequest("contact_neighborhood") Is Nothing, "", JsonRequest("contact_neighborhood").ToString())
+ Dim contact_city As String = If(JsonRequest("contact_city") Is Nothing, "", JsonRequest("contact_city").ToString())
+ Dim contact_zip_code As String = If(JsonRequest("contact_zip_code") Is Nothing, "", JsonRequest("contact_zip_code").ToString())
+ Dim contact_phone As String = If(JsonRequest("contact_phone") Is Nothing, "", JsonRequest("contact_phone").ToString())
+ Dim contact_email As String = If(JsonRequest("contact_email") Is Nothing, "", JsonRequest("contact_email").ToString())
+ Dim contact_state As String = If(JsonRequest("contact_state") Is Nothing, "", JsonRequest("contact_state").ToString())
+
+ 'DATOS DE FACTURACION
+ Dim invoice_rfc As String = If(JsonRequest("invoice_rfc") Is Nothing, "", JsonRequest("invoice_rfc").ToString())
+ Dim invoice_name As String = If(JsonRequest("invoice_name") Is Nothing, "", JsonRequest("invoice_name").ToString())
+ Dim invoice_address As String = If(JsonRequest("invoice_address") Is Nothing, "", JsonRequest("invoice_address").ToString())
+ Dim invoice_city As String = If(JsonRequest("invoice_city") Is Nothing, "", JsonRequest("invoice_city").ToString())
+ Dim invoice_state As String = If(JsonRequest("invoice_state") Is Nothing, "", JsonRequest("invoice_state").ToString())
+ Dim invoice_email As String = If(JsonRequest("invoice_email") Is Nothing, "", JsonRequest("invoice_email").ToString())
+ Dim invoice_phone As String = If(JsonRequest("invoice_phone") Is Nothing, "", JsonRequest("invoice_phone").ToString())
+
+ Dim CveEstado As Integer = -1
+
+ ObjFactura.Cliente.RFC = If(Not String.IsNullOrEmpty(invoice_rfc), invoice_rfc, ObjFactura.Cliente.RFC)
+ ObjFactura.Cliente.Nombre = If(Not String.IsNullOrEmpty(invoice_name), invoice_name, contact_name)
+ ObjFactura.Cliente.NombreComercial = ObjFactura.Cliente.NombreComercial
+ ObjFactura.Cliente.Direccion = If(Not String.IsNullOrEmpty(invoice_address), invoice_address, contact_address)
+ ObjFactura.Cliente.Mail = If(Not String.IsNullOrEmpty(invoice_email), invoice_email, contact_email)
+ ObjFactura.Cliente.Telefono = If(Not String.IsNullOrEmpty(invoice_phone), invoice_phone, contact_phone)
+ ObjFactura.Cliente.Localidad = If(Not String.IsNullOrEmpty(invoice_city), invoice_city, contact_city)
+ ObjFactura.Cliente.Ciudad = ObjFactura.Cliente.Localidad
+ ObjFactura.Cliente.Estado = If(Not String.IsNullOrEmpty(invoice_state), invoice_state, contact_state)
+
+ If String.IsNullOrEmpty(ObjFactura.Cliente.RFC) Then
+ Resp.Mensajes.Add("No se ha ingresado un RFC")
+ Return Nothing
+ End If
+
+ If String.IsNullOrEmpty(ObjFactura.Cliente.Nombre) Then
+ Resp.Mensajes.Add("No se ha ingresado un nombre para el cliente")
+ Return Nothing
+ End If
+
+ If Not String.IsNullOrEmpty(ObjFactura.Cliente.Estado) Then
+ CveEstado = GlobalDTEstado("MEX").FiltroPrimeroValor("CveEstado", $"NombreEstado = '{ObjFactura.Cliente.Estado.Trim}'").ToEntero()
+
+ 'SI NO ENCUENTRA EL ESTADO INGRESA EL DE SONORA
+ If CveEstado <= 0 Then
+ CveEstado = 26
+ End If
+ Else
+ CveEstado = 26
+ End If
+
+ Dim Cliente = ObjFactura.Cliente
+ If Not ObjClientes.UpdateClienteNoFrencuente(CveCliente, Cliente.Nombre, Cliente.Direccion, Cliente.NoExt, Cliente.NoInt, Cliente.Colonia, Cliente.Localidad, Cliente.Ciudad, CveEstado, Cliente.RFC, Cliente.CP, Cliente.Telefono, Cliente.Mail, CveSubProyecto, UsuarioActual.CveUsuario, CveEmpresa, "-1", ObjFactura.CveMetodoPago33, ObjFactura.CveFormaPago33) Then
+ Resp.TieneError = False
+ Resp.Mensajes.Add("No se puedo actualizar un cliente")
+ Return Nothing
+ End If
+
+ End If
+
ObjFactura.CveAlmacen = GlobalDTAlmacen(CveEmpresa, CveTipoAlmacen:=1).FiltroPrimeroValor("CveAlmacen", $"CveSubProyecto={CveSubProyecto}").ToEntero()
-
-
'DETALLES
ObjFactura.DtDetalle = CreaDTDetalle(ObjInventario, ObjFactura, Resp, UsuarioActual, JsonRequest)
@@ -958,7 +1128,6 @@ Public Class E141 : Implements IHttpHandler
End If
End If
-
'INVENTARIO
If TipoDocto = "Ing" Then
ObjFactura.DtInventario = ObjFactura.DtDetalle.Copy.FiltraParametros("CveTipoPS = 2")
@@ -1235,7 +1404,9 @@ Public Class E141 : Implements IHttpHandler
TmpDT.Columns.Add("ClaveSATFraccionArancelariaDescripcion", GetType(String))
TmpDT.Columns.Add("ClaveSATUnidadAduanaDescripcion", GetType(String))
- TmpDT.Columns.Add("CveTamaño", GetType(Integer))
+ TmpDT.Columns.Add("CveTamaño", GetType(Integer))
+
+
Try
Dim ListaPS = JArray.Parse(JsonRequest("details").ToString())
Dim DescuentoTotal As Decimal = JsonRequest("discount").ToString().ToDecimal()
@@ -1245,7 +1416,9 @@ Public Class E141 : Implements IHttpHandler
For Each JsonPS As JObject In ListaPS
Dim Cantidad As Decimal = JsonPS("quantity").ToString.ToDecimal()
- Dim DrPS As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, Codigo:=JsonPS("product_sku").ToString()).FiltroPrimero("")
+ Dim CvePS As Integer = GlobalDTPSSimplificado(Codigo:=JsonPS("product_sku").ToString()).FiltroPrimeroValor("CvePS").ToEntero()
+
+ Dim DrPS As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePS).FiltroPrimero("")
If DrPS Is Nothing Then
Retorno.TieneError = True
@@ -1487,7 +1660,7 @@ Public Class E141 : Implements IHttpHandler
If Resp.CveVenta > 0 Then
Respuesta.status = "success"
- Respuesta.data = Resp.CveVenta.ToString()
+ Respuesta.data = Resp.SerieFolio
Else
TieneError = True
End If
@@ -1499,6 +1672,8 @@ Public Class E141 : Implements IHttpHandler
Next
RespuestaError.message = sb.ToString()
End If
+
+ ObjFactura.Dispose()
Else
TieneError = True
Dim sb As New StringBuilder()
@@ -2077,7 +2252,8 @@ Public Class E141 : Implements IHttpHandler
New JProperty("age", 0),
New JProperty("gender", 0),
New JProperty("address", ""),
- New JProperty("code", "")
+ New JProperty("code", RowVendedor("CodigoVendedor")),
+ New JProperty("default_branchoffice", RowVendedor("CveSubProyecto"))
)
ArrayVendedores.Add(vendedor)
@@ -2097,6 +2273,10 @@ Public Class E141 : Implements IHttpHandler
End If
End If
+ If CountPeticionesExitosas > 0 Then
+ Retorno = True
+ End If
+
Return Retorno
End Function
#End Region
diff --git a/Bancos/RepComplementoPago.aspx.vb b/Bancos/RepComplementoPago.aspx.vb
index ba740b104..79693c956 100644
--- a/Bancos/RepComplementoPago.aspx.vb
+++ b/Bancos/RepComplementoPago.aspx.vb
@@ -72,23 +72,25 @@ Partial Class Bancos_RepComplementoPago
Dim Banco As New ClsBancos
Banco.IniciaTransacSQL()
-
- If Banco.GeneraTimbrePago(gvr.DataKey("CveIE").ToEntero, -1, UsuarioActual, FechaTimbrado:=FechaTimbrado) Then
- If Banco.Mensaje = "" Then
- Banco.Commit()
- PDFReciboDePagos(-1, -1, Banco.CveComplementoPago, False)
- Str.AppendFormat("Folio: {0} ", Banco.ComplementoSerieFolio)
- Str.AppendFormat("XML ", Encripta(String.Format("OP=CompP&EXT=xml&SerieFolio={0}&CveComplementoPago={1}", Banco.ComplementoSerieFolio, Banco.CveComplementoPago)))
- Str.AppendFormat("PDF ", Encripta(String.Format("OP=CompP&EXT=pdf&SerieFolio={0}&CveComplementoPago={1}", Banco.ComplementoSerieFolio, Banco.CveComplementoPago)))
- Str.AppendFormat("{1} {2} ", gvr.DataKey("CveIE"), gvr.DataKey("Folio"), gvr.DataKey("NombreCliente"))
- MandaCorreo(Banco.ComplementoSerieFolio, gvr.DataKey("CobranzaCorreo"))
+ Try
+ If Banco.GeneraTimbrePago(gvr.DataKey("CveIE").ToEntero, -1, UsuarioActual, FechaTimbrado:=FechaTimbrado) Then
+ If Banco.Mensaje = "" Then
+ Banco.Commit()
+ PDFReciboDePagos(-1, -1, Banco.CveComplementoPago, False)
+ Str.AppendFormat("Folio: {0} ", Banco.ComplementoSerieFolio)
+ Str.AppendFormat("XML ", Encripta(String.Format("OP=CompP&EXT=xml&SerieFolio={0}&CveComplementoPago={1}", Banco.ComplementoSerieFolio, Banco.CveComplementoPago)))
+ Str.AppendFormat("PDF ", Encripta(String.Format("OP=CompP&EXT=pdf&SerieFolio={0}&CveComplementoPago={1}", Banco.ComplementoSerieFolio, Banco.CveComplementoPago)))
+ Str.AppendFormat("{1} {2} ", gvr.DataKey("CveIE"), gvr.DataKey("Folio"), gvr.DataKey("NombreCliente"))
+ MandaCorreo(Banco.ComplementoSerieFolio, gvr.DataKey("CobranzaCorreo"))
+ End If
+ Else
+ Str.AppendFormat("No se genero complemento del Folio {0} por el siguiente motivo: {1}", gvr.DataKey("Folio"), Banco.Mensaje)
+ Banco.RollBack()
End If
-
- Else
- Str.AppendFormat("No se genero complemento del Folio {0} por el siguiente motivo: {1}", gvr.DataKey("Folio"), Banco.Mensaje)
+ Catch ex As Exception
+ OnError("Ocurrió un error al generar el complemento de pago", ex)
Banco.RollBack()
- End If
-
+ End Try
Banco.Dispose()
End If
Next
diff --git a/Compras/PopUpVerFactura.aspx.vb b/Compras/PopUpVerFactura.aspx.vb
index 9ec3b4e3e..29ddcca3a 100644
--- a/Compras/PopUpVerFactura.aspx.vb
+++ b/Compras/PopUpVerFactura.aspx.vb
@@ -456,7 +456,11 @@ Partial Class PopUpVerFactura
If UrlParametros("EXT").ToString.ToUpper = "PDF" Then
If UrlParametros("CVECOMPLEMENTOPAGO").ToString.ToEntero > 0 Then
- PDFReciboDePagos(-1, UrlParametros("CVEIE").ToString.ToEntero, UrlParametros("CVECOMPLEMENTOPAGO").ToString.ToEntero, False) 'genero el documento de no existir
+ Dim CveIE As Integer = -1
+ If UrlParametros("CVEIE") IsNot Nothing Then
+ CveIE = UrlParametros("CVEIE").ToString.ToEntero
+ End If
+ PDFReciboDePagos(-1, CveIE, UrlParametros("CVECOMPLEMENTOPAGO").ToString.ToEntero, False) 'genero el documento de no existir
End If
End If
diff --git a/GPS/Rastreo.aspx.vb b/GPS/Rastreo.aspx.vb
index 154536392..9200f00dd 100644
--- a/GPS/Rastreo.aspx.vb
+++ b/GPS/Rastreo.aspx.vb
@@ -1578,22 +1578,39 @@ Partial Class GPS_Rastreo
If Opcion = "KM" Then
If GVKm.Rows.Count > 0 Then
- RutaReporte = "Empresas/Grales/ReportesProgramados/RPTKmRecorridos.rdlc"
- NombreReporte = "ReporteKMRecorridos"
+ If Format = "PDF" Then
+ RutaReporte = "Empresas/Grales/ReportesProgramados/RPTKmRecorridos.rdlc"
+ NombreReporte = "ReporteKMRecorridos"
+
+ Try
+ Dim RptParametro As New List(Of ReportParameter)
+ RptParametro.Add(New ReportParameter("FechaInicio", FechaI.ToString))
+ RptParametro.Add(New ReportParameter("FechaFin", FechaF.ToString))
+ RptParametro.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Usuario))
+ RptParametro.Add(New ReportParameter("FechaImpresion", DateTime.Now.ToString))
+
+ retorno = StreamPDF(RutaReporte, DtDatos, RptParametro, $"{NombreReporte}{Date.Now.ToShortDateString}", Format, MR:=Nothing, RDSName:="DsOC")
+
+ ImprimirbytesPDF(retorno, $"{NombreReporte}{Date.Now.ToShortDateString}", Format)
+ Catch ex As Exception
+ GuardaLog(String.Format("Ocurrio un error al generar el reporte RLDC {0}", ex))
+ End Try
+
+ Else
+ Dim filtros As String = $"Fechas: {FechaI.ToString("dd/MM/yyyy")} a {FechaF.ToString("dd/MM/yyyy")}"
+
+ If DtDatos.Rows.Count > 0 AndAlso String.IsNullOrEmpty(DtDatos.Rows(0)("Vehiculo").ToString()) Then
+ DtDatos.Rows(0)("Vehiculo") = "Total Kilometros Recorridos"
+ End If
+
+ DtDatos.Columns.RemoveAt(0)
+ DtDatos.Columns("Vehiculo").ColumnName = "Vehículo"
+ DtDatos.Columns("TiempoOperativo").ColumnName = "Tiempo Operativo"
+ DtDatos.Columns("Dist").ColumnName = "Kilometros Recorridos"
+
+ ImprimirExcelG(DtDatos, "ReporteKMRecorridos.xlsx", "Reporte de Kilometros Recorridos", filtros, NombreHoja:="RepKM")
+ End If
- Try
- Dim RptParametro As New List(Of ReportParameter)
- RptParametro.Add(New ReportParameter("FechaInicio", FechaI.ToString))
- RptParametro.Add(New ReportParameter("FechaFin", FechaF.ToString))
- RptParametro.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Usuario))
- RptParametro.Add(New ReportParameter("FechaImpresion", DateTime.Now.ToString))
-
- retorno = StreamPDF(RutaReporte, DtDatos, RptParametro, $"{NombreReporte}{Date.Now.ToShortDateString}", Format, MR:=Nothing, RDSName:="DsOC")
-
- ImprimirbytesPDF(retorno, $"{NombreReporte}{Date.Now.ToShortDateString}", Format)
- Catch ex As Exception
- GuardaLog(String.Format("Ocurrio un error al generar el reporte RLDC {0}", ex))
- End Try
Else
Alert("No se pudo imprimir el pdf, ya que no se ha hecho una consulta, o ésta no arrojó resultados.", TipoMensaje.MsgInformacion)
End If
@@ -1737,8 +1754,16 @@ Partial Class GPS_Rastreo
GuardaLog(String.Format("Ocurrio un error al generar el reporte RLDC {0}", ex))
End Try
- retorno = StreamPDF(RutaReporte, DtDatos, RptParametro, $"{NombreReporte}{Date.Now.ToShortDateString}", Format, MR:=Nothing, RDSName:="DsOC")
- ImprimirbytesPDF(retorno, $"{NombreReporte}{Date.Now.ToShortDateString}", Format)
+ If Opcion = "Idle" AndAlso Format = "EXCEL" Then
+ Dim filtros As String = $"Fechas: {FechaI.ToString("dd/MM/yyyy")} a {FechaF.ToString("dd/MM/yyyy")}, Tiempo Muerto: {TxtMinutos.Text} minutos"
+
+ ImprimirExcelG(DtDatos, "ReporteKMRecorridos.xlsx", "Reporte de KM Recorridos", filtros)
+ Else
+ retorno = StreamPDF(RutaReporte, DtDatos, RptParametro, $"{NombreReporte}{Date.Now.ToShortDateString}", Format, MR:=Nothing, RDSName:="DsOC")
+ ImprimirbytesPDF(retorno, $"{NombreReporte}{Date.Now.ToShortDateString}", Format)
+ End If
+
+
DtDatos.Clear()
Else
Alert("No se pudo imprimir el pdf, ya que no se ha hecho una consulta, o ésta no arrojó resultados.", TipoMensaje.MsgInformacion)
@@ -1785,7 +1810,7 @@ Partial Class GPS_Rastreo
SpreadsheetInfo.SetLicense(ModExtensiones.SerialGemBoxSpreadsheet)
Dim FileExcel As ExcelFile = New ExcelFile
Dim Dt = DtPosiciones.Copy()
- Dt.Columns.Add("Direccion", GetType(String))
+ Dt.Columns.Add("Dirección", GetType(String))
Dt.Columns.Remove("CveDispositivo")
Dt.Columns.Remove("Evento")
Dt.Columns.Remove("Icono")
@@ -1797,11 +1822,42 @@ Partial Class GPS_Rastreo
Dt.Columns.Remove("Posicion")
For Each Dir As JObject In Direcciones
- Dt.Rows(Dir("Indice").ToEntero())("Direccion") = Dir("Direccion").ToString()
+ Dt.Rows(Dir("Indice").ToEntero())("Dirección") = Dir("Direccion").ToString()
Next
- Dim item = FileExcel.Worksheets.Add("Última Posición")
- item.InsertDataTable(Dt, New InsertDataTableOptions() With
+ Dt.Columns("Vehiculo").ColumnName = "Vehículo"
+ Dt.Columns("Velocidad").ColumnName = "Velocidad (KM/H)"
+
+ ImprimirExcelG(Dt, FileName, "Última Posición", "", NombreHoja:="UltimaPosicion")
+
+ 'Dim item = FileExcel.Worksheets.Add("Última Posición")
+ 'item.InsertDataTable(Dt, New InsertDataTableOptions() With
+ ' {
+ ' .ColumnHeaders = True,
+ ' .StartRow = 0,
+ ' .StartColumn = 0
+ ' })
+ 'item.Rows(0).Style.FillPattern.SetPattern(FillPatternStyle.Solid, SpreadsheetColor.FromArgb(75, 119, 190), SpreadsheetColor.FromArgb(255, 255, 255))
+ 'item.Rows(0).Style.Font.Color = SpreadsheetColor.FromArgb(255, 255, 255)
+
+ 'Dim columnCount = item.CalculateMaxUsedColumns()
+ 'For i = 0 To columnCount
+ ' item.Columns(i).AutoFit(1, item.Rows(i), item.Rows(item.Rows.Count - 1))
+ 'Next
+ 'FileExcel.Save(Me.Response, FileName, SaveOptions.XlsxDefault)
+
+ End Sub
+
+
+ Private Sub ImprimirExcelG(DtDatos As DataTable, Archivo As String, Titulo As String, Filtros As String, Optional NombreHoja As String = "Hoja1")
+ SpreadsheetInfo.SetLicense(ModExtensiones.SerialGemBoxSpreadsheet)
+ Dim excel As ExcelFile = New ExcelFile
+
+ Dim TotalRowHeader As Integer = 8
+ Dim TotalRowFooter As Integer = 2
+
+ Dim item = excel.Worksheets.Add(NombreHoja)
+ item.InsertDataTable(DtDatos, New InsertDataTableOptions() With
{
.ColumnHeaders = True,
.StartRow = 0,
@@ -1813,9 +1869,127 @@ Partial Class GPS_Rastreo
Dim columnCount = item.CalculateMaxUsedColumns()
For i = 0 To columnCount
item.Columns(i).AutoFit(1, item.Rows(i), item.Rows(item.Rows.Count - 1))
- Next
- FileExcel.Save(Me.Response, FileName, SaveOptions.XlsxDefault)
-
+ Next
+
+
+ Dim worksheet = excel.Worksheets(0)
+ worksheet.Rows.InsertEmpty(0, TotalRowHeader)
+ Dim celdasConTexto = worksheet.GetUsedCellRange(True)
+ celdasConTexto.Style.Font.Name = "Calibri Light"
+
+ Dim RangoNombreEmpresa = worksheet.Cells.GetSubrangeAbsolute(1, celdasConTexto.FirstColumnIndex, 1, celdasConTexto.LastColumnIndex)
+ RangoNombreEmpresa.Merged = True
+ RangoNombreEmpresa.Value = GlobalDTCliente(UsuarioActual.CveEmpresa, CveCliente:=UsuarioActual.CveCliente).FiltroPrimeroValor("Nombre")
+ RangoNombreEmpresa.Style.Font.Size = 18 * 20
+ RangoNombreEmpresa.Style.Font.Name = "Calibri Light"
+ RangoNombreEmpresa.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
+ RangoNombreEmpresa.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
+
+
+ Dim RangoTitulo = worksheet.Cells.GetSubrangeAbsolute(3, celdasConTexto.FirstColumnIndex, 3, celdasConTexto.LastColumnIndex)
+ RangoTitulo.Merged = True
+ RangoTitulo.Value = Titulo
+ RangoTitulo.Style.Font.Size = 20 * 20
+ RangoTitulo.Style.Font.Name = "Calibri Light"
+ RangoTitulo.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
+ RangoTitulo.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
+
+
+ 'If FechaIMes.Trim.Length > 0 And FechaFMes.Trim.Length > 0 Then
+ ' Dim RangoFechas = worksheet.Cells.GetSubrangeAbsolute(4, celdasConTexto.FirstColumnIndex, 4, celdasConTexto.LastColumnIndex)
+ ' RangoFechas.Merged = True
+ ' RangoFechas.Value = $"Fechas: {FechaIMes} a {FechaFMes}"
+ ' RangoFechas.Style.Font.Size = 15 * 20
+ ' RangoFechas.Style.Font.Name = "Calibri Light"
+ ' RangoFechas.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
+ ' RangoFechas.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
+ 'End If
+
+
+ 'If SubProyecto.Length > 0 Then
+ ' Dim RangoSubProyecto = worksheet.Cells.GetSubrangeAbsolute(5, celdasConTexto.FirstColumnIndex, 5, celdasConTexto.LastColumnIndex)
+ ' RangoSubProyecto.Merged = True
+ ' RangoSubProyecto.Value = SubProyecto
+ ' RangoSubProyecto.Style.Font.Size = 20 * 20
+ ' RangoSubProyecto.Style.Font.Name = "Calibri Light"
+ ' RangoSubProyecto.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
+ ' RangoSubProyecto.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
+ 'End If
+
+
+ If Not String.IsNullOrEmpty(Filtros) Then
+ Dim RangoDatoTituloExtra = worksheet.Cells.GetSubrangeAbsolute(6, celdasConTexto.FirstColumnIndex, 6, celdasConTexto.LastColumnIndex)
+ RangoDatoTituloExtra.Merged = True
+ RangoDatoTituloExtra.Value = Filtros
+ RangoDatoTituloExtra.Style.Font.Size = 15 * 20
+ RangoDatoTituloExtra.Style.Font.Name = "Calibri Light"
+ RangoDatoTituloExtra.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
+ RangoDatoTituloExtra.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
+ End If
+
+
+ For i = celdasConTexto.FirstColumnIndex To celdasConTexto.LastColumnIndex
+
+ worksheet.Rows(8).Cells(i).Style.Font.Size = 12 * 20
+ worksheet.Rows(8).Cells(i).Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
+ worksheet.Rows(8).Cells(i).Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
+
+ worksheet.Rows(8).Cells(i).Style.FillPattern.SetPattern(GemBox.Spreadsheet.FillPatternStyle.Solid, GemBox.Spreadsheet.SpreadsheetColor.FromArgb(75, 119, 190), GemBox.Spreadsheet.SpreadsheetColor.FromArgb(255, 255, 255))
+ worksheet.Rows(8).Cells(i).Style.Font.Color = GemBox.Spreadsheet.SpreadsheetColor.FromArgb(255, 255, 255)
+
+
+
+ If i > 0 Then
+ Try
+ worksheet.Columns(i).AutoFit(1)
+ Catch ex As Exception
+ End Try
+ End If
+
+ Next
+
+
+
+ Dim IndexEndTable As Integer = DtDatos.Rows.Count + TotalRowHeader + TotalRowFooter
+
+ worksheet.Rows(IndexEndTable).Cells(0).Value = "Usuario Imprimió"
+ worksheet.Rows(IndexEndTable + 1).Cells(0).Value = UsuarioActual.Nombre
+
+ worksheet.Rows(IndexEndTable).Cells(2).Value = "Fecha Impresión"
+ worksheet.Rows(IndexEndTable + 1).Cells(2).Value = DateTime.Now.ToString("dd/MM/yyyy")
+
+ 'Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta))
+
+ 'If Imagen.Exists Then
+ ' Dim Ruta As String = String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta)
+ ' Using sr As New StreamReader(Ruta)
+ ' Dim ms As New MemoryStream()
+ ' sr.BaseStream.CopyTo(ms)
+ ' worksheet.Pictures.Add(ms, ExcelPictureFormat.Png, "A1", 100, 100, LengthUnit.Pixel)
+ ' End Using
+ 'End If
+
+
+ For I = celdasConTexto.FirstColumnIndex To celdasConTexto.LastColumnIndex
+
+ If I > 0 Then
+
+ 'If Divisor = 1 Then
+ ' worksheet.Columns(I + 1).Style.NumberFormat = "#,##0.00"
+ 'Else
+ ' worksheet.Columns(I + 1).Style.NumberFormat = "#,##"
+ 'End If
+
+ Try
+ worksheet.Columns(I).AutoFit(1)
+ Catch ex As Exception
+ End Try
+
+ End If
+ Next
+
+ excel.Save(Me.Response, Archivo, SaveOptions.XlsxDefault)
+
End Sub
Private Function CargaDireccion(ByVal lat As String, ByVal lng As String) As String
Try
diff --git a/Nomina/Aguinaldo.aspx.cs b/Nomina/Aguinaldo.aspx.cs
index b89c02fb9..8177fa3e8 100644
--- a/Nomina/Aguinaldo.aspx.cs
+++ b/Nomina/Aguinaldo.aspx.cs
@@ -44,8 +44,21 @@ public partial class Nomina_Aguinaldo : ClsPaginas
{
DdlTipoPeriodo.SelectedIndex = 0;
}
+
+ LtlUma.Text = "";
+ int cveempresa = 1;
+ if (UsuarioActual != null) { cveempresa = UsuarioActual.CveEmpresa; }
+ using (ClsClaseBaseD objbase = new ClsClaseBaseD())
+ {
+ if (objbase.runQuerystr($"SELECT Valor UMA FROM [dbo].[RH_TablasValores] WHERE Tipo =1 AND CveEmpresa ={cveempresa} AND Fecha<'{DateTime.Now:yyyy/MM/dd}' ORDER BY Fecha DESC"))
+ {
+ if(objbase.DtResultados.Rows.Count > 0)
+ {
+ LtlUma.Text = objbase.DtResultados.Rows[0]["UMA"].ToString();
+ }
+ }
+ }
}
- LtlUma.Text = "86.88";
}
@@ -269,7 +282,7 @@ public partial class Nomina_Aguinaldo : ClsPaginas
protected void BtnRecalcular_Click(object sender, EventArgs e)
{
- decimal uma = 86.88m;
+ decimal uma = LtlUma.Text.ToDecimal();
decimal aguiexentogral = uma * 30;
decimal salariodiario = 0;
decimal diasanio = 366;
@@ -308,24 +321,25 @@ public partial class Nomina_Aguinaldo : ClsPaginas
aguinaldo = diasaguipago * salariodiario;
aguinaldoexcento = (aguiexentogral > aguinaldo ? aguinaldo : aguiexentogral);
aguinaldogravado = aguinaldo - aguinaldoexcento;
- if (aguinaldogravado > 0) {
- FraccionI = (aguinaldogravado / diasanio) * diasmes;
- FraccionII_1 = salariomensual + FraccionI;
- str.Clear();
- str.AppendFormat("SELECT dbo.Fnc_NomValues(40, 0, 00, -1, {0}, {1}, {1}) isrFraccionII_2,", FraccionII_1, diasmes);
- str.AppendFormat(" dbo.Fnc_NomValues(40, 0, 00, -1, {0}, {1}, {1}) isrFraccionIII_1", salariomensual, diasmes);
- if (objbase.runQuerystr(str.ToString()))
+ if (aguinaldogravado > 0)
{
- DataRow drow = objbase.DtResultados.Rows[0];
- FraccionII_2 = drow["isrFraccionII_2"].ToString().ToDecimal();
- FraccionIII_1 = drow["isrFraccionIII_1"].ToString().ToDecimal();
- }
- else { break; }
+ FraccionI = (aguinaldogravado / diasanio) * diasmes;
+ FraccionII_1 = salariomensual + FraccionI;
+ str.Clear();
+ str.AppendFormat("SELECT dbo.Fnc_NomValues(40, 0, 00, -1, {0}, {1}, {1}) isrFraccionII_2,", FraccionII_1, diasmes);
+ str.AppendFormat(" dbo.Fnc_NomValues(40, 0, 00, -1, {0}, {1}, {1}) isrFraccionIII_1", salariomensual, diasmes);
+ if (objbase.runQuerystr(str.ToString()))
+ {
+ DataRow drow = objbase.DtResultados.Rows[0];
+ FraccionII_2 = drow["isrFraccionII_2"].ToString().ToDecimal();
+ FraccionIII_1 = drow["isrFraccionIII_1"].ToString().ToDecimal();
+ }
+ else { break; }
- FraccionIII_2 = FraccionII_2 - FraccionIII_1;
- FraccionV = FraccionIII_2 / FraccionI;
- FraccionIV = aguinaldogravado * FraccionV;
- Aguinaldoapagar = aguinaldo - FraccionIV;
+ FraccionIII_2 = FraccionII_2 - FraccionIII_1;
+ FraccionV = FraccionIII_2 / FraccionI;
+ FraccionIV = aguinaldogravado * FraccionV;
+ Aguinaldoapagar = aguinaldo - FraccionIV;
}
else
{
@@ -349,7 +363,7 @@ public partial class Nomina_Aguinaldo : ClsPaginas
}
}
- LtlTotal.Text =string.Format("${0:N2}", AguinaldoapagarTotal);
+ LtlTotal.Text = string.Format("${0:N2}", AguinaldoapagarTotal);
/*
*
@@ -389,7 +403,7 @@ Aguinaldoapagar
}
}
- class ClsClaseBaseD : IDisposable
+class ClsClaseBaseD : IDisposable
{
protected SqlConnection SqlConexion;
protected SqlDataAdapter SqlAdapter;
@@ -534,11 +548,11 @@ Aguinaldoapagar
SqlAdapter.SelectCommand.CommandText = Query;
SqlAdapter.SelectCommand.CommandType = CommandType.Text;
datos = new DataTable();
- if (Listaparametros!= null)
+ if (Listaparametros != null)
{
foreach (parametroQuery pr in Listaparametros)
- {
- SqlAdapter.SelectCommand.Parameters.Add(pr.ParameterName, pr.SqlDataType).Direction = pr.ParameterDirection;
+ {
+ SqlAdapter.SelectCommand.Parameters.Add(pr.ParameterName, pr.SqlDataType).Direction = pr.ParameterDirection;
}
}
@@ -574,11 +588,11 @@ Aguinaldoapagar
SqlAdapter.SelectCommand.Parameters.Clear();
SqlAdapter.SelectCommand.CommandText = Query;
SqlAdapter.SelectCommand.CommandType = CommandType.Text;
- if (Listaparametros!= null)
+ if (Listaparametros != null)
{
foreach (parametroQuery pr in Listaparametros)
{
- SqlAdapter.SelectCommand.Parameters.Add(pr.ParameterName, pr.SqlDataType).Direction = pr.ParameterDirection;
+ SqlAdapter.SelectCommand.Parameters.Add(pr.ParameterName, pr.SqlDataType).Direction = pr.ParameterDirection;
}
}
diff --git a/Nomina/Nomina2.aspx b/Nomina/Nomina2.aspx
index 03fc1468e..27158a68e 100644
--- a/Nomina/Nomina2.aspx
+++ b/Nomina/Nomina2.aspx
@@ -127,6 +127,9 @@
font-weight: bold;
font-size: 15px;
}
+ .form-group.form-md-line-input .form-control.input-sm ~ label {
+ padding-bottom: 20px;
+}
@@ -1107,7 +1110,7 @@
diff --git a/Sistemas/PopUpAddUsuario.aspx.vb b/Sistemas/PopUpAddUsuario.aspx.vb
index b48a4fd17..1ec6d9763 100644
--- a/Sistemas/PopUpAddUsuario.aspx.vb
+++ b/Sistemas/PopUpAddUsuario.aspx.vb
@@ -1,7 +1,7 @@
Imports Extensiones
Imports System.Data
Partial Class Sistemas_PopUpAddUsuario
- Inherits ClsPaginas
+ Inherits ClsPaginas
#Region "PROPIEDADES"
Public Property CveCliente As Integer
Get
@@ -51,7 +51,7 @@ Partial Class Sistemas_PopUpAddUsuario
Set(value As Integer)
ViewState("CvePlataforma") = value
End Set
- End Property
+ End Property
#End Region
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
@@ -164,8 +164,14 @@ Partial Class Sistemas_PopUpAddUsuario
If ObjUsuario.UpdateUsuario(LtlUsuario.Text, TxtNombre.Text, -1, TxtEmail.Text, -1, -1, True, True, -1, CveUsuario, -1, -1) Then
Alert("La contraseña se reestableció correctamente a la contraseña por default '-acceso-'.")
Dim Liga As String = $"{Context.Request.Url.OriginalString.Substring(0, Context.Request.Url.OriginalString.Length - Context.Request.Url.PathAndQuery.Length)}/LogIn.aspx"
- Dim LigaActivar As String = Liga & "?p=" & Encripta("CveU=" & CveUsuario & "&Clave=" & "-acceso-" & "&Opcion=Activar&Hora=" & DateTime.Now.Ticks& & "&CveE=" & UsuarioActual.CveEmpresa)
- EnviaCorreo(Liga, LigaActivar)
+ Dim LigaActivar As String = Liga & "?p=" & Encripta("CveU=" & CveUsuario & "&Clave=" & "-acceso-" & "&Opcion=Activar&Hora=" & DateTime.Now.Ticks& & "&CveE=" & UsuarioActual.CveEmpresa)
+
+ If UsuarioActual.Empresa.CvePlataforma = 3 Then
+ EnviaCorreoGPS(Liga, LigaActivar)
+ Else
+ EnviaCorreo(Liga, LigaActivar)
+ End If
+
End If
End If
ObjUsuario.Dispose()
@@ -251,8 +257,14 @@ Partial Class Sistemas_PopUpAddUsuario
'ENVIA CORREO
If CveUsuario > 0 Then
Dim Liga As String = $"{Context.Request.Url.OriginalString.Substring(0, Context.Request.Url.OriginalString.Length - Context.Request.Url.PathAndQuery.Length)}/LogIn.aspx"
- Dim LigaActivar As String = Liga & "?p=" & Encripta("CveU=" & CveUsuario & "&Clave=" & "-acceso-" & "&Opcion=Activar&Hora=" & DateTime.Now.Ticks& & "&CveE=" & UsuarioActual.CveEmpresa)
- Mensaje = EnviaCorreo(Liga, LigaActivar)
+ Dim LigaActivar As String = Liga & "?p=" & Encripta("CveU=" & CveUsuario & "&Clave=" & "-acceso-" & "&Opcion=Activar&Hora=" & DateTime.Now.Ticks& & "&CveE=" & UsuarioActual.CveEmpresa)
+
+ If UsuarioActual.Empresa.CvePlataforma = 3 Then
+ Mensaje = EnviaCorreoGPS(Liga, LigaActivar)
+ Else
+ Mensaje = EnviaCorreo(Liga, LigaActivar)
+ End If
+
Else
HuboError = True
End If
@@ -651,16 +663,139 @@ Partial Class Sistemas_PopUpAddUsuario
OnError("Ocurrió error al mandar MAIL", ex)
End Try
+ Return Retorno
+ End Function
+
+ Private Function EnviaCorreoGPS(Liga As String, LigaActivar As String) As String
+ Dim Retorno As String = ""
+ Try
+ 'Dim URL As String = "https://gps.signalsgps.com/" + LigaActivar
+
+ Dim Para = TxtEmail.Text.Trim
+ Dim Asunto = "ACCESO A SIGNALS GPS"
+
+ 'Dim SBBody As New StringBuilder
+ ''Linia de estilos
+ 'SBBody.Append("")
+ ''incio Cuerpo del correo
+ 'SBBody.Append("
")
+ 'SBBody.Append("
")
+ 'SBBody.Append("
")
+ 'SBBody.Append("ALTA DE CUENTA")
+ 'SBBody.Append("
")
+ 'SBBody.Append(" ")
+ 'SBBody.AppendFormat(" Estimado {0}: ", TxtNombre.Text.ToUpper)
+ 'SBBody.AppendFormat("El presente correo es para informarle que se le han asignado los siguientes datos para el acceso a la Plataforma de: {0}
")
+ 'Termino Cuerpo del correo
+
+ Dim Hilo As New System.Threading.Thread(Sub() MandaCorreo(Asunto, Para, SBBody.ToString))
+ Hilo.Start()
+
+ 'Dim JSBTN As String = ""
+ 'If UsuarioActual.CveCliente > 0 Then
+ ' JSBTN = $"document.location.href=""javascript: Ir2({CveCliente})"";"
+ 'ElseIf CveCliente > 0 Then
+ ' JSBTN = $"document.location.href=""javascript:Ir({CveCliente})"";"
+ 'End If
+ 'If UsuarioActual.Empresa.CvePlataforma = 3 Then
+ ' Alert("El correo se ha enviado correctamente a: " + TxtEmail.Text + ".", TipoMensaje.MsgInformacion, JSBTN)
+ 'End If
+
+ Retorno = $"El correo se ha enviado correctamente a: {TxtEmail.Text}."
+
+ Catch ex As Exception
+ OnError("Ocurrió error al mandar MAIL", ex)
+ End Try
+
Return Retorno
End Function
Private Sub MandaCorreo(Asunto As String, Para As String, Body As String)
Dim a As String = String.Format("{0} -- {1} ---- -->", Asunto, Para)
a.GuardaLog()
Dim Mail As New ClsSisMail()
- Mail.SendMail(ClsPaginas.EmpresaNotificaciones, Para, Asunto, Body)
- End Sub
-#End Region
+ Dim EmpresaEnvio As Empresa = ClsPaginas.EmpresaNotificaciones
+
+ If UsuarioActual.Empresa.CvePlataforma = 3 Then
+ EmpresaEnvio = ClsPaginas.EmpresaNotificacionesGPS
+ End If
+
+ Mail.SendMail(EmpresaEnvio, Para, Asunto, Body)
+ End Sub
+#End Region
+
#Region "M O D U L O S"
Public Sub CargaModulosAcceso()
Dim ObjPermisos As New ClsSisUsuarios
@@ -808,11 +943,11 @@ Partial Class Sistemas_PopUpAddUsuario
End If
End If
- End Sub
-
-
+ End Sub
+
+
#End Region
-
+
#Region "V E H I C U L O S"
Private Sub CargaDispositivos()
GvDispositivos.DataSource = GlobalDTDispositivos(CveCliente).FiltraParametros("Estatus = 1 ")
@@ -826,10 +961,10 @@ Partial Class Sistemas_PopUpAddUsuario
End If
End If
End If
- End Sub
-
+ End Sub
+
#End Region
-
+
#Region "N O T I F I C A C I O N E S"
Private Sub CargarNotificaciones()
Dim ObjNotificaciones As New ClsSisNotificaciones
@@ -851,11 +986,11 @@ Partial Class Sistemas_PopUpAddUsuario
e.Row.FCCheckBox("chkApp").Checked = If(DtNotificacionesUsuarios.FiltroPrimeroValor("Alerta_App", $"CveNotificacion = {e.Row.DBCampo("CveNotificacion")}").ToString = "True", True, False)
End If
End If
- End Sub
-
-
+ End Sub
+
+
#End Region
-
+
Protected Sub BtnCambiarUsuario_Click(sender As Object, e As EventArgs)
CveUsuario = -1
diff --git a/Site.master b/Site.master
index 0996ebb05..6c399c64c 100644
--- a/Site.master
+++ b/Site.master
@@ -6,7 +6,7 @@
- Sistema de Información Gerencial
+ Sistema de Información Gerencial
diff --git a/Site.master.vb b/Site.master.vb
index e35e3893b..899461f8d 100644
--- a/Site.master.vb
+++ b/Site.master.vb
@@ -76,6 +76,7 @@ Partial Class Site
If UsuarioActual.Empresa.CvePlataforma = 3 Then
lnkFavicon.Href = "/Imagenes/favicongps.ico"
+ tTitulo.Text = "SIGNALS GPS"
Else
lnkFavicon.Href = "/Imagenes/favicon.ico"
End If
diff --git a/Ventas/PV.aspx.vb b/Ventas/PV.aspx.vb
index f908576ee..e481299ef 100644
--- a/Ventas/PV.aspx.vb
+++ b/Ventas/PV.aspx.vb
@@ -6274,8 +6274,6 @@ Partial Class PV
GvRecepcionUsados.DataSource = DtTamanios
GvRecepcionUsadosModal.DataSource = DtTamanios
-
- DdlFolioGarantia.DataBind()
DdlTipoUso.DataBind()
DdlTipoDefecto.DataBind()
DdlFacturas.DataBind()
diff --git a/Ventas/Ventas.aspx b/Ventas/Ventas.aspx
index c0658934e..81aaae32d 100644
--- a/Ventas/Ventas.aspx
+++ b/Ventas/Ventas.aspx
@@ -756,8 +756,7 @@