From 87ed685bbd4e293d9351434d896ed21fce936be9 Mon Sep 17 00:00:00 2001 From: rakcsle Date: Tue, 14 Nov 2023 16:13:12 -0700 Subject: [PATCH] Ventas Medicas Cambios OS --- Ashx/CargaEventos.ashx | 24 ++++++++++++++--- OS/Asignaciones.aspx.vb | 6 ++--- OS/RepServicioDomicilio.aspx.vb | 10 ++++++- Ventas/VentasMedicas.aspx | 2 +- Ventas/VentasMedicas.aspx.vb | 47 +++++++++++++++------------------ 5 files changed, 55 insertions(+), 34 deletions(-) diff --git a/Ashx/CargaEventos.ashx b/Ashx/CargaEventos.ashx index d40007c3b..3e8039f23 100644 --- a/Ashx/CargaEventos.ashx +++ b/Ashx/CargaEventos.ashx @@ -117,6 +117,8 @@ Public Class CargaEventos : Implements IHttpHandler, IRequiresSessionState Dim ColorIndex As Integer = 0 + + If DtTempSubproyectos.Rows.Count > 0 Then For Each drow As DataRow In DtTempSubproyectos.Rows @@ -140,9 +142,9 @@ Public Class CargaEventos : Implements IHttpHandler, IRequiresSessionState Dim EsCoordinador As Boolean = False + Dim usuarioActual_ As Usuario = UsuarioActual(context) If context IsNot Nothing AndAlso CveOS = -2 Then - Dim usuario As Usuario = UsuarioActual(context) - If usuario.TienePermisoProceso(348) Then + If usuarioActual_.TienePermisoProceso(348) Then EsCoordinador = True End If End If @@ -234,6 +236,22 @@ Public Class CargaEventos : Implements IHttpHandler, IRequiresSessionState cevent.backgroundColor = If(cevent.backgroundColor.Trim = "", "#1BBC9B", cevent.backgroundColor.Trim) End If + + If usuarioActual_.Empresa.Funcionalidad(578) = "1" Then + + If dr("TipoEstatusOS").ToString.ToEntero.Contiene(1, 2, 3) Then + cevent.backgroundColor = "#006699" + ElseIf dr("TipoEstatusOS").ToString.ToEntero.Contiene(4) Then + cevent.backgroundColor = "#025716" + ElseIf dr("TipoEstatusOS").ToString.ToEntero.Contiene(5) Then + cevent.backgroundColor = "#730505" + Else + cevent.backgroundColor = "#006699" + End If + + + End If + 'VERIFICAMOS SI TIENE O NO RECURRENCIA If Not cevent.recurrenciatipo > 0 Then @@ -407,4 +425,4 @@ Public Class CargaEventos : Implements IHttpHandler, IRequiresSessionState End Property -End Class \ No newline at end of file +End Class diff --git a/OS/Asignaciones.aspx.vb b/OS/Asignaciones.aspx.vb index d68d1b33e..66c3de3e1 100644 --- a/OS/Asignaciones.aspx.vb +++ b/OS/Asignaciones.aspx.vb @@ -249,7 +249,7 @@ Partial Class OS_Asignaciones Dim CorreoAsignado As String = GlobalDTUsuarios(DdlTecnico.SelectedValue.ToEntero).Rows(0)("Correo").ToString If Not TieneError Then - MandaCorreOS(row.DataKey("CveOS").ToEntero, CorreoAsignado) + MandaCorreOS(row.DataKey("CveOS").ToEntero, CorreoAsignado, TrasaccionSql:=ObjOS.IniciaTransacSQL) End If @@ -279,11 +279,11 @@ Partial Class OS_Asignaciones UpOS.Update() End Sub - Private Sub MandaCorreOS(CveOS As Integer, CorreoUsuarioAsignado As String) + Private Sub MandaCorreOS(CveOS As Integer, CorreoUsuarioAsignado As String, ByRef TrasaccionSql As SqlClient.SqlTransaction) - Dim ObjOS As New ClsOS() + Dim ObjOS As New ClsOS(TrasaccionSql) Dim params As New List(Of ReportParameter) Dim CveFolio = "" diff --git a/OS/RepServicioDomicilio.aspx.vb b/OS/RepServicioDomicilio.aspx.vb index e66cc2b5a..084df90aa 100644 --- a/OS/RepServicioDomicilio.aspx.vb +++ b/OS/RepServicioDomicilio.aspx.vb @@ -310,8 +310,16 @@ Partial Class OS_RepServicioDomicilio DTTecnicos = New DataTable Dim ObjUsuarios As New ClsSisUsuarios + + + If ObjUsuarios.GetPermisosPorUsuarioProcesos(-1, -1, -1, -1, 351, UsuarioActual.CveUsuario, CveEmpresa:=UsuarioActual.CveEmpresa) Then - DTTecnicos = ObjUsuarios.DtResultados.FiltraParametros(" CveProcesoUsuarioAcceso > 0") + If UsuarioActual.CveRol = 1 Then + DTTecnicos = ObjUsuarios.DtResultados.FiltraParametros(" CveProcesoUsuarioAcceso > 0") + Else + DTTecnicos = ObjUsuarios.DtResultados.FiltraParametros(" CveProcesoUsuarioAcceso > 0 and CveUsuario <> 100") + End If + End If ObjUsuarios.Dispose() diff --git a/Ventas/VentasMedicas.aspx b/Ventas/VentasMedicas.aspx index 525b3c1a6..82c40dfee 100644 --- a/Ventas/VentasMedicas.aspx +++ b/Ventas/VentasMedicas.aspx @@ -337,7 +337,7 @@ - Rquiere Técnico: + Requiere Técnico: diff --git a/Ventas/VentasMedicas.aspx.vb b/Ventas/VentasMedicas.aspx.vb index 18dfa37de..c69f6c102 100644 --- a/Ventas/VentasMedicas.aspx.vb +++ b/Ventas/VentasMedicas.aspx.vb @@ -8244,7 +8244,7 @@ Partial Class VentasMedicas Private Function GeneraOS(ByRef TransacSQL As SqlTransaction, ByRef errorList As List(Of String)) As Boolean - Dim Respuesta As Boolean = False + Dim Errores As Boolean = False Dim ObjOrdenServicio As New ClsOS(TransacSQL) @@ -8267,38 +8267,33 @@ Partial Class VentasMedicas Errores = True End If + Dim CvePSDetalle As Integer = UsuarioActual.Empresa.Funcionalidad(708).ToEntero + + If Not CvePSDetalle > 0 Then + errorList.Add("No se tiene asignado un producto para la orden de servicio (FNC 708).") + Errores = True + End If + If Not Errores Then - For Each Row As DataRow In TmpDT.Rows + Dim CveOsDetalle = ObjOrdenServicio.AddOrdenesServiciosDetalle(ObjOrdenServicio.CveOS, CvePSDetalle, 1, -1, -1, $"Venta: {Serie}-{FolioActual}", False, True, False, -1, "-1", "-1", "-1", "", UsuarioActual.CveUsuario, Archivo:="") - 'Dim Consecutivo As Integer = Row("Consecutivo").ToString.ToEntero - Dim CvePS As Integer = Row("CvePS").ToString.ToEntero - Dim Obs As String = Row("Obs").ToString - 'Dim SeFacturara As Boolean = CBool(Row("SeFacturara").ToString) - 'Dim CveCuentaEquipo As Integer = Row("CveCuentaEquipo").ToString.ToEntero - 'Dim ComentarioTecnico As String = Row("ComentarioTecnico").ToString - Dim Cantidad As Integer = Row("Cantidad").ToString.ToEntero - 'Dim Archivo As New System.IO.FileInfo(String.Format("{0}OS\Temp\{1}", UsuarioActual.Empresa.Ruta, Row("Archivo").ToString)) + If CveOsDetalle > 0 Then + 'MENSAJE PRINCIPAL + Dim MensajeAlertOS As New StringBuilder + MensajeAlertOS.AppendFormat(String.Format("
La Orden de Servicio: {0} se generó correctamente.

", ObjOrdenServicio.Folio)) + MensajeAlert.AppendFormat("
", Encripta(String.Format("OP=OS&CVEOS={0}", ObjOrdenServicio.CveOS))) + Dim Liga = $"document.location.href=""/OS/RepOrdenesServicios.aspx"";" + Alert(MensajeAlertOS.ToString, TipoMensaje.MsgInformacion, Liga) + Else + errorList.Add("Se presento un error al guardar la el detalle de la orden de servicio.") + Errores = True + End If - Dim CveOsDetalle = ObjOrdenServicio.AddOrdenesServiciosDetalle(ObjOrdenServicio.CveOS, CvePS, Cantidad, -1, -1, Obs, False, True, False, -1, "-1", "-1", "-1", "", UsuarioActual.CveUsuario, Archivo:="") - - If CveOsDetalle > 0 Then - 'MENSAJE PRINCIPAL - Dim MensajeAlertOS As New StringBuilder - MensajeAlertOS.AppendFormat(String.Format("
La Orden de Servicio: {0} se generó correctamente.

", ObjOrdenServicio.Folio)) - MensajeAlert.AppendFormat("
", Encripta(String.Format("OP=OS&CVEOS={0}", ObjOrdenServicio.CveOS))) - Dim Liga = $"document.location.href=""/OS/RepOrdenesServicios.aspx"";" - Alert(MensajeAlertOS.ToString, TipoMensaje.MsgInformacion, Liga) - Else - errorList.Add("Se presento un error al guardar la el detalle de la orden de servicio.") - Errores = True - Exit For - End If - Next End If - Return Respuesta + Return If(Errores, False, True) End Function