Files
SIG/OI/SoporteADS.aspx.vb

2337 lines
95 KiB
VB.net

Option Explicit On
Option Strict On
Imports System.Data
Imports Extensiones
Imports System.IO
Imports MKB.TimePicker
Partial Class OI_SoporteADS
Inherits ClsPaginas
#Region "Propiedades"
Private Property CveEvento As Integer
Get
Return ViewState("CveEvento").ToString.ToEntero
End Get
Set(value As Integer)
ViewState("CveEvento") = value
End Set
End Property
Private Property CveEventoPadre As Integer
Get
Return ViewState("CveEventoPadre").ToString.ToEntero
End Get
Set(value As Integer)
ViewState("CveEventoPadre") = value
End Set
End Property
Private Property CveUsuarioPadre As Integer
Get
Return ViewState("CveUsuarioPadre").ToString.ToEntero
End Get
Set(value As Integer)
ViewState("CveUsuarioPadre") = value
End Set
End Property
Private Property OrdenEstatus As Integer
Get
Return ViewState("OrdenEstatus").ToString.ToEntero
End Get
Set(value As Integer)
ViewState("OrdenEstatus") = value
End Set
End Property
Private Property CveEventoEstatusSiguiente As Integer
Get
If ViewState("OrdenEstatus") Is Nothing Then
Return -1
Else
Return ViewState("CveEventoEstatusSiguiente").ToString.ToEntero
End If
End Get
Set(value As Integer)
ViewState("CveEventoEstatusSiguiente") = value
End Set
End Property
Private Property EventoEstatusSiguiente As String
Get
Return ViewState("EventoEstatusSiguiente").ToString
End Get
Set(value As String)
ViewState("EventoEstatusSiguiente") = value
End Set
End Property
Private Property CveEventoEstatusAnterior As Integer
Get
Return ViewState("CveEventoEstatusAnterior").ToString.ToEntero
End Get
Set(value As Integer)
ViewState("CveEventoEstatusAnterior") = value
End Set
End Property
Private Property EventoEstatusAnterior As String
Get
Return ViewState("EventoEstatusAnterior").ToString
End Get
Set(value As String)
ViewState("EventoEstatusAnterior") = value
End Set
End Property
Private Property CveTipoEvento As Integer
Get
If ViewState("CveTipoEvento") Is Nothing Then
Return -1
Else
Return ViewState("CveTipoEvento").ToString.ToEntero
End If
End Get
Set(value As Integer)
ViewState("CveTipoEvento") = value
End Set
End Property
Private Property CveTipoEventoAnterior As Integer
Get
If ViewState("CveTipoEventoAnterior") Is Nothing Then
Return -1
Else
Return ViewState("CveTipoEventoAnterior").ToString.ToEntero
End If
End Get
Set(value As Integer)
ViewState("CveTipoEventoAnterior") = value
End Set
End Property
Private Property Nuevo As Boolean
Get
Return CType(ViewState("Nuevo"), Boolean)
End Get
Set(value As Boolean)
ViewState("Nuevo") = value
End Set
End Property
Private Property CveSeguimiento As Integer
Get
Return ViewState("CveSeguimiento").ToString.ToEntero
End Get
Set(value As Integer)
ViewState("CveSeguimiento") = value
End Set
End Property
Private ReadOnly Property ArchConsecutivo As String
Get
Return ViewState("ArchConsecutivo").ToString
End Get
End Property
Private Property DTComentarios As DataTable
Get
Return CType(ViewState("DTComentarios"), DataTable)
End Get
Set(value As DataTable)
ViewState("DTComentarios") = value
End Set
End Property
Private Property ArchivoReenvio As String
Get
Return ViewState("ArchivoReenvio").ToString
End Get
Set(value As String)
ViewState("ArchivoReenvio") = value
End Set
End Property
Private Property ArchivoActual As String
Get
Return ViewState("ArchivoActual").ToString
End Get
Set(value As String)
ViewState("ArchivoActual") = value
End Set
End Property
#End Region
#Region "Propiedades Correo"
Private Property EnviarCorreoTerminada() As Boolean
Get
Return CBool(ViewState("EnviarCorreoTerminada"))
End Get
Set(ByVal value As Boolean)
ViewState("EnviarCorreoTerminada") = value
End Set
End Property
Private Property EnviarCorreoRegresada() As Boolean
Get
Return CBool(ViewState("EnviarCorreoRegresada"))
End Get
Set(ByVal value As Boolean)
ViewState("EnviarCorreoRegresada") = value
End Set
End Property
Private Property UsuarioDe() As String
Get
Return ViewState("UsuarioDe").ToString()
End Get
Set(ByVal value As String)
ViewState("UsuarioDe") = value
End Set
End Property
Private Property TipoCorreo As Integer
Get
Return ViewState("TipoCorreo").ToString.ToEntero
End Get
Set(ByVal value As Integer)
ViewState("TipoCorreo") = value
End Set
End Property
Private Property CveUsuarioDe() As Integer
Get
Return CType(ViewState("CveUsuarioDe").ToString(), Integer)
End Get
Set(ByVal value As Integer)
ViewState("CveUsuarioDe") = value
End Set
End Property
Private Property CorreoDe() As String
Get
Return ViewState("CorreoDe").ToString()
End Get
Set(ByVal value As String)
ViewState("CorreoDe") = value
End Set
End Property
Private Property UsuarioPara() As String
Get
Return ViewState("UsuarioPara").ToString()
End Get
Set(ByVal value As String)
ViewState("UsuarioPara") = value
End Set
End Property
Private Property CveUsuarioPara() As Integer
Get
Return CType(ViewState("CveUsuarioPara").ToString(), Integer)
End Get
Set(ByVal value As Integer)
ViewState("CveUsuarioPara") = value
End Set
End Property
Private Property CveUsuarioParaNuevo() As Integer
Get
If ViewState("CveUsuarioParaNuevo") Is Nothing Then
Return -1
Else
Return CType(ViewState("CveUsuarioParaNuevo").ToString(), Integer)
End If
End Get
Set(ByVal value As Integer)
ViewState("CveUsuarioParaNuevo") = value
End Set
End Property
Private Property CveEmpresaOI As Integer
Get
If ViewState("CveEmpresaOI") Is Nothing Then
Return -1
Else
Return DirectCast(ViewState("CveEmpresaOI"), Integer)
End If
End Get
Set(ByVal value As Integer)
ViewState("CveEmpresaOI") = value
End Set
End Property
Private Property CorreoPara() As String
Get
Return ViewState("CorreoPara").ToString()
End Get
Set(ByVal value As String)
ViewState("CorreoPara") = value
End Set
End Property
Private Property UsuariosCCP() As List(Of String)
Get
Return CType(ViewState("UsuarioCCP"), List(Of String))
End Get
Set(ByVal value As List(Of String))
ViewState("UsuarioCCP") = value
End Set
End Property
Private Property CorreosCCP() As List(Of String)
Get
Return CType(ViewState("CorreosCCP"), List(Of String))
End Get
Set(ByVal value As List(Of String))
ViewState("CorreosCCP") = value
End Set
End Property
Private Property Titulo() As String
Get
Return ViewState("Titulo").ToString()
End Get
Set(ByVal value As String)
ViewState("Titulo") = value
End Set
End Property
Private Property Fecha() As String
Get
Return ViewState("Fecha").ToString()
End Get
Set(ByVal value As String)
ViewState("Fecha") = value
End Set
End Property
Private Property TipoNotificacion As Integer
Get
Return ViewState("TipoNotificacion").ToString.ToEntero
End Get
Set(value As Integer)
ViewState("TipoNotificacion") = value
End Set
End Property
Private Property Prioridad() As Integer
Get
Return CType(ViewState("Prioridad"), Integer)
End Get
Set(ByVal value As Integer)
ViewState("Prioridad") = value
End Set
End Property
Private ReadOnly Property Attchment() As String
Get
Return ViewState("Attachment").ToString()
End Get
End Property
Private Property Descripcion() As String
Get
Return ViewState("Descripcion").ToString()
End Get
Set(ByVal value As String)
ViewState("Descripcion") = value
End Set
End Property
Private ReadOnly Property EsBitacora() As Boolean
Get
Return CBool(ViewState("EsBitacora"))
End Get
End Property
Private Property Referencia() As String
Get
Return ViewState("REFERENCIA").ToString()
End Get
Set(value As String)
ViewState("REFERENCIA") = value
End Set
End Property
Private ReadOnly Property CveUsuarioRealizo() As Integer
Get
Return ViewState("CveUsuarioRealizo").ToString().ToEntero()
End Get
End Property
Private Property TipoEvento As String
Get
Return ViewState("TipoEvento").ToString()
End Get
Set(value As String)
ViewState("TipoEvento") = value
End Set
End Property
Private ReadOnly Property CvePendientePadre As Integer
Get
Return ViewState("CvePendientePadre").ToString.ToEntero
End Get
End Property
Private Property ReferenciaDescripcion As String
Get
Return ViewState("ReferenciaDescripcion").ToString()
End Get
Set(value As String)
ViewState("ReferenciaDescripcion") = value
End Set
End Property
Private ReadOnly Property URL As String
Get
Return ViewState("URL").ToString()
End Get
End Property
Private ReadOnly Property Variables As String
Get
Return ViewState("Variables").ToString()
End Get
End Property
Private Property DTDatos As DataTable
Get
If ViewState("DTDatos") Is Nothing Then
Return New DataTable
Else
Return DirectCast(ViewState("DTDatos"), DataTable)
End If
End Get
Set(value As DataTable)
ViewState("DTDatos") = value
End Set
End Property
Private Property DTBitacora As DataTable
Get
If ViewState("DTBitacora") Is Nothing Then
Return New DataTable
Else
Return DirectCast(ViewState("DTBitacora"), DataTable)
End If
End Get
Set(value As DataTable)
ViewState("DTBitacora") = value
End Set
End Property
Private Property Asunto As String
Get
If ViewState("Asunto") Is Nothing Then
Return "-1"
Else
Return ViewState("Asunto").ToString
End If
End Get
Set(value As String)
ViewState("Asunto") = value
End Set
End Property
Private Property EmpresaSop As String
Get
If ViewState("EmrpesaSop") Is Nothing Then
Return "-1"
Else
Return ViewState("EmrpesaSop").ToString
End If
End Get
Set(value As String)
ViewState("EmrpesaSop") = value
End Set
End Property
Private Property Telefono As String
Get
If ViewState("Telefono") Is Nothing Then
Return "-1"
Else
Return ViewState("Telefono").ToString
End If
End Get
Set(value As String)
ViewState("Telefono") = value
End Set
End Property
Private Property Extension As String
Get
If ViewState("Extension") Is Nothing Then
Return ""
Else
Return ViewState("Extension").ToString
End If
End Get
Set(value As String)
ViewState("Extension") = value
End Set
End Property
Private Property Persona As String
Get
If ViewState("Persona") Is Nothing Then
Return ""
Else
Return ViewState("Persona").ToString
End If
End Get
Set(value As String)
ViewState("Persona") = value
End Set
End Property
Private Property Modulo As String
Get
If ViewState("Modulo") Is Nothing Then
Return ""
Else
Return ViewState("Modulo").ToString
End If
End Get
Set(value As String)
ViewState("Modulo") = value
End Set
End Property
Private Property Email As String
Get
If ViewState("Emial") Is Nothing Then
Return ""
Else
Return ViewState("Emial").ToString
End If
End Get
Set(value As String)
ViewState("Emial") = value
End Set
End Property
Private Property Datos As String
Get
If ViewState("Datos") Is Nothing Then
Return ""
Else
Return ViewState("Datos").ToString
End If
End Get
Set(value As String)
ViewState("Datos") = value
End Set
End Property
#End Region
'Private Property UsuarioPara() As String = String.Empty
'Private Property UsuariosCCP() As String = String.Empty
'Private Property CorreoPara() As String = String.Empty
'Private Property CorreosCCP() As String = String.Empty
Private Property StrPrioridad() As String = String.Empty
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
If Not IsPostBack Then
If Request("CveEmpresa") IsNot Nothing And UsuarioActual.CveRol = 1 Then
CveEmpresaOI = Request("CveEmpresa").ToEntero
Else
CveEmpresaOI = UsuarioActual.CveEmpresa
End If
Dim calendarios As New AjaxControlToolkit.CalendarExtender
ViewState("FName") = ""
CargaCombosSoporte()
CveEvento = -1
CveEventoPadre = -1
ArchivoReenvio = "-1"
TxtFechaInicio.Text = DateTime.Now.ToShortDateString
TxtFechaFin.Text = DateTime.Now.ToShortDateString
Dim am_pm As MKB.TimePicker.TimeSelector.AmPmSpec
Dim hora As DateTime = Now.AddMinutes(15)
If hora.ToString("tt") = "AM" Then am_pm = MKB.TimePicker.TimeSelector.AmPmSpec.AM Else am_pm = MKB.TimePicker.TimeSelector.AmPmSpec.PM
TxtHoraFin.SetTime(hora.Hour, hora.Minute, am_pm)
Nuevo = True
UsuarioDe = ""
CveUsuarioDe = -1
CveUsuarioPara = -1
CveTipoEvento = 1
UsuariosCCP = New List(Of String)
UsuarioPara = ""
CargaRevision()
CargaAgendaTipo()
CargaEstatusEventos(-1)
CveUsuarioPadre = -1
CargaUsuarios()
'ChkSoporte.Visible = False
'ChkSoporte.Checked = False
'MostrarOcultarControlesSoportes()
'If Request("FI") IsNot Nothing AndAlso Request("FI").ToEntero > 0 Then
' TxtFechaInicio.Text = Request("FI").ToString.ToDate.ToString("dd-MM-YYYY")
'End If
'Alert("CveEvento" & Request("CveTipoEvento").ToEntero & " FechaIncicio= " & Request("FI").ToString.ToDate.ToString("dd-MM-yyyy") & "FF= " & Request("FF").ToString.ToDate.ToString("dd-MM-yyyy"), TipoMensaje.MsgInformacion, "")
'Alert("CveTipoEvento = " & Request("CveTipoEvento").ToEntero & "Fecha Inicio = " & Request("FI").ToString & " Fecha Fin = " & Request("FF").ToString & "", TipoMensaje.MsgInformacion, "")
'If Request("CveTipoEvento") IsNot Nothing AndAlso Request("CveTipoEvento").ToEntero > 0 Then
'CveTipoEvento = Request("CveTipoEvento").ToEntero
Tarea()
' End If
If Request("CveEvento") IsNot Nothing AndAlso IsNumeric(Request("CveEvento")) AndAlso Request("CveEvento").ToEntero > 0 Then
CveEvento = Request("CveEvento").ToEntero
'btnGuardar.Visible = False
CargaDatos()
A1.Visible = False
TxtOBs.Attributes.Add("onclick", "MostrarOpcionesObs();")
TxtOBs.Attributes.Add("onfocus", "idConFocus='" + TxtOBs.ClientID + "'")
TxtOBs.Attributes.Add("onmouseover", "this.style.cursor='pointer';")
TxtOBs.Attributes.Add("onmouseout", "this.style.cursor='default';")
' TxtOBs.Attributes.Add("onblur", "$get('divObs').focus();")
'TxtOBs.Attributes.Add("onblur", "setTimeout(OcultarOpcionesObs, 500);")}
ChkPasarEstatusSiguiente.Attributes.Add("onfocus", "idConFocus='" + ChkPasarEstatusSiguiente.ClientID + "'")
ChkPasarEstatusSiguiente.Attributes.Add("onblur", "setTimeout(OcultarOpcionesObs, 100);")
ChkPasarEstatusSiguiente.Attributes.Add("onclick", "idConFocus='" + ChkPasarEstatusSiguiente.ClientID + "'")
ChkRegresaraEstatusAnterior.Attributes.Add("onfocus", "MostrarOpcionesObs();idConFocus='" + ChkRegresaraEstatusAnterior.ClientID + "'")
ChkRegresaraEstatusAnterior.Attributes.Add("onclick", "idConFocus='" + ChkRegresaraEstatusAnterior.ClientID + "'")
ChkPasarEstatusCancelado.Attributes.Add("onclick", "idConFocus='" + ChkRegresaraEstatusAnterior.ClientID + "'")
ChkRegresaraEstatusAnterior.Attributes.Add("onchange", "chkCambioEstatus('ChkRegresaraEstatusAnterior');")
ChkPasarEstatusSiguiente.Attributes.Add("onchange", "chkCambioEstatus('ChkPasarEstatusSiguiente');")
ChkPasarEstatusCancelado.Attributes.Add("onchange", "chkCambioEstatus('ChkPasarEstatusCancelado');")
'Configuración de Modalidad Update
btnGuardar.Text = "Guardar Cambios"
'deshabilitar los campos que no se pueden editar
'LtlTitulo.Text = "Consulta del Evento:"
' EditarUusarios()
Else
CargaFolios()
DdlEventoEstatus.Enabled = False
lbCambiaEstatus.Visible = False
HabilitaTipoEvento(CveTipoEvento)
' LblEstatusEvento.Text = DdlEventoEstatus.SelectedItem.Text
If Request("R") IsNot Nothing AndAlso IsNumeric(Request("R")) AndAlso Request("R").ToEntero > 0 AndAlso Request("U") IsNot Nothing AndAlso IsNumeric(Request("U")) AndAlso Request("U").ToEntero >= 0 Then
CveEventoPadre = Request("R").ToEntero
' CveUsuarioPadre = Request("U").ToEntero
CargaReenvio()
End If
'GetUsuarios()
End If
End If
End Sub
Private Sub CargaReenvio()
Dim ObjEventos As New ClsOIEventos
Dim Msg As New StringBuilder
If ObjEventos.GetEvento(CveEventoPadre, UsuarioActual.CveUsuario, CveEmpresaOI) Then
TxtAsunto.Text = ObjEventos.Asunto
TxtDescripcion.Text = ObjEventos.Descripcion
DdlPrioridad.SelectedValue = ObjEventos.CvePrioridad.ToString
UsuarioDe = ObjEventos.UsuarioDe
CorreoDe = ObjEventos.CorreoDe
'CveUsuarioPara = ObjEventos.CveUsuarioPara
UsuarioPara = ObjEventos.UsuarioPara
CorreoPara = ObjEventos.CorreoPara
Descripcion = ObjEventos.Descripcion
Prioridad = ObjEventos.CvePrioridad
If ObjEventos.CveRevision > 0 Then DdlRevision.SelectedValue = ObjEventos.CveRevision.ToString
'Mostrar Archivo Adjunto
TxtArchivo.Enabled = False
A1.Visible = False
If Not IsDBNull(ObjEventos.Archivo) AndAlso ObjEventos.Archivo <> "" AndAlso ObjEventos.Archivo <> "-1" Then A2.HRef = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=OI&CveEmpresa={0}&Archivo={1}", If(ObjEventos.RolIngreso = 1037, 70, ObjEventos.CveEmpresa), ObjEventos.Archivo))) : A2.Visible = True
Else
A1.Visible = True
ArchivoReenvio = ObjEventos.Archivo
TxtFechaInicio.Text = ObjEventos.FechaInicio.ToShortDateString
If ObjEventos.FechaInicio.Year > 1900 Then
TxtFechaInicio.Text = ObjEventos.FechaInicio.ToString
Dim am_pm As MKB.TimePicker.TimeSelector.AmPmSpec
If ObjEventos.FechaInicio.ToString("tt") = "AM" Then am_pm = MKB.TimePicker.TimeSelector.AmPmSpec.AM Else am_pm = MKB.TimePicker.TimeSelector.AmPmSpec.PM
TxtHoraInicio.SetTime(ObjEventos.FechaInicio.Hour, ObjEventos.FechaInicio.Minute, am_pm)
End If
TxtFechaFin.Text = ObjEventos.FechaFin.ToShortDateString
If ObjEventos.FechaFin.Year > 1900 Then
TxtFechaFin.Text = ObjEventos.FechaFin.ToString
Dim am_pm As MKB.TimePicker.TimeSelector.AmPmSpec
If ObjEventos.FechaFin.ToString("tt") = "AM" Then am_pm = MKB.TimePicker.TimeSelector.AmPmSpec.AM Else am_pm = MKB.TimePicker.TimeSelector.AmPmSpec.PM
TxtHoraFin.SetTime(ObjEventos.FechaFin.Hour, ObjEventos.FechaFin.Minute, am_pm)
End If
End If
ObjEventos.Dispose()
End Sub
Private Sub CargaUsuarios()
DdlUsuarios.DataSource = GlobalDTUsuarios.FiltraParametros("CveEmpresa = 2 ")
DdlUsuarios.DataBind()
DdlUsuarios.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
End Sub
Private Sub CargaFolios()
RowFolio.Visible = True
Dim ObjFolios As New ClsGralFolios()
If ObjFolios.GetFolios("OIS", 2) Then
Dim DT As DataTable = ObjFolios.DtResultados.FiltraParametros("Estado = 'Activo'")
'Verificar primero en la sucursal del usuario
If DT.FiltraParametros("CveSubproyecto = " + UsuarioActual.CveSubProyecto.ToString).Rows.Count > 0 Then
' ViewState("CveFolio") = DT.FiltraParametros("CveSucursal = 2 ").Rows(0)("CveFolio").ToString.ToEntero
'ViewState("FolioActual") = DT.FiltraParametros("CveSucursal = 2 ").Rows(0)("FActual").ToString
lblFolio.Text = DT.Rows(0)("FActual").ToString
ElseIf DT.Rows.Count > 0 Then
'ViewState("CveFolio") = DT.Rows(0)("CveFolio").ToString.ToEntero
'ViewState("FolioActual") = DT.Rows(0)("FActual").ToString
lblFolio.Text = DT.Rows(0)("FActual").ToString
Else
Alert("No tiene registrados Folios en esta sucursal.", TipoMensaje.MsgAdvertencia)
End If
DT.Dispose()
End If
ObjFolios.Dispose()
End Sub
#Region "C A R G A - T I P O - E V E N T O"
Private Sub Tarea() '1
CveTipoEvento = 1
'TrAgendaTipo.Visible = True
TrAsunto.Visible = True
TrDescripcion.Visible = True
TrPrioridad.Visible = True
TrFechaInicio.Visible = True
TrFechaFin.Visible = True
TrArchivo.Visible = True
TdUsuarios.Visible = True
TrRevision.Visible = True
End Sub
Private Sub Agenda() '2
CveTipoEvento = 2
TrAgendaTipo.Visible = True
TrAsunto.Visible = True
TrDescripcion.Visible = True
TrPrioridad.Visible = True
TrFechaInicio.Visible = True
TrFechaFin.Visible = True
End Sub
Private Sub Proyecto() '3
CveTipoEvento = 3
TrAsunto.Visible = True
TrDescripcion.Visible = True
TrPrioridad.Visible = True
TdUsuarios.Visible = True
TrFechaInicio.Visible = True
TrFechaFin.Visible = True
'TrRevision.Visible = True
TrArchivo.Visible = True
End Sub
Private Sub ControlVersiones() '4
CveTipoEvento = 4
TrAsunto.Visible = True
TrDescripcion.Visible = True
TrArchivo.Visible = True
End Sub
Private Sub Minuta() '5
CveTipoEvento = 5
TrAsunto.Visible = True
TrPrioridad.Visible = True
TrDescripcion.Visible = True
TdUsuarios.Visible = True
TrFechaInicio.Visible = True
TrArchivo.Visible = True
End Sub
Private Sub Bitacora() '6
CveTipoEvento = 6
TrDescripcion.Visible = True
TrFechaInicio.Visible = True
TrFechaFin.Visible = True
End Sub
#End Region
Private Sub CargaDatos()
' rfvDdlEmpresa.Enabled = False
' rfvcDdlEmpresa.Enabled = False
rfvcDdlUsuario.Enabled = False
rfvDdlUsuario.Enabled = False
rfvTxtPersona.Enabled = False
rfvcTxtPersona.Enabled = False
If CveEvento <= 0 Then Exit Sub
Dim ObjEventos As New ClsOIEventos
With ObjEventos
'If ObjEventos.GetEventos(CveEvento, -1, "-1", "-1", -1, -1, -1, -1, -1, -1, "-1", -1, -1, -1, -1, -1, -1, -1, -1, UsuarioActual.CveUsuario, -1, CveEmpresaOI, "01/01/1900".ToDateTime, "01/01/2030".ToDateTime, "01/01/2030".ToDateTime) Then
Dim CveEmpresaRol As Integer = If(UsuarioActual.CveRol = 1, -1, CveEmpresaOI)
If ObjEventos.GetEvento(CveEvento, UsuarioActual.CveUsuario, CveEmpresaRol) Then
DTDatos = ObjEventos.DtResultados
If ObjEventos.DtResultados.Rows.Count > 0 Then
LinkImp.Visible = True
Nuevo = False
Asunto = .Asunto
EmpresaSop = .EmpresaSop
Telefono = .Telefono
Extension = .Extension
Fecha = .FechaIng.ToShortDateString
Persona = .Persona
Modulo = .Modulo
Email = .Email
Datos = .Datos
TxtDatos.Text = .Datos
CveTipoEvento = .CveTipoEvento
LblTitulo.Text = "Soporte"
Titulo = .Asunto
lblFolio.Text = .Folio.ToString
TxtAsunto.Text = .Asunto
TxtDescripcion.Text = .Descripcion
DdlPrioridad.SelectedValue = .CvePrioridad.ToString
UsuarioDe = .UsuarioDe
CveUsuarioDe = .CveUsuarioDe
CorreoDe = .CorreoDe
CveUsuarioPara = .CveUsuarioPara
UsuarioPara = .UsuarioPara
CorreoPara = .CorreoPara
Descripcion = .Descripcion
Prioridad = .CvePrioridad
CveSeguimiento = .CveSeguimiento
TxtFechaInicio.Text = .FechaInicio.ToShortDateString
TxtOrden.Text = .Orden.ToString
If .CveEmpresaSop > 0 Then
DdlEmpresaSop.SelectedValueExist(.CveEmpresaSop)
DdlUsuarioSop.DataSource = GlobalDTUsuarios().FiltraParametros($"CveEmpresa = { DdlEmpresaSop.SelectedValue.ToEntero }")
DdlUsuarioSop.DataBind()
DdlUsuarioSop.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
rfvDdlUsuario.Enabled = True
DdlUsuarioSop.SelectedValueExist(.CveUsuarioSop)
rfvTxtPersona.Enabled = False
rfvcTxtPersona.Enabled = False
TxtPersona.Enabled = False
Else
DdlUsuarioSop.DataSource = Nothing
DdlUsuarioSop.DataBind()
rfvDdlUsuario.Enabled = True
rfvTxtPersona.Enabled = True
TxtPersona.Enabled = True
End If
If .CveUsuarioSop > 0 Then
DdlUsuarioSop.SelectedValueExist(.CveUsuarioSop)
rfvDdlUsuario.Enabled = True
rfvcDdlUsuario.Enabled = True
rfvTxtPersona.Enabled = False
rfvcTxtPersona.Enabled = False
Else
rfvcDdlUsuario.Enabled = False
rfvDdlUsuario.Enabled = False
rfvTxtPersona.Enabled = False
rfvcTxtPersona.Enabled = False
End If
TxtPersona.Text = .Persona
TxtEmail.Text = .Email
DdlModulo.SelectedValueExist(.CveModulo)
TxtTelefono.Text = .Telefono
TxtExtension.Text = .Extension
DdlClasificacion.SelectedValueExist(.Clasificacion)
ChkDesarrollo.Checked = If(.Desarrollo = 1, True, False)
TxtFechaFin.Text = .FechaFin.ToShortDateString
If ObjEventos.FechaFin.Year > 1900 Then
TxtFechaFin.Text = ObjEventos.FechaFin.ToShortDateString
Dim am_pm As MKB.TimePicker.TimeSelector.AmPmSpec
If ObjEventos.FechaFin.ToString("tt") = "AM" Then am_pm = MKB.TimePicker.TimeSelector.AmPmSpec.AM Else am_pm = MKB.TimePicker.TimeSelector.AmPmSpec.PM
TxtHoraFin.SetTime(ObjEventos.FechaFin.Hour, ObjEventos.FechaFin.Minute, am_pm)
End If
TxtFechaRealTermino.Text = .FechaRealTermino.ToShortDateString
TxtTipoReferencia.Text = .TipoReferencia
TxtReferencia.Text = .Referencia
'Mostrar Archivo Adjunto
If Not IsDBNull(ObjEventos.Archivo) AndAlso ObjEventos.Archivo <> "" AndAlso ObjEventos.Archivo <> "-1" Then A2.HRef = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=OI&Archivo=\Empresas\{0}\OI\{1}", If(ObjEventos.RolIngreso = 1037, 70, ObjEventos.CveEmpresa), ObjEventos.Archivo))) : A2.Visible = True Else A1.Visible = True
' If Not IsDBNull(.Archivo) AndAlso .Archivo <> "" AndAlso .Archivo <> "-1" Then A2.HRef = String.Format("\Empresas\{0}\OI\{1}", If(.RolIngreso = 1037, 70, .CveEmpresa), .Archivo) : A2.Visible = True Else A1.Visible = True
ArchivoActual = ObjEventos.Archivo
If .CveRevision > 0 Then
If DdlRevision.Items.FindByValue(.CveRevision.ToString) Is Nothing Then
DdlRevision.Items.Insert(1, New ListItem(.Revision.ToString, .CveRevision.ToString))
End If
DdlRevision.SelectedValue = .CveRevision.ToString
End If
If .CveAgendaTipo > 0 Then DdlAgendaTipo.SelectedValue = .CveAgendaTipo.ToString
DdlPrioridad.SelectedValue = .CvePrioridad.ToString
'Dejar en la lista de Estatus solo el Anterior y el Siguiente
CargaEstatusEventos(.CveEventoEstatus)
DdlEventoEstatus.SelectedValue = .CveEventoEstatus.ToString
'LblEstatusEvento.Text = String.Format("Estatus: {0}", .EventoEstatus)
uppEstatus.Update()
TrEstatus.Visible = True
If .CveOC > 0 Then
TrReferenciaLiga.Visible = True
HplReferencia.Text = "Requisición"
HplReferencia.NavigateUrl = String.Format("/OC/OC.aspx?OC={0}", .CveOC)
End If
ViewState("OrdenEstatus") = GlobalDTOIEstatusEventos().FiltraParametros(String.Format("CveEventoEstatus = {0}", .CveEventoEstatus)).Rows(0)("Orden")
'Sacar el estatus siguiente
Dim EstatusAdelante As Integer = GlobalDTOIEstatusEventos().FiltraParametros(String.Format("Orden > {0} AND CveEventoEstatus <> 5", OrdenEstatus), "Orden").Rows.Count
EnviarCorreoTerminada = If(EstatusAdelante = 2, True, False)
EnviarCorreoRegresada = If(EstatusAdelante = 1, True, False)
If EstatusAdelante > 0 Then
Dim drEstatusSiguiente As DataRow = GlobalDTOIEstatusEventos().FiltraParametros(String.Format("Orden > {0}", OrdenEstatus), "Orden").Rows(0)
ViewState("CveEventoEstatusSiguiente") = drEstatusSiguiente("CveEventoEstatus")
ViewState("EventoEstatusSiguiente") = drEstatusSiguiente("EventoEstatus")
ChkPasarEstatusSiguiente.Text = "Pasar a " + EventoEstatusSiguiente
ChkPasarEstatusSiguiente.Visible = True
If (EstatusAdelante = 1 And CveUsuarioDe = UsuarioActual.CveUsuario) Or (EstatusAdelante > 1 And CveUsuarioPara = UsuarioActual.CveUsuario) Then ChkPasarEstatusSiguiente.Visible = True Else ChkPasarEstatusSiguiente.Visible = False
Else
ChkPasarEstatusSiguiente.Visible = False
End If
'Sacar el estatus anterior
If GlobalDTOIEstatusEventos().FiltraParametros(String.Format("Orden < {0}", OrdenEstatus), "Orden Desc").Rows.Count > 0 Then
Dim drEstatusSiguiente As DataRow = GlobalDTOIEstatusEventos().FiltraParametros(String.Format("Orden < {0}", OrdenEstatus), "Orden Desc").Rows(0)
ViewState("CveEventoEstatusAnterior") = drEstatusSiguiente("CveEventoEstatus")
ViewState("EventoEstatusAnterior") = drEstatusSiguiente("EventoEstatus")
'ChkRegresaraEstatusAnterior.Text = "Regresar a " + EventoEstatusAnterior
ChkRegresaraEstatusAnterior.Visible = True
If (EstatusAdelante = 1 And CveUsuarioDe = UsuarioActual.CveUsuario) Or (EstatusAdelante > 1 And CveUsuarioPara = UsuarioActual.CveUsuario) Then ChkRegresaraEstatusAnterior.Visible = True Else ChkRegresaraEstatusAnterior.Visible = False
Else
ChkRegresaraEstatusAnterior.Visible = False
End If
ChkRegresaraEstatusAnterior.Checked = False
ChkPasarEstatusSiguiente.Checked = False
'Si es el Usuario que la ingreso la podra cancelar, pero no podra usar el Combo del estatus
ChkPasarEstatusCancelado.Visible = If(.CveUsuarioIng = UsuarioActual.CveUsuario, True, False)
TxtOBs.Enabled = If(.CveEventoEstatus = 5, False, True)
'cargo los ususarios
If .GetEventosUsuario(CveEvento, CveEmpresaOI) Then
' divUsuarios.Visible = True
DdlUsuarios.SelectedValueExist(CveUsuarioPara)
'For Each Dr As DataRow In .DtResultados.FiltraParametros("CveEvento > 0").Rows
' If UsuariosCCP Is Nothing Then UsuariosCCP = New List(Of String)
' UsuariosCCP.Add(Dr("Nombre").ToString)
' If CorreosCCP Is Nothing Then CorreosCCP = New List(Of String)
' CorreosCCP.Add(Dr("Correo").ToString)
'Next
End If
' TdObservaciones.Visible = True
PnlEncObs.Visible = True
UPPObs.Update()
' SI es el Usuario que la ingreso la podra cancelar, pero no podra usar el Combo del estatus
'O SI, los checkbox pasar a siguiente o pasar a anterior estan desabilitados es un usuario al que no le pertenece la tarea
'O SI, ya esta cancelada
If (.CveUsuarioIng = UsuarioActual.CveUsuario And .CveUsuarioIng <> .CveUsuarioPara) Or
(ChkPasarEstatusSiguiente.Visible = False And ChkRegresaraEstatusAnterior.Visible = False) Or
(.CveEventoEstatus = 5) Then
DdlEventoEstatus.Enabled = False
lbCambiaEstatus.Visible = False
Else
DdlEventoEstatus.Enabled = True
lbCambiaEstatus.Visible = True
End If
If UsuarioActual.CveRol = 1 And CveTipoEvento = 9 And .CveEventoEstatus <> 5 Then
DdlEventoEstatus.Enabled = True
lbCambiaEstatus.Visible = True
End If
lblFechaObs.Text = Now.ToString("dd/MM/yyyy")
lblUsuarioObs.Text = UsuarioActual.Nombre
If .GetEventosComentarios(CveEvento) Then
DTComentarios = ObjEventos.DtResultados
GvObservaciones.DataSource = .DtResultados
DTBitacora = .DtResultados
GvObservaciones.DataBind()
UPPDatosObs.Update()
Else
DTBitacora = Nothing
End If
'LinkReenviar.DescriptionUrl = String.Format("EventoDetalle.aspx?CveTipoEvento={0}&R={1}&U={2}", CveTipoEvento, CveEvento, CveUsuarioDe)
Else
rfvDdlUsuario.Enabled = False
rfvDdlEmpresa.Enabled = False
rfvTxtPersona.Enabled = True
TxtPersona.Enabled = True
LinkImp.Visible = False
End If
If Not UsuarioDe = UsuarioActual.Nombre Then
TxtAsunto.Enabled = False
TxtDescripcion.Enabled = False
DdlPrioridad.Enabled = False
TxtFechaInicio.Enabled = False
TxtFechaFin.Enabled = False
TxtHoraInicio.ReadOnly = False
TxtHoraFin.Enabled = False
ImgCalendario.Visible = False
ImgCalFechaFin.Visible = False
DdlRevision.Enabled = False
TxtArchivo.Enabled = False
A1.Visible = False
End If
HabilitaTipoEvento(.CveTipoEvento)
'SI ES TAREA PARA MI NO PUEDO ADJUNTAR ARCHIVO
If UsuarioPara = UsuarioActual.Nombre And Not UsuarioDe = UsuarioActual.Nombre Then
A1.Visible = False
End If
'SI ES TAREA ECHA POR MI Y ESTATUS <> "PENDIENTE" NO LA PUEDO REENVIAR
'If UsuarioDe = UsuarioActual.Nombre AndAlso DdlEventoEstatus.SelectedValue <> "1" Then
' LinkReenviar.Visible = False
'Else
' If CveTipoEvento = 1 Then
' LinkReenviar.Visible = True
' End If
'End If
'SI ES TAREA ECHA POR MI Y ESTATUS = (TERMINADA O CANCELADA O REVISADA) PUEDO CAMBIAR ESTATUS DESDE DDL
If UsuarioDe = UsuarioActual.Nombre AndAlso (DdlEventoEstatus.SelectedValue = "3" Or DdlEventoEstatus.SelectedValue = "5" Or DdlEventoEstatus.SelectedValue = "4") Then
DdlEventoEstatus.Enabled = True
lbCambiaEstatus.Visible = True
ChkPasarEstatusSiguiente.Visible = True
ChkRegresaraEstatusAnterior.Visible = True
If DdlEventoEstatus.SelectedValue = "4" Then
DdlEventoEstatus.Items.Remove(DdlEventoEstatus.Items.FindByValue("5"))
ChkPasarEstatusSiguiente.Visible = False
End If
End If
ImgAddRevision.Visible = False
Else
rfvDdlUsuario.Enabled = False
rfvDdlEmpresa.Enabled = False
rfvTxtPersona.Enabled = True
TxtPersona.Enabled = True
DTDatos = Nothing
End If
End With
ObjEventos.Dispose()
End Sub
Private Sub HabilitaTipoEvento(pCveTipoEvento As Integer)
CveTipoEvento = pCveTipoEvento
'Tarea = 1 Agenda = 2 Proyecto = 3 ControlVersiones = 4 Minuta = 5 Bitacora = 6
Select Case pCveTipoEvento
Case 1
Tarea()
LblTitulo.Text = "Tarea"
Case 2
Agenda()
LblTitulo.Text = "Agenda"
Case 3
Proyecto()
LblTitulo.Text = "Proyecto"
Case 4
ControlVersiones()
LblTitulo.Text = "Control de Versiones"
TrRevision.Visible = False
TrArchivo.Visible = False
'btnRevision.Text = "Regresar a Revisión"
' btnTerminada.Text = "Por Aprobar"
'btnRevisada.Text = "Revisada"
Case 5
Minuta()
LblTitulo.Text = "Minuta"
Case 6
Bitacora()
LblTitulo.Text = "Bitácora"
End Select
End Sub
'Private Sub GetUsuarios()
' Dim DT As DataTable = GlobalDTUsuarios.FiltraParametros(String.Format("CveEmpresa = {0} ", 2), "Rol ASC") 'Solo se cargan usuarios ADSISTemas
' GVUsuarios.DataSource = AgregaGrupos(DT)
' DT.Dispose()
' GVUsuarios.DataBind()
'End Sub
Private Function AgregaGrupos(ByRef DT As DataTable) As DataTable
If Not DT Is Nothing AndAlso DT.Rows.Count > 0 Then
DT.Columns.Add(New DataColumn("Grupo", GetType(String)))
Dim i As Integer = 0
Dim Gpo As String = String.Empty
Dim dbRow As DataRow
While i < DT.Rows.Count
dbRow = DT.NewRow()
If i = 0 Then
Gpo = DT.Rows(0)("Rol").ToString()
dbRow("Rol") = DT.Rows(i)("Rol")
dbRow("Grupo") = "S"
DT.Rows.InsertAt(dbRow, i)
Gpo = DT.Rows(i)("Rol").ToString()
Else
If Gpo <> DT.Rows(i)("Rol").ToString() Then
dbRow("Rol") = DT.Rows(i)("Rol")
dbRow("Grupo") = "S"
DT.Rows.InsertAt(dbRow, i)
End If
Gpo = DT.Rows(i)("Rol").ToString()
End If
i += 1
End While
End If
Return DT
End Function
'Protected Sub gvUsuarios_RowDataBound(ByVal sender As Object, ByVal e As GridViewRowEventArgs) Handles GVUsuarios.RowDataBound
' If e.Row.RowType = DataControlRowType.DataRow Then
' If (Not IsDBNull(DataBinder.Eval(e.Row.DataItem, "Grupo"))) AndAlso CStr(DataBinder.Eval(e.Row.DataItem, "Grupo")) = "S" Then
' e.Row.CssClass = "SubTotales"
' e.Row.Attributes.Add("style", "background:#CCCCCC !important")
' e.Row.Cells(0).Visible = False
' e.Row.Cells(1).Visible = False
' e.Row.Cells(2).Visible = False
' e.Row.Cells(3).ColumnSpan = 3
' Else
' e.Row.Cells(3).Visible = False
' End If
' If Not Nuevo AndAlso e.Row.DBCampo("Empresa").ToString <> "" AndAlso e.Row.DBCampo("CveUsuario") = CveUsuarioPara.ToString Then
' e.Row.Cells(0).Enabled = False
' e.Row.FCCheckBox("ChkPara").Checked = True
' End If
' If Nuevo = True AndAlso e.Row.DBCampo("CveUsuario") = UsuarioActual.CveUsuario.ToString Then
' e.Row.Cells(1).Enabled = False
' e.Row.FCCheckBox("ChkCCP").Checked = True
' End If
' If Nuevo = True AndAlso e.Row.DBCampo("CveUsuario").ToEntero = CveUsuarioPadre Then
' e.Row.Cells(1).Enabled = False
' e.Row.FCCheckBox("ChkCCP").Checked = True
' End If
' If CveEvento > 0 And divSeleccionUsuarios.Visible = False Then
' 'viene de BD
' e.Row.FCCheckBox("ChkPara").Enabled = False
' e.Row.FCCheckBox("ChkCCP").Enabled = False
' 'si se cumple esta condición que decir que fue selecccionado
' If e.Row.DBCampo("CveEvento") <> "" Then
' e.Row.FCCheckBox("ChkCCP").Checked = True
' ElseIf Nuevo = False And e.Row.DBCampo("CveUsuario").ToEntero <> CveUsuarioPara Then
' e.Row.Visible = False
' End If
' End If
' End If
'End Sub
'Protected Sub gvUsuariosVista_RowDataBound(ByVal sender As Object, ByVal e As GridViewRowEventArgs) Handles gvUsuariosVista.RowDataBound
' If e.Row.RowType = DataControlRowType.DataRow Then
' If CveEvento > 0 Then
' 'viene de BD
' 'si se cumple esta condición que decir que fue selecccionado
' If e.Row.DBCampo("CveEvento").ToEntero = 0 Then
' e.Row.Visible = False
' End If
' End If
' End If
'End Sub
Protected Sub btnGuardar_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnGuardar.Click
Dim Asunto As String = TxtAsunto.Text.Trim
Descripcion = TxtDescripcion.Text.Trim
'Dim CveUsuarioPara As Integer = CveUsuarioPara.ToString.ToEntero
'Dim FechaInicio As DateTime = TxtFechaInicio.Text.ToDateTime
Dim FechaInicio As String = ""
Dim FechaFin As String = ""
If TxtFechaInicio.Text <> String.Empty Then FechaInicio = String.Format("{0} {1}:{2} {3}", TxtFechaInicio.Text, TxtHoraInicio.Hour, TxtHoraInicio.Minute, TxtHoraInicio.AmPm)
If TxtFechaFin.Text <> String.Empty Then FechaFin = String.Format("{0} {1}:{2} {3}", TxtFechaFin.Text, TxtHoraFin.Hour, TxtHoraFin.Minute, TxtHoraFin.AmPm)
Dim Attachment As String = String.Empty
Dim CveUsuarioCCP As Integer = -1
'Dim CveUsuarioPara As Integer = -1
Dim CveUsuarioIng As Integer = UsuarioActual.CveUsuario
'Dim FechaFin As DateTime = TxtFechaFin.Text.ToDateTime
'Dim Orden As Integer = TxtOrden.Text.ToString.ToEntero
Dim CveRevision As Integer = DdlRevision.SelectedValue.ToString.ToEntero
Dim Archivo As String = TxtArchivo.Text
Dim CveEmpresa As Integer = CveEmpresaOI
'-----------------------------------------
'Dim CveTipoEvento As Integer
Dim CveAgendaTipo As Integer = DdlAgendaTipo.SelectedValue.ToEntero
Dim Prioridad As Integer
Dim CveUsuarioDe As Integer = UsuarioActual.CveUsuario
'Dim CveEventoEstatus As Integer
' Dim FechaRealTermino As Integer
' Dim CveEventoPadre As Integer
' Dim Orden As Integer
' Dim Acuerdos As Integer
' Dim CveEventoComentario As Integer
' Dim Geom As Integer
Dim CveActivoFijo As Integer = -1
Dim CveIE As Integer = -1
Dim CveProspecto As Integer = -1
Dim CveCliente As Integer = -1
Dim CveOS As Integer = -1
Dim CveOC As Integer = -1
Dim CvePersonal As Integer = -1
Dim CveProveedor As Integer = -1
Dim CveUsuario As Integer = -1
Dim CveUsuarioSop As Integer = DdlUsuarioSop.SelectedValue.ToEntero
Dim Persona As String = If(TxtPersona.Text.Trim.Length = 0, "-1", TxtPersona.Text.Trim)
Dim Telefono As String = If(TxtTelefono.Text.Trim.Length = 0, "-1", TxtTelefono.Text.Trim)
Dim Extencion As String = If(TxtExtension.Text.Trim.Length = 0, "-1", TxtExtension.Text.Trim)
Dim Clasificacion As Integer = DdlClasificacion.SelectedValue.ToEntero
Dim Desarrollo As Integer = If(ChkDesarrollo.Checked, 1, 0)
Dim Email As String = If(TxtEmail.Text.Trim.Length = 0, "-1", TxtEmail.Text.Trim)
Dim Datos As String = If(TxtDatos.Text.Trim.Length = 0, "-1", TxtDatos.Text.Trim)
Dim CveEmpresaSop = DdlEmpresaSop.SelectedValue.ToEntero
Dim CveModulo = DdlModulo.SelectedValue.ToEntero
CveUsuarioPara = DdlUsuarios.SelectedValue.ToEntero
'------------------------------------------
'Recorrro Grid para obtener el usuario PARA
'For Each RowPara As GridViewRow In GVUsuarios.Rows
' If RowPara.FCCheckBox("ChkPara").Checked Then
' CveUsuarioPara = GVUsuarios.DataKeys(RowPara.RowIndex).Values("CveUsuario").ToString.ToEntero
' UsuarioPara = GVUsuarios.DataKeys(RowPara.RowIndex).Values("Nombre").ToString
' Exit For
' End If
'Next
If Not CveUsuarioPara > 0 Then
Alert("Debe Seleccionar a quien se le asigna la tarea", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
Dim ObjEventos As New ClsOIEventos()
Dim HuboError As Boolean = False
ObjEventos.IniciaTransacSQL()
Titulo = TxtAsunto.Text.Trim()
UsuarioDe = UsuarioActual.Nombre
Prioridad = DdlPrioridad.SelectedValue.ToEntero
CveRevision = DdlRevision.SelectedValue.ToEntero
Fecha = Now.ToLongDateString
'CveUsuarioPara = DdlUsuarioPara.SelectedValue.ToEntero
'UsuarioPara = DdlUsuarioPara.SelectedItem.Text
Dim dru As DataRow = GlobalDTUsuarios(CveUsuarioPara).FiltroPrimero("")
If dru IsNot Nothing Then CorreoPara = dru("Correo").ToString
Dim RutaGuardar = ""
RutaGuardar = String.Format("{0}OI\", UsuarioActual.Empresa.Ruta)
Dim RutaArchivo = ""
Dim EsNuevo = False
If CveEvento = -1 Then
'Dim RutaGuardar As String = String.Format("{0}Empresas\{1}\OI\", GlobalDTParametros(SisParametros.DirectorioSitio).Cadena1, CveEmpresaOI)
'Dim RutaArchivo As String = String.Format("{0}Empresas\{1}\OI\Temp\{2}", GlobalDTParametros(SisParametros.DirectorioSitio).Cadena1, CveEmpresaOI, Session("Eventos"))
EsNuevo = True
'CUANDO ES REENVIO
If CveEventoPadre > 0 Then
If A2.HRef <> "" Then RutaArchivo = String.Format("{0}{1}", ModExtensiones.DirectorioBaseEmpresas, A2.HRef.Substring(1))
If File.Exists(RutaArchivo) Then
Archivo = Path.GetExtension(ArchivoReenvio)
End If
If UsuarioActual.CveRol = 1037 Then
RutaGuardar = String.Format("{0}Empresas\70\OI\", ModExtensiones.DirectorioBaseEmpresas)
RutaGuardar.DirectoryExistsCreate
End If
Else
RutaArchivo = String.Format("{0}OI\Temp\{1}", UsuarioActual.Empresa.Ruta, ViewState("FName").ToString)
If Session("Eventos") IsNot Nothing AndAlso File.Exists(RutaArchivo) Then
If Not Directory.Exists(RutaGuardar) Then Directory.CreateDirectory(RutaGuardar)
Archivo = Path.GetExtension(Session("Eventos").ToString)
End If
End If
'Agregar Evento OI Soporte
If ObjEventos.AddEventoSoporte(Asunto, Descripcion, Prioridad, CveUsuarioDe, CveUsuarioPara, FechaInicio.ToDateTime, FechaFin.ToDateTime, CveEventoPadre, TxtOrden.Text.ToDouble, CveRevision, Archivo, CveActivoFijo, CveIE, CveProspecto, CveCliente, CveOS, CveOC, CvePersonal, CveProveedor, CveUsuarioIng, CveUsuario, 2,
CveUsuarioSop, Persona, Telefono, Extencion, Clasificacion, Desarrollo, CveEmpresaSop, CveModulo, Email, Datos) Then
CveEvento = ObjEventos.CveEvento
Alert("La Nueva Tarea se guardó correctamente.", TipoMensaje.MsgInformacion, "document.location.href=""/OI/RepSoporteADS.aspx"";")
Else
HuboError = True
End If
If HuboError = False And CveEvento > 0 Then
If Archivo <> "" Then
If CveEventoPadre > 0 Then
File.Copy(RutaArchivo, String.Format("{0}OI{1}{2}", RutaGuardar, CveEvento, Archivo))
Else
File.Move(RutaArchivo, String.Format("{0}OI{1}{2}", RutaGuardar, CveEvento, Path.GetExtension(Archivo)))
Session("Eventos") = ""
End If
End If
TipoNotificacion = 1
'For Each RowCCP As GridViewRow In GVUsuarios.Rows
' If HuboError = False And RowCCP.FCCheckBox("ChkCCP").Checked Then
' CveUsuarioPara = GVUsuarios.DataKeys(RowCCP.RowIndex).Values("CveUsuario").ToString.ToEntero
' If ObjEventos.AddEventoUsuario(CveEvento, CveUsuarioPara) Then
' 'Genero las claves, nombres y correos aquíen se le enviará correo
' CveUsuarioCCP = RowCCP.DataKey("CveUsuario").ToString().ToEntero()
' If CveUsuarioCCP <> UsuarioActual.CveUsuario Then
' If UsuariosCCP Is Nothing Then UsuariosCCP = New List(Of String)
' UsuariosCCP.Add(RowCCP.DataKey("Nombre").ToString)
' If CorreosCCP Is Nothing Then CorreosCCP = New List(Of String)
' CorreosCCP.Add(RowCCP.DataKey("Correo").ToString)
' End If
' Else
' HuboError = True
' Exit For
' End If
' End If
'Next
If HuboError = False Then
Dim Cadena As String = String.Format("location.href='/OI/EventoDetalle.aspx?CveEvento={0}'", CveEvento)
Select Case CveTipoEvento
Case 4 : Cadena = "location.href='/OI/RepDocumentos.aspx'"
Exit Select
Case 9 : Cadena = "location.href='/OI/RepSoporteADS.aspx'"
End Select
'Alert("El Nuevo Evento se guardó correctamente.", TipoMensaje.MsgInformacion, Cadena)
End If
End If
Else
RutaArchivo = String.Format("{0}OI\Temp\{1}", UsuarioActual.Empresa.Ruta, Session("Eventos"))
If CveUsuarioParaNuevo > 0 Then
CveUsuarioPara = CveUsuarioParaNuevo
End If
If Session("Eventos") IsNot Nothing AndAlso File.Exists(RutaArchivo) Then
If Not Directory.Exists(RutaGuardar) Then Directory.CreateDirectory(RutaGuardar)
Archivo = Path.GetExtension(Session("Eventos").ToString)
End If
If ObjEventos.UpdateEvento(Asunto, Descripcion, Prioridad, -1, CveUsuarioPara, FechaInicio.ToDateTime, FechaFin.ToDateTime, CveRevision, Archivo, CveEvento, Orden:=TxtOrden.Text.ToDouble,
CveUsuarioSop:=CveUsuarioSop, Persona:=Persona, Telefono:=Telefono, Extension:=Extension, Clasificacion:=Clasificacion, Desarrollo:=Desarrollo, CveEmpresaSop:=CveEmpresaSop, CveModulo:=CveModulo, Email:=Email, Datos:=Datos) Then
If CveUsuarioPara = CveUsuarioParaNuevo Then
If ObjEventos.RemoveEventoUsuario(CveEvento) Then
If Not ObjEventos.AddEventoUsuario(CveEvento, CveUsuarioPara) Then
HuboError = True
Else
CveUsuarioParaNuevo = 0
End If
Else
HuboError = True
End If
End If
Else
HuboError = True
End If
If HuboError = False Then
If Archivo <> "" Then
'ELIMINA ARCHIVO
If ArchivoActual <> "" Then
If File.Exists(String.Format("{0}{1}", RutaGuardar, ArchivoActual)) Then
File.Delete(String.Format("{0}{1}", RutaGuardar, ArchivoActual))
End If
End If
If CveEventoPadre > 0 Then
File.Copy(RutaArchivo, String.Format("{0}OI{1}{2}", RutaGuardar, CveEvento, Archivo))
Else
File.Move(RutaArchivo, String.Format("{0}OI{1}{2}", RutaGuardar, CveEvento, Path.GetExtension(Archivo)))
Session("Eventos") = ""
End If
End If
End If
End If
If HuboError = False Then
ObjEventos.Commit()
'EnviarCorreoNueva(True)
If Not EsNuevo Then
Alert("Los cambios se guardaron correctamente.", TipoMensaje.MsgInformacion)
End If
Else
ObjEventos.RollBack()
Alert("Ocurrió un error al guardar los cambios. Por favor vuelva a intentar", TipoMensaje.MsgError)
End If
ObjEventos.Dispose()
CargaDatos()
' EditarUusarios()
End Sub
Private Sub CargaRevision()
DdlRevision.DataSource = GlobalDTOIRevision(CveEmpresaOI).FiltraParametros(String.Format("CveUsuario = {0}", UsuarioActual.CveUsuario))
DdlRevision.DataBind()
DdlRevision.Items.Insert(0, New ListItem("Seleccione", "-1"))
End Sub
Private Sub CargaAgendaTipo()
DdlAgendaTipo.DataSource = GlobalDTOIAgendaTipo
DdlAgendaTipo.DataBind()
End Sub
Private Sub CargaEstatusEventos(CveEventoEstatus As Integer)
Dim Dt As DataTable = GlobalDTOIEstatusEventos.FiltraParametros("CveEventoEstatus = 0")
If CveEventoEstatus = -1 Then
Dt = GlobalDTOIEstatusEventos
Else
Dim Orden As Integer
Dim Row As DataRow = GlobalDTOIEstatusEventos.FiltroPrimero(String.Format("CveEventoEstatus = {0}", CveEventoEstatus))
Dim RowA As DataRow = Dt.NewRow
RowA("CveEventoEstatus") = Row("CveEventoEstatus")
RowA("EventoEstatus") = Row("EventoEstatus")
RowA("Orden") = Row("Orden")
Dt.Rows.Add(RowA)
Orden = Row("Orden").ToString.ToEntero
Row = GlobalDTOIEstatusEventos.FiltroPrimero(String.Format("Orden < {0}", Orden))
If Not Row Is Nothing Then
RowA = Dt.NewRow
RowA("CveEventoEstatus") = Row("CveEventoEstatus")
RowA("EventoEstatus") = Row("EventoEstatus")
RowA("Orden") = Row("Orden")
Dt.Rows.Add(RowA)
End If
Row = GlobalDTOIEstatusEventos.FiltroPrimero(String.Format("Orden > {0}", Orden))
If Not Row Is Nothing Then
RowA = Dt.NewRow
RowA("CveEventoEstatus") = Row("CveEventoEstatus")
RowA("EventoEstatus") = Row("EventoEstatus")
RowA("Orden") = Row("Orden")
Dt.Rows.Add(RowA)
End If
End If
DdlEventoEstatus.DataSource = Dt.FiltraParametros("", "Orden")
DdlEventoEstatus.DataBind()
End Sub
Protected Sub BtnAddObs_Click(sender As Object, e As EventArgs) Handles BtnAddObs.Click
Dim OI As New ClsOIEventos
OI.IniciaTransacSQL()
Dim RutaGuardar As String = String.Format("{0}OI\Comentarios\", UsuarioActual.Empresa.Ruta)
Dim RutaArchivo As String = String.Format("{0}OI\Temp\{1}", UsuarioActual.Empresa.Ruta, Session("Eventos2"))
Dim tCveSeguimiento As Integer
Dim Archivo As String = ""
Dim TieneError = False
If TxtOBs.Text.Trim = "" AndAlso Not File.Exists(RutaArchivo) Then
Alert("Indique una Observación o Adjunte un Archivo", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
If Session("Eventos2") IsNot Nothing AndAlso File.Exists(RutaArchivo) Then
If Not Directory.Exists(RutaGuardar) Then Directory.CreateDirectory(RutaGuardar)
Archivo = Path.GetExtension(Session("Eventos2").ToString)
End If
tCveSeguimiento = OI.AddEventoComentario(CveEvento, TxtOBs.Text, Archivo, UsuarioActual.CveUsuario)
If tCveSeguimiento > 0 Then
If Archivo <> "" Then
If File.Exists(RutaGuardar & Archivo) Then File.Delete(RutaGuardar & Archivo)
File.Move(RutaArchivo, RutaGuardar & "OI" & tCveSeguimiento & Path.GetExtension(Archivo))
Session("Eventos2") = ""
End If
If ChkRegresaraEstatusAnterior.Checked Then
CveEventoEstatusAnterior = 1
If Not OI.UpdateEstatusEvento(CveEventoEstatusAnterior, tCveSeguimiento, CveEvento, UsuarioActual.CveUsuario) Then
TieneError = True
End If
End If
If ChkPasarEstatusSiguiente.Checked Then
If Not OI.UpdateEstatusEvento(CveEventoEstatusSiguiente, tCveSeguimiento, CveEvento, UsuarioActual.CveUsuario) Then
TieneError = True
End If
End If
If ChkPasarEstatusCancelado.Checked Then
If Not OI.UpdateEstatusEvento(5, tCveSeguimiento, CveEvento, UsuarioActual.CveUsuario) Then
TieneError = True
End If
End If
'If ChkPasarEstatusSiguiente.Checked And CveUsuarioDe = UsuarioActual.CveUsuario Then
' If Not OI.UpdateEstatusEvento(3, CveSeguimiento, CveEvento, UsuarioActual.CveUsuario) Then
' OI.RollBack()
' Else
' 'hago una copia del archivo del comentario
' 'File.Copy(RutaArchivo, RutaGuardar & tCveSeguimiento & Path.GetExtension(Archivo))
' End If
'End If
Fecha = Now.ToLongDateString
Alert("La observación se guardó correctamente.", TipoMensaje.MsgInformacion)
TxtOBs.Text = ""
'registrascript la imagen
DTComentarios = OI.DtResultados
'GvObservaciones.DataSource = DTComentarios.FiltraParametros("", "FechaIng Desc")
'GvObservaciones.DataBind()
'UPPObs.Update()
'UPPDatosObs.Update()
Else
TieneError = True
End If
If Not TieneError Then
OI.Commit()
OI.Dispose()
'Enviar correo
'If (EnviarCorreoTerminada = True And ChkPasarEstatusSiguiente.Checked = True) Or (EnviarCorreoRegresada = True And ChkRegresaraEstatusAnterior.Checked = True) Then
' EnviarCorreoCambioEstatus(False)
'End If
CargaDatos()
Else
OI.RollBack()
OI.Dispose()
End If
End Sub
Protected Sub GvObservaciones_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvObservaciones.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.DBCampo("Archivo") <> "" Then
'ANTERIOR 20 FEBRERO
'e.Row.FCHyperLink("HplA").NavigateUrl = String.Format("\Empresas\{0}\OI\Comentarios\OI{1}", e.Row.DBCampo("CveEmpresa"), e.Row.DBCampo("Archivo"))
e.Row.FCHyperLink("HplA").NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=OI&Archivo=\Empresas\{0}\OI\Comentarios\OI{1}", e.Row.DBCampo("CveEmpresa"), e.Row.DBCampo("Archivo"))))
End If
End If
End Sub
Protected Sub lbCambiaEstatus_Click(sender As Object, e As System.EventArgs) Handles lbCambiaEstatus.Click
Dim objOI As New ClsOIEventos
If objOI.UpdateEstatusEvento(DdlEventoEstatus.SelectedValue.ToEntero, -1, CveEvento, UsuarioActual.CveUsuario) Then
CargaEstatusEventos(DdlEventoEstatus.SelectedValue.ToEntero)
' If DdlEventoEstatus.SelectedValue.ToEntero = 3 Or DdlEventoEstatus.SelectedValue.ToEntero = 1 Then EnviarCorreoCambioEstatus(False)
CargaDatos()
Alert("Se cambio el Estatus", TipoMensaje.MsgInformacion)
End If
objOI.Dispose()
End Sub
Protected Sub BtnAgregarRevision_Click(sender As Object, e As EventArgs)
Dim ObjEventos As New ClsOIEventos
If ObjEventos.AddRevisionesEventos(TxtDescripcionRevision.Text.Trim, UsuarioActual.CveUsuario, CveEmpresaOI) Then
Alert("Revisión agregada con éxito.", TipoMensaje.MsgInformacion)
RegistraScript("$get('DivRevision').style.display='none';")
TxtDescripcionRevision.Text = ""
GlobalDTOIRevision(-1) = ObjEventos.DtResultados
CargaRevision()
UpRevision.Update()
Else
Alert("Ocurrió un error al agregar la revisión. Por favor vuelva a intentar.", TipoMensaje.MsgError)
End If
ObjEventos.Dispose()
End Sub
Protected Sub LinkReenviar_Click(sender As Object, e As ImageClickEventArgs)
Response.Redirect(String.Format("EventoDetalle.aspx?CveTipoEvento={0}&R={1}&U={2}", CveTipoEvento, CveEvento, CveUsuarioDe))
End Sub
'#Region " ENVIAR CORREO "
' Private Sub MandarMailsX(ByVal ObjTipo As Object)
' Dim Tipo As Integer = ObjTipo.ToString().ToEntero()
' If Prioridad = 1 Then
' StrPrioridad = "<span class='Verde'>Baja</span>"
' ElseIf Prioridad = 2 Then
' StrPrioridad = "<span class='Negro'>Media</span>"
' ElseIf Prioridad = 3 Then
' StrPrioridad = "<span class='Rojo'>Alta</span>"
' Else
' StrPrioridad = "No definida"
' End If
' Dim OI As New ClsOIEventos
' Dim DT As DataTable = Nothing
' If OI.GetEventosUsuario(CveEvento, CveEmpresaOI) Then
' DT = OI.DtResultados.FiltraParametros("CveEvento > 0")
' End If
' OI.Dispose()
' ' Dim Mail As New ClsSisMail()
' If Nuevo Then
' 'Mail.Mandacorreo(UsuarioActual.Empresa, CorreoPara, ": Te asignó una tarea " & UsuarioActual.Nombre & " en SIG.", GeneraContenido(CveEvento, Titulo, UsuarioDe, UsuarioPara, UsuariosCCP.ToString, Fecha, StrPrioridad, Descripcion, "", Tipo).ToString)
' 'Manda correo CCP.
' 'If CorreosCCP.Length >= 1 Then CorreosCCP = CorreosCCP.Substring(0, CorreosCCP.Length - 1)
' If CorreosCCP IsNot Nothing AndAlso CorreosCCP.Count > 1 Then
' Dim ArrCCP As String() = CorreosCCP.ToArray
' If ArrCCP.Length > 0 Then
' 'Dim SB As StringBuilder = GeneraContenido(CveEvento, Titulo, UsuarioActual.Nombre, UsuarioPara, UsuariosCCP, Now.ToString(), StrPrioridad, Descripcion, "", 1)
' For i As Integer = 0 To ArrCCP.Length - 1
' If ArrCCP(i) <> "" Then
' 'Mail.Mandacorreo(UsuarioActual.Empresa, , ArrCCP(i), " " & UsuarioActual.Nombre & " le asignó una tarea a " & UsuarioPara & " en SIG.", SB.ToString)
' End If
' Next
' End If
' End If
' Else
' If DT.Rows.Count > 0 Then
' Dim Str As String = ""
' Select Case Tipo
' Case 1 : Str = "El usuario: " & UsuarioActual.Nombre & " registró una tarea: " & Titulo
' Case 2 : Str = "El usuario: " & UsuarioActual.Nombre & " agregó una observación en la tarea: " & Titulo
' Case 3 : Str = "El usuario: " & UsuarioActual.Nombre & " concluyó la tarea: " & Titulo
' Case 4 : Str = "El usuario: " & UsuarioActual.Nombre & "regresó a estatus pendiente la tarea: " & Titulo
' Case 5 : Str = "El usuario: " & UsuarioActual.Nombre & " revisó la tarea: " & Titulo
' End Select
' 'If UsuarioActual.CveUsuario <> CveUsuarioDe Then Mail.Mandacorreo(UsuarioActual.Empresa.SendMail, UsuarioActual.Empresa.SendMailPassword, CorreoDe, Str, GeneraContenido(CveEvento, Titulo, UsuarioDe, UsuarioPara, UsuariosCCP.ToString, Fecha, StrPrioridad, Descripcion, "", Tipo).ToString)
' 'If UsuarioActual.CveUsuario <> CveUsuarioPara Then Mail.Mandacorreo(UsuarioActual.Empresa.SendMail, UsuarioActual.Empresa.SendMailPassword, CorreoPara, Str, GeneraContenido(CveEvento, Titulo, UsuarioDe, UsuarioPara, UsuariosCCP.ToString, Fecha, StrPrioridad, Descripcion, "", Tipo).ToString)
' For i As Integer = 0 To DT.Rows.Count - 1
' If Not DT.Rows(i)("CveUsuario").ToString.ToEntero.Contiene(UsuarioActual.CveUsuario, CveUsuarioDe, CveUsuarioPara) Then
' ' Mail.Mandacorreo(UsuarioActual.Empresa.SendMail, UsuarioActual.Empresa.SendMailPassword, DT.Rows(i)("Correo").ToString(), Str, GeneraContenido(CveEvento, Titulo, UsuarioDe, UsuarioPara, UsuariosCCP, Fecha, StrPrioridad, Descripcion, "", Tipo).ToString)
' End If
' Next
' End If
' End If
' End Sub
' Protected Sub EnviarCorreoNueva(IncluirCCP As Boolean)
' Dim Body As StringBuilder
' Try
' TipoCorreo = 1
' Body = GeneraContenido(CveEvento)
' ''String.Join(";", CorreosCCP.Distinct().ToArray)
' ViewState("Para") = CorreoPara
' ViewState("ArrayCC") = If(IncluirCCP = True And Not CorreosCCP Is Nothing, String.Join(";", CorreosCCP.Distinct().ToArray), "")
' 'ViewState("ArrayCC") = CorreosCCP.Distinct().ToArray
' ViewState("Asunto") = String.Format("Te asignó una tarea {0} en SIG.", UsuarioActual.Nombre)
' ViewState("Body") = Body
' Dim Hilo As New System.Threading.Thread(AddressOf MandaCorreo)
' Hilo.Start()
' Catch ex As Exception
' OnError("Ocurrió error al mandar MAIL", ex)
' End Try
' End Sub
' Protected Sub EnviarCorreoCambioEstatus(IncluirCCP As Boolean)
' Dim Body As StringBuilder
' Try
' TipoCorreo = 2
' Body = GeneraContenido(CveEvento)
' ViewState("Para") = If(EnviarCorreoRegresada = True, CorreoPara, CorreoDe)
' ViewState("ArrayCC") = If(IncluirCCP = True, String.Join(";", CorreosCCP.Distinct().ToArray), "")
' ViewState("Asunto") = String.Format("Cambio de Estatus en una tarea, {0} la cambio.", UsuarioActual.Nombre)
' ViewState("Body") = Body
' Dim Hilo As New System.Threading.Thread(AddressOf MandaCorreo)
' Hilo.Start()
' Catch ex As Exception
' OnError("Ocurrió error al mandar MAIL", ex)
' End Try
' End Sub
' Private Function GeneraContenido(CveEvento As Integer) As StringBuilder
' Dim StrSB As New StringBuilder()
' Dim DireccionURL As String = GlobalDTParametros(SisParametros.URL).Cadena1
' Dim Variables As String = ""
' Dim Tarea As String
' Dim De As String
' Dim Para As String
' 'Dim CCP As String
' Dim Fecha As String
' Dim Prioridad As String
' Dim Descripcion As String
' Dim Tipo As Integer
' Dim objEvento As New ClsOIEventos
' If objEvento.GetEvento(CveEvento, UsuarioActual.CveUsuario, CveEmpresaOI) Then
' Tarea = objEvento.Asunto
' De = objEvento.UsuarioDe
' Para = objEvento.UsuarioPara
' Fecha = objEvento.FechaIng.ToString("dd/MM/yyyy")
' Prioridad = objEvento.Prioridad
' Descripcion = objEvento.Descripcion
' Tipo = objEvento.CveTipoEvento
' StrSB.Append("<html xmlns=""http://www.w3.org/1999/xhtml""> ")
' StrSB.Append("<head> ")
' 'StrSB.AppendFormat("<link href=""{0}/Styles/Estilos.css"" rel=""stylesheet"" type=""text/css""> ", DireccionURL)
' StrSB.Append(" <style type=""text/css""> ")
' StrSB.Append(" body ")
' StrSB.Append(" { ")
' StrSB.Append(" margin:0px; ")
' StrSB.Append(" padding:0px 0px 0px 0px; ")
' StrSB.Append(" font-family: Verdana, Arial, Helvetica, sans-serif; ")
' StrSB.Append(" font-size: 10px; ")
' StrSB.Append(" background-color:#F0F0F0; ")
' StrSB.Append(" } ")
' StrSB.Append(" a.Texto ")
' StrSB.Append(" { ")
' StrSB.Append(" font-size:11px; ")
' StrSB.Append(" background-color:#F7F6F3; ")
' StrSB.Append(" text-decoration:none; ")
' StrSB.Append(" font-weight:bold; ")
' StrSB.Append(" } ")
' StrSB.Append(" .Texto ")
' StrSB.Append(" { ")
' StrSB.Append(" background-color:#F7F6F3; color:Black; font-family:Verdana; font-size:10px; text-align:center; vertical-align:middle; height:20px;")
' StrSB.Append(" } ")
' StrSB.Append(" .TextoAlterno ")
' StrSB.Append(" { ")
' StrSB.Append(" background-color:White; color:Black; font-family:Verdana; font-size:10px; text-align:center; ")
' StrSB.Append(" vertical-align:middle; height:20px;")
' StrSB.Append(" } ")
' StrSB.Append(" .BarraIdentidad ")
' StrSB.Append(" { ")
' StrSB.Append(" color:#FFFFFF; ")
' StrSB.Append(" background:#F0F0F0; ")
' StrSB.Append(" font-weight:bold; ")
' StrSB.Append(" font-size:19px; ")
' StrSB.Append(" font-style:oblique; ")
' StrSB.Append(" } ")
' StrSB.Append(" .Titulos ")
' StrSB.Append(" { ")
' StrSB.Append(" font-family:Verdana; font-size:12px; text-align:center; ")
' StrSB.Append(" vertical-align:middle; font-weight:bold; height:30px; ")
' StrSB.Append(" text-decoration:none; ")
' StrSB.Append(" } ")
' StrSB.Append(" .Verde {color: #00CC00;} ")
' StrSB.Append(" .Negro {color: #000000;} ")
' StrSB.Append(" .Rojo {color: #FF0000;} ")
' StrSB.Append(" </style> ")
' StrSB.Append("</head> ")
' StrSB.Append("<body> ")
' StrSB.Append(" <form> ")
' StrSB.Append(" <div> ")
' StrSB.Append(" <table border=""1"" rules=""all"" style=""border-collapse: collapse""> ")
' StrSB.Append(" <tr> ")
' StrSB.Append(" <td align=""center"" class=""Titulos"" colspan=""2"">SIG</td> ")
' StrSB.Append(" </tr> ")
' StrSB.Append(" <tr class=""Titulos""> ")
' Dim Desc As String = String.Empty
' If Tipo = 1 Then
' Desc = "Notificación de tarea"
' ElseIf Tipo = 2 Then
' Desc = "Notificación de nueva observación"
' ElseIf Tipo = 3 Then
' Desc = "Notificación de tarea concluida"
' ElseIf Tipo = 4 Then
' Desc = "Notificación de tarea devuelta a estatus pendiente"
' ElseIf Tipo = 5 Then
' Desc = "Notificación de tarea finalizada"
' End If
' StrSB.AppendFormat(" <td align=""center"" colspan=""2"">{0}</td> ", Desc)
' StrSB.Append(" </tr> ")
' StrSB.Append(" <tr> ")
' StrSB.Append(" <td >&nbsp;<b>De</b></td> ")
' StrSB.AppendFormat(" <td class=""Texto"" >&nbsp;{0}</td> ", De)
' StrSB.Append(" </tr> ")
' StrSB.Append(" <tr> ")
' StrSB.Append(" <td >&nbsp;<b>Para</b></td> ")
' StrSB.AppendFormat(" <td class=""Texto"" >&nbsp;{0}</td> ", Para)
' StrSB.Append(" </tr> ")
' StrSB.Append(" <tr> ")
' StrSB.Append(" <td >&nbsp;<b>Con Copia Para (CCP)<b></td> ")
' StrSB.AppendFormat(" <td class=""Texto"" >&nbsp;{0}</td> ", If(UsuariosCCP.Count > 0, String.Join(", ", UsuariosCCP.ToArray()), "-").ToString())
' StrSB.Append(" </tr> ")
' StrSB.Append(" <tr> ")
' StrSB.Append(" <td >&nbsp;<b>Titulo</b></td> ")
' StrSB.AppendFormat(" <td class=""Texto"" >&nbsp;{0}</td> ", Tarea)
' StrSB.Append(" </tr> ")
' StrSB.Append(" <tr> ")
' StrSB.Append(" <td >&nbsp;<b>Fecha</b></td> ")
' StrSB.AppendFormat(" <td class=""Texto"">&nbsp;{0}</td> ", Fecha)
' StrSB.Append(" </tr> ")
' StrSB.Append(" <tr> ")
' StrSB.Append(" <td >&nbsp;<b>Prioridad</b></td> ")
' StrSB.AppendFormat(" <td class='Texto'>&nbsp;{0}</td> ", Prioridad)
' StrSB.Append(" </tr> ")
' If CveTipoEvento = 1 Then
' Variables = "/OI/EventoDetalle.aspx?CveEvento=" & CveEvento
' End If
' 'If Imagen <> "" Then
' ' StrSB.Append(" <tr> ")
' ' StrSB.Append(" <td class=""Titulo"">&nbsp;Imagen</td> ")
' ' StrSB.Append(" <td><a class=""Texto"" href=""" & Direccion & "/Imagenes/Tareas/" & Imagen & "/" & Imagen & Attchment & """>&nbsp;Ver imagen</a></td> ")
' ' StrSB.Append(" </tr> ")
' 'End If
' StrSB.Append(" <tr> ")
' StrSB.Append(" <td align=""center"" class=""Titulos"" colspan=""2"">&nbsp;Descripción</td> ")
' StrSB.Append(" </tr> ")
' StrSB.Append(" <tr> ")
' StrSB.AppendFormat(" <td colspan=""2"" class='texto'>{0}</td> ", Descripcion)
' StrSB.Append(" </tr> ")
' 'Observaciones
' Dim DT As DataTable = DTComentarios.FiltraParametros("", "FechaIng DESC")
' If Not DT Is Nothing AndAlso DT.Rows.Count > 0 Then
' 'StrSB.Append(" <tr> ")
' 'StrSB.Append(" <td align=""center"" class=""Titulos"" colspan=""2"">&nbsp;Comentarios</td> ")
' 'StrSB.Append(" </tr> ")
' StrSB.Append(" <tr> ")
' StrSB.Append(" <td colspan=""2""> ")
' StrSB.Append(" <fieldset> ")
' StrSB.Append(" <legend>Comentarios</legend> ")
' StrSB.Append(" <table width=""100%""> <tr style='background-color:gray;color:White;font-family:Verdana;font-size:10px;text-align:center;vertical-align:middle;font-weight:bold;height:20px;text-decoration:none;'><th scope='col' style='width: 70px'>Fecha</th><th scope='col' style='width: 80px'>Usuario</th><th scope='col' >Comentario</th></tr>")
' 'StrSB.Append(" <table border=""1"" rules=""all"" style=""border-collapse: collapse;"" width=""100%""><tr class='texto' style='text-align:center;'><td>Fecha</td><td>Usuario</td><td>Comentario</td></tr> ")
' For i As Integer = 0 To DT.Rows.Count - 1
' StrSB.AppendFormat(" <tr class='{0}'> ", If(i Mod 2 = 0, "Texto", "TextoAlterno"))
' StrSB.AppendFormat(" <td width=""100px"">{0}</td> ", DT.Rows(i)("FechaIng"))
' StrSB.AppendFormat(" <td width=""150px"">{0}</td> ", DT.Rows(i)("NombreUsuario"))
' StrSB.AppendFormat(" <td>{0}</td> ", DT.Rows(i)("EventoComentario"))
' StrSB.Append(" </tr> ")
' Next
' StrSB.Append(" </table> ")
' StrSB.Append(" </fieldset> ")
' StrSB.Append(" </td> ")
' StrSB.Append(" </tr> ")
' DT.Dispose()
' End If
' 'If Tipo = 1 Then
' ' StrSB.Append(" <tr> ")
' ' StrSB.Append(" <td align=""left"" class=""Titulo"" colspan=""2"">&nbsp;NOTA IMPORTANTE: Si usted asignó la tarea es importante que la de como finalizada en el módulo de tareas.</td> ")
' ' StrSB.Append(" </tr> ")
' 'End If
' 'Liga tarea
' StrSB.Append(" <tr> ")
' StrSB.AppendFormat(" <td align=""left"" class=""Texto"" colspan=""2"">&nbsp;<a class=""Texto"" href=""{0}{1}"">&nbsp;de click para ir al evento</a></td> ", DireccionURL, Variables)
' StrSB.Append(" </tr> ")
' StrSB.Append(" </table> ")
' StrSB.Append(" </div> ")
' StrSB.Append(" </form> ")
' StrSB.Append("</body> ")
' StrSB.Append("</html> ")
' End If
' Return StrSB
' End Function
' Private Sub MandaCorreo()
' Dim Mail As New ClsSisMail()
' '' TIpoCorreo = 1: Nueva Tarea
' If TipoCorreo = 1 Then
' 'Mail.MandaCorreo(ClsPaginas.EmpresaNotificaciones, ViewState("Para").ToString, ViewState("Asunto").ToString, ViewState("Body").ToString, CType(ViewState("ArrayCC"), String()), DisplayName:=UsuarioActual.Nombre)
' Mail.SendMail(ClsPaginas.EmpresaNotificaciones, ViewState("Para").ToString, ViewState("Asunto").ToString, ViewState("Body").ToString, CCP:=ViewState("ArrayCC").ToString, Displayname:=UsuarioActual.Nombre)
' 'Mail.MandaCorreo(ClsPaginas.EmpresaNotificaciones, ViewState("Para").ToString, ViewState("Asunto").ToString, IfNull(ViewState("RutaPDF"), "").ToString, IfNull(ViewState("RutaXML"), "").ToString, CType(ViewState("ArrayCC"), String()), ViewState("Body").ToString)
' Else
' 'Mail.MandaCorreo(ClsPaginas.EmpresaNotificaciones, ViewState("Para").ToString, ViewState("Asunto").ToString, CType(ViewState("ArrayCC"), String()), ViewState("Body").ToString)
' Mail.SendMail(ClsPaginas.EmpresaNotificaciones, ViewState("Para").ToString, ViewState("Asunto").ToString, ViewState("Body").ToString, CCP:=ViewState("ArrayCC").ToString)
' End If
' End Sub
'#End Region
Protected Sub BtnGuardarArchivo_Click1(sender As Object, e As EventArgs) Handles BtnGuardarArchivo.Click
Dim FileExtension As String = "-1"
Dim Filesgral As List(Of Archivo) = Anexo.getfiles().Archivos
Dim Filename As String = ""
For Each fileItem As Archivo In Filesgral
FileExtension = IO.Path.GetExtension(String.Format("{0}Temp\{1}", ModExtensiones.DirectorioBaseEmpresas, fileItem.filename)).Replace(".", "")
'Filename = fileItem.filename
Dim tempArray() As String
tempArray = fileItem.filename.ToString().Split("-".ToCharArray())
Session("Eventos") = tempArray(1)
ViewState("FName") = fileItem.filename
File.Move(fileItem.FileUrl, Path.Combine(UsuarioActual.Empresa.Ruta, "OI", "Temp", ViewState("FName").ToString))
TxtArchivo.Text = Session("Eventos").ToString
' imgFileOk.Visible = True
ImgArchivo.Src = "/imagenes/accept.png"
Next
UPAFUL.Update()
RegistraScript("$('#ModalUpload').modal('hide')", "hidemodal1")
A1.Visible = True
'UsuarioActual.Empresa.Ruta
'Session("Eventos")
' If Filename <> "" Then
' Filename.FilesMove(String.Format("OI{0}", ObjEventoBitacora.CveEvento.ToString), String.Format("Empresas\{0}\OI", CveEmpresaOI))
' End If
' GvEB.DataSource = ObjEventoBitacora.DtResultados
' TxtEventoDescripcion.Text = ""
' Anexo.Text = "[]"
' Alert("La bitácora/observación se guardó correctamente", TipoMensaje.MsgInformacion)
' RegistraScript("$('#ModalBitacora').modal('hide')", "hidemodal")
' ObjEventoBitacora.Dispose()
' GvEB.DataBind()
' UPEventoBitacora.Update()
' CargaEventoBitacora()
' UPAddEventoBitacora.Update()
End Sub
Protected Sub btnFileBit_Click(sender As Object, e As EventArgs) Handles btnFileBit.Click
Dim FileExtension As String = "-1"
Dim Filesgral As List(Of Archivo) = txtFileBit.getfiles().Archivos
Dim Filename As String = ""
For Each fileItem As Archivo In Filesgral
FileExtension = IO.Path.GetExtension(String.Format("{0}Temp\{1}", ModExtensiones.DirectorioBaseEmpresas, fileItem.filename)).Replace(".", "")
'Filename = fileItem.filename
Dim tempArray() As String
tempArray = fileItem.filename.ToString().Split("-".ToCharArray())
'Session("Eventos2") = tempArray(1)
Session("Eventos2") = fileItem.filename
File.Move(fileItem.FileUrl, Path.Combine(UsuarioActual.Empresa.Ruta, "OI", "Temp", Session("Eventos2").ToString))
' TxtArchivo.Text = Session("Eventos").ToString
ImgArchivoObs.Src = "/imagenes/accept.png"
Next
UpImgBit.Update()
RegistraScript("$('#ModalUploadBit').modal('hide')", "hidemodal2")
'A1.Visible = True
End Sub
'Private Sub MostrarOcultarControlesSoportes()
' If ChkSoporte.Checked Then
' rfvDdlUsuario.Enabled = True
' rfvcDdlUsuario.Enabled = True
' If Not DdlUsuarioSop.SelectedIndex > 0 Then
' rfvTxtPersona.Enabled = True
' rfvcTxtPersona.Enabled = True
' TxtPersona.Enabled = True
' Else
' rfvTxtPersona.Enabled = False
' rfvcTxtPersona.Enabled = False
' TxtPersona.Enabled = False
' End If
' rfvTxtTelefono.Enabled = True
' rfvcTxtTelefono.Enabled = True
' rfvDdlClasificacion.Enabled = True
' rfvcDdlClasificacion.Enabled = True
' rfvDdlModulo.Enabled = True
' rfvcDdlModulo.Enabled = True
' DvMonulo.Visible = True
' DvUsuarioSop.Visible = True
' DVPersona.Visible = True
' DvTelefono.Visible = True
' DvExtencion.Visible = True
' DvEmail.Visible = True
' DvClasificacion.Visible = True
' DvDesarrollo.Visible = True
' CveEventoEstatusAnterior = CveTipoEvento
' CveTipoEvento = 9
' Else
' rfvDdlUsuario.Enabled = False
' rfvcDdlUsuario.Enabled = False
' If DdlUsuarioSop.SelectedIndex = 0 Then
' rfvTxtPersona.Enabled = True
' rfvcTxtPersona.Enabled = True
' TxtPersona.Enabled = True
' Else
' rfvTxtPersona.Enabled = False
' rfvcTxtPersona.Enabled = False
' TxtPersona.Enabled = False
' End If
' rfvTxtTelefono.Enabled = False
' rfvcTxtTelefono.Enabled = False
' rfvDdlClasificacion.Enabled = False
' rfvcDdlClasificacion.Enabled = False
' rfvDdlModulo.Enabled = False
' rfvcDdlModulo.Enabled = False
' DvMonulo.Visible = False
' DvUsuarioSop.Visible = False
' DVPersona.Visible = False
' DvTelefono.Visible = False
' DvExtencion.Visible = False
' DvEmail.Visible = False
' DvClasificacion.Visible = False
' DvDesarrollo.Visible = False
' CveTipoEvento = If(CveTipoEventoAnterior = -1, 1, CveTipoEventoAnterior)
' End If
' UpGeneral.Update()
'End Sub
'Private Sub DdlUsuario_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlUsuarioSop.SelectedIndexChanged
' MostrarOcultarControlesSoportes()
'End Sub
Private Sub CargaCombosSoporte()
DdlEmpresaSop.DataSource = GlobalDTEmpresas()
DdlEmpresaSop.DataBind()
DdlEmpresaSop.Items.Insert(0, New ListItem("Seleccione una", "-1"))
DdlModulo.DataSource = GlobalDTModulos
DdlModulo.DataBind()
DdlModulo.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
End Sub
Private Sub DdlUsuarioSop_SelectedIndexChanged(sender As Object, e As EventArgs) 'Handles DdlUsuarioSop.SelectedIndexChanged
If DdlUsuarioSop.SelectedIndex > 0 Then
TxtPersona.Enabled = False
rfvTxtPersona.Enabled = False
rfvcTxtPersona.Enabled = False
rfvDdlUsuario.Enabled = True
rfvcDdlUsuario.Enabled = True
Else
TxtPersona.Text = ""
TxtPersona.Enabled = True
rfvTxtPersona.Enabled = True
rfvcTxtPersona.Enabled = True
rfvDdlUsuario.Enabled = False
rfvcDdlUsuario.Enabled = False
End If
UpGeneral.Update()
End Sub
Private Sub DdlEmpresaSop_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlEmpresaSop.SelectedIndexChanged
If DdlEmpresaSop.SelectedIndex = 0 Then
DdlUsuarioSop.Items.Clear()
DdlUsuarioSop.DataSource = Nothing
DdlUsuarioSop.DataBind()
rfvDdlUsuario.Enabled = False
rfvcDdlUsuario.Enabled = False
rfvDdlEmpresa.Enabled = False
rfvcDdlEmpresa.Enabled = False
rfvTxtPersona.Enabled = True
rfvcTxtPersona.Enabled = True
TxtPersona.Enabled = True
Else
DdlUsuarioSop.DataSource = GlobalDTUsuarios().FiltraParametros($"CveEmpresa = { DdlEmpresaSop.SelectedValue.ToEntero }")
DdlUsuarioSop.DataBind()
rfvDdlUsuario.Enabled = True
rfvcDdlUsuario.Enabled = True
rfvDdlEmpresa.Enabled = True
rfvcDdlEmpresa.Enabled = True
rfvTxtPersona.Enabled = False
rfvcTxtPersona.Enabled = False
TxtPersona.Enabled = False
CveEmpresaOI = DdlEmpresaSop.SelectedValue.ToEntero
End If
DdlUsuarioSop.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
UpGeneral.Update()
End Sub
Private Sub ImprimirReporte()
Dim RutaDocumento As String = System.IO.Path.Combine(ModExtensiones.DirectorioBaseEmpresas, "Empresas/Grales/FS.docx")
If File.Exists(RutaDocumento) Then
Dim GemDocumen As New clsGemBoxDocument(RutaDocumento)
Dim listaTags As New List(Of TagsDocumentos)
listaTags.Add(New TagsDocumentos("{Atendio}", UsuarioDe))
listaTags.Add(New TagsDocumentos("{Fecha}", Fecha))
listaTags.Add(New TagsDocumentos("{Responsable}", UsuarioPara))
listaTags.Add(New TagsDocumentos("{Persona}", Persona))
listaTags.Add(New TagsDocumentos("{Modulo}", Modulo))
If Prioridad = 1 Then
listaTags.Add(New TagsDocumentos("{Prioridad}", "Baja"))
Else
If Prioridad = 2 Then
listaTags.Add(New TagsDocumentos("{Prioridad}", "Media"))
Else
listaTags.Add(New TagsDocumentos("{Prioridad}", "Alta"))
End If
End If
listaTags.Add(New TagsDocumentos("{Empresa}", EmpresaSop))
listaTags.Add(New TagsDocumentos("{Telefono}", Telefono))
listaTags.Add(New TagsDocumentos("{Extension}", Extension))
listaTags.Add(New TagsDocumentos("{Asunto}", Asunto))
listaTags.Add(New TagsDocumentos("{Descripcion}", Descripcion))
listaTags.Add(New TagsDocumentos("{Folio}", lblFolio.Text))
listaTags.Add(New TagsDocumentos("{Email}", Email))
listaTags.Add(New TagsDocumentos("{Datos}", Datos))
' listaTags.Add(New TagsDocumentos("{}", ""))
Dim SolucionDescripcion As String = ""
For Each dr As DataRow In DTBitacora.Rows
Dim SFecha As String = dr("FechaIng").ToString
Dim SComentario As String = dr("EventoComentario").ToString
SolucionDescripcion = SolucionDescripcion & $"{ SFecha } {SComentario}"
Next
listaTags.Add(New TagsDocumentos("{Solucion}", SolucionDescripcion))
GemDocumen.SustituirTags(listaTags)
GemDocumen.GuardarStreamPDF()
Dim memoryStream As New System.IO.MemoryStream(GemDocumen.GetBytesDocumento())
GemDocumen.Dispose()
Response.Clear()
Response.ContentType = "application/pdf"
Response.AddHeader("content-disposition", $"attachment;filename=Soporte_{ lblFolio.Text }.pdf")
Response.Buffer = True
memoryStream.WriteTo(Response.OutputStream)
Response.End()
Else
Alert("No se encontro la plantilla", TipoMensaje.MsgAdvertencia)
End If
End Sub
Private Sub LinkImp_Click(sender As Object, e As EventArgs) Handles LinkImp.Click
ImprimirReporte()
End Sub
Private Sub DdlUsuarios_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlUsuarios.SelectedIndexChanged
CveUsuarioParaNuevo = DdlUsuarios.SelectedValue.ToEntero
End Sub
End Class