This commit is contained in:
2020-05-02 13:07:33 -07:00
71 changed files with 70716 additions and 888 deletions

View File

@@ -112,12 +112,12 @@ Public Class ClsClasificaciones
Public Sub Commit()
If SqlTransacc IsNot Nothing Then SqlTransacc.Commit()
SqlTransacc = Nothing
End Sub
End Sub
#Region "C L A S I F I C A C I O N E S"
Public Function GetClasificaciones(Optional CveEmpresa As Integer = -1, Optional Tipo As Integer = 1) As Boolean
Dim Retorno As Boolean = False
@@ -134,6 +134,46 @@ Public Class ClsClasificaciones
OnError("Ocurrió un error al consultar las Clasificaciones.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
Return Retorno
End Function
Public Function GetClasificacionesComprobaciones(CveEmpresa As Integer, Optional Opcion As Integer = 1, Optional TipoComprobacion As Integer = -1) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_ClasificacionesComprobacionesGet")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
.Add("@Opcion", SqlDbType.Int).Value = Opcion
.Add("@TipoComprobacion", SqlDbType.Int).Value = TipoComprobacion
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As SqlException
OnError("Ocurrió un error al consultar las Clasificaciones de comprobaciones.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
Return Retorno
End Function
Public Function AddClasificacionesComprobaciones(CveClasificacion As Integer, CveEmpresa As Integer, TipoComprobacion As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_ClasificacionesComprobacionesAdd")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveClasificacion", SqlDbType.Int).Value = CveClasificacion
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
.Add("@TipoComprobacion", SqlDbType.Int).Value = TipoComprobacion
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As SqlException
OnError("Ocurrió un error al modificar la clasificación.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
Return Retorno
End Function

View File

@@ -16,6 +16,37 @@ Public Enum OITipoEventos
Soporte = 9
Gastos_Mes = 10
End Enum
Public Class ObjEventosCorreo
Public Sub New(AsuntoCorreo As String, mailPara As String, ListPara As List(Of String), Folio As Integer, Link As String, Asunto As String, Descripcion As String, Fechai As String, Fechaf As String, Prioridad As String, Tema As String, Actividad As String, Estatus As String)
Me.AsuntoCorreo = AsuntoCorreo
Me.Folio = Folio
Me.Link = Link
Me.Asunto = Asunto
Me.Descripcion = Descripcion
Me.Fechai = Fechai
Me.Fechaf = Fechaf
Me.Prioridad = Prioridad
Me.Tema = Tema
Me.Actividad = Actividad
Me.Estatus = Estatus
Me.ListPara = ListPara
Me.mailPara = mailPara
End Sub
Public Property AsuntoCorreo As String
Public Property Folio As Integer
Public Property Link As String
Public Property Asunto As String
Public Property Descripcion As String
Public Property Fechai As String
Public Property Fechaf As String
Public Property Prioridad As String
Public Property Tema As String
Public Property Actividad As String
Public Property Estatus As String
Public Property mailPara As String
Public Property ListPara As List(Of String)
End Class
Public Class ClsOIEventos
Implements IDisposable
@@ -144,11 +175,11 @@ Public Class ClsOIEventos
DataAdapter("PA_Sis_RegistrarConexion")
With SqlAdapter.SelectCommand.Parameters
.Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}?{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString)
.Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}?{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString(), HttpContext.Current.Request.QueryString.ToString())
.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output
End With
SqlAdapter.Fill(Data)
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero
CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString().ToEntero()
Catch ex As Exception
OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
@@ -180,13 +211,68 @@ Public Class ClsOIEventos
Public Sub Commit()
SqlTransacc.Commit()
End Sub
#Region "Correo"
Private Function GetDominio() As String
Return HttpContext.Current.Request.Url.ToString().Replace(HttpContext.Current.Request.Url.PathAndQuery, "")
End Function
Public Property objCorreo As ObjEventosCorreo
#End Region
#Region "oieventos2.0"
Public Function GetEventos2(cveEvento As Int32, CveEmpresa As Integer) As Boolean
Public Function GetEventosUsuario2(CveEvento As Integer, CveEmpresa As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_OI_EventosUsuarios2Get")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveEvento", SqlDbType.Int).Value = CveEvento
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al obtener el Catálogo de Evento Usuario.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Return Retorno
End Function
Public Function UpUsuarioseventosVisto(CveEvento As Integer, CveUsuario As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("UPDATE OI_EventosUsuarios SET Visto=1 WHERE CveEvento =@CveEvento AND CveUsuario=@CveUsuario", CommandType.Text)
With SqlAdapter.SelectCommand.Parameters
.Add("@CveEvento", SqlDbType.Int).Value = CveEvento
.Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al obtener el Catálogo de Evento Usuario.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Return Retorno
End Function
Public Function GetEventos2(cveEvento As Int32, CveEmpresa As Integer, Optional CveEventoPadre As Integer = -1) As Boolean
Dim retorno As Boolean = False
DataAdapter("PA_OI_Eventos2Get", CommandType.StoredProcedure)
With SqlAdapter.SelectCommand.Parameters
.Add("@CveEvento", SqlDbType.Int).Value = cveEvento
.Add("@CveEventoPadre", SqlDbType.Int).Value = CveEventoPadre
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
End With
Try
SqlAdapter.Fill(Data)
retorno = True
Catch ex As Exception
OnError("Ocurrió un error al obtener el Catálogo de Eventos.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Return retorno
End Function
Public Function GetTareaConHijos(cveEvento As Int32, CveEmpresa As Integer) As Boolean
Dim retorno As Boolean = False
DataAdapter("PA_OI_GetTareaConHijos", CommandType.StoredProcedure)
With SqlAdapter.SelectCommand.Parameters
.Add("@CveEvento", SqlDbType.Int).Value = cveEvento
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
@@ -200,11 +286,38 @@ Public Class ClsOIEventos
Return retorno
End Function
Public Function AddEventoMinuta2(Asunto As String, Descripcion As String, Acuerdos As String, CveUsuarioDe As Integer, CveUsuarioPara As Integer, FechaInicio As DateTime, Archivo As String, Lmiembros As List(Of Integer), chkList As List(Of String), CveUsuarioIng As Integer, CveEmpresa As Integer) As Boolean
Dim Retorno As Boolean = False
Retorno = AddOI_Eventos2(OITipoEventos.Minuta, Asunto, Descripcion, 3, -1, -1, String.Format("{0:yyyy/MM/dd HH:mm}", FechaInicio), "1900/01/01 00:00", -1, Archivo, Lmiembros, chkList, CveUsuarioIng, CveEmpresa, -1, Acuerdos)
'Retorno = AddEvento(5, -1, Asunto, Descripcion, 1, -1, -1, FechaInicio, ("01/01/1799").ToDate, -1, -1, "-1", CveUsuarioIng, CveEmpresa, -1, -1, -1, -1, -1, -1, -1, -1)
Return Retorno
End Function
Public Function AddOI_Eventos2(cveTipoEvento As OITipoEventos, asunto As String, descripcion As String, prioridad As Int32, cveUsuarioDe As Int32, cveUsuarioPara As Int32,
fechaInicio As String, fechaFin As String, cveRevision As Int32, archivo As String, cveUsuarioIng As Int32, cveEmpresa As Int32) As Boolean
fechaInicio As String, fechaFin As String, cveRevision As Int32, archivo As String, Lmiembros As List(Of Integer), chkList As List(Of String),
cveUsuarioIng As Int32, cveEmpresa As Int32, Optional CveEventoPadre As Integer = -1, Optional Acuerdos As String = Nothing, Optional CveAgendaTipo As Integer = -1) As Boolean
Dim retorno As Boolean = False
Dim xmlMiembros As System.Xml.Linq.XDocument = Nothing
'xmlMiembros = New System.Xml.Linq.XDocument(New System.Xml.Linq.XElement("CCPara", Lmiembros.Select(x >= New System.Xml.Linq.XElement("CveUsuario", x)))
If Lmiembros Is Nothing Then
Lmiembros = New List(Of Integer)
End If
If Not cveUsuarioPara.Contiene(Lmiembros.ToArray()) Then
Lmiembros.Add(cveUsuarioPara)
End If
If Not cveUsuarioDe.Contiene(Lmiembros.ToArray()) Then
Lmiembros.Add(cveUsuarioDe)
End If
xmlMiembros = New System.Xml.Linq.XDocument(New System.Xml.Linq.XElement("CCPara", Lmiembros.[Select](Function(x) New System.Xml.Linq.XElement("CveUsuario", x))))
Dim xmlChkList As System.Xml.Linq.XDocument = Nothing
If chkList IsNot Nothing AndAlso chkList.Count > 0 Then
xmlChkList = New System.Xml.Linq.XDocument(New System.Xml.Linq.XElement("CheckList", chkList.[Select](Function(x) New System.Xml.Linq.XElement("Actividad", x))))
End If
DataAdapter("PA_OI_Eventos2Add", CommandType.StoredProcedure)
With SqlAdapter.SelectCommand.Parameters
.Add("@CveEvento", SqlDbType.Int).Direction = ParameterDirection.Output
@@ -220,39 +333,168 @@ Public Class ClsOIEventos
.Add("@cveRevision", SqlDbType.Int).Value = cveRevision
.Add("@archivo", SqlDbType.VarChar).Value = archivo
.Add("@cveUsuarioIng", SqlDbType.Int).Value = cveUsuarioIng
.Add("@xmlMiembros", SqlDbType.Xml).Value = If(xmlMiembros Is Nothing, DBNull.Value, DirectCast(xmlMiembros.ToString(), Object))
.Add("@xmlChkList", SqlDbType.Xml).Value = If(xmlChkList Is Nothing, DBNull.Value, DirectCast(xmlChkList.ToString(), Object))
.Add("@cveEmpresa", SqlDbType.Int).Value = cveEmpresa
.Add("@CveEventoPadre", SqlDbType.Int).Value = CveEventoPadre
.Add("@Acuerdos", SqlDbType.VarChar).Value = If(Acuerdos Is Nothing, DBNull.Value, DirectCast(Acuerdos, Object))
.Add("@CveAgendaTipo", SqlDbType.Int).Value = CveAgendaTipo
'.Add("@mailPara", SqlDbType.VarChar).Direction = ParameterDirection.Output
'.Add("@mailBody", SqlDbType.Xml).Direction = ParameterDirection.Output
End With
Dim separador As String = ""
Dim lPara As New List(Of String)
Dim mailbody As String = ""
Dim mailPara As String = ""
Dim ds As New DataSet()
Dim drow As DataRow = Nothing
Try
SqlAdapter.Fill(Data)
SqlAdapter.Fill(ds)
If ds.Tables.Count > 0 Then
Data = ds.Tables(0)
End If
If ds.Tables.Count > 1 AndAlso ds.Tables(1).Rows.Count > 0 Then
drow = ds.Tables(1).Rows(0)
End If
CveEvento = SqlAdapter.SelectCommand.Parameters("@CveEvento").Value.ToString().ToEntero()
Folio = SqlAdapter.SelectCommand.Parameters("@Folio").Value.ToString().ToEntero()
'mailbody = SqlAdapter.SelectCommand.Parameters("@mailBody").Value.ToString()
'mailPara = SqlAdapter.SelectCommand.Parameters("@mailPara").Value.ToString()
If DtResultados.Rows.Count > 0 Then
For Each item As DataRow In DtResultados.Rows
lPara.Add(item("CveUsuario").ToString())
mailPara = String.Format("{0}{1}{2}", mailPara, separador, item("Correo").ToString())
separador = ","
Next
End If
retorno = True
Catch ex As Exception
OnError("Ocurrió un error al obtener el Catálogo de Eventos.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
OnError("Ocurrió un error al agregar el Evento.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Try
If retorno AndAlso lPara.Count > 0 AndAlso drow IsNot Nothing Then
'Notificaciones.AlertaVentana(String.Format("<a href=""{0}OI/TareaDetalle.aspx?CveEvento={2}"">Folio :{1}</a>", GetDominio(), Folio, CveEvento), lPara, "NUEVA TAREA ASIGNADA")
objCorreo = New ObjEventosCorreo("Nueva Tarea asignada", mailPara, lPara, Folio, String.Format("{0}OI/TareaDetalle.aspx?CveEvento={1}", GetDominio(), CveEvento), asunto, descripcion, String.Format("{0:dd/MM/yyyy HH:mm}", fechaInicio.ToDateTime()), String.Format("{0:dd/MM/yyyy HH:mm}", fechaFin.ToDateTime()), drow("Prioridad").ToString(), drow("Tema").ToString(), "", "")
'mailbody = MailgetBodyNuevatarea(Folio, String.Format("{0}OI/TareaDetalle.aspx?CveEvento={1}", GetDominio(), CveEvento), asunto, descripcion, String.Format("{0:dd/MM/yyyy HH:mm}", fechaInicio.ToDateTime()), String.Format("{0:dd/MM/yyyy HH:mm}", fechaFin.ToDateTime()), drow("Prioridad").ToString(), drow("Tema").ToString())
'Dim mailAsunto As String = "Nueva Tarea asignada" ',cveUsuarioPara
'Dim mailArrayCC As String = ""
'EnviarCorreo(oempresa, mailAsunto, mailbody, mailPara, mailArrayCC)
End If
Catch ex As Exception
End Try
Return retorno
End Function
Public Function UpdateEstatusEvento2(CveEventoEstatus As Integer, CveComentario As Integer, CveEvento As Integer, CveUsuario As Integer) As Boolean
Public Function UP_Eventos2(CveEvento As Integer, asunto As String, descripcion As String, prioridad As Int32, fechaInicio As String, fechaFin As String,
cveRevision As Int32, cveUsuarioIng As Int32, cveEmpresa As Int32) As Boolean
Dim retorno As Boolean = False
DataAdapter("PA_OI_Eventos2Up", CommandType.StoredProcedure)
With SqlAdapter.SelectCommand.Parameters
.Add("@CveEvento", SqlDbType.Int).Value = CveEvento
.Add("@asunto", SqlDbType.VarChar).Value = asunto
.Add("@descripcion", SqlDbType.VarChar).Value = descripcion
.Add("@prioridad", SqlDbType.Int).Value = prioridad
.Add("@fechaInicio", SqlDbType.VarChar).Value = fechaInicio
.Add("@fechaFin", SqlDbType.VarChar).Value = fechaFin
.Add("@cveRevision", SqlDbType.Int).Value = cveRevision
.Add("@cveUsuarioIng", SqlDbType.Int).Value = cveUsuarioIng
.Add("@cveEmpresa", SqlDbType.Int).Value = cveEmpresa
End With
Dim separador As String = ""
Dim lPara As New List(Of String)
Dim mailbody As String = ""
Dim mailPara As String = ""
Dim ds As New DataSet()
Dim drow As DataRow = Nothing
Dim CveUsuarioPara As Integer = 0
Try
SqlAdapter.Fill(ds)
If ds.Tables.Count > 0 Then
Data = ds.Tables(0)
End If
If ds.Tables.Count > 1 AndAlso ds.Tables(1).Rows.Count > 0 Then
drow = ds.Tables(1).Rows(0)
End If
If DtResultados.Rows.Count > 0 Then
For Each item As DataRow In DtResultados.Rows
lPara.Add(item("CveUsuario").ToString())
mailPara = String.Format("{0}{1}{2}", mailPara, separador, item("Correo").ToString())
separador = ","
Next
End If
retorno = True
Catch ex As Exception
OnError("Ocurrió un error al actualizar el Catálogo de Eventos.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
If retorno AndAlso lPara.Count > 0 AndAlso drow IsNot Nothing Then
objCorreo = New ObjEventosCorreo("Tarea Actualizada", mailPara, lPara, Folio, String.Format("{0}OI/TareaDetalle.aspx?CveEvento={1}", GetDominio(), CveEvento), asunto, descripcion, String.Format("{0:dd/MM/yyyy HH:mm}", fechaInicio.ToDateTime()), String.Format("{0:dd/MM/yyyy HH:mm}", fechaFin.ToDateTime()), drow("Prioridad").ToString(), drow("Tema").ToString(), "", "")
'Notificaciones.AlertaVentana(String.Format("<a href=""{0}OI/TareaDetalle.aspx?CveEvento={2}"">Folio :{1}</a>", GetDominio(), Folio, CveEvento), lPara, "TAREA ACTUALIZADA")
'mailbody = MailgetBodyActualizartarea(Folio, String.Format("{0}OI/TareaDetalle.aspx?CveEvento={1}", GetDominio(), CveEvento), asunto, descripcion, String.Format("{0:dd/MM/yyyy HH:mm}", fechaInicio.ToDateTime()), String.Format("{0:dd/MM/yyyy HH:mm}", fechaFin.ToDateTime()), drow("Prioridad").ToString(), drow("Tema").ToString())
'Dim mailAsunto As String = "Tarea Actualizada" ',cveUsuarioPara
'Dim mailArrayCC As String = ""
'EnviarCorreo(oempresa, mailAsunto, mailbody, mailPara, mailArrayCC)
End If
Return retorno
End Function
Public Function UpdateEstatusEvento2(CveEventoEstatus As Integer, CveComentario As Integer, CveEvento As Integer, CveUsuario As Integer, cveEmpresa As Int32) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_OI_EventosEstatusUpdate2")
Dim separador As String = ""
Dim lPara As New List(Of String)
Dim mailbody As String = ""
Dim mailPara As String = ""
Dim ds As New DataSet()
Dim drow As DataRow = Nothing
With SqlAdapter.SelectCommand.Parameters
.Add("@pCveEventoEstatus", SqlDbType.Int).Value = CveEventoEstatus
.Add("@pCveComentario", SqlDbType.Int).Value = CveComentario
.Add("@pCveEvento", SqlDbType.Int).Value = CveEvento
.Add("@pCveUsuario", SqlDbType.Int).Value = CveUsuario
.Add("@CveEmpresa", SqlDbType.Int).Value = cveEmpresa
End With
Try
SqlAdapter.Fill(Data)
SqlAdapter.Fill(ds)
If ds.Tables.Count > 0 Then
Data = ds.Tables(0)
End If
If ds.Tables.Count > 1 AndAlso ds.Tables(1).Rows.Count > 0 Then
drow = ds.Tables(1).Rows(0)
End If
If DtResultados.Rows.Count > 0 Then
For Each item As DataRow In DtResultados.Rows
lPara.Add(item("CveUsuario").ToString())
mailPara = String.Format("{0}{1}{2}", mailPara, separador, item("Correo").ToString())
separador = ","
Next
End If
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al actualizar el estatus en el Evento.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
If Retorno AndAlso lPara.Count > 0 AndAlso drow IsNot Nothing Then
objCorreo = New ObjEventosCorreo("Tarea Cambio de estatus", mailPara, lPara, drow("Folio").ToString().ToEntero(), String.Format("{0}OI/TareaDetalle.aspx?CveEvento={1}", GetDominio(), CveEvento), drow("Asunto").ToString(), drow("Descripcion").ToString(), String.Format("{0:dd/MM/yyyy HH:mm}", drow("FechaInicio")), String.Format("{0:dd/MM/yyyy HH:mm}", drow("FechaFin")), drow("Prioridad").ToString(), drow("Tema").ToString(), "", drow("Estatus").ToString())
'Notificaciones.AlertaVentana(String.Format("<a href=""{0}OI/TareaDetalle.aspx?CveEvento={2}"">Folio :{1}</a>", GetDominio(), drow("Folio").ToString().ToEntero(), CveEvento), lPara, String.Format("CAMBIÓ ESTADO EN TAREA A '{0}'", drow("Estatus")))
'mailbody = MailgetBodyActualizarEstado(drow("Estatus").ToString(), drow("Folio").ToString().ToEntero(), String.Format("{0}OI/TareaDetalle.aspx?CveEvento={1}", GetDominio(), CveEvento), drow("Asunto").ToString(), drow("Descripcion").ToString(), String.Format("{0:dd/MM/yyyy HH:mm}", drow("FechaInicio")), String.Format("{0:dd/MM/yyyy HH:mm}", drow("FechaFin")), drow("Prioridad").ToString(), drow("Tema").ToString())
'Dim mailAsunto As String = "Tarea Cambio de estatus" ',cveUsuarioPara
'Dim mailArrayCC As String = ""
'EnviarCorreo(oempresa, mailAsunto, mailbody, mailPara, mailArrayCC)
End If
Return Retorno
End Function
@@ -289,7 +531,7 @@ Public Class ClsOIEventos
End Try
Return retorno
End Function
Public Function Upcheklist(cveEventoCheckList As Int32, cveEvento As Int32, eventoComentario As String, estatus As Boolean, cveUsuario As Int32) As Boolean
Public Function Upcheklist(cveEventoCheckList As Int32, cveEvento As Int32, eventoComentario As String, estatus As Boolean, cveUsuario As Int32, CveEmpresa As Int32) As Boolean
Dim retorno As Boolean = False
DataAdapter("PA_OI_cheklistUp", CommandType.StoredProcedure)
With SqlAdapter.SelectCommand.Parameters
@@ -298,13 +540,47 @@ Public Class ClsOIEventos
.Add("@eventoComentario", SqlDbType.VarChar).Value = eventoComentario
.Add("@estatus", SqlDbType.Bit).Value = estatus
.Add("@cveUsuario", SqlDbType.Int).Value = cveUsuario
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
End With
Dim separador As String = ""
Dim lPara As New List(Of String)
Dim mailbody As String = ""
Dim mailPara As String = ""
Dim ds As New DataSet()
Dim drow As DataRow = Nothing
Try
SqlAdapter.Fill(Data)
SqlAdapter.Fill(ds)
If ds.Tables.Count > 0 Then
Data = ds.Tables(0)
End If
If ds.Tables.Count > 1 AndAlso ds.Tables(1).Rows.Count > 0 Then
drow = ds.Tables(1).Rows(0)
End If
If DtResultados.Rows.Count > 0 Then
For Each item As DataRow In DtResultados.Rows
lPara.Add(item("CveUsuario").ToString())
mailPara = String.Format("{0}{1}{2}", mailPara, separador, item("Correo").ToString())
separador = ","
Next
End If
retorno = True
Catch ex As Exception
OnError("Ocurrió un error al actualizar el checklist.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
If retorno AndAlso lPara.Count > 0 AndAlso drow IsNot Nothing Then
objCorreo = New ObjEventosCorreo(String.Format("Actividad {0}", If(estatus, "Terminada", "Pendiente")), mailPara, lPara, drow("Folio").ToString().ToEntero(), String.Format("{0}OI/TareaDetalle.aspx?CveEvento={1}", GetDominio(), cveEvento), drow("Asunto").ToString(), drow("Descripcion").ToString(), String.Format("{0:dd/MM/yyyy HH:mm}", drow("FechaInicio")), String.Format("{0:dd/MM/yyyy HH:mm}", drow("FechaFin")), drow("Prioridad").ToString(), drow("Tema").ToString(), String.Format("Actividad {0}", If(estatus, "Terminada", "Pendiente")), "")
'Notificaciones.AlertaVentana(String.Format("<a href=""{0}OI/TareaDetalle.aspx?CveEvento={2}"">Folio :{1}</a>", GetDominio(), drow("Folio").ToString().ToEntero(), cveEvento), lPara, "TAREA ACTUALIZADA(Nuevo Archivo)")
'mailbody = MailgetBodyTareaCheckList(String.Format("Actividad {0}", If(estatus, "Terminada", "Pendiente")), drow("Folio").ToString().ToEntero(), String.Format("{0}OI/TareaDetalle.aspx?CveEvento={1}", GetDominio(), cveEvento), drow("Asunto").ToString(), drow("Descripcion").ToString(), String.Format("{0:dd/MM/yyyy HH:mm}", drow("FechaInicio")), String.Format("{0:dd/MM/yyyy HH:mm}", drow("FechaFin")), drow("Prioridad").ToString(), drow("Tema").ToString())
'Dim mailAsunto As String = String.Format("Actividad {0}", If(estatus, "Terminada", "Pendiente"))
'Dim mailArrayCC As String = ""
'EnviarCorreo(oempresa, mailAsunto, mailbody, mailPara, mailArrayCC)
End If
Return retorno
End Function
Public Function Removecheklist(cveEventoCheckList As Int32, cveEvento As Int32, cveUsuario As Int32) As Boolean
@@ -325,46 +601,167 @@ Public Class ClsOIEventos
End Function
#End Region
Public Function AddUPEventoArchivo(CveEvento As Integer, Archivo As String, CveUsuario As Integer) As Boolean
Public Function AddUPEventoArchivo(CveEvento As Integer, Archivo As String, CveUsuario As Integer, cveEmpresa As Int32) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_OI_EventosArchivoAddUP")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveEvento", SqlDbType.Int).Value = CveEvento
.Add("@Archivo", SqlDbType.VarChar).Value = Archivo
.Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario
.Add("@CveEmpresa", SqlDbType.Int).Value = cveEmpresa
End With
Dim separador As String = ""
Dim lPara As New List(Of String)
Dim mailbody As String = ""
Dim mailPara As String = ""
Dim ds As New DataSet()
Dim drow As DataRow = Nothing
Try
SqlAdapter.Fill(Data)
SqlAdapter.Fill(ds)
If ds.Tables.Count > 0 Then
Data = ds.Tables(0)
End If
If ds.Tables.Count > 1 AndAlso ds.Tables(1).Rows.Count > 0 Then
drow = ds.Tables(1).Rows(0)
End If
If DtResultados.Rows.Count > 0 Then
For Each item As DataRow In DtResultados.Rows
lPara.Add(item("CveUsuario").ToString())
mailPara = String.Format("{0}{1}{2}", mailPara, separador, item("Correo").ToString())
separador = ","
Next
End If
Retorno = True
Catch Ex1 As SqlException
Retorno = False
Me.OnError("Ocurrió un error al Guardar el comentario del evento.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
Me.OnError("Ocurrió un error al Guardar el archivo del evento.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
Catch ex As Exception
Retorno = False
OnError("Ocurrió un error al Guardar el Evento Comentario", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
OnError("Ocurrió un error al Guardar el archivo Comentario", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
If Retorno AndAlso lPara.Count > 0 AndAlso drow IsNot Nothing Then
objCorreo = New ObjEventosCorreo("Tarea Archivo actualizado", mailPara, lPara, drow("Folio").ToString().ToEntero(), String.Format("{0}OI/TareaDetalle.aspx?CveEvento={1}", GetDominio(), CveEvento), drow("Asunto").ToString(), drow("Descripcion").ToString(), String.Format("{0:dd/MM/yyyy HH:mm}", drow("FechaInicio")), String.Format("{0:dd/MM/yyyy HH:mm}", drow("FechaFin")), drow("Prioridad").ToString(), drow("Tema").ToString(), "", "")
'Notificaciones.AlertaVentana(String.Format("<a href=""{0}OI/TareaDetalle.aspx?CveEvento={2}"">Folio :{1}</a>", GetDominio(), drow("Folio").ToString().ToEntero(), CveEvento), lPara, "TAREA ACTUALIZADA(Nuevo Archivo)")
'mailbody = MailgetBodyActualizararchivo(drow("Folio").ToString().ToEntero(), String.Format("{0}OI/TareaDetalle.aspx?CveEvento={1}", GetDominio(), CveEvento), drow("Asunto").ToString(), drow("Descripcion").ToString(), String.Format("{0:dd/MM/yyyy HH:mm}", drow("FechaInicio")), String.Format("{0:dd/MM/yyyy HH:mm}", drow("FechaFin")), drow("Prioridad").ToString(), drow("Tema").ToString())
'Dim mailAsunto As String = "Tarea Archivo actualizado" ',cveUsuarioPara
'Dim mailArrayCC As String = ""
'EnviarCorreo(oempresa, mailAsunto, mailbody, mailPara, mailArrayCC)
End If
Return Retorno
End Function
Public Function UPEventoAAvance(CveEvento As Integer, Avance As Decimal, CveUsuario As Integer) As Boolean
Public Function UPEventoAAvance(CveEvento As Integer, Avance As Decimal, CveUsuario As Integer, cveEmpresa As Int32) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_OI_EventosAvanceUP")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveEvento", SqlDbType.Int).Value = CveEvento
.Add("@Avance", SqlDbType.Decimal).Value = Avance
.Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario
.Add("@CveEmpresa", SqlDbType.Int).Value = cveEmpresa
End With
Dim separador As String = ""
Dim lPara As New List(Of String)
Dim mailbody As String = ""
Dim mailPara As String = ""
Dim ds As New DataSet()
Dim drow As DataRow = Nothing
Try
SqlAdapter.Fill(Data)
SqlAdapter.Fill(ds)
If ds.Tables.Count > 1 Then
Data = ds.Tables(1)
End If
If ds.Tables.Count > 2 AndAlso ds.Tables(2).Rows.Count > 0 Then
drow = ds.Tables(2).Rows(0)
End If
If DtResultados.Rows.Count > 0 Then
For Each item As DataRow In DtResultados.Rows
lPara.Add(item("CveUsuario").ToString())
mailPara = String.Format("{0}{1}{2}", mailPara, separador, item("Correo").ToString())
separador = ","
Next
End If
If ds.Tables.Count > 0 Then
Data = ds.Tables(0)
End If
Retorno = True
Catch Ex1 As SqlException
Retorno = False
Me.OnError("Ocurrió un error al Guardar el comentario del evento.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
Me.OnError("Ocurrió un error al Guardar el Avance del evento.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
Catch ex As Exception
Retorno = False
OnError("Ocurrió un error al Guardar el Avance Comentario", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
If Retorno AndAlso lPara.Count > 0 AndAlso drow IsNot Nothing Then
objCorreo = New ObjEventosCorreo("Tarea cambio Avance", mailPara, lPara, drow("Folio").ToString().ToEntero(), String.Format("{0}OI/TareaDetalle.aspx?CveEvento={1}", GetDominio(), CveEvento), drow("Asunto").ToString(), drow("Descripcion").ToString(), String.Format("{0:dd/MM/yyyy HH:mm}", drow("FechaInicio")), String.Format("{0:dd/MM/yyyy HH:mm}", drow("FechaFin")), drow("Prioridad").ToString(), drow("Tema").ToString(), "", "")
'Notificaciones.AlertaVentana(String.Format("<a href=""{0}OI/TareaDetalle.aspx?CveEvento={2}"">Folio :{1}</a>", GetDominio(), drow("Folio").ToString().ToEntero(), CveEvento), lPara, "TAREA ACTUALIZADA(Nuevo Archivo)")
'mailbody = MailgetBodyActualizarAvance(drow("Folio").ToString().ToEntero(), String.Format("{0}OI/TareaDetalle.aspx?CveEvento={1}", GetDominio(), CveEvento), drow("Asunto").ToString(), drow("Descripcion").ToString(), String.Format("{0:dd/MM/yyyy HH:mm}", drow("FechaInicio")), String.Format("{0:dd/MM/yyyy HH:mm}", drow("FechaFin")), drow("Prioridad").ToString(), drow("Tema").ToString())
'Dim mailAsunto As String = "Tarea cambio Avance" ',cveUsuarioPara
'Dim mailArrayCC As String = ""
'EnviarCorreo(oempresa, mailAsunto, mailbody, mailPara, mailArrayCC)
End If
Return Retorno
End Function
Public Function AddEventoComentario2(CveEvento As Integer, Comentario As String, Archivo As String, CveUsuario As Integer, CveEmpresa As Integer) As Integer
Dim Retorno As Integer = -1
DataAdapter("PA_OI_EventosComentarios2Add")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveEvento", SqlDbType.Int).Value = CveEvento
.Add("@EventoComentario", SqlDbType.VarChar).Value = Comentario
.Add("@Archivo", SqlDbType.VarChar).Value = Archivo
.Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario
.Add("@CveEventoComentario", SqlDbType.Int).Direction = ParameterDirection.Output
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
End With
Dim separador As String = ""
Dim lPara As New List(Of String)
Dim mailbody As String = ""
Dim mailPara As String = ""
Dim ds As New DataSet()
Dim drow As DataRow = Nothing
Try
SqlAdapter.Fill(ds)
If ds.Tables.Count > 0 Then
Data = ds.Tables(0)
End If
If ds.Tables.Count > 1 AndAlso ds.Tables(1).Rows.Count > 0 Then
drow = ds.Tables(1).Rows(0)
End If
CveEventoComentario = SqlAdapter.SelectCommand.Parameters("@CveEventoComentario").Value.ToString().ToEntero()
Retorno = CveEventoComentario
If DtResultados.Rows.Count > 0 Then
For Each item As DataRow In DtResultados.Rows
lPara.Add(item("CveUsuario").ToString())
mailPara = String.Format("{0}{1}{2}", mailPara, separador, item("Correo").ToString())
separador = ","
Next
End If
Catch Ex1 As SqlException
Me.OnError("Ocurrió un error al Guardar el comentario del evento.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
Catch ex As Exception
OnError("Ocurrió un error al Guardar el Evento Comentario", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
If Retorno > 0 AndAlso lPara.Count > 0 AndAlso drow IsNot Nothing Then
objCorreo = New ObjEventosCorreo("Nuevo comentario en tarea", mailPara, lPara, drow("Folio").ToString().ToEntero(), String.Format("{0}OI/TareaDetalle.aspx?CveEvento={1}", GetDominio(), CveEvento), drow("Asunto").ToString(), drow("Descripcion").ToString(), String.Format("{0:dd/MM/yyyy HH:mm}", drow("FechaInicio")), String.Format("{0:dd/MM/yyyy HH:mm}", drow("FechaFin")), drow("Prioridad").ToString(), drow("Tema").ToString(), "", "")
'Notificaciones.AlertaVentana(String.Format("<a href=""{0}OI/TareaDetalle.aspx?CveEvento={2}"">Folio :{1}</a>", GetDominio(), drow("Folio").ToString().ToEntero(), CveEvento), lPara, "TAREA ACTUALIZADA(Nuevo Archivo)")
'mailbody = MailgetBodyTareaComentario(drow("Folio").ToString().ToEntero(), String.Format("{0}OI/TareaDetalle.aspx?CveEvento={1}", GetDominio(), CveEvento), drow("Asunto").ToString(), drow("Descripcion").ToString(), String.Format("{0:dd/MM/yyyy HH:mm}", drow("FechaInicio")), String.Format("{0:dd/MM/yyyy HH:mm}", drow("FechaFin")), drow("Prioridad").ToString(), drow("Tema").ToString())
'Dim mailAsunto As String = "Nuevo comentario en tarea" ',cveUsuarioPara
'Dim mailArrayCC As String = ""
'EnviarCorreo(oempresa, mailAsunto, mailbody, mailPara, mailArrayCC)
End If
Return Retorno
End Function
#End Region
@@ -521,65 +918,65 @@ Public Class ClsOIEventos
'If CveEvento > 0 AndAlso Data IsNot Nothing AndAlso Data.Rows.Count > 0 Then
If Data.Rows.Count > 0 Then
Me.CveEvento = Data.Rows(0)("CveEvento").ToString.ToEntero
Me.CveTipoEvento = Data.Rows(0)("CveTipoEvento").ToString.ToEntero
Me.Folio = Data.Rows(0)("Folio").ToString.ToEntero
Me.CveAgendaTipo = Data.Rows(0)("CveAgendaTipo").ToString.ToEntero
Me.TipoEvento = Data.Rows(0)("TipoEvento").ToString
Me.Asunto = Data.Rows(0)("Asunto").ToString
Me.Descripcion = Data.Rows(0)("Descripcion").ToString
Me.Prioridad = Data.Rows(0)("Prioridad").ToString
Me.CvePrioridad = Data.Rows(0)("CvePrioridad").ToString.ToEntero
Me.CveUsuarioDe = Data.Rows(0)("CveUsuarioDe").ToString.ToEntero
Me.CorreoDe = Data.Rows(0)("CorreoDe").ToString
Me.UsuarioDe = Data.Rows(0)("UsuarioDe").ToString
Me.CveUsuarioPara = Data.Rows(0)("CveUsuarioPara").ToString.ToEntero
Me.UsuarioPara = Data.Rows(0)("UsuarioPara").ToString
Me.CorreoPara = Data.Rows(0)("CorreoPara").ToString
Me.CveEventoEstatus = Data.Rows(0)("CveEventoEstatus").ToString.ToEntero
Me.EventoEstatus = Data.Rows(0)("EventoEstatus").ToString
Me.FechaInicio = Data.Rows(0)("FechaInicio").ToString.ToDate
Me.FechaFin = Data.Rows(0)("FechaFin").ToString.ToDate
Me.FechaRealTermino = Data.Rows(0)("FechaRealTermino").ToString.ToDate
Me.CveEventoPadre = Data.Rows(0)("CveEventoPadre").ToString.ToEntero
Me.Orden = Data.Rows(0)("Orden").ToString.ToDouble
Me.CveRevision = Data.Rows(0)("CveRevision").ToString.ToEntero
Me.Acuerdos = Data.Rows(0)("Acuerdos").ToString
Me.Revision = Data.Rows(0)("Revision").ToString
'Me.TipoReferencia = Data.Rows(0)("TipoReferencia").ToString
'Me.Referencia = Data.Rows(0)("Referencia").ToString
Me.Archivo = Data.Rows(0)("Archivo").ToString
'Me.CveSeguimiento = Data.Rows(0)("CveSeguimiento").ToString.ToEntero
Me.CveOC = Data.Rows(0)("CveOC").ToString.ToEntero
Me.CveUsuarioIng = Data.Rows(0)("CveUsuarioIng").ToString.ToEntero
Me.UsuarioIng = Data.Rows(0)("UsuarioIng").ToString
Me.RolIngreso = Data.Rows(0)("RolIngreso").ToString.ToEntero
Me.FechaIng = Data.Rows(0)("FechaIng").ToString.ToDate
Me.CveEmpresa = Data.Rows(0)("CveEmpresa").ToString.ToEntero
Me.Modificada = CBool(Data.Rows(0)("Modificado").ToString)
Me.CveCompra = Data.Rows(0)("CveCompra").ToString.ToEntero
Me.CveVenta = Data.Rows(0)("CveVenta").ToString.ToEntero
Me.CveEvento = Data.Rows(0)("CveEvento").ToString().ToEntero()
Me.CveTipoEvento = Data.Rows(0)("CveTipoEvento").ToString().ToEntero()
Me.Folio = Data.Rows(0)("Folio").ToString().ToEntero()
Me.CveAgendaTipo = Data.Rows(0)("CveAgendaTipo").ToString().ToEntero()
Me.TipoEvento = Data.Rows(0)("TipoEvento").ToString()
Me.Asunto = Data.Rows(0)("Asunto").ToString()
Me.Descripcion = Data.Rows(0)("Descripcion").ToString()
Me.Prioridad = Data.Rows(0)("Prioridad").ToString()
Me.CvePrioridad = Data.Rows(0)("CvePrioridad").ToString().ToEntero()
Me.CveUsuarioDe = Data.Rows(0)("CveUsuarioDe").ToString().ToEntero()
Me.CorreoDe = Data.Rows(0)("CorreoDe").ToString()
Me.UsuarioDe = Data.Rows(0)("UsuarioDe").ToString()
Me.CveUsuarioPara = Data.Rows(0)("CveUsuarioPara").ToString().ToEntero()
Me.UsuarioPara = Data.Rows(0)("UsuarioPara").ToString()
Me.CorreoPara = Data.Rows(0)("CorreoPara").ToString()
Me.CveEventoEstatus = Data.Rows(0)("CveEventoEstatus").ToString().ToEntero()
Me.EventoEstatus = Data.Rows(0)("EventoEstatus").ToString()
Me.FechaInicio = Data.Rows(0)("FechaInicio").ToString().ToDate
Me.FechaFin = Data.Rows(0)("FechaFin").ToString().ToDate
Me.FechaRealTermino = Data.Rows(0)("FechaRealTermino").ToString().ToDate
Me.CveEventoPadre = Data.Rows(0)("CveEventoPadre").ToString().ToEntero()
Me.Orden = Data.Rows(0)("Orden").ToString().ToDouble
Me.CveRevision = Data.Rows(0)("CveRevision").ToString().ToEntero()
Me.Acuerdos = Data.Rows(0)("Acuerdos").ToString()
Me.Revision = Data.Rows(0)("Revision").ToString()
'Me.TipoReferencia = Data.Rows(0)("TipoReferencia").ToString()
'Me.Referencia = Data.Rows(0)("Referencia").ToString()
Me.Archivo = Data.Rows(0)("Archivo").ToString()
'Me.CveSeguimiento = Data.Rows(0)("CveSeguimiento").ToString().ToEntero()
Me.CveOC = Data.Rows(0)("CveOC").ToString().ToEntero()
Me.CveUsuarioIng = Data.Rows(0)("CveUsuarioIng").ToString().ToEntero()
Me.UsuarioIng = Data.Rows(0)("UsuarioIng").ToString()
Me.RolIngreso = Data.Rows(0)("RolIngreso").ToString().ToEntero()
Me.FechaIng = Data.Rows(0)("FechaIng").ToString().ToDate
Me.CveEmpresa = Data.Rows(0)("CveEmpresa").ToString().ToEntero()
Me.Modificada = CBool(Data.Rows(0)("Modificado").ToString())
Me.CveCompra = Data.Rows(0)("CveCompra").ToString().ToEntero()
Me.CveVenta = Data.Rows(0)("CveVenta").ToString().ToEntero()
Me.CveUsuarioSop = Data.Rows(0)("CveUsuarioSop").ToString.ToEntero
Me.Persona = Data.Rows(0)("Persona").ToString
Me.Telefono = Data.Rows(0)("Telefono").ToString
Me.Extension = Data.Rows(0)("Extension").ToString
Me.Clasificacion = Data.Rows(0)("Clasificacion").ToString.ToEntero
Me.Email = Data.Rows(0)("Email").ToString
Me.EmpresaSop = Data.Rows(0)("EmpresaSop").ToString
Me.Modulo = Data.Rows(0)("Modulo").ToString
Me.Datos = Data.Rows(0)("Datos").ToString
If Data.Rows(0)("Desarrollo").ToString.Length > 0 Then
Me.Desarrollo = If(Boolean.Parse(Data.Rows(0)("Desarrollo").ToString), 1, 0)
Me.CveUsuarioSop = Data.Rows(0)("CveUsuarioSop").ToString().ToEntero()
Me.Persona = Data.Rows(0)("Persona").ToString()
Me.Telefono = Data.Rows(0)("Telefono").ToString()
Me.Extension = Data.Rows(0)("Extension").ToString()
Me.Clasificacion = Data.Rows(0)("Clasificacion").ToString().ToEntero()
Me.Email = Data.Rows(0)("Email").ToString()
Me.EmpresaSop = Data.Rows(0)("EmpresaSop").ToString()
Me.Modulo = Data.Rows(0)("Modulo").ToString()
Me.Datos = Data.Rows(0)("Datos").ToString()
If Data.Rows(0)("Desarrollo").ToString().Length > 0 Then
Me.Desarrollo = If(Boolean.Parse(Data.Rows(0)("Desarrollo").ToString()), 1, 0)
Else
Me.Desarrollo = 0
End If
Me.CveEmpresaSop = Data.Rows(0)("CveEmpresaSop").ToString.ToEntero
Me.CveModulo = Data.Rows(0)("CveModulo").ToString.ToEntero
Me.CveEmpresaSop = Data.Rows(0)("CveEmpresaSop").ToString().ToEntero()
Me.CveModulo = Data.Rows(0)("CveModulo").ToString().ToEntero()
Me.Importe = Data.Rows(0)("Importe").ToString.ToDouble
Me.Importe = Data.Rows(0)("Importe").ToString().ToDouble
End If
Retorno = True
@@ -675,7 +1072,7 @@ Public Class ClsOIEventos
Try
SqlAdapter.Fill(Data)
CveEvento = SqlAdapter.SelectCommand.Parameters("@CveEvento").Value.ToString.ToEntero
CveEvento = SqlAdapter.SelectCommand.Parameters("@CveEvento").Value.ToString().ToEntero()
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al Guardar el Evento", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
@@ -850,6 +1247,33 @@ Public Class ClsOIEventos
Return Retorno
End Function
Public Function UpEventoMiembros(pCveEvento As Integer, CveUsuarioPara As Integer, Lmiembros As List(Of Integer), CveEmpresa As Integer, CveUsuarioEdito As Integer) As Boolean
Dim Retorno As Boolean = False
Dim xmlMiembros As System.Xml.Linq.XDocument = Nothing
'xmlMiembros = New System.Xml.Linq.XDocument(New System.Xml.Linq.XElement("CCPara", Lmiembros.Select(x >= New System.Xml.Linq.XElement("CveUsuario", x)))
If Lmiembros IsNot Nothing AndAlso Lmiembros.Count > 0 Then
If Not CveUsuarioPara.Contiene(Lmiembros.ToArray()) Then
Lmiembros.Add(CveUsuarioPara)
End If
xmlMiembros = New System.Xml.Linq.XDocument(New System.Xml.Linq.XElement("CCPara", Lmiembros.[Select](Function(x) New System.Xml.Linq.XElement("CveUsuario", x))))
End If
DataAdapter("PA_OI_EventosMiembrosUp")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveEvento", SqlDbType.Int).Value = pCveEvento
.Add("@CveUsuarioPara", SqlDbType.Int).Value = CveUsuarioPara
.Add("@xmlMiembros", SqlDbType.Xml).Value = If(xmlMiembros Is Nothing, DBNull.Value, DirectCast(xmlMiembros.ToString(), Object))
.Add("@CveUsuarioEdito", SqlDbType.Int).Value = CveUsuarioEdito
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al acualizar miembros los miembros del evento", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
Return Retorno
End Function
Public Function AddEventoUsuario(pCveEvento As Integer, CveUsuario As Integer) As Boolean
Dim Retorno As Boolean = False
@@ -916,12 +1340,12 @@ Public Class ClsOIEventos
SqlAdapter.Fill(Data)
If CveSeguimiento > 0 AndAlso Data IsNot Nothing AndAlso Data.Rows.Count > 0 Then
Me.CveSeguimiento = Data.Rows(0)("CveEventoComentario").ToString.ToEntero
Me.CveEvento = Data.Rows(0)("CveEvento").ToString.ToEntero
Me.Comentario = Data.Rows(0)("EventoComentario").ToString
Me.Archivo = Data.Rows(0)("Archivo").ToString
Me.FechaIng = Data.Rows(0)("FechaIng").ToString.ToDate
Me.UsuarioDe = Data.Rows(0)("Usuario").ToString
Me.CveSeguimiento = Data.Rows(0)("CveEventoComentario").ToString().ToEntero()
Me.CveEvento = Data.Rows(0)("CveEvento").ToString().ToEntero()
Me.Comentario = Data.Rows(0)("EventoComentario").ToString()
Me.Archivo = Data.Rows(0)("Archivo").ToString()
Me.FechaIng = Data.Rows(0)("FechaIng").ToString().ToDate
Me.UsuarioDe = Data.Rows(0)("Usuario").ToString()
End If
Retorno = True
@@ -949,7 +1373,7 @@ Public Class ClsOIEventos
Try
SqlAdapter.Fill(Data)
CveEventoComentario = SqlAdapter.SelectCommand.Parameters("@CveEventoComentario").Value.ToString.ToEntero
CveEventoComentario = SqlAdapter.SelectCommand.Parameters("@CveEventoComentario").Value.ToString().ToEntero()
Retorno = CveEventoComentario
Catch Ex1 As SqlException
@@ -1186,36 +1610,36 @@ Public Class ClsOIEventos
If Data.Rows.Count > 0 Then
Me.CveEvento = Data.Rows(0)("CveEvento").ToString.ToEntero
Me.CveTipoEvento = Data.Rows(0)("CveTipoEvento").ToString.ToEntero
'Me.CveAgendaTipo = Data.Rows(0)("CveAgendaTipo").ToString.ToEntero
'Me.TipoEvento = Data.Rows(0)("EventoTipo").ToString
Me.Asunto = Data.Rows(0)("Asunto").ToString
Me.Descripcion = Data.Rows(0)("Descripcion").ToString
Me.Prioridad = Data.Rows(0)("Prioridad").ToString
Me.CvePrioridad = Data.Rows(0)("CvePrioridad").ToString.ToEntero
Me.CveUsuarioDe = Data.Rows(0)("CveUsuarioDe").ToString.ToEntero
'Me.CorreoDe = Data.Rows(0)("CorreoDe").ToString
Me.UsuarioDe = Data.Rows(0)("UsuarioDe").ToString
Me.CveUsuarioPara = Data.Rows(0)("CveUsuarioPara").ToString.ToEntero
Me.UsuarioPara = Data.Rows(0)("UsuarioPara").ToString
'Me.CorreoPara = Data.Rows(0)("CorreoPara").ToString
Me.CveEventoEstatus = Data.Rows(0)("CveEventoEstatus").ToString.ToEntero
Me.EventoEstatus = Data.Rows(0)("EventoEstatus").ToString
Me.FechaInicio = Data.Rows(0)("FechaInicio").ToString.ToDate
Me.FechaFin = Data.Rows(0)("FechaFin").ToString.ToDate
Me.FechaRealTermino = Data.Rows(0)("FechaRealTermino").ToString.ToDate
Me.CveEventoPadre = Data.Rows(0)("CveEventoPadre").ToString.ToEntero
'Me.Orden = Data.Rows(0)("Orden").ToString.ToEntero
Me.CveRevision = Data.Rows(0)("CveRevision").ToString.ToEntero
Me.Acuerdos = Data.Rows(0)("Acuerdos").ToString
'Me.Revision = Data.Rows(0)("Revision").ToString
'Me.TipoReferencia = Data.Rows(0)("TipoReferencia").ToString
'Me.Referencia = Data.Rows(0)("Referencia").ToString
'Me.Archivo = Data.Rows(0)("Archivo").ToString
'Me.CveSeguimiento = Data.Rows(0)("CveSeguimiento").ToString.ToEntero
Me.FechaIng = Data.Rows(0)("FechaIng").ToString.ToDate
Me.CveEmpresa = Data.Rows(0)("CveEmpresa").ToString.ToEntero
Me.CveEvento = Data.Rows(0)("CveEvento").ToString().ToEntero()
Me.CveTipoEvento = Data.Rows(0)("CveTipoEvento").ToString().ToEntero()
'Me.CveAgendaTipo = Data.Rows(0)("CveAgendaTipo").ToString().ToEntero()
'Me.TipoEvento = Data.Rows(0)("EventoTipo").ToString()
Me.Asunto = Data.Rows(0)("Asunto").ToString()
Me.Descripcion = Data.Rows(0)("Descripcion").ToString()
Me.Prioridad = Data.Rows(0)("Prioridad").ToString()
Me.CvePrioridad = Data.Rows(0)("CvePrioridad").ToString().ToEntero()
Me.CveUsuarioDe = Data.Rows(0)("CveUsuarioDe").ToString().ToEntero()
'Me.CorreoDe = Data.Rows(0)("CorreoDe").ToString()
Me.UsuarioDe = Data.Rows(0)("UsuarioDe").ToString()
Me.CveUsuarioPara = Data.Rows(0)("CveUsuarioPara").ToString().ToEntero()
Me.UsuarioPara = Data.Rows(0)("UsuarioPara").ToString()
'Me.CorreoPara = Data.Rows(0)("CorreoPara").ToString()
Me.CveEventoEstatus = Data.Rows(0)("CveEventoEstatus").ToString().ToEntero()
Me.EventoEstatus = Data.Rows(0)("EventoEstatus").ToString()
Me.FechaInicio = Data.Rows(0)("FechaInicio").ToString().ToDate
Me.FechaFin = Data.Rows(0)("FechaFin").ToString().ToDate
Me.FechaRealTermino = Data.Rows(0)("FechaRealTermino").ToString().ToDate
Me.CveEventoPadre = Data.Rows(0)("CveEventoPadre").ToString().ToEntero()
'Me.Orden = Data.Rows(0)("Orden").ToString().ToEntero()
Me.CveRevision = Data.Rows(0)("CveRevision").ToString().ToEntero()
Me.Acuerdos = Data.Rows(0)("Acuerdos").ToString()
'Me.Revision = Data.Rows(0)("Revision").ToString()
'Me.TipoReferencia = Data.Rows(0)("TipoReferencia").ToString()
'Me.Referencia = Data.Rows(0)("Referencia").ToString()
'Me.Archivo = Data.Rows(0)("Archivo").ToString()
'Me.CveSeguimiento = Data.Rows(0)("CveSeguimiento").ToString().ToEntero()
Me.FechaIng = Data.Rows(0)("FechaIng").ToString().ToDate
Me.CveEmpresa = Data.Rows(0)("CveEmpresa").ToString().ToEntero()
End If
@@ -1275,36 +1699,36 @@ Public Class ClsOIEventos
'If CveEvento > 0 AndAlso Data IsNot Nothing AndAlso Data.Rows.Count > 0 Then
If Data.Rows.Count > 0 Then
Me.CveEvento = Data.Rows(0)("CveEvento").ToString.ToEntero
Me.CveTipoEvento = Data.Rows(0)("CveTipoEvento").ToString.ToEntero
Me.CveAgendaTipo = Data.Rows(0)("CveAgendaTipo").ToString.ToEntero
Me.TipoEvento = Data.Rows(0)("TipoEvento").ToString
Me.Asunto = Data.Rows(0)("Asunto").ToString
Me.Descripcion = Data.Rows(0)("Descripcion").ToString
Me.Prioridad = Data.Rows(0)("Prioridad").ToString
Me.CvePrioridad = Data.Rows(0)("CvePrioridad").ToString.ToEntero
Me.CveUsuarioDe = Data.Rows(0)("CveUsuarioDe").ToString.ToEntero
Me.CorreoDe = Data.Rows(0)("CorreoDe").ToString
Me.UsuarioDe = Data.Rows(0)("UsuarioDe").ToString
Me.CveUsuarioPara = Data.Rows(0)("CveUsuarioPara").ToString.ToEntero
Me.UsuarioPara = Data.Rows(0)("UsuarioPara").ToString
Me.CorreoPara = Data.Rows(0)("CorreoPara").ToString
Me.CveEventoEstatus = Data.Rows(0)("CveEventoEstatus").ToString.ToEntero
Me.EventoEstatus = Data.Rows(0)("EventoEstatus").ToString
Me.FechaInicio = Data.Rows(0)("FechaInicio").ToString.ToDate
Me.FechaFin = Data.Rows(0)("FechaFin").ToString.ToDate
Me.FechaRealTermino = Data.Rows(0)("FechaRealTermino").ToString.ToDate
Me.CveEventoPadre = Data.Rows(0)("CveEventoPadre").ToString.ToEntero
Me.Orden = Data.Rows(0)("Orden").ToString.ToEntero
Me.CveRevision = Data.Rows(0)("CveRevision").ToString.ToEntero
Me.Acuerdos = Data.Rows(0)("Acuerdos").ToString
Me.Revision = Data.Rows(0)("Revision").ToString
'Me.TipoReferencia = Data.Rows(0)("TipoReferencia").ToString
'Me.Referencia = Data.Rows(0)("Referencia").ToString
Me.Archivo = Data.Rows(0)("Archivo").ToString
'Me.CveSeguimiento = Data.Rows(0)("CveSeguimiento").ToString.ToEntero
Me.FechaIng = Data.Rows(0)("FechaIng").ToString.ToDate
Me.CveEmpresa = Data.Rows(0)("CveEmpresa").ToString.ToEntero
Me.CveEvento = Data.Rows(0)("CveEvento").ToString().ToEntero()
Me.CveTipoEvento = Data.Rows(0)("CveTipoEvento").ToString().ToEntero()
Me.CveAgendaTipo = Data.Rows(0)("CveAgendaTipo").ToString().ToEntero()
Me.TipoEvento = Data.Rows(0)("TipoEvento").ToString()
Me.Asunto = Data.Rows(0)("Asunto").ToString()
Me.Descripcion = Data.Rows(0)("Descripcion").ToString()
Me.Prioridad = Data.Rows(0)("Prioridad").ToString()
Me.CvePrioridad = Data.Rows(0)("CvePrioridad").ToString().ToEntero()
Me.CveUsuarioDe = Data.Rows(0)("CveUsuarioDe").ToString().ToEntero()
Me.CorreoDe = Data.Rows(0)("CorreoDe").ToString()
Me.UsuarioDe = Data.Rows(0)("UsuarioDe").ToString()
Me.CveUsuarioPara = Data.Rows(0)("CveUsuarioPara").ToString().ToEntero()
Me.UsuarioPara = Data.Rows(0)("UsuarioPara").ToString()
Me.CorreoPara = Data.Rows(0)("CorreoPara").ToString()
Me.CveEventoEstatus = Data.Rows(0)("CveEventoEstatus").ToString().ToEntero()
Me.EventoEstatus = Data.Rows(0)("EventoEstatus").ToString()
Me.FechaInicio = Data.Rows(0)("FechaInicio").ToString().ToDate
Me.FechaFin = Data.Rows(0)("FechaFin").ToString().ToDate
Me.FechaRealTermino = Data.Rows(0)("FechaRealTermino").ToString().ToDate
Me.CveEventoPadre = Data.Rows(0)("CveEventoPadre").ToString().ToEntero()
Me.Orden = Data.Rows(0)("Orden").ToString().ToEntero()
Me.CveRevision = Data.Rows(0)("CveRevision").ToString().ToEntero()
Me.Acuerdos = Data.Rows(0)("Acuerdos").ToString()
Me.Revision = Data.Rows(0)("Revision").ToString()
'Me.TipoReferencia = Data.Rows(0)("TipoReferencia").ToString()
'Me.Referencia = Data.Rows(0)("Referencia").ToString()
Me.Archivo = Data.Rows(0)("Archivo").ToString()
'Me.CveSeguimiento = Data.Rows(0)("CveSeguimiento").ToString().ToEntero()
Me.FechaIng = Data.Rows(0)("FechaIng").ToString().ToDate
Me.CveEmpresa = Data.Rows(0)("CveEmpresa").ToString().ToEntero()
End If
Retorno = True
@@ -1556,8 +1980,8 @@ Public Class ClsOIEventos
Public Function GetCircular(CveEmpresa As Integer, Optional CveCircular As Integer = -1, Optional FechaI As String = "-1", Optional FechaF As String = "-1",
Optional CveUsuario As Integer = -1) As Boolean
FechaI = If(FechaI = "-1", Today.AddYears(-1).ToString, FechaI)
FechaF = If(FechaF = "-1", Today.AddYears(1).ToString, FechaF)
FechaI = If(FechaI = "-1", Today.AddYears(-1).ToString(), FechaI)
FechaF = If(FechaF = "-1", Today.AddYears(1).ToString(), FechaF)
Dim Retorno As Boolean = False
@@ -1604,7 +2028,7 @@ Public Class ClsOIEventos
Try
SqlAdapter.Fill(Data)
Retorno = SqlAdapter.SelectCommand.Parameters("@CveCircular").Value.ToString.ToEntero
Retorno = SqlAdapter.SelectCommand.Parameters("@CveCircular").Value.ToString().ToEntero()
Catch ex As Exception
OnError("Ocurrió un error al agregar el Circular.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try

View File

@@ -3561,6 +3561,8 @@ Public Class ClsPaginas
PaginaDict.Add("/Default2.aspx".ToUpper(), -1)
PaginaDict.Add("/CargaCuentas.aspx".ToUpper(), -1)
PaginaDict.Add("/OI/Tareas.aspx".ToUpper(), -1)
PaginaDict.Add("/OI/RepProyectos.aspx".ToUpper(), -1)
PaginaDict.Add("/OI/Proyecto.aspx".ToUpper(), -1)
PaginaDict.Add("/AdSistemasTeam/ProcedimientosAlmacenados.aspx".ToUpper(), -1)
PaginaDict.Add("/OS/CatOrdenesServiciosCaracteristicas.aspx".ToUpper(), -1)
PaginaDict.Add("/OS/CatOSCaracteristicasOpciones.aspx".ToUpper(), -1)
@@ -4183,6 +4185,7 @@ Public Class ClsPaginas
'GENERAL
#Region "General"
PaginaDict.Add("/General/CatClasificaciones.aspx".ToUpper(), 425)
PaginaDict.Add("/General/CatClasificacionesComprobaciones.aspx".ToUpper(), 1308)
PaginaDict.Add("/General/CatPSCaracteristicas.aspx".ToUpper(), 101)
PaginaDict.Add("/General/CatCategorias.aspx".ToUpper(), 233)
PaginaDict.Add("/General/SaldosIniciales.aspx".ToUpper(), 526)
@@ -4422,11 +4425,13 @@ Public Class ClsPaginas
PaginaDict.Add("/OI/Normatividad.aspx".ToUpper(), 669)
PaginaDict.Add("/OI/RepNormatividad.aspx".ToUpper(), 669)
PaginaDict.Add("/OI/Minutas.aspx".ToUpper(), -1)
PaginaDict.Add("/OI/MinutaDetalle.aspx".ToUpper(), -1)
PaginaDict.Add("/OI/RepDocumentos.aspx".ToUpper(), -1)
PaginaDict.Add("/OI/EventoComentario.aspx".ToUpper(), -1)
PaginaDict.Add("/OI/RepEventos.aspx".ToUpper(), -1)
PaginaDict.Add("/OI/RepTareas.aspx".ToUpper(), 293)
PaginaDict.Add("/OI/RepTareas2.aspx".ToUpper(), 293)
PaginaDict.Add("/OI/RepMinutas.aspx".ToUpper(), 338)
PaginaDict.Add("/OI/PopUpAgenda.aspx".ToUpper(), -1)
PaginaDict.Add("/OI/RepSoporteADS.aspx".ToUpper(), 456)

View File

@@ -68,8 +68,8 @@ Public Class ClsSisMail
Dim Correo As New System.Net.Mail.MailMessage
Dim Mensaje As String = String.Empty
Dim ArrayPara() As String = ObjMail.Para.Split(";"c)
Dim ArrayCCP() As String = ObjMail.CCP.Split(";"c)
Dim ArrayPara() As String = ObjMail.Para.Replace(",", ";").Split(";"c)
Dim ArrayCCP() As String = ObjMail.CCP.Replace(",", ";").Split(";"c)
'"sgd.facturacion@adsistemas.mx"
If ObjMail.De = String.Empty Then

View File

@@ -26,9 +26,17 @@ Public Class Notificaciones
End Function
Public Shared Sub AlertaVentana(Message As String, Para As String, Optional Titulo As String = "", Optional timeoutseconds As Integer = 5, Optional Tipo As TipoNotificacion = TipoNotificacion.AlertaVentanaNoOcultar)
Dim lPara As New List(Of String)
lPara.Add(Para)
AlertaVentana(Message, lPara, Titulo, timeoutseconds, Tipo)
End Sub
Public Shared Sub AlertaVentana(Message As String, Para As List(Of String), Optional Titulo As String = "", Optional timeoutseconds As Integer = 5, Optional Tipo As TipoNotificacion = TipoNotificacion.AlertaVentanaNoOcultar)
Dim Clients As Hubs.IHubConnectionContext(Of Object) = GlobalHost.ConnectionManager.GetHubContext(Of Notificaciones)().Clients
Clients.Users(Para).AlertaVentana(Titulo, Message, DirectCast(Tipo, Integer), timeoutseconds)
If (Para IsNot Nothing) AndAlso Para.Count > 0 Then
Dim Clients As Hubs.IHubConnectionContext(Of Object) = GlobalHost.ConnectionManager.GetHubContext(Of Notificaciones)().Clients
Clients.Users(Para).AlertaVentana(Titulo, Message, DirectCast(Tipo, Integer), timeoutseconds)
End If
End Sub
'Public Shared Sub AlertaVentana(Message As String, Para As List(Of String), Optional Titulo As String = "", Optional timeoutseconds As Integer = 5, Optional Tipo As TipoNotificacion = TipoNotificacion.AlertaVentanaNoOcultar)

View File

@@ -365,7 +365,7 @@ Public Class SIGWeb : Implements IHttpHandler, IRequiresSessionState
Dim i As Integer = 0
While i < objInv.DtResultados.Columns.Count
If Not objInv.DtResultados.Columns(i).ColumnName.Contiene("CvePS", "PSCodigo", "PSCodigoClasificacion") AndAlso objInv.DtResultados.SUM(String.Format("[{0}]", objInv.DtResultados.Columns(i).ColumnName)) = 0 Then
If Not objInv.DtResultados.Columns(i).ColumnName.Contiene("CvePS", "PSCodigo", "PSCodigoClasificacion", "CveClasificacion") AndAlso objInv.DtResultados.SUM(String.Format("[{0}]", objInv.DtResultados.Columns(i).ColumnName)) = 0 Then
objInv.DtResultados.Columns.RemoveAt(i)
Else
i = i + 1
@@ -460,8 +460,7 @@ Public Class SIGWeb : Implements IHttpHandler, IRequiresSessionState
'Try, generado para cuando el resultado no tiene valores(The source contains no DataRows.), no detenga la ejecucion, no se le puso un count previo, porque el costo se duplica, al preguntar y luego ordenar y convertir a datatable
Try
DtPSRetorno = New DataView(DTPS.OrderBy(Function(a) a!PSCodigo).CopyToDataTable).ToTable(True, {"CvePS", "PSCodigo", "PSCodigoClasificacion"})
DtPSRetorno = New DataView(DTPS.OrderBy(Function(a) a!PSCodigo).CopyToDataTable).ToTable(True, {"CvePS", "PSCodigo", "PSCodigoClasificacion", "CveClasificacion"})
Catch ex As Exception
DtPSRetorno = Nothing
End Try
@@ -469,7 +468,61 @@ Public Class SIGWeb : Implements IHttpHandler, IRequiresSessionState
End If
DTPS = Nothing
End If
If (usuario.TienePermisoProceso(300) Or usuario.TienePermisoProceso(301)) And (DtPSRetorno IsNot Nothing AndAlso DtPSRetorno.Rows.Count > 0) Then
Dim ObjClasificaciones As New ClsClasificaciones()
Dim DTClasificacionesComprobaciones As DataTable
Dim DTTmp As DataTable = DtPSRetorno.Clone
If ObjClasificaciones.GetClasificacionesComprobaciones(usuario.CveEmpresa) Then
If usuario.TienePermisoProceso(300) And usuario.TienePermisoProceso(301) Then
DTClasificacionesComprobaciones = ObjClasificaciones.DtResultados
ElseIf usuario.TienePermisoProceso(300) Then 'TipoComprobacion 1 Biaticos
DTClasificacionesComprobaciones = ObjClasificaciones.DtResultados.FiltraParametros("TipoComprobacion = 1")
Else 'TipoComprobacion 2 Compreobacines
DTClasificacionesComprobaciones = ObjClasificaciones.DtResultados.FiltraParametros("TipoComprobacion = 2")
End If
For Each pRow As DataRow In DtPSRetorno.Rows
For Each drow As DataRow In DTClasificacionesComprobaciones.Rows
If pRow("CveClasificacion").ToString.ToEntero = drow("CveClasificacion").ToString.ToEntero Then
Dim nRow As DataRow = DTTmp.NewRow
nRow("CvePS") = pRow("CvePS")
nRow("PSCodigo") = pRow("PSCodigo")
nRow("PSCodigoClasificacion") = pRow("PSCodigoClasificacion")
nRow("CveClasificacion") = pRow("CveClasificacion")
DTTmp.Rows.Add(nRow)
End If
Next
Next
DtPSRetorno = DTTmp.Copy
Else
'no regresar datos herror al consultar
DtPSRetorno.Clear()
End If
End If
If DtPSRetorno IsNot Nothing AndAlso DtPSRetorno.Rows.Count > 0 Then
DtPSRetorno.Columns("CvePS").ColumnName = "id"
DtPSRetorno.Columns(PSCodigoDescripcion).ColumnName = "text"
If PSCodigoDescripcion = "PSCodigo" Then
@@ -477,8 +530,10 @@ Public Class SIGWeb : Implements IHttpHandler, IRequiresSessionState
Else
DtPSRetorno.Columns().Remove("PSCodigo")
End If
retorno = JsonConvert.SerializeObject(DtPSRetorno).ToString
context.Response.Write(retorno)
Else
context.Response.Write("[]")
End If

Binary file not shown.

Binary file not shown.

View File

@@ -48,6 +48,7 @@ public partial class CRM_CatEtapasProceso : ClsPaginas
ViewState["DTProcesos"] = value;
}
}
private int CveEtapaProceso
{
get
@@ -114,6 +115,7 @@ public partial class CRM_CatEtapasProceso : ClsPaginas
GVDatos.DataBind();
UPDatos.Update();
}
protected void limpiarCamposModal()
{
if (EsEditar == 1)
@@ -170,7 +172,6 @@ public partial class CRM_CatEtapasProceso : ClsPaginas
EsEditar = 0;
limpiarCamposModal();
DivOrden.Visible = false;
DdlTipoProceso.SelectedValueExist(CveTipoProcesoSeleccionado);
DdlTipoEtapa.SelectedValueExist(CveTipoEtapaSeleccionada);
@@ -189,7 +190,6 @@ public partial class CRM_CatEtapasProceso : ClsPaginas
GridViewRow GvRow = (GridViewRow)(((LinkButton)sender).NamingContainer);
CveEtapaProceso = GvRow.DataKey("CveEtapaProceso").ToEntero();
DdlTipoProceso.SelectedValueExist(GvRow.DataKey("CveTipoProceso"));
DdlTipoEtapa.SelectedValueExist(GvRow.DataKey("CveTipoEtapa"));
@@ -206,6 +206,18 @@ public partial class CRM_CatEtapasProceso : ClsPaginas
this.RegistraScript("$('#DivModal').modal();");
}
private bool validarInicialTerminadoCancelado(int CveTipoEtapa)
{
if (CveTipoEtapa == 2)
{
return true;
}else
{
DataTable aux = TmpDT.FiltraParametros(String.Format("CveTipoEtapa = {0}",CveTipoEtapa));
return !(aux.Rows.Count >= 2);
}
}
protected void BtnGuardar_Click(object sender, EventArgs e)
{
ClsCRM ObjCRM = new ClsCRM();
@@ -220,22 +232,27 @@ public partial class CRM_CatEtapasProceso : ClsPaginas
Boolean Estatus = ChkEstatus.Checked;
int CveUsuarioIng = UsuarioActual.CveUsuario;
if (EsEditar == 0)
if (validarInicialTerminadoCancelado(CveTipoEtapa))
{
if (ObjCRM.AddEtapaProceso(EtapaProceso, Descripcion, CveTipoEtapa, Orden, CveTipoProceso, UsuarioActual.CveEmpresa, CveUsuarioIng))
if (EsEditar == 0)
{
Alert(String.Format("La Etapa fue creada correctamente para el proceso {0}.", DdlTipoProceso.SelectedItem), ModExtensiones.TipoMensaje.MsgInformacion);
if (ObjCRM.AddEtapaProceso(EtapaProceso, Descripcion, CveTipoEtapa, Orden, CveTipoProceso, UsuarioActual.CveEmpresa, CveUsuarioIng))
{
Alert(String.Format("La Etapa fue creada correctamente para el proceso {0}.", DdlTipoProceso.SelectedItem), ModExtensiones.TipoMensaje.MsgInformacion);
}
}
}
else
{
Orden = Estatus ? DdlOrden.SelectedValue.ToEntero() : -1;
else
{
Orden = Estatus ? DdlOrden.SelectedValue.ToEntero() : -1;
if (ObjCRM.UpdateEtapaProceso(EtapaProceso, Descripcion, Estatus, CveTipoEtapa, Orden, CveEtapaProceso))
{
Alert("La Etapa fue actualizada correctamente.", ModExtensiones.TipoMensaje.MsgInformacion);
if (ObjCRM.UpdateEtapaProceso(EtapaProceso, Descripcion, Estatus, CveTipoEtapa, Orden, CveEtapaProceso))
{
Alert("La Etapa fue actualizada correctamente.", ModExtensiones.TipoMensaje.MsgInformacion);
}
}
}else
{
Alert(String.Format("No se pueden tener 2 etapas de tipo {0}",DdlTipoEtapa.SelectedItem),ModExtensiones.TipoMensaje.MsgAdvertencia);
}
// PRECARGAMOS LA SIGUIENTE ETAPA A AGREGAR CON LOS MISMA DATOS DE LA ETAPA QUE SE INSERTO
@@ -245,7 +262,6 @@ public partial class CRM_CatEtapasProceso : ClsPaginas
ObjCRM.Dispose();
limpiarCamposModal();
this.RegistraScript("$('#DivModal').modal('hide');");
CargaDatos(-1);
DdlFiltroProceso.SelectedValueExist("-1");
}

View File

@@ -41,6 +41,11 @@
<asp:Label ID="lblDescripcion" runat="server" Text='<%# Eval("Descripcion")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Tipo Proceso" ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblTipoProceso" runat="server" Text='<%# Eval("TipoProceso")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estatus" ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblEstatus" runat="server" Text='<%# Eval("Estatus")%>'> </asp:Label>
@@ -52,11 +57,6 @@
<asp:Label ID="lblUsuarioIng" runat="server" Text='<%# Eval("UsuarioIng")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Tipo Proceso" ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblTipoProceso" runat="server" Text='<%# Eval("TipoProceso")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" ItemStyle-Width="10%" HeaderText="Comandos">
<ItemTemplate>
<asp:LinkButton ID="LnkEditar" runat="server" OnClick="LnkEditar_Click" data-toggle="tooltip" CssClass="btn btn-circle btn-sm green" title="Editar" Text="<i class='fa fa-pencil'></i>"></asp:LinkButton>

View File

@@ -48,13 +48,25 @@ public partial class CRM_CatMediosCaptacion : ClsPaginas
ViewState["CveMedioCaptacion"] = value;
}
}
private DataTable DTProcesos
{
get
{
return (DataTable)ViewState["DTProcesos"];
}
set
{
ViewState["DTProcesos"] = value;
}
}
#endregion
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
CargaDatos();
CargarModalDatos();
CargaDatos();
}
}
@@ -79,6 +91,7 @@ public partial class CRM_CatMediosCaptacion : ClsPaginas
if (ObjCRM.GetTipoProceso(UsuarioActual.CveEmpresa))
{
DdlTipoProceso.DataSource = ObjCRM.DtResultados;
DTProcesos = ObjCRM.DtResultados;
}
ObjCRM.Dispose();
DdlTipoProceso.DataBind();
@@ -143,6 +156,22 @@ public partial class CRM_CatMediosCaptacion : ClsPaginas
{
e.Row.FCLabel("lblEstatus").CssClass = "label label-sm label-danger";
}
foreach (DataRow proceso in DTProcesos.Rows)
{
int index = DTProcesos.Rows.IndexOf(proceso);
if (proceso["CveTipoProceso"].ToEntero() == e.Row.DataKey("CveTipoProceso").ToEntero())
{
if ((index % 7) == 0) e.Row.Cells[2].CssClass = "bg-green-haze bg-font-green-haze";
if ((index % 7) == 1) e.Row.Cells[2].CssClass = "bg-red-pink bg-font-red-pink";
if ((index % 7) == 2) e.Row.Cells[2].CssClass = "bg-blue bg-font-blue";
if ((index % 7) == 3) e.Row.Cells[2].CssClass = "bg-purple-soft bg-font-purple-soft";
if ((index % 7) == 4) e.Row.Cells[2].CssClass = "bg-yellow bg-font-yellow";
if ((index % 7) == 5) e.Row.Cells[2].CssClass = "bg-yellow-casablanca bg-font-yellow-casablanca";
if ((index % 7) == 6) e.Row.Cells[2].CssClass = "bg-grey-steel bg-font-grey-steel";
}
}
}
}

View File

@@ -23,8 +23,8 @@
</li>
</ContentTemplate>
<Triggers>
<asp:PostBackTrigger ControlID="LnkImprimir"/>
<asp:PostBackTrigger ControlID="LnkImprimirExcel"/>
<asp:PostBackTrigger ControlID="LnkImprimir" />
<asp:PostBackTrigger ControlID="LnkImprimirExcel" />
</Triggers>
</asp:UpdatePanel>
</asp:Content>
@@ -42,33 +42,28 @@
CssClass="table table-striped table-advance table-hover ScrollAD Widthall mysmallbtn" data-sort="true" GridLines="None"
AutoGenerateColumns="false" OnRowDeleting="GVDatos_RowDeleting" OnRowDataBound="GVDatos_RowDataBound">
<Columns>
<asp:HyperLinkField HeaderText="Probabilidad de Acercamiento" DataTextField="ProbabilidadAcercamiento" DataNavigateUrlFields="CveProbabilidadAcercamiento" DataNavigateUrlFormatString="/CRM/RepAcercamientosProcesos.aspx?CveProbabilidadAcercamiento={0}"/>
<asp:HyperLinkField HeaderText="Probabilidad de Acercamiento" DataTextField="ProbabilidadAcercamiento" DataNavigateUrlFields="CveProbabilidadAcercamiento,CveTipoProceso" DataNavigateUrlFormatString="/CRM/RepAcercamientosProcesos.aspx?CveProbabilidadAcercamiento={0}&CveTipoProceso={1}" />
<%--<asp:TemplateField HeaderText="Probabilidad de Acercamiento" ItemStyle-Width="30%" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProbabilidadAcercamiento" runat="server" Text='<%# Eval("ProbabilidadAcercamiento")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>--%>
<%-- <asp:TemplateField HeaderText="Descripción" ItemStyle-Width="25%" ItemStyle-HorizontalAlign="Left">
<asp:TemplateField HeaderText="Tipo Proceso que Ingresó" ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblDescripcion" runat="server" Text='<%# Eval("Descripcion")%>'> </asp:Label>
<asp:Label ID="lblTipoProceso" runat="server" Text='<%# Eval("TipoProceso")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>--%>
<asp:TemplateField HeaderText="Estatus" ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Left">
</asp:TemplateField>
<asp:TemplateField HeaderText="Estatus" ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:Label ID="lblEstatus" runat="server" Text='<%# Eval("Estatus")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="FechaIng" ItemStyle-Width="20%" HeaderText="Fecha de Ingreso" ItemStyle-HorizontalAlign="Center" DataFormatString="{0:g}" />
<asp:TemplateField HeaderText="Usuario que Ingresó" ItemStyle-Width="25%" ItemStyle-HorizontalAlign="Left">
<asp:TemplateField HeaderText="Usuario que Ingresó" ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblUsuarioIng" runat="server" Text='<%# Eval("UsuarioIng")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Tipo Proceso que Ingresó" ItemStyle-Width="25%" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblTipoProceso" runat="server" Text='<%# Eval("TipoProceso")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" ItemStyle-Width="10%" HeaderText="Comandos">
<ItemTemplate>
<asp:LinkButton ID="LnkEditar" runat="server" OnClick="LnkEditar_Click" data-toggle="tooltip" CssClass="btn btn-circle btn-sm green" title="Editar" Text="<i class='fa fa-pencil'></i>"></asp:LinkButton>
@@ -106,7 +101,7 @@
</div>
<div class="form-group form-md-line-input input-iconright" id="DivTipoProceso" runat="server">
<label runat="server" id="LblTipoProceso" for="<%= DdlTipoProceso.ClientID.ToString()%>">Tipo Proceso:</label><br />
<asp:DropDownList runat="server" ID="DdlTipoProceso" CssClass="form-control input-sm select2me" Width="50%" DataValueField="CveTipoProceso" DataTextField="TipoProceso"/>
<asp:DropDownList runat="server" ID="DdlTipoProceso" CssClass="form-control input-sm select2me" Width="50%" DataValueField="CveTipoProceso" DataTextField="TipoProceso" />
</div>
</div>
<div class="modal-footer">

View File

@@ -49,14 +49,26 @@ public partial class CRM_CatProbabilidadAcercamiento : ClsPaginas
ViewState["CveProbabilidadAcercamiento"] = value;
}
}
private DataTable DTProcesos
{
get
{
return (DataTable)ViewState["DTProcesos"];
}
set
{
ViewState["DTProcesos"] = value;
}
}
#endregion
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
CargaDatos();
CargarModalDatos();
CargaDatos();
}
}
@@ -81,6 +93,7 @@ public partial class CRM_CatProbabilidadAcercamiento : ClsPaginas
if (ObjCRM.GetTipoProceso(UsuarioActual.CveEmpresa))
{
DdlTipoProceso.DataSource = ObjCRM.DtResultados;
DTProcesos = ObjCRM.DtResultados;
}
ObjCRM.Dispose();
DdlTipoProceso.DataBind();
@@ -106,6 +119,7 @@ public partial class CRM_CatProbabilidadAcercamiento : ClsPaginas
//TxtDescripcion.Text = "";
ChkEstatus.Checked = true;
}
#endregion
#region "ACCIONES"
@@ -193,6 +207,21 @@ public partial class CRM_CatProbabilidadAcercamiento : ClsPaginas
{
e.Row.FCLabel("lblEstatus").CssClass = "label label-sm label-danger";
}
foreach (DataRow proceso in DTProcesos.Rows)
{
int index = DTProcesos.Rows.IndexOf(proceso);
if (proceso["CveTipoProceso"].ToEntero() == e.Row.DataKey("CveTipoProceso").ToEntero())
{
if ((index % 7) == 0) e.Row.Cells[1].CssClass = "bg-green-haze bg-font-green-haze";
if ((index % 7) == 1) e.Row.Cells[1].CssClass = "bg-red-pink bg-font-red-pink";
if ((index % 7) == 2) e.Row.Cells[1].CssClass = "bg-blue bg-font-blue";
if ((index % 7) == 3) e.Row.Cells[1].CssClass = "bg-purple-soft bg-font-purple-soft";
if ((index % 7) == 4) e.Row.Cells[1].CssClass = "bg-yellow bg-font-yellow";
if ((index % 7) == 5) e.Row.Cells[1].CssClass = "bg-yellow-casablanca bg-font-yellow-casablanca";
if ((index % 7) == 6) e.Row.Cells[1].CssClass = "bg-grey-steel bg-font-grey-steel";
}
}
}
}
#endregion
@@ -223,7 +252,7 @@ public partial class CRM_CatProbabilidadAcercamiento : ClsPaginas
param.Add(new ReportParameter("LogoPath", ""));
}
param.Add(new ReportParameter("UsuarioImprimio", UsuarioActual.Nombre));
param.Add(new ReportParameter("FechaImpresion", DateTime.Today.ToString()));
param.Add(new ReportParameter("FechaImpresion", DateTime.Now.ToString()));
ImprimirPDF("Empresas/Grales/Formatos/RepCatProbabilidadAcercamiento.rdlc", TmpDT, param, "Report Cat Etapas Proceso", formato);
}

View File

@@ -211,7 +211,7 @@ public partial class CRM_CatTipoProceso : ClsPaginas
param.Add(new ReportParameter("LogoPath", ""));
}
param.Add(new ReportParameter("UsuarioImprimio", UsuarioActual.Nombre));
param.Add(new ReportParameter("FechaImpresion", DateTime.Today.ToString()));
param.Add(new ReportParameter("FechaImpresion", DateTime.Now.ToString()));
ImprimirPDF("Empresas/Grales/Formatos/RepCatTipoProceso.rdlc", TmpDT, param, "Report Cat Tipo Proceso", formato, RDSName: "DataSet1");
}

View File

@@ -1497,7 +1497,7 @@ public partial class CRM_EmpresaCRM : ClsPaginas
private void mandarCorreo(string Asunto, string body)
{
DataTable Usuarios = get_GlobalDTUsuarios(CveEmpresa:UsuarioActual.CveEmpresa);
int CveUsuario = Usuarios.FiltroPrimeroValor("CveUsuario",String.Format("CveVendedor = {0}",DdlVendedor.SelectedValue)).ToEntero();
int CveUsuario = Usuarios.FiltroPrimeroValor("CveUsuario",String.Format("CveVendedor = {0}",DdlVendedorAsignado.SelectedValue)).ToEntero();
if (CveUsuario != UsuarioActual.CveUsuario)
{
string correoVendedor = Usuarios.FiltroPrimeroValor("Correo", String.Format("CveUsuario = {0}", CveUsuario));

View File

@@ -111,9 +111,15 @@ public partial class CRM_RepAcercamientosProcesos : ClsPaginas
int n;
string CveProbabilidadAcercamiento = Request["CveProbabilidadAcercamiento"];
bool isNumeric = int.TryParse(CveProbabilidadAcercamiento, out n);
if (isNumeric)
int c;
string CveTipoProceso = Request["CveTipoProceso"];
bool isNumericC = int.TryParse(CveTipoProceso, out c);
if (isNumeric && isNumericC)
{
DdlProbabilidad.SelectedValue = CveProbabilidadAcercamiento;
DdlTipoProceso.SelectedValue = CveTipoProceso;
}
upDatosRepA.Update();
}

View File

@@ -5,6 +5,7 @@
<asp:Content ID="Content2" ContentPlaceHolderID="Css" Runat="Server">
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" Runat="Server">
Reporte Detaller de los Acercamientos Procesos
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" Runat="Server">
</asp:Content>

View File

@@ -1008,6 +1008,7 @@ Partial Class Compras_Compras
ViewState("CveFlete") = value
End Set
End Property
Private Property FleteImportacionOpcion As Integer
Get
Return IfNull(ViewState("FleteImportacionOpcion"), -1).ToString.ToEntero
@@ -1017,6 +1018,22 @@ Partial Class Compras_Compras
End Set
End Property
Private Property DTClasificacionesComprobaciones As DataTable
Get
If ViewState("DTClasificacionesComprobaciones") Is Nothing Then
Return New DataTable
Else
Return DirectCast(ViewState("DTClasificacionesComprobaciones"), DataTable)
End If
End Get
Set(value As DataTable)
ViewState("DTClasificacionesComprobaciones") = value
End Set
End Property
#End Region
#Region " PROPIEDADES DE TOTALES "
@@ -1603,6 +1620,10 @@ Partial Class Compras_Compras
InicializaDevolucionAlmacen()
HabilitaEdicionManualAgregar()
InicializaActualizarTC()
End If
@@ -3412,6 +3433,7 @@ Partial Class Compras_Compras
End Function
Private Sub CargaPSAlias()
DdlPSAlias2.setEsWebService(UsuarioActual.Empresa.Funcionalidad(105) = "1")
If UsuarioActual.CveEmpresa = 66 Then
@@ -3424,9 +3446,39 @@ Partial Class Compras_Compras
DdlPSAlias2.ddlWS.Attributes.Add("data-pagina", "Compras2")
End If
End If
If Not DdlPSAlias2.UsaWebService AndAlso CType(DdlPSAlias2.DataSource, DataTable) Is Nothing Then
DdlPSAlias2.DataSource = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa)
DdlPSAlias2.DataBind()
If UsuarioActual.TienePermisoProceso(300) Or UsuarioActual.TienePermisoProceso(301) Then
Dim DTTemp As New DataTable
DTTemp.Columns.Add("CvePS", GetType(Integer))
DTTemp.Columns.Add("PSCodigoClasificacion", GetType(String))
For Each dRow As DataRow In GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).Rows
For Each drowCla As DataRow In DTClasificacionesComprobaciones.Rows
If drowCla("CveClasificacion").ToString.ToEntero = dRow("CveClasificacion").ToString.ToEntero Then
Dim InRow As DataRow = DTTemp.NewRow
InRow("CvePS") = dRow("CvePS").ToString.ToEntero
InRow("PSCodigoClasificacion") = dRow("PSCodigoClasificacion").ToString
DTTemp.Rows.Add(InRow)
End If
Next
Next
DdlPSAlias2.DataSource = DTTemp
DdlPSAlias2.DataBind()
Else
DdlPSAlias2.DataSource = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa)
DdlPSAlias2.DataBind()
End If
End If
End Sub
@@ -3763,6 +3815,37 @@ Partial Class Compras_Compras
'DtPSTemp.Dispose()
End Sub
Private Sub CargaClasificacionesComprobaciones()
If UsuarioActual.TienePermisoProceso(300) Or UsuarioActual.TienePermisoProceso(301) Then
Dim ObjClasificaciones As New ClsClasificaciones()
If ObjClasificaciones.GetClasificacionesComprobaciones(UsuarioActual.CveEmpresa) Then
If UsuarioActual.TienePermisoProceso(300) And UsuarioActual.TienePermisoProceso(301) Then
DTClasificacionesComprobaciones = ObjClasificaciones.DtResultados
Else
If UsuarioActual.TienePermisoProceso(300) Then 'TipoComprobacion = 1 Biaticos
DTClasificacionesComprobaciones = ObjClasificaciones.DtResultados.FiltraParametros("TipoComprobacion = 1")
ElseIf UsuarioActual.TienePermisoProceso(301) Then 'TipoComprobacion = 2 Comprobaciones
DTClasificacionesComprobaciones = ObjClasificaciones.DtResultados.FiltraParametros("TipoComprobacion = 2")
End If
End If
End If
ObjClasificaciones.Dispose()
End If
End Sub
#End Region
#Region "Vinculacion De Servcios"
@@ -11165,6 +11248,7 @@ Partial Class Compras_Compras
'CargaEstatus()
CargaTiposAF()
CargaProyectoAsignado()
CargaClasificacionesComprobaciones()
CargaClasificaciones()
CargaPS(-1)
CargaProyecto()
@@ -17134,6 +17218,7 @@ Partial Class Compras_Compras
UPPClasificacion.Update()
End Sub
Private Sub CargaPS(CveClasificacion As Integer)
DdlPS.setEsWebService(UsuarioActual.Empresa.Funcionalidad(105) = "1")
If UsuarioActual.Empresa.Funcionalidad(105) = "1" Then
@@ -17142,7 +17227,41 @@ Partial Class Compras_Compras
DdlPS.SelectedValue = "-1"
Else
DdlPS.ddl.Items.Clear()
DdlPS.ddl.DataSource = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CveClasificacion:=CveClasificacion)
'DdlPS.ddl.DataSource = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CveClasificacion:=CveClasificacion)
If UsuarioActual.TienePermisoProceso(300) Or UsuarioActual.TienePermisoProceso(301) Then
Dim DTTemp As New DataTable
DTTemp.Columns.Add("CvePS", GetType(Integer))
DTTemp.Columns.Add("PSCodigo", GetType(String))
DTTemp.Columns.Add("CveClasificacion", GetType(Integer))
For Each dRow As DataRow In GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).Rows
For Each drowCla As DataRow In DTClasificacionesComprobaciones.Rows
If drowCla("CveClasificacion").ToString.ToEntero = dRow("CveClasificacion").ToString.ToEntero Then
Dim InRow As DataRow = DTTemp.NewRow
InRow("CvePS") = dRow("CvePS").ToString.ToEntero
InRow("PSCodigo") = dRow("PSCodigo").ToString
InRow("CveClasificacion") = dRow("CveClasificacion").ToString.ToEntero
DTTemp.Rows.Add(InRow)
End If
Next
Next
DdlPS.DataSource = If(CveClasificacion > 0, DTTemp.FiltraParametros($"CveClasificacion = {CveClasificacion}"), DTTemp)
Else
DdlPS.DataSource = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa)
End If
DdlPS.ddl.DataBind()
DdlPS.ddl.Items.Insert(0, New ListItem("Seleccione el Producto", "-1"))
End If
@@ -17670,13 +17789,24 @@ Partial Class Compras_Compras
#Region " RECLASIFICA PARTIDAS - CLASIFICACION - SUBPROYECTO "
Private Sub CargaClasificaciones()
If UsuarioActual.Empresa.UsaAC Then
DdlClasificacion.DataSource = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltraParametros(" Codigo = '' OR Codigo IS NULL ", Orderby:="Clasificacion")
DdlAplicaClasificacion.DataSource = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltraParametros(" Codigo = '' OR Codigo IS NULL ", Orderby:="Clasificacion")
Else
DdlClasificacion.DataSource = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltraParametros("", Orderby:="Clasificacion")
DdlAplicaClasificacion.DataSource = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltraParametros("", Orderby:="Clasificacion")
If UsuarioActual.TienePermisoProceso(300) Or UsuarioActual.TienePermisoProceso(301) Then
DdlClasificacion.DataSource = DTClasificacionesComprobaciones.FiltraParametros("", Orderby:="Clasificacion")
DdlAplicaClasificacion.DataSource = DTClasificacionesComprobaciones.FiltraParametros("", Orderby:="Clasificacion")
End If
End If
DdlClasificacion.DataBind()
DdlAplicaClasificacion.DataBind()
End Sub

View File

@@ -1376,7 +1376,7 @@
<Width>11.24353in</Width>
<Page>
<PageHeader>
<Height>4.88309cm</Height>
<Height>5.51809cm</Height>
<PrintOnFirstPage>true</PrintOnFirstPage>
<PrintOnLastPage>true</PrintOnLastPage>
<ReportItems>
@@ -1789,6 +1789,92 @@
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="Textbox36">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>Fecha Inicio:</Value>
<Style>
<FontSize>9pt</FontSize>
<FontWeight>SemiBold</FontWeight>
</Style>
</TextRun>
<TextRun>
<Value>=Parameters!FechaInicio.Value</Value>
<Style>
<FontSize>9pt</FontSize>
<FontWeight>SemiBold</FontWeight>
</Style>
</TextRun>
</TextRuns>
<Style />
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox23</rd:DefaultName>
<Top>4.85106cm</Top>
<Left>0.127cm</Left>
<Height>0.49417cm</Height>
<Width>7.15118cm</Width>
<ZIndex>12</ZIndex>
<Visibility>
<Hidden>=Microsoft.VisualBasic.Interaction.IIF(Microsoft.VisualBasic.Strings.Len(Parameters!FechaInicio.Value) &gt; 0 And Microsoft.VisualBasic.Strings.Len(Parameters!FechaFin.Value) &gt; 0, True, False)</Hidden>
</Visibility>
<Style>
<Border>
<Style>None</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="Textbox37">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>Fecha Fin:</Value>
<Style>
<FontSize>9pt</FontSize>
<FontWeight>SemiBold</FontWeight>
</Style>
</TextRun>
<TextRun>
<Value>=Parameters!FechaFin.Value</Value>
<Style>
<FontSize>9pt</FontSize>
<FontWeight>SemiBold</FontWeight>
</Style>
</TextRun>
</TextRuns>
<Style />
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox23</rd:DefaultName>
<Top>4.85106cm</Top>
<Left>7.27818cm</Left>
<Height>0.49417cm</Height>
<Width>7.15118cm</Width>
<ZIndex>13</ZIndex>
<Visibility>
<Hidden>=Microsoft.VisualBasic.Interaction.IIF(Microsoft.VisualBasic.Strings.Len(Parameters!FechaInicio.Value) &gt; 0 And Microsoft.VisualBasic.Strings.Len(Parameters!FechaFin.Value) &gt; 0, True, False)</Hidden>
</Visibility>
<Style>
<Border>
<Style>None</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</ReportItems>
<Style>
<Border>

View File

@@ -0,0 +1,137 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" ValidateRequest="false" EnableEventValidation="false" CodeFile="CatClasificacionesComprobaciones.aspx.vb" Inherits="Gral_CatClasificacionesComprobaciones" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="E" runat="Server">
Catálogo de Clasificaciones Viáticos y Comprobaciones
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UPFiltros" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div id="PFiltros" class="portlet solid grey-cascade portlet-filter">
<div class="portlet-title portlet-filterT smalltitle">
<div class="tools">
<asp:Button ID="BtnConsultar" runat="server" Text="Consultar" OnClick="BtnConsultar_Click" class="btn btn-primary" ValidationGroup="Valida" />
<a href="javascript:;" class="expand"></a>
</div>
<div class=" caption">
<div class="row" style="margin-left: 10px;">
<label class="col-md-1 " id="LbDdlEstados" runat="server" style="width: 90px; margin-top: 5px;">Tipo:</label>
<div class="col-md-2" >
<asp:DropDownList ID="DdlEstadosComprobaciones" runat="server" Width="150px" Class="select2me" AutoPostBack="true">
<asp:ListItem Selected="True" Value="-1">Todos</asp:ListItem>
<asp:ListItem Value="0">Sin Asignar</asp:ListItem>
<asp:ListItem Value="1">Viáticos</asp:ListItem>
<asp:ListItem Value="2">Comprobacines</asp:ListItem>
</asp:DropDownList>
</div>
</div>
</div>
</div>
<div class="portlet-body" style="display: none;">
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel runat="server" ID="UpDatos" UpdateMode="Conditional">
<ContentTemplate>
<div class="row">
<div class="col-md-6">
<asp:GridView runat="server" ID="GvClasificaciones" DataKeyNames="CveClasificacion, Clasificacion,TipoComprobacion" GridLines="None" CssClass="table table-striped table-hover Widthall" AutoGenerateColumns="false">
<Columns>
<asp:BoundField DataField="Clasificacion" HeaderText="Clasificación" />
<asp:BoundField DataField="TipoComprobacionStr" HeaderText="Tipo Comprobacion" />
<asp:TemplateField ItemStyle-Width="40px" ItemStyle-HorizontalAlign="Right">
<ItemTemplate>
<asp:LinkButton ID="imgE" runat="server" AlternateText="Editar" OnClick="ActualizaModalClasif" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<%-- <asp:TemplateField ItemStyle-HorizontalAlign="center">
<ItemTemplate>
<asp:LinkButton ID="imgD" runat="server" AlternateText="Eliminar" CausesValidation="False" CommandName="Delete" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="¿Desea Elminar?" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>--%>
</Columns>
</asp:GridView>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<div id="ModalClasificaciones" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalClasificaciones" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloModal" runat="server">Agregar Clasificaciones</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtClasificaciones" CssClass="form-control " runat="server" MaxLength="50" CausesValidation="true" ValidationGroup="Clasif" Enabled="false"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVCampaña" runat="server" ControlToValidate="TxtClasificaciones" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Clasificación''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardarRegistro"></asp:RequiredFieldValidator>
<label for="<%= TxtClasificaciones.ClientID.ToString()%>">Clasificación:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<label for="<%= DdlTipoComprobacion.ClientID.ToString()%>">Tipo Comprobacion:</label>
<br />
<asp:DropDownList runat="server" ID="DdlTipoComprobacion" CssClass="select2me">
<asp:ListItem Value="-1">Sin Asignar</asp:ListItem>
<asp:ListItem Value="1">Viáticos</asp:ListItem>
<asp:ListItem Value="2">Comprobacines</asp:ListItem>
</asp:DropDownList>
</div>
</div>
<div class="modal-footer">
<asp:Button ID="LbAgregarClasificacion" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpGuardarRegistro" />
<button id="BtnCancelarCampaña" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
<asp:HiddenField ID="HdnModalidadClasificacion" runat="server" Value="I" ClientIDMode="Static" />
<asp:HiddenField ID="HdnIDClasificacion" runat="server" Value="-1" ClientIDMode="Static" />
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

View File

@@ -0,0 +1,82 @@
Option Explicit On
Option Strict On
Imports Extensiones
Partial Class Gral_CatClasificacionesComprobaciones
Inherits ClsPaginas
Property CveClasificacion As Integer
Get
If ViewState("CveClasificacion") Is Nothing Then
Return -1
Else
Return ViewState("CveClasificacion").ToString.ToEntero
End If
End Get
Set(value As Integer)
ViewState("CveClasificacion") = value
End Set
End Property
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
CargaGridClasificaciones()
End If
End Sub
#Region " C L A S I F I C A C I O N E S"
Protected Sub CargaGridClasificaciones()
Dim ObjClasificaciones As New ClsClasificaciones()
If ObjClasificaciones.GetClasificacionesComprobaciones(UsuarioActual.CveEmpresa, 2, DdlEstadosComprobaciones.SelectedValue.ToEntero) Then
GvClasificaciones.DataSource = ObjClasificaciones.DtResultados
GvClasificaciones.DataBind()
End If
ObjClasificaciones.Dispose()
UpDatos.Update()
End Sub
Private Sub LbAgregarClasificacion_Click(sender As Object, e As EventArgs) Handles LbAgregarClasificacion.Click
Dim ObjClasificaciones As New ClsClasificaciones()
If ObjClasificaciones.AddClasificacionesComprobaciones(CveClasificacion, UsuarioActual.CveEmpresa, DdlTipoComprobacion.SelectedValue.ToEntero) Then
Alert("La clasificación se actualizo correctamente.")
CargaGridClasificaciones()
UpDatos.Update()
RegistraScript(String.Format("$('#{0}').modal('hide');", "ModalClasificaciones"))
End If
ObjClasificaciones.Dispose()
End Sub
Public Sub ActualizaModalClasif(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
TxtClasificaciones.Text = GvRow.DataKey("Clasificacion")
CveClasificacion = GvRow.DataKey("CveClasificacion").ToString.ToEntero
RegistraScript(String.Format("$('#{0}').modal();", "ModalClasificaciones"))
DdlTipoComprobacion.SelectedValueExist(GvRow.DataKey("TipoComprobacion"))
UpModalClasificaciones.Update()
End Sub
#End Region
Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs)
CargaGridClasificaciones()
End Sub
End Class

View File

@@ -125,13 +125,20 @@
<asp:HiddenField ID="HdfImagenes" ClientIDMode="Static" runat="server" />
</ContentTemplate>
</asp:UpdatePanel>
</div>
<%: Scripts.Render("~/Metronic/assets/global/scripts/JS") %>
</div>
<script type="text/javascript" src="/Scripts/Notificaciones.js"></script>
<%--<script type="text/javascript" src="/Scripts/Notificaciones.js"></script>--%>
<script>
// aqui debe de llammarse Sr, para desconectar
window.addEventListener("beforeunload", NotificacionesADS.closeopenConexion);
// aqui debe de llammarse siganalr, para desconectar
function exitsignalr() {
let ADSCloseConection = "ADSCloseConection";
let varreconected = localStorage.getItem(ADSCloseConection);//obtengo la variable para cambiarla y dispara el evento local change
if (varreconected == "1") {
localStorage.removeItem(ADSCloseConection);
} else { localStorage.setItem(ADSCloseConection, "1"); }
localStorage.removeItem('AdsNotificacionesIsConnected');
} exitsignalr();
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_initializeRequest(function (s, e) {
Metronic.blockUI({ animate: true });

View File

@@ -27,6 +27,9 @@ Partial Class LogIn
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
'"187.158.96.163" es la de mi casa
'If (Context.Session("UsuarioSIG") IsNot Nothing) OrElse Not User.Identity.IsAuthenticated Then
'End If
Dim iplist As String() = New String() {"", ""}
If HttpContext.Current.Request.ServerVariables("REMOTE_ADDR").ToString().Contiene(iplist) Then
Response.Redirect("http://www.adsistemas.mx/login.aspx") 'si alguien lo ve es correcto la pagina vieja de adsistemas
@@ -172,6 +175,10 @@ Partial Class LogIn
End Property
Dim BtnLogIn_Clickenter As Integer = 0
Protected Sub BtnLogIn_Click(ByVal sender As Object, ByVal e As EventArgs) 'Handles CmdLogIn.Click
Dim ReturnUrl As String = "/"
If Request("ReturnUrl") IsNot Nothing Then
ReturnUrl = Request("ReturnUrl").ToString()
End If
If BtnLogIn_Clickenter = 0 Then 'esta variable se recicla con cada postaback
BtnLogIn_Clickenter = 1
Dim ObjUsuario As New ClsSisUsuarios
@@ -197,19 +204,22 @@ Partial Class LogIn
If Usuario.CvePlataforma = 6 And Usuario.CveRol = 10 Then
'PLATAFORMA PORTAL CLIENTE
FormsAuthentication.RedirectFromLoginPage(_sessionid, False)
Response.Redirect("/PortalCliente/PortalCliente.aspx", True)
'FormsAuthentication.RedirectFromLoginPage(_sessionid, False)
'Response.Redirect("/PortalCliente/PortalCliente.aspx", True)
ReturnUrl = "/PortalCliente/PortalCliente.aspx"
ElseIf Usuario.CvePlataforma = 7 And Usuario.CveRol = 11 Then
'PLATAFORMA PORTAL PROVEEDOR
FormsAuthentication.RedirectFromLoginPage(Encripta(Usuario.CveUsuario), False)
Response.Redirect("/PortalProveedor/PortalProveedor.aspx", True)
'FormsAuthentication.RedirectFromLoginPage(Encripta(Usuario.CveUsuario), False)
'Response.Redirect("/PortalProveedor/PortalProveedor.aspx", True)
ReturnUrl = "/PortalProveedor/PortalProveedor.aspx"
ElseIf Usuario.CveRol = 1200 And Usuario.Acceso > 0 Then
'PLATAFORMA GPS
Usuario.CvePlataforma = 3
FormsAuthentication.RedirectFromLoginPage(Encripta(Usuario.CveUsuario), False)
Response.Redirect("/PortalGPS/InicioGPS.aspx", True)
'FormsAuthentication.RedirectFromLoginPage(Encripta(Usuario.CveUsuario), False)
'Response.Redirect("/PortalGPS/InicioGPS.aspx", True)
ReturnUrl = "/PortalGPS/InicioGPS.aspx"
Else
'PLATAFORMA SIG
CType(Session("UsuarioSIG"), Usuario).CvePlataforma = 1
@@ -219,11 +229,16 @@ Partial Class LogIn
If dt.Rows.Count > 1 Then
Usuario.MultipleEmpresa = True
End If
FormsAuthentication.RedirectFromLoginPage(Encripta(Usuario.CveUsuario), False)
'FormsAuthentication.RedirectFromLoginPage(Encripta(Usuario.CveUsuario), False)
End If
End If
dt.Dispose()
End If
Dim cookie = FormsAuthentication.GetAuthCookie(Encripta(Usuario.CveUsuario), False)
Response.Cookies.Add(cookie)
'RegistraScript(String.Format("iniciaSesion('{0}')", ReturnUrl.Replace("'", "\'")))
Response.Redirect(ReturnUrl, True)
Else
Alert("El usuario no esta autorizado en este equipo, favor de contactar al administrador de usuarios.", TipoMensaje.MsgAdvertencia)
End If

View File

@@ -0,0 +1,973 @@
/* Sample CSS for jsGanttImproved v1.8.0 */
div.gantt {
font-family: tahoma, arial, verdana, Sans-serif;
font-size: 10px;
color: #656565;
}
.gantt table {
border-collapse: collapse;
}
.gantt td {
padding: 0px;
}
/* cell defaults */
.headweekends div {
font-size: 8px;
width: 100% !important;
margin: 0;
}
.gmajorheading,
.gminorheading,
.gminorheadingwkend,
.gtaskcell,
.gtaskcellwkend {
height: 19px;
font-size: 12px;
border: #efefef 1px solid;
text-align: center;
cursor: default
}
.gtasklist {
height: 19px;
min-width: 5px;
max-width: 5px;
width: 5px;
border: #efefef 1px solid;
border-right: none;
}
/* all three width values set just to make sure - helps resizing code */
/* Additional values for some cell elements */
.gtaskheading,
.gmajorheading,
.gminorheading {
background-color: #ffffff;
font-weight: bold;
font-size: 9px;
white-space: nowrap;
}
.gtaskcellwkend,
.gminorheadingwkend {
background-color: #f7f7f7;
font-weight: bold;
font-size: 9px;
white-space: nowrap;
}
td.gtaskcell {
text-align: left
}
td.gspanning {
border-left: none;
border-right: none;
}
.gtaskcelldiv {
position: relative;
}
/* Task list defaults */
.gtaskheading,
.gname,
.gtaskname,
.gresource,
.gduration,
.gpccomplete,
.gstartdate,
.gplanstartdate,
.gplanenddate,
.gcost,
.genddate {
height: 18px;
white-space: nowrap;
border: #efefef 1px solid;
}
.gtaskheading div,
.gname div,
.gtaskname div,
.gresource div,
.gduration div,
.gpccomplete div,
.gstartdate div,
.gplanstartdate div,
.gplanenddate div,
.gcost div,
.genddate div {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.gtaskbarcontainer.gplan {
position: absolute !important;
top: 0px;
opacity: 0.3;
background: white;
z-index: 10000;
border: 1px solid black;
}
/* Additional values for some task list elements */
/* needed for IE8 */
.gstartdate div,
.gplanstartdate,
.gplanenddate,
.gstartdate,
.genddate {
text-align: center;
min-width: 105px;
width: 105px;
max-width: 105px;
font-size: 10px;
}
.gtaskheading {
text-align: center;
}
.gtaskname div,
/* needed for IE8 */
.gtaskname {
min-width: 170px;
max-width: 170px;
width: 170px;
font-size: 9px;
border-left: none;
}
.gtaskheading,
.gtaskname {
text-overflow: ellipsis;
overflow: hidden;
}
.gtaskname.gtaskeditable div,
.gtaskname.gtaskeditable {
overflow: unset;
}
.gselector {
text-align: left;
white-space: nowrap;
min-width: 170px;
max-width: 170px;
width: 170px;
}
.gformlabel {
position: relative;
top: 0px;
cursor: pointer;
border: #ffffff 1px solid;
margin-left: 2px;
padding-left: 2px;
padding-right: 2px;
}
span.gformlabel:hover,
span.gselected {
background-color: #dbecff;
border: #cccccc 1px solid;
}
span.gfoldercollapse {
color: #000000;
cursor: pointer;
font-weight: bold;
font-size: 12px;
font-family: Courier, "Courier New", monospace;
}
.gtasktableh,
.gtasktable {
border-right: #efefef 1px solid;
width: 100%;
}
.gcharttableh,
.gtasktableh,
.gtasktable,
.gcharttable {
border-collapse: collapse;
}
.gcharttable,
.gcharttableh {
table-layout: fixed;
}
.gcharttable {
border: #efefef 1px solid;
}
/* for some reason firefox needs this */
/* Differentiate Group, Milestone and Ordinary task items (applied to row) */
.ggroupitem {
background-color: #fbfbfb;
font-weight: bold;
}
.gmileitem,
.glineitem {
background-color: #ffffff;
}
/* highlight row (applied to row) */
.gitemhighlight td {
background-image: none;
background-color: #fffde5;
}
/* task bar caption text styles */
.gmilecaption,
.ggroupcaption,
.gcaption {
font-weight: normal;
font-size: 9px;
text-align: left;
white-space: nowrap;
top: 1px;
position: absolute;
top: 2px;
}
.ggroupcaption,
.gcaption {
right: -126px;
}
/* Task complete %age bar shared attributes */
.gtaskcomplete {
float: left;
overflow: hidden;
}
/* Task complete %age bar */
.gtaskcomplete {
height: 5px;
background-color: #000000;
margin-top: 4px;
opacity: 0.4;
filter: alpha(opacity=40);
}
/* Milestones */
.gmilestone {
font-size: 14px;
position: absolute;
top: -2px;
}
.gmdtop {
top: 2px;
overflow: hidden;
width: 0px;
height: 0px;
border-bottom: 5px solid black;
border-left: 5px solid transparent;
border-top: 5px solid transparent;
border-right: 5px solid transparent;
}
.gmdbottom {
top: 2px;
overflow: hidden;
width: 0px;
height: 0px;
border-top: 5px solid black;
border-left: 5px solid transparent;
border-bottom: 5px solid transparent;
border-right: 5px solid transparent;
}
/* Task bar shared attributes */
.ggroupblack,
.gtaskblue,
.gtaskred,
.gtaskgreen,
.gtaskyellow,
.gtaskpurple,
.gtaskpink {
height: 13px;
filter: alpha(opacity=90);
opacity: 0.9;
margin-top: 1px;
}
/* Task bars - ggroupblack is set as the default class on the task if it is undefined */
.ggroupblack {
height: 7px;
background: #000000;
margin-top: 2px;
}
.ggroupblackendpointleft {
overflow: hidden;
width: 0px;
height: 0px;
top: 2px;
border-top: 4px solid black;
border-left: 4px solid transparent;
border-bottom: 4px solid transparent;
border-right: 4px solid transparent;
float: left;
}
.ggroupblackendpointright {
overflow: hidden;
width: 0px;
height: 0px;
top: 2px;
border-top: 4px solid black;
border-left: 4px solid transparent;
border-bottom: 4px solid transparent;
border-right: 4px solid transparent;
float: right;
}
.ggroupblackcomplete {
float: left;
overflow: hidden;
height: 3px;
filter: alpha(opacity=80);
opacity: 0.8;
background-color: #777777;
margin-top: 2px;
margin-bottom: 2px;
}
.gtaskblue {
background: rgb(58, 132, 195);
/* Old browsers */
background: linear-gradient(to bottom, rgba(58, 132, 195, 1) 0%, rgba(65, 154, 214, 1) 20%, rgba(75, 184, 240, 1) 40%, rgba(58, 139, 194, 1) 70%, rgba(38, 85, 139, 1) 100%);
/* W3C */
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#4bb8f0', endColorstr='#3a84c3', GradientType=0);
/* IE6-9 */
}
.gtaskred {
background: rgb(196, 58, 58);
/* Old browsers */
background: linear-gradient(to bottom, rgba(196, 58, 58, 1) 0%, rgba(211, 65, 65, 1) 20%, rgba(239, 76, 76, 1) 40%, rgba(196, 58, 58, 1) 70%, rgba(135, 37, 37, 1) 100%);
/* W3C */
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ef4c4c', endColorstr='#c43a3a', GradientType=0);
/* IE6-9 */
}
.gtaskgreen {
background: rgb(80, 193, 58);
/* Old browsers */
background: linear-gradient(to bottom, rgba(80, 193, 58, 1) 0%, rgba(88, 209, 64, 1) 20%, rgba(102, 237, 75, 1) 40%, rgba(80, 193, 58, 1) 70%, rgba(53, 132, 37, 1) 100%);
/* W3C */
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#66ED4B', endColorstr='#50c13a', GradientType=0);
/* IE6-9 */
}
.gtaskyellow {
background: rgb(247, 228, 56);
/* Old browsers */
background: linear-gradient(to bottom, rgba(247, 228, 56, 1) 0%, rgba(239, 239, 55, 1) 20%, rgba(255, 255, 58, 1) 40%, rgba(242, 236, 55, 1) 70%, rgba(241, 218, 54, 1) 100%);
/* W3C */
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffff3a', endColorstr='#f7e438', GradientType=0);
/* IE6-9 */
}
.gtaskpurple {
background: rgb(193, 58, 193);
/* Old browsers */
background: linear-gradient(to bottom, rgba(193, 58, 193, 1) 0%, rgba(211, 65, 211, 1) 20%, rgba(239, 76, 239, 1) 40%, rgba(193, 58, 193, 1) 70%, rgba(137, 38, 137, 1) 100%);
/* W3C */
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ef4cef', endColorstr='#892689', GradientType=0);
/* IE6-9 */
}
.gtaskpink {
background: rgb(249, 177, 245);
/* Old browsers */
background: linear-gradient(to bottom, rgba(249, 177, 245, 1) 0%, rgba(247, 192, 243, 1) 20%, rgba(247, 202, 244, 1) 40%, rgba(249, 192, 246, 1) 70%, rgba(252, 174, 247, 1) 100%);
/* W3C */
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f7caf4', endColorstr='#fcaef7', GradientType=0);
/* IE6-9 */
}
.gtaskbluecomplete,
.gtaskredcomplete,
.gtaskgreencomplete,
.gtaskyellowcomplete,
.gtaskpurplecomplete,
.gtaskpinkcomplete {
float: left;
overflow: hidden;
height: 5px;
filter: alpha(opacity=40);
opacity: 0.4;
background-color: #000000;
margin-top: 4px;
}
/* END Task bar styles */
.glinev {
border-left: 1px solid;
width: 0px;
}
.glineh {
border-top: 1px solid;
height: 0px;
}
.gDepFS,
.gDepSS,
.gDepSF,
.gDepFF {
border-color: #ff0000;
}
.gDepFSArw,
.gDepSSArw {
overflow: hidden;
width: 0px;
height: 0px;
border-bottom: 4px solid transparent;
border-left: 4px solid #ff0000;
border-top: 4px solid transparent;
border-right: 4px solid transparent;
}
.gDepFFArw,
.gDepSFArw {
overflow: hidden;
width: 0px;
height: 0px;
border-bottom: 4px solid transparent;
border-left: 4px solid transparent;
border-top: 4px solid transparent;
border-right: 4px solid #ff0000;
}
.gCurDate {
border-color: #0000ff;
}
div.gtaskbarcontainer {
z-index: 1;
position: absolute;
top: 0px
}
.textbar {
word-break: break-all;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
width: 40%;
display: inline-block;
}
.JSGanttToolTip {
position: absolute;
display: block;
z-index: 2;
}
.JSGanttToolTipcont {
font-family: tahoma, arial, verdana;
font-size: 10px;
display: block;
background: #ffffff;
color: #656565
}
.gTaskInfo {
background: #dbecff;
width: 400px;
border: #656565 1px solid;
border-radius: 10px;
padding: 4px 6px 4px 6px;
float: left;
}
.gTtTitle {
display: block;
font-size: 12px;
font-weight: bold;
color: #404040;
margin-left: 4px;
margin-bottom: 1em;
}
.gTaskLabel {
font-size: 11px;
font-weight: bold;
color: #656565;
margin-left: 4px;
}
.gTaskText {
position: absolute;
left: 90px;
padding-top: 1px;
font-size: 10px;
font-weight: normal;
color: #656565;
}
.gTaskNotes {
font-size: 11px;
font-weight: normal;
color: #323232;
padding: 0 15px;
display: block;
}
.gTIn {
padding-top: 10px;
}
.gantt {
min-width: 632px;
/* 2x LC width */
}
.gchartcontainer {
/* padding-left: 532px; LC width */
line-height: 1;
/* Overrides inherited CSS (e.g. from Bootstrap) */
display: flex;
}
.gcontainercol {
position: relative;
}
/* Add a max-height value here if wanted */
.glistgrid {
min-width: 132px;
/* LC width */
float: left;
/* LC width */
padding-right: 0px;
padding-left: 0px;
padding-bottom: 0px;
padding-top: 0px;
background-color: #ffffff;
overflow: hidden;
}
.glistlbl {
min-width: 132px;
/* LC width */
float: left;
/* LC width */
padding-right: 0px;
padding-left: 0px;
padding-bottom: 0px;
padding-top: 0px;
background-color: #ffffff;
overflow: hidden;
flex: none;
}
.glistlbl,
.gchartgrid {
display: flex;
flex-direction: column;
}
.glabelfooter {
clear: both;
}
.ggridfooter {
clear: both;
}
.rhscrpad {
width: 150px;
position: absolute;
top: 0px;
height: 1px;
}
.gchartgrid {
padding-right: 0px;
padding-left: 0px;
padding-bottom: 0px;
padding-top: 0px;
background-color: #ffffff;
position: relative;
/* overflow: auto; */
overflow: unset;
overflow-y: auto;
min-height: 0%;
}
.gchartlbl {
padding-right: 0px;
padding-left: 0px;
padding-bottom: 0px;
padding-top: 0px;
background-color: #ffffff;
position: relative;
overflow: hidden;
flex: none;
}
/* Old Internet Explorer version hacks */
.gantt {
_height: 100%
}
/* otherwise the chart disappears! */
div .gantt {
/* _width: 1064px; ie6 fixed width */
}
div.gchartlbl,
div.gchartgrid {
/* _width: 532px; */
}
/* ie6 fixed width */
div.glistlbl,
div.glistgrid {
*right: 0px;
/* ie7 pulls the content too far left with the negative margin */
_right: 532px;
/* but ie6 fixed width needs this */
_margin-left: -532px;
/* ie6 fixed width */
float: left;
}
div.gchartgrid {
*padding-bottom: 20px;
*overflow-y: hidden;
}
/* variable height design, no need for vertical scroll */
td.gmajorheading div {
*overflow: hidden;
}
/* stops resizing fixed width columns if the text is too wide */
td.gspanning div {
*overflow: hidden;
}
/* stops resizing fixed width columns if the text is too wide */
/* border transparency tricks */
.ggroupblackendpointleft {
_border-top: 4px solid black;
_border-left: 4px solid pink;
_border-bottom: 4px solid pink;
_border-right: 4px solid pink;
_filter: chroma(color=pink);
}
.ggroupblackendpointright {
_border-top: 4px solid black;
_border-left: 4px solid pink;
_border-bottom: 4px solid pink;
_border-right: 4px solid pink;
_filter: chroma(color=pink);
}
.gmdtop {
_border-left: 5px solid pink;
_border-top: 5px solid pink;
_border-right: 5px solid pink;
_filter: chroma(color=pink);
}
.gmdbottom {
_border-left: 5px solid pink;
_border-bottom: 5px solid pink;
_border-right: 5px solid pink;
_filter: chroma(color=pink);
}
.gDepFSArw,
.gDepSSArw {
_border-bottom: 4px solid pink;
_border-top: 4px solid pink;
_border-right: 4px solid pink;
_filter: chroma(color=pink);
}
.gDepFFArw,
.gDepSFArw {
_border-bottom: 4px solid pink;
_border-left: 4px solid pink;
_border-top: 4px solid pink;
_filter: chroma(color=pink);
}
/* Workaround for odd bug in old versions of Opera - no other browser needs this */
.glinediv {
position: absolute;
top: 0px;
left: 0px;
z-index: 1px;
}
.gantt-inputtable {
max-width: 100%;
max-height: 16px;
}
.gadditional {
border: #efefef 1px solid;
}
.gadditional,
.gresource,
.gduration,
.gpccomplete,
.gcost {
text-align: center;
width: 70px;
max-width: 70px;
min-width: 70px;
font-size: 10px;
}
@media print {
/* All your print styles go here */
html,
.gchartgrid {
overflow: unset !important;
}
.glistgrid {
float: none !important;
}
}
/* if using setUseSingleCell(1) the following is a suggested set of CSS3 styles to recreate the table grid - won't work on old browsers
.ggrouphour td,
.gmilehour td,
.gitemhour td { background-size: 19px 1px; background-image: linear-gradient(to left, #efefef, transparent 1px, transparent 18px); width: 100%; height: 19px; }
.ggroupday td,
.gmileday td,
.gitemday td { background-size: 19px 1px, 133px 1px; background-image: linear-gradient(to left, #efefef, transparent 1px, transparent 18px), linear-gradient(to left, #f7f7f7 39px, transparent 1px, transparent 92px); width: 100%; height: 19px; }
.ggroupweek td,
.gmileweek td,
.gitemweek td { background-size: 37px 1px; background-image: linear-gradient(to left, #efefef, transparent 1px, transparent 36px); width: 100%; height: 19px; }
.ggroupmonth td,
.gmilemonth td,
.gitemmonth td { background-size: 37px 1px; background-image: linear-gradient(to left, #efefef, transparent 1px, transparent 36px); width: 100%; height: 19px; }
.ggroupquarter td,
.gmilequarter td,
.gitemquarter td { background-size: 19px 1px; background-image: linear-gradient(to left, #efefef, transparent 1px, transparent 18px); width: 100%; height: 19px; }
*/
.gmain {
height: 100%;
display: flex;
flex-direction: column;
}
.gmainright {
overflow: hidden;
flex: auto;
}
.gmainleft {
overflow: hidden;
flex: 0 0 50%;
}
.gtasktableh tr,
.gcharttable tr,
.gcharttableh tr,
.gtasktable tr {
height: 22px !important;
}
.gtasktableouterwrapper {
overflow: hidden;
}
.gtasktablewrapper {
overflow-y: scroll;
flex: auto;
height: 100%;
}
.chartgrid {
overflow: auto;
flex: auto;
}
/* .gtasktable {
margin-bottom: 14px;
} */
/* Printer friendly styles - we could use these all the time but they are not as pretty! */
/* note that "@media print" is not supported in IE6 or 7. Fully patched IE8 should be OK */
@media print {
.ggroupblack {
height: 0px;
border-top: 7px solid;
border-color: #000000;
}
.gtaskblue {
height: 0px;
border-top: 13px solid;
border-color: rgb(58, 132, 195);
}
.gtaskred {
height: 0px;
border-top: 13px solid;
border-color: rgb(196, 58, 58);
}
.gtaskgreen {
height: 0px;
border-top: 13px solid;
border-color: rgb(80, 193, 58);
}
.gtaskyellow {
height: 0px;
border-top: 13px solid;
border-color: rgb(247, 228, 56);
}
.gtaskpurple {
height: 0px;
border-top: 13px solid;
border-color: rgb(193, 58, 193);
}
.gtaskpink {
height: 0px;
border-top: 13px solid;
border-color: rgb(249, 177, 245);
}
.gtaskbluecomplete,
.gtaskredcomplete,
.gtaskgreencomplete,
.gtaskyellowcomplete,
.gtaskpurplecomplete,
.gtaskpinkcomplete {
height: 0px;
filter: alpha(opacity=40);
opacity: 0.4;
margin-top: -9px;
border-top: 5px solid;
border-color: #000000;
}
.ggroupblackcomplete {
height: 0px;
filter: alpha(opacity=80);
opacity: 0.8;
margin-top: -5px;
border-top: 3px solid;
border-color: #777777;
}
.gmainright,
.gmainleft {
overflow: hidden;
width: auto;
}
table {
page-break-after: auto
}
tr {
page-break-inside: avoid;
page-break-after: auto
}
td {
page-break-inside: avoid;
page-break-after: auto
}
thead {
display: table-header-group
}
tfoot {
display: table-footer-group
}
}
/* Fix for OSx trackpad hiding the scroll bars*/
.frame::-webkit-scrollbar {
-webkit-appearance: none;
}
.frame::-webkit-scrollbar:vertical {
width: 11px;
}
.frame::-webkit-scrollbar:horizontal {
height: 11px;
}
.frame::-webkit-scrollbar-thumb {
border-radius: 8px;
border: 2px solid white;
/* should match background, can't be transparent */
background-color: rgba(0, 0, 0, .5);
}
.frame::-webkit-scrollbar-track {
background-color: #fff;
border-radius: 8px;
}
.gscrollbar-calculation-container {
visibility: hidden;
overflow: scroll;
-ms-overflow-style: scrollbar;
display: block;
}

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -14,7 +14,7 @@
<asp:UpdatePanel runat="server" ID="UpAgregar">
<ContentTemplate>
<li>
<asp:HyperLink ID="LnkAgregar" runat="server" NavigateUrl="/OI/CircularDetalle.aspx?CveCircular=-1"> Agregar Circular</asp:HyperLink>
<asp:HyperLink ID="LnkAgregar" runat="server" NavigateUrl="/OI/CircularDetalleB.aspx?CveCircular=-1"> Agregar Circular</asp:HyperLink>
</li>
<li>
<asp:LinkButton ID="LnkPDF" runat="server"><i class="fa fa-file-pdf-o" style="font-weight:bold;"></i> PDF</asp:LinkButton>
@@ -71,8 +71,8 @@
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" DataKeyNames="CveCircular,Asunto,Usuario" EmptyDataText="No se encontraron Circulares"
ToolTip="Listado de Metas Vendedor" CssClass="table table-striped table-advance table-hover" Style="margin-top: -10px; text-align: center; width: 100%" GridLines="None">
<Columns>
<asp:HyperLinkField HeaderText="Asunto" DataTextField="Asunto" DataNavigateUrlFields="CveCircular" DataNavigateUrlFormatString="/OI/CircularDetalle.aspx?CveCircular={0}" />
<asp:HyperLinkField HeaderText="Usuario" DataTextField="Usuario" DataNavigateUrlFields="CveCircular" DataNavigateUrlFormatString="/OI/CircularDetalle.aspx?CveCircular={0}" />
<asp:HyperLinkField HeaderText="Asunto" DataTextField="Asunto" DataNavigateUrlFields="CveCircular" DataNavigateUrlFormatString="/OI/CircularDetalleB.aspx?CveCircular={0}" />
<asp:HyperLinkField HeaderText="Usuario" DataTextField="Usuario" DataNavigateUrlFields="CveCircular" DataNavigateUrlFormatString="/OI/CircularDetalleB.aspx?CveCircular={0}" />
</Columns>
</asp:GridView>
</ContentTemplate>

View File

@@ -61,6 +61,13 @@
<asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel runat="server" ID="UpAgregar">
<ContentTemplate>
<li>
<asp:LinkButton ID="LnkMandarCorreo" OnClick="LnkMandarCorreo_Click" runat="server" Text="<i class='fa fa-envelope'></i> Enviar Correo"></asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HA" runat="Server">
</asp:Content>
@@ -72,13 +79,16 @@
<div class="pnlCorreo" style="margin-bottom: 5px;">
<div class="headerCorreo">
<h3 class="panel-title">Para</h3>
<h3 class="panel-title" style="display: inline-block;">Para</h3> <asp:LinkButton ID="LnkAgregar" OnClick="LnkAgregar_Click" CssClass="btn btn-default" runat="server"><i class="fa fa-plus"></i></asp:LinkButton>
</div>
<div class="bodycorreos">
<asp:Literal ID="LtlPara" runat="server"></asp:Literal>
<asp:TextBox ID="TxtCorreo" Enabled ="false" runat="server" CssClass="form-control " TextMode="MultiLine" Rows="3"></asp:TextBox>
<%--
<asp:LinkButton ID="Lnkuser1" runat="server" CssClass="linkCorreo" data-toggle="confirmation" data-popout="true" data-original-title="¿Está seguro que desea eliminar Correo?" data-btn-ok-label="si">Jorge caudillo(jcaudillo@adsistemas.mx)</asp:LinkButton>;
<asp:LinkButton ID="Lnkuser2" runat="server" CssClass="linkCorreo" data-toggle="confirmation" data-popout="true" data-original-title="¿Está seguro que desea eliminar Correo?" data-btn-ok-label="si">Julian Moreno(Julianmoreno@adsistemas.mx)</asp:LinkButton>;
<asp:LinkButton ID="LnkAgregar" OnClick="LnkAgregar_Click" CssClass="btn btn-default" runat="server"><i class="fa fa-plus"></i></asp:LinkButton>
--%>
</div>
</div>
@@ -87,7 +97,7 @@
<h3 class="panel-title ">Correos Adicionales:</h3>
</div>
<div class="bodycorreos ">
<asp:TextBox ID="TxtCCPara" runat="server" CssClass="form-control " TextMode="MultiLine" Rows="3"></asp:TextBox>
<asp:TextBox ID="TxtCorreoAdicional" runat="server" CssClass="form-control " TextMode="MultiLine" Rows="3"></asp:TextBox>
</div>
</div>
<div class="pnlCorreo" style="margin-bottom: 5px;">
@@ -104,12 +114,25 @@
<div class="headerCorreo headerCorreoCCP" style="background-color: transparent;">
<h3 class="panel-title ">Adjuntar Archivos:</h3>
<asp:TextBox ID="TxtArchivo" CssClass="ADSdropzone hidden" runat="server"></asp:TextBox>
<div id="archivosDiv" runat="server" class="row" visible="false">
<div class="col-md-1" style="width: 30%">
<asp:Label runat="server" ID="Label1">Archivo cargado:</asp:Label>
</div>
<div class="col-md-1" style="width: 70%">
<asp:HyperLink runat="server" ID="HkArchivo" Style="color: #23527c;"></asp:HyperLink>
</div>
</div>
</div>
<div class="bodycorreos ">
<asp:TextBox ID="TextBox1" runat="server" CssClass="form-control ckeditor" TextMode="MultiLine" Rows="3"></asp:TextBox>
<asp:TextBox ID="TxtCircular" runat="server" CssClass="form-control ADSckeditor" TextMode="MultiLine" Rows="3"></asp:TextBox>
</div>
</div>
<div class="text-center">
<asp:Button ID="BtnGuardar" OnClick="BtnGuardar_Click" runat="server" CssClass="btn btn-primary" Text="Guardar" Visible="true" ValidationGroup="GrpGuardar" />
<asp:Button ID="BtnEliminar" OnClick="BtnEliminar_Click" runat="server" CssClass="btn btn-danger" Text="Eliminar" Visible="false" data-toggle="confirmation" data-popout="true" data-original-title="Confirmar" data-btn-ok-label="si" />
</div>
<div id='<%= iddivAgregarPara %>' class="modal ADS fade" role="dialog">
<div class="modal-dialog">

View File

@@ -1,6 +1,9 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.IO;
using System.Linq;
using System.Text.RegularExpressions;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
@@ -9,13 +12,78 @@ using Extensiones;
public partial class OI_CircularDetalleB : ClsPaginas
{
public const string iddivAgregarPara = "iddivAgregarPara";
private DataTable DtUsuarios
{
get
{
return (ViewState["DtUsuarios"]== null) ? null : (DataTable)ViewState["DtUsuarios"];
}
set
{
ViewState["DtUsuarios"] = value;
}
}
private int CveCircular
{
get
{
return ViewState["CveCircular"].ToString().ToEntero();
}
set
{
ViewState["CveCircular"] = value;
}
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
if(Request["CveCircular"] != null)
{
CveCircular = Request["CveCircular"].ToString().ToEntero();
}
if (CveCircular > 0)
{
BtnGuardar.Text = "Actualizar";
BtnEliminar.Visible = true;
CargaDatos();
}
else
{
BtnGuardar.Text = "Guardar";
}
cargarFiltroUsuarios();
}
}
private void CargaDatos()
{
if (CveCircular > 0)
{
ClsOIEventos ObjOI = new ClsOIEventos();
if (ObjOI.GetCircular(UsuarioActual.CveEmpresa, CveCircular))
{
DataRow Circular = ObjOI.DtResultados.Rows[0];
TxtAsunto.Text = Circular["Asunto"].ToString();
TxtCorreo.Text = Circular["CorreosInternos"].ToString();
TxtCorreoAdicional.Text = Circular["CorreosExternos"].ToString();
TxtCircular.Text = Circular["Circular"].ToString().Replace("<","< ");
if (Circular["ArchivoAdjunto"].ToString() != "")
{
archivosDiv.Visible = true;
HkArchivo.NavigateUrl = $"~/Empresas/{UsuarioActual.CveEmpresa}/Formatos/{Circular["ArchivoAdjunto"].ToString()}";
HkArchivo.Text = Circular["ArchivoAdjunto"].ToString();
}
UpContenido.Update();
}
ObjOI.Dispose();
}
}
private void cargarFiltroUsuarios()
{
DdlRoles.DataSource = get_GlobalDTRoles(UsuarioActual.CveEmpresa);
@@ -26,8 +94,9 @@ public partial class OI_CircularDetalleB : ClsPaginas
DdlSucursales.DataBind();
DdlSucursales.Items.Insert(0, new ListItem("Todos", "-1"));
GVUsuarios.DataSource = get_GlobalDTUsuarios( CveEmpresa: UsuarioActual.CveEmpresa);
GVUsuarios.DataBind();
GVUsuarios.DataSource = get_GlobalDTUsuarios(CveEmpresa: UsuarioActual.CveEmpresa).FiltraParametros("Estatus =1 ", "Rol ASC");
GVUsuarios.DataBind();
UpUsuarios.Update();
}
@@ -48,14 +117,211 @@ public partial class OI_CircularDetalleB : ClsPaginas
{
this.RegistraScript(string.Format("$('#{0}').modal()", iddivAgregarPara));
}
protected void BtnUpPara_Click(object sender, EventArgs e)
{
}
protected void BtnUpMiembros_Click(object sender, EventArgs e)
{
string UsuariosCorreos = "";
foreach (GridViewRow gvuser in GVUsuarios.Rows)
{
CheckBox ChkOk =gvuser.FCCheckBox("ChkOk");
string Correo = gvuser.DataKey("Correo");
if (ChkOk.Checked && Correo.Length >0)
{
UsuariosCorreos = string.Format("{1}{0}" + ";", UsuariosCorreos, Correo);
}
}
TxtCorreo.Text = UsuariosCorreos;
RegistraScript("$('#ModalDescuento').modal('hide')");
UpContenido.Update();
}
protected void BtnGuardar_Click(object sender, EventArgs e)
{
ClsOIEventos ObjOI = new ClsOIEventos();
if (CveCircular > 0)
{
string AdjuntoValidate = NombreArchivo().Split('-')[1];
if (ObjOI.UpdateCircular(CveCircular, TxtAsunto.Text, TxtCircular.Text.Replace("< ","<"), TxtCorreo.Text, TxtCorreoAdicional.Text, AdjuntoValidate))
{
GuardarArchivo(CveCircular);
Alert("Actualizado correctamente");
}
}
else
{
string CorreoExtra = TxtCorreoAdicional.Text == "" ? "-1" : TxtCorreoAdicional.Text;
string AdjuntoValidate = NombreArchivo().Split('-')[1];
int CircularInsertado = ObjOI.AddCircular(TxtAsunto.Text, TxtCircular.Text.Replace("< ", "<"), TxtCorreo.Text, DateTime.Today.ToString(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CorreoExtra, AdjuntoValidate);
if (CircularInsertado > 0)
{
GuardarArchivo(CircularInsertado);
Alert("Ingresado correctamente");
CveCircular = CircularInsertado;
if (CveCircular > 0)
{
BtnGuardar.Text = "Actualizar";
BtnEliminar.Visible = true;
}
else
{
BtnGuardar.Text = "Guardar";
}
}
}
CargaDatos();
}
#region "Guardar"
private string NombreArchivo()
{
List<Archivo> Filesgral = TxtArchivo.getfiles().Archivos;
string Filename = "-1";
foreach (Archivo fileItem in Filesgral)
{
try
{
Filename = fileItem.filename;
}
catch (Exception ex)
{
Filename = "-1";
}
}
return Filename;
}
private string TituloAnterior()
{
System.IO.DirectoryInfo Directorio = new System.IO.DirectoryInfo(string.Format("{0}Empresas/{1}/Formatos/", AppDomain.CurrentDomain.BaseDirectory, UsuarioActual.CveEmpresa));
System.IO.FileInfo[] ArchivosArreglo = Directorio.GetFiles();
string patronRegEx = string.Format("^{0}_.*", CveCircular);
string archivoEncontrado = "";
foreach (System.IO.FileInfo file in ArchivosArreglo)
{
if (Regex.IsMatch(file.Name, patronRegEx))
archivoEncontrado = file.Name;
}
return archivoEncontrado;
}
private string GuardarArchivo(int CircularInsertado)
{
string respuesta = "";
string FileExtension = "-1";
List<Archivo> Filesgral = TxtArchivo.getfiles().Archivos;
string Filename = "";
foreach (Archivo fileItem in Filesgral)
{
try
{
respuesta = fileItem.filenameO;
FileExtension = System.IO.Path.GetExtension(string.Format(@"{0}Temp\{1}", AppDomain.CurrentDomain.BaseDirectory, fileItem.filename)).Replace(".", "");
string[] tempArray;
tempArray = fileItem.filename.ToString().Split("-".ToCharArray());
string rutaDestino = UsuarioActual.Empresa.Ruta + @"Formatos\" + CircularInsertado + "_" + fileItem.filenameO;
string ArchivoAnterior = TituloAnterior();
if (ArchivoAnterior.Length > 0)
{
string docAnterior = string.Format(@"{0}Formatos\{1}", UsuarioActual.Empresa.Ruta, ArchivoAnterior);
if (File.Exists(docAnterior))
File.Delete(docAnterior);
}
if (!Directory.Exists(UsuarioActual.Empresa.Ruta + @"\Formatos"))
Directory.CreateDirectory(UsuarioActual.Empresa.Ruta + @"\Formatos");
if (System.IO.File.Exists(rutaDestino))
System.IO.File.Delete(rutaDestino);
System.IO.File.Move(fileItem.FileUrl, rutaDestino);
}
catch (Exception ex)
{
this.OnError("Error al cargar archivo", ex);
}
TxtArchivo.Text = "";
}
return respuesta;
}
#endregion
protected void BtnEliminar_Click(object sender, EventArgs e)
{
using (ClsOIEventos ObjOI = new ClsOIEventos())
{
if (ObjOI.DeleteCircular(CveCircular)) { Response.Redirect("~/OI/CircularDetalle.aspx?CveCircular=-1"); }
}
}
protected void LnkMandarCorreo_Click(object sender, EventArgs e)
{
string[] correos;
correos = TxtCorreo.Text.Split(';');
byte[] ArchivoBytes = ArchivoBytesArrya(HkArchivo.Text);
int Contador = 0;
try
{
foreach (string Correo in correos)
{
MandaCorreo(TxtAsunto.Text, Correo, Contador > 0 ? "" : TxtCorreoAdicional.Text, TxtCircular.Text, ArchivoBytes, HkArchivo.Text);
Contador += 1;
}
Alert("El correo se envió correctamente");
}
catch (Exception ex)
{
Alert("Error al enviar correo", ModExtensiones.TipoMensaje.MsgError);
}
}
private void MandaCorreo(string Asunto, string Para, string ArrayCC, string body, byte[] ArchivoBinario, string NombreArchivo)
{
string a = string.Format("{0} -- {1} --- {2}", Asunto, Para, ArrayCC);
a.GuardaLog();
ClsSisMail Mail = new ClsSisMail();
List<ClsSisMail.ArchivoMail> LSRutasMail = new List<ClsSisMail.ArchivoMail>();
ClsSisMail.ArchivoMail itemMail = new ClsSisMail.ArchivoMail();
{
var withBlock = itemMail;
itemMail.ArchivoBinario = ArchivoBinario;
itemMail.NombreArchivo = NombreArchivo;
}
LSRutasMail.Add(itemMail);
Mail.SendMail(ClsPaginas.EmpresaNotificaciones, Para, Asunto, body, ArrayCC, LSRutasMail);
Mail = null/* TODO Change to default(_) if this is not a reference type */;
}
private byte[] ArchivoBytesArrya(string ArchivoNombre)
{
string ArchivoEnviar = string.Format(@"{0}Formatos\{1}", UsuarioActual.Empresa.Ruta, ArchivoNombre);
if (File.Exists(ArchivoEnviar))
{
System.IO.FileStream fs = System.IO.File.Open(ArchivoEnviar, System.IO.FileMode.Open, System.IO.FileAccess.Read);
byte[] buff = new byte[fs.Length + 1];
if (fs.Length > 0)
{
fs.Read(buff, 0, (fs.Length.ToString().ToEntero() - 1));
fs.Close();
}
return buff;
}
return new byte[] { };
}
}

936
OI/MinutaDetalle.aspx Normal file
View File

@@ -0,0 +1,936 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="MinutaDetalle.aspx.cs" Inherits="OI_MinutaDetalle" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<style>
.divArchivo {
padding: 15px;
text-align: center;
}
.divArchivo a {
color: #659be0;
font-size: 18px;
}
.divArchivo a i {
font-size: 32px;
line-height: 32px;
}
.mypaste:before {
content: "Pegar aquí";
}
.addropzone.dz-clickable:before {
margin-top: 40px;
}
.pnlCorreo {
display: table;
width: 100%;
border: 1px solid #e0e0e0;
}
.headerCorreo {
font-size: 16px;
float: left;
width: 20%;
color: #333333;
background-color: #f9f9f9;
border-color: #e0e0e0;
padding: 10px 15px;
}
.bodycorreos {
padding: 3px 15px;
width: 80%;
float: right;
}
.headerCorreoCCP {
padding: 20px 15px;
}
@media (min-width: 1167px) {
.headerCorreoCCP {
padding: 30px 15px;
}
}
.linkCorreo {
text-decoration: none;
color: #659be0;
font-weight: bold;
}
tr[hide="1"] {
display: none;
}
.addropzone {
min-height: 130px;
}
</style>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server">
<asp:UpdatePanel ID="UpTituloPagina" runat="server">
<ContentTemplate>
Minuta:
<asp:Literal runat="server" ID="ltlTituloPage"></asp:Literal>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel ID="UpAcciones" runat="server">
<ContentTemplate>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HA" runat="Server">
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpContenido" runat="server">
<ContentTemplate>
<div class="row">
<div class="col-md-5">
<asp:Panel runat="server" ID="portletMinuta" class="portlet light smmallpadding bordered">
<div class="portlet-title">
<div class="caption font-green">
<i class="icon-pin font-green"></i>
<span class="caption-subject bold uppercase">Datos Minuta</span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body rowpadding">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtAsunto" runat="server" CssClass="form-control TxtAsunto" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVAsunto" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtAsunto" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Asunto''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Asunto:" AssociatedControlID="TxtAsunto"></asp:Label>
</div>
<div class="form-group form-md-line-input">
<asp:TextBox ID="TxtDescripcion" runat="server" CssClass="form-control TxtDescripcion" CausesValidation="true" TextMode="MultiLine" Rows="2"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvDescripcion" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtDescripcion" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Descripción''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Descripción" AssociatedControlID="TxtDescripcion"></asp:Label>
</div>
</div>
<asp:Panel ID="pnlmiembrosvista" Visible="false" runat="server">
<div class="pnlCorreo" style="margin-bottom: 5px;">
<div class="headerCorreo ">
<h3 class="panel-title ">Moderador:</h3>
</div>
<div class="bodycorreos ">
<asp:Literal ID="LtlDeUser" runat="server"></asp:Literal>
</div>
</div>
<div class="pnlCorreo" style="margin-bottom: 5px;">
<div class="headerCorreo ">
<h3 class="panel-title ">Participantes:</h3>
</div>
<div class="bodycorreos ">
<asp:Literal ID="LtlCCPara" runat="server"></asp:Literal>
</div>
</div>
</asp:Panel>
</asp:Panel>
<div class="text-center">
<asp:LinkButton ID="LnkGuardar" runat="server" OnClick="LnkGuardar_Click" CssClass="btn btn-primary">Guardar</asp:LinkButton>
<asp:LinkButton ID="LnkEnviarMinuta" Visible="false" runat="server" OnClick="LnkEnviarMinuta_Click" CssClass="btn btn-primary">Enviar Minuta</asp:LinkButton>
<asp:LinkButton ID="LnkTerminar_EnviarMinuta" Visible="false" runat="server" OnClick="LnkTerminarMinuta_Click" CssClass="btn btn-primary">Terminar y Enviar Minuta</asp:LinkButton>
</div>
</div>
<div class="col-md-7">
<div style="height: 12px; width: 100%; text-align: right; font-style: italic; font-weight: bold">
<span id="ltlFechaAutoGuardado"></span>
</div>
<div class="row">
<div class="col-md-6">
<asp:Panel runat="server" ID="portletArchivo" class="portlet light smmallpadding bordered">
<div class="portlet-title">
<div class="caption font-green">
<i class="fa fa-file-archive-o font-green"></i>
<span class="caption-subject bold uppercase">Archivo</span>
</div>
<div class="actions">
<div class="btn-group">
</div>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body rowpadding filediv">
<asp:TextBox ID="TxtArchivo" CssClass="ADSdropzone hidden" runat="server"></asp:TextBox>
<div class="divArchivo">
<asp:HyperLink ID="HypArchivo" runat="server" Target="_blank">
<asp:Literal ID="LtlArchivo" runat="server"></asp:Literal><br />
<i class="fa fa-download"></i>
</asp:HyperLink>
</div>
</div>
</asp:Panel>
</div>
<div class="col-md-6">
<asp:Panel runat="server" ID="portletUserNew" class="portlet light smmallpadding bordered">
<div class="portlet-title">
<div class="caption font-green">
<i class="icon-pin font-green"></i>
<span class="caption-subject bold uppercase">Miembros</span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body rowpadding">
<div class="form-group form-md-line-input">
<asp:DropDownList runat="server" ID="DdlRoles" DataValueField="CveRol" DataTextField="Rol" CssClass="select2me form-control ddlrol" Width="100%" onchange="ddlRol_Onchange();" />
<asp:Label runat="server" Text="Perfil:" AssociatedControlID="DdlRoles"></asp:Label>
</div>
<div class="form-group form-md-line-input">
<asp:DropDownList runat="server" ID="DdlSucursales" DataValueField="CveProyecto" DataTextField="SubProyecto" CssClass="select2me form-control ddlsucursal" Width="100%" onchange="DdlSucursales_Onchange();" />
<asp:Label runat="server" Text="Sucursales:" AssociatedControlID="DdlSucursales"></asp:Label>
</div>
<%--<div class="form-group form-md-line-input">
<asp:TextBox ID="TxtUsuario" runat="server" CssClass="form-control TxtUsuario" CausesValidation="true"></asp:TextBox>
<asp:Label runat="server" Text="Usuario" AssociatedControlID="TxtUsuario"></asp:Label>
</div>--%>
<div class="text-right" style="">
<asp:TextBox ID="TxtUsuario" runat="server" CssClass="form-control input-sm TxtUsuario" Style="display: inline-block; margin-right: -20px; width: 150px;" CausesValidation="true"></asp:TextBox>
<a href="javascript:;" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<asp:GridView ID="GVUsuarios" runat="server" AutoGenerateColumns="false" DataKeyNames="CveUsuario,Nombre,Correo,Empresa,CveRol,CveSubProyecto"
CssClass="table table-striped table-advance table-hover Widthall ScrollAD GVUsuarios" GridLines="None" data-height="200"
OnRowDataBound="GVUsuarios_RowDataBound">
<Columns>
<asp:TemplateField>
<ItemStyle HorizontalAlign="Center" Width="50px" />
<HeaderTemplate>
<a id="chkAll" onclick="chkAll_OncLick(1);" class="linkCorreo" data-toggle="tooltip" title="Seleccionar todos(Visibles)"><i class="fa fa fa-check-square-o"></i></a>
<a id="UnchkAll" onclick="chkAll_OncLick(0);" class="linkCorreo" data-toggle="tooltip" title="Quitar seleccion todos(Visibles)"><i class="fa fa-square-o"></i></a>
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="ChkOk" CssClass="ChkOk" Checked="false" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Usuario</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlNombre" runat="server" Text='<%# Eval("Nombre") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Rol</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlRol" runat="server" Text='<%# Eval("Rol") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
</asp:Panel>
</div>
</div>
<ajax:TabContainer ID="Tab" runat="server" ActiveTabIndex="0" Width="100%">
<ajax:TabPanel ID="TabAcuerdos" runat="server" HeaderText="Acuerdos">
<ContentTemplate>
<asp:HiddenField runat="server" ID="hdnCveEvento" ClientIDMode="Static" />
<asp:HiddenField runat="server" ID="hdnCveEventoEstatus" Value="1" ClientIDMode="Static" />
<asp:UpdatePanel ID="UpChkList" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Panel runat="server" ID="portletChekList" Visible="true" class="portlet light smmallpadding bordered" DefaultButton="LnkAgregarchklistitem">
<div class="portlet-title">
<div class="caption font-green">
<i class="fa fa-check-square-o font-green"></i>
<span class="caption-subject bold uppercase">Acuerdos <span id="Contador"></span></span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
<div class="actions">
<div class="btn-group">
<asp:LinkButton ID="LnkSaveAcuerdos" OnClick="LnkSaveAcuerdos_Click" CssClass="btn btn-default" runat="server">Guardar</asp:LinkButton>
</div>
</div>
</div>
<div class="portlet-body rowpadding">
<div style="display: none;">
<div class="row">
<div class="col-md-8">
<div class="form-group form-md-line-input">
<%--<asp:TextBox ID="TxtActividad" runat="server" CssClass="form-control ckeditor" TextMode="MultiLine" Rows="3" CausesValidation="true"></asp:TextBox>--%>
<asp:TextBox ID="TxtActividad" runat="server" CssClass="form-control" CausesValidation="true"></asp:TextBox>
<asp:Label runat="server" Text="Acuerdo" AssociatedControlID="TxtActividad"></asp:Label>
</div>
</div>
<div class="col-md-4">
<asp:Button ID="LnkSinfuncion" OnClick="LnkSinfuncion_Click" UseSubmitBehavior="false" CssClass="btn btn-default LnkSinfuncion hidden" runat="server"></asp:Button>
<asp:LinkButton ID="LnkAgregarchklistitem" OnClick="LnkAgregarchklistitem_Click" CssClass="btn btn-default" runat="server">Agregar</asp:LinkButton>
<%--<a class="btn btn-default">Agregar</a>--%>
</div>
</div>
<asp:GridView ID="GVcheklist" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall GVcheklist" AutoGenerateColumns="False"
DataKeyNames="CveEventoCheckList,CveEvento,CveTipoEvento,EventoComentario,Estatus,CveUsuario,Usuario,FechaIng">
<Columns>
<asp:TemplateField HeaderText="" ItemStyle-Width="30">
<ItemTemplate>
<asp:CheckBox ID="ChkEstatus" Text=" " OnCheckedChanged="ChkEstatus_CheckedChanged" runat="server" data-valor='<%# Extensiones.ModExtensiones.Encripta(Eval("CveEventoCheckList").ToString())%>' Checked='<%# Eval("Estatus")%>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Acuerdo">
<ItemTemplate>
<%--<pre>--%>
<span class="pre">
<asp:Literal ID="lbleventoComentario" runat="server" Text='<%# Eval("EventoComentario")%>'> </asp:Literal>
</span>
<%--</pre>--%>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="30" Visible="false">
<ItemTemplate>
<%--<asp:LinkButton data-toggle="tooltip" title="Editar" ID="LnkEditar" OnClick="LnkEditarCheck_Click" CssClass="btn btn-circle btn-sm green" runat="server" Text="<i class='fa fa-pencil'></i>"></asp:LinkButton>--%>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="30">
<ItemTemplate>
<asp:LinkButton ID="LnkD" runat="server" OnClick="LnkEliminarchek_Click" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="¿Está seguro que desea eliminar el cheklist?" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
<div class="form-group form-md-line-input ">
<%--<asp:Label runat="server" Text="Acuerdos" AssociatedControlID="TxtAcuerdos"></asp:Label>--%>
<asp:TextBox ID="TxtAcuerdos" runat="server" CssClass="form-control ADSckeditor TxtAcuerdos" CausesValidation="true" TextMode="MultiLine" Rows="2"></asp:TextBox>
</div>
</div>
</asp:Panel>
</ContentTemplate>
</asp:UpdatePanel>
</ContentTemplate>
</ajax:TabPanel>
<ajax:TabPanel ID="TabTareas" Visible="false" runat="server" HeaderText="Tareas">
<ContentTemplate>
<asp:Panel runat="server" ID="portletTareas" class="portlet light smmallpadding bordered">
<div class="portlet-title">
<div class="caption font-green">
<i class="icon-pin font-green"></i>
<span class="caption-subject bold uppercase">Tarea nueva</span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
<div class="actions">
<div class="btn-group">
<asp:LinkButton ID="LnkAgregarTarea" OnClick="LnkAgregarTarea_Click" CssClass="btn btn-default" runat="server">Agregar</asp:LinkButton>
</div>
</div>
</div>
<div class="portlet-body rowpadding">
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtTareaAsunto" runat="server" CssClass="form-control" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtTareaAsunto" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Asunto''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Asunto:" AssociatedControlID="TxtTareaAsunto"></asp:Label>
</div>
<div class="form-group form-md-line-input">
<asp:TextBox ID="TxtTareaDescripcion" runat="server" CssClass="form-control" CausesValidation="true" TextMode="MultiLine" Rows="2"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtTareaDescripcion" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Descripción''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Descripción" AssociatedControlID="TxtTareaDescripcion"></asp:Label>
</div>
</div>
<div class="col-md-6">
<asp:TextBox ID="TxtTareaArchivo" CssClass="ADSdropzone hidden" runat="server"></asp:TextBox>
</div>
</div>
<div class="row">
<div class="col-sm-6 ">
<div class="row">
<div class="col-sm-6">
<div class="input-group form-group form-md-line-input date date-picker " data-date-format="dd/mm/yyyy hh:mm" style="display: inline-block;">
<asp:TextBox ID="txtTareaFechaI" runat="server" autocomplete="false" CssClass="form-control ADDateTimePicker" CausesValidation="true" MaxLength="18" Width="132px "></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVtxtFechaI" runat="server" ControlToValidate="txtTareaFechaI" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Inicio''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label AssociatedControlID="txtTareaFechaI" runat="server" Text="Fecha Inicio"></asp:Label>
<%--<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="txtFechaI" Mask="99/99/9999 99:99" MaskType="DateTime" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>--%>
<ajax:ValidatorCalloutExtender ID="VcoFechaI" runat="server" HighlightCssClass="vco" TargetControlID="RFVtxtFechaI" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="col-sm-6">
<div class="input-group form-group form-md-line-input date date-picker " data-date-format="dd/mm/yyyy hh:mm" style="display: inline-block;">
<asp:TextBox ID="txtTareaFechaF" runat="server" autocomplete="false" CssClass="form-control ADDateTimePicker" CausesValidation="true" MaxLength="18" Width="132px " placeholder=""></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVtxtFechaF" runat="server" ControlToValidate="txtTareaFechaF" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Fin''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label AssociatedControlID="txtTareaFechaF" runat="server" Text="Fecha Fin"></asp:Label>
<%--<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="txtFechaI" Mask="99/99/9999 99:99" MaskType="DateTime" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>--%>
<ajax:ValidatorCalloutExtender ID="VcoFechaF" runat="server" HighlightCssClass="vco" TargetControlID="RFVtxtFechaF" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-6">
<div class="form-group form-md-line-input">
<asp:DropDownList ID="DdlTareaPrioridad" runat="server" CssClass="form-control select2me input-sm" Width="100%">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
<asp:ListItem Text="Baja" Value="1" class="itembaja"></asp:ListItem>
<asp:ListItem Text="Media" Value="2" class="itemmedia"></asp:ListItem>
<asp:ListItem Text="Alta" Value="3" class="itemalta"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVPrioridad" runat="server" ControlToValidate="DdlTareaPrioridad" Display="None" ErrorMessage="El campo <b>''Prioridad''</b> es necesario, por favor seleccione uno." InitialValue="-1" ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label runat="server" AssociatedControlID="DdlTareaPrioridad">Prioridad:</asp:Label>
<ajax:ValidatorCalloutExtender ID="VCOPrio" runat="server" TargetControlID="RFVPrioridad" HighlightCssClass="vco" Width="300px"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="col-sm-6">
<div class="form-group form-md-line-input">
<asp:DropDownList ID="DdlTareaPara" runat="server" CssClass="form-control select2me input-sm" DataValueField="CveUsuario" DataTextField="Nombre" Width="100%">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:Label runat="server" AssociatedControlID="DdlTareaPara">Para:</asp:Label>
</div>
</div>
</div>
</div>
<div class="col-sm-6 ">
<div class="text-right" style="">
<asp:TextBox ID="TxtUsuarioB" runat="server" CssClass="form-control input-sm TxtUsuarioB" Style="display: inline-block; margin-right: -20px; width: 150px;" CausesValidation="true"></asp:TextBox>
<a href="javascript:;" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<asp:GridView ID="GVUsuariosB" runat="server" AutoGenerateColumns="false" DataKeyNames="CveUsuario,Nombre,Correo,Empresa,CveRol,CveSubProyecto"
CssClass="table table-striped table-advance table-hover Widthall ScrollAD GVUsuariosB" GridLines="None" data-height="200"
OnRowDataBound="GVUsuarios_RowDataBound">
<Columns>
<asp:TemplateField>
<ItemStyle HorizontalAlign="Center" Width="50px" />
<HeaderTemplate>
CCP <br />
<a id="chkAll" onclick="chkAllB_OncLick(1);" class="linkCorreo" data-toggle="tooltip" title="Seleccionar todos(Visibles)"><i class="fa fa fa-check-square-o"></i></a>
<a id="UnchkAll" onclick="chkAllB_OncLick(0);" class="linkCorreo" data-toggle="tooltip" title="Quitar seleccion todos(Visibles)"><i class="fa fa-square-o"></i></a>
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="ChkOk" CssClass="ChkOk" Checked="false" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Usuario</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlNombre" runat="server" Text='<%# Eval("Nombre") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Rol</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlRol" runat="server" Text='<%# Eval("Rol") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
</div>
<%--//OIE.[CveEvento], OIE.[CveTipoEvento], OIE.[Folio], OIE.[Asunto], OIE.[Descripcion], OIE.[Prioridad], OIE.[CveUsuarioDe], OIE.[CveUsuarioPara],
//OIE.[CveEventoEstatus], OIE.[FechaInicio], OIE.[FechaFin], OIE.[FechaRealTermino], OIE.[CveRevision], OIE.[Archivo], OIE.[FechaIng],
//OIE.[CveUsuarioIng], OIE.[CveEmpresa], OIE.[CveUsuarioModifico], OIE.[Avance]--%>
</div>
<asp:GridView ID="GVTareas" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall" AutoGenerateColumns="False"
DataKeyNames="Titulo,NombreRegistro,CveEvento,CveTipoEvento,Folio,Asunto,Descripcion,Prioridad,CveUsuarioDe,CveUsuarioPara,CveEventoEstatus,FechaInicio,FechaFin,FechaRealTermino,CveRevision,Archivo,FechaIng,CveUsuarioIng,CveEmpresa,CveUsuarioModifico,Avance">
<Columns>
<asp:TemplateField HeaderText="Folio">
<ItemTemplate>
<a target="_blank" href='<%# Eval("CveEvento","/OI/TareaDetalle.aspx?CveEvento={0}")%>' class="Widthallimp">
<asp:Label runat="server" Text='<%# Eval("Folio")%>'> </asp:Label>
</a>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Asunto">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("Asunto")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Descripción">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("Descripcion")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Para">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("UserPara")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha Inicio">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("FechaInicio","{0:dd/MM/yyyy HH}:{0:mm}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha Fin">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("FechaFin","{0:dd/MM/yyyy HH}:{0:mm}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estatus">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("EventoEstatus")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</asp:Panel>
</ContentTemplate>
</ajax:TabPanel>
<ajax:TabPanel ID="TabAgendas" Visible="false" runat="server" HeaderText="Agendas">
<ContentTemplate>
<asp:Panel runat="server" ID="Panel1" class="portlet light smmallpadding bordered">
<div class="portlet-title">
<div class="caption font-green">
<i class="icon-pin font-green"></i>
<span class="caption-subject bold uppercase">Agenda nueva</span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
<div class="actions">
<div class="btn-group">
<asp:LinkButton ID="LnkAgregarAgenda" OnClick="LnkAgregarAgenda_Click" CssClass="btn btn-default" runat="server">Agregar</asp:LinkButton>
</div>
</div>
</div>
<div class="portlet-body rowpadding">
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtAgendaAsunto" runat="server" CssClass="form-control" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvAgendaAsunto" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtAgendaAsunto" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Asunto''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Asunto:" AssociatedControlID="TxtAgendaAsunto"></asp:Label>
</div>
<div class="form-group form-md-line-input">
<asp:TextBox ID="TxtAgendaDescripcion" runat="server" CssClass="form-control" CausesValidation="true" TextMode="MultiLine" Rows="2"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvAgendaDescripcion" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtAgendaDescripcion" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Descripción''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Descripción" AssociatedControlID="TxtAgendaDescripcion"></asp:Label>
</div>
</div>
<div class="col-md-6">
<asp:TextBox ID="TxtAgendaArchivo" CssClass="ADSdropzone hidden" runat="server"></asp:TextBox>
</div>
</div>
<div class="row">
<div class="col-sm-3">
<div class="input-group form-group form-md-line-input date date-picker " data-date-format="dd/mm/yyyy hh:mm" style="display: inline-block;">
<asp:TextBox ID="txtAgendaFechaI" runat="server" autocomplete="false" CssClass="form-control ADDateTimePicker" CausesValidation="true" MaxLength="18" Width="132px "></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvAgendaFechaI" runat="server" ControlToValidate="txtAgendaFechaI" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Inicio''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label AssociatedControlID="txtAgendaFechaI" runat="server" Text="Fecha Inicio"></asp:Label>
<%--<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="txtFechaI" Mask="99/99/9999 99:99" MaskType="DateTime" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>--%>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" runat="server" HighlightCssClass="vco" TargetControlID="rfvAgendaFechaI" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="col-sm-3">
<div class="form-group form-md-line-input">
<asp:DropDownList ID="DdlAgendaTipo" runat="server" CssClass="form-control select2me input-sm" Width="100%">
<asp:ListItem Selected="True" Text="Sin Tipo" Value="-1"></asp:ListItem>
<asp:ListItem Text="Llamar" Value="1"></asp:ListItem>
<asp:ListItem Text="Otro" Value="4"></asp:ListItem>
<asp:ListItem Text="Presupuestar" Value="3"></asp:ListItem>
<asp:ListItem Text="Visitar" Value="2"></asp:ListItem>
</asp:DropDownList>
<asp:Label runat="server" AssociatedControlID="DdlAgendaTipo">Agenda Tipo:</asp:Label>
</div>
</div>
<div class="col-sm-3" style="display: none;">
<div class="input-group form-group form-md-line-input date date-picker " data-date-format="dd/mm/yyyy hh:mm" style="display: inline-block;">
<asp:TextBox ID="txtAgendaFechaF" runat="server" autocomplete="false" CssClass="form-control ADDateTimePicker" CausesValidation="true" MaxLength="18" Width="132px " placeholder=""></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvAgendaFechaF" runat="server" ControlToValidate="txtAgendaFechaF" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Fin''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label AssociatedControlID="txtAgendaFechaF" runat="server" Text="Fecha Fin"></asp:Label>
<%--<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="txtFechaI" Mask="99/99/9999 99:99" MaskType="DateTime" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>--%>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender2" runat="server" HighlightCssClass="vco" TargetControlID="RfvAgendaFechaF" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="col-sm-3">
<div class="form-group form-md-line-input">
<asp:DropDownList ID="DdlAgendaPrioridad" runat="server" CssClass="form-control select2me input-sm" Width="100%">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
<asp:ListItem Text="Baja" Value="1" class="itembaja"></asp:ListItem>
<asp:ListItem Text="Media" Value="2" class="itemmedia"></asp:ListItem>
<asp:ListItem Text="Alta" Value="3" class="itemalta"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RfvAgendaPrioridad" runat="server" ControlToValidate="DdlAgendaPrioridad" Display="None" ErrorMessage="El campo <b>''Prioridad''</b> es necesario, por favor seleccione uno." InitialValue="-1" ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label runat="server" AssociatedControlID="DdlAgendaPrioridad">Prioridad:</asp:Label>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender3" runat="server" TargetControlID="RfvAgendaPrioridad" HighlightCssClass="vco" Width="300px"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="col-sm-3">
<div class="form-group form-md-line-input">
<asp:DropDownList ID="DdlAgendaPara" runat="server" CssClass="form-control select2me input-sm" DataValueField="CveUsuario" DataTextField="Nombre" Width="100%">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:Label runat="server" AssociatedControlID="DdlAgendaPara">Para:</asp:Label>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-12 text-center">
</div>
</div>
</div>
<asp:GridView ID="GvAgenda" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall" AutoGenerateColumns="False"
DataKeyNames="Titulo,NombreRegistro,CveEvento,CveTipoEvento,Folio,Asunto,Descripcion,Prioridad,CveUsuarioDe,CveUsuarioPara,CveEventoEstatus,FechaInicio,FechaFin,FechaRealTermino,CveRevision,Archivo,FechaIng,CveUsuarioIng,CveEmpresa,CveUsuarioModifico,Avance">
<Columns>
<%--<asp:TemplateField HeaderText="Folio">
<ItemTemplate>
<asp:Label ID="lblfolio" runat="server" Text='<%# Eval("Folio")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>--%>
<asp:TemplateField HeaderText="Asunto">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("Asunto")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Descripción">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("Descripcion")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Para">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("UserPara")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha Inicio">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("FechaInicio","{0:dd/MM/yyyy HH}:{0:mm}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estatus">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("EventoEstatus")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Tipo">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("AgendaTipo")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</asp:Panel>
</ContentTemplate>
</ajax:TabPanel>
<ajax:TabPanel ID="TabArchivos" Visible="false" runat="server" HeaderText="Archivos y bitacora">
<ContentTemplate>
<asp:UpdatePanel ID="UpActividades" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="row">
<div class="col-md-8">
<div class="form-group form-md-line-input">
<asp:TextBox ID="TxtComentario" runat="server" CssClass="form-control" CausesValidation="true" TextMode="MultiLine" Rows="1"></asp:TextBox>
<asp:Label runat="server" Text="Agregar Comentario" AssociatedControlID="TxtComentario"></asp:Label>
</div>
<asp:TextBox ID="Txtfilecomentario" CssClass="ADSdropzone hidden" runat="server"></asp:TextBox>
</div>
<div class="col-md-4">
<asp:LinkButton ID="BtnAgregarComentario" OnClick="BtnAgregarComentario_Click" CssClass="btn btn-default" runat="server">Agregar</asp:LinkButton>
</div>
</div>
<asp:GridView ID="GvActividades" runat="server" AutoGenerateColumns="False" CssClass="table table-striped table-advance table-hover Widthall ScrollAD GvActividades"
OnRowDataBound="GvActividades_RowDataBound"
GridLines="None">
<Columns>
<asp:BoundField DataField="FechaIng" DataFormatString="{0:dd/MM/yyyy HH:mm}" HeaderText="Fecha">
<ItemStyle Width="90px" HorizontalAlign="Center" />
</asp:BoundField>
<asp:BoundField DataField="NombreUsuario" DataFormatString="&nbsp;{0}" HeaderText="Usuario">
<ItemStyle Width="200px" />
</asp:BoundField>
<%--<asp:BoundField DataField="EventoComentario" DataFormatString="&nbsp;{0}" HeaderText="Observación"></asp:BoundField>--%>
<asp:TemplateField HeaderText="Observación">
<ItemTemplate>
<asp:Literal runat="server" Text='<%# Eval("EventoComentario").ToString().Replace("\n","<br/>") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="">
<ItemTemplate>
<asp:HyperLink Target="_blank" ID="HplA" runat="server"><i class="fa fa-download"></i></asp:HyperLink>
<%--<asp:ImageButton ID="ImBtnPub" ToolTip="Publicar Documento" Visible="False" ImageUrl="/Imagenes/PublicarDoc.jpg" Height="18px" runat="server" />--%>
</ItemTemplate>
<ItemStyle HorizontalAlign="Center" Width="40px" />
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" />
<AlternatingRowStyle CssClass="TextoAlterno" />
<HeaderStyle CssClass="Titulos" />
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</ContentTemplate>
</ajax:TabPanel>
</ajax:TabContainer>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<script src="/Metronic/assets/global/plugins/ckeditor/ckeditor.js" type="text/javascript"></script>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
<script>
$(document).ready(function () {
setTimeout("autoGuardado()", 60000);
});
//$('#btnAutoGuardado').click(function () {
function autoGuardado() {
if ($get("hdnCveEvento").value != "" && $get("hdnCveEventoEstatus").value != "4") {
var SendObj = {
"CveEvento": $get("hdnCveEvento").value,
"Asunto": $(".TxtAsunto").val(),
"Descripcion": $(".TxtDescripcion").val(),
"Acuerdos": $(".TxtAcuerdos").val().replace(/< /gi, '<'),
}
fechaAutoGuardado();
var stringData = JSON.stringify(SendObj);
$.ajax({
type: 'POST',
url: '/asmx/wsOI.asmx/AutoGuardadoMinuta',
data: "{'objMinuta':" + stringData + "}",
contentType: 'application/json; utf-8',
dataType: 'json',
success: function (data) {
fechaAutoGuardado();
if (data.d != null) {
alert(data.d);
}
},
error: function (jqXHR, textStatus, errorThrown) {
}
}
);
}
function fechaAutoGuardado() {
var f = new Date();
var hours = f.getHours();
var minutes = f.getMinutes();
var ampm = hours >= 12 ? 'pm' : 'am';
hours = hours % 12;
hours = hours ? hours : 12; // the hour '0' should be '12'
minutes = minutes < 10 ? '0' + minutes : minutes;
var strTime = hours + ':' + minutes + ' ' + ampm;
//if (hours <= 9)
// hours = "0" + hours;
//if (minutes <= 9)
// minutes = "0" + minutes;
$get("ltlFechaAutoGuardado").innerText = "Última hora de auto guardado " + strTime;
}
setTimeout("autoGuardado()", 60000);
}
</script>
<script>
////////////////////////////////////////////////Filtros Usuarios////////////////////////////////////////
let CveRol = -1;
let CveSucursal = -1;
let usuariotext = "";
let usuariotextB = "";
function ddlRol_Onchange() {
CveRol = $('select.ddlrol option:selected').val();
showhideUser();
}
function DdlSucursales_Onchange() {
CveSucursal = $('select.ddlsucursal option:selected').val();
showhideUser();
}
let tickBarBmaster = 0;
function TxtUsuario_Onchange() {
let obj = $('.TxtUsuario');
let text = '';
tickBarBmaster = tickBarBmaster + 1;
tickBarnew = tickBarBmaster;
setTimeout(function () {
if (tickBarnew == tickBarBmaster) {
if ((text = obj.val().trim()) != usuariotext) {
usuariotext = text;
showhideUser();
}
}
}, 500);
}
function TxtUsuarioB_Onchange() {
let obj = $('.TxtUsuarioB');
let text = '';
tickBarBmaster = tickBarBmaster + 1;
tickBarnew = tickBarBmaster;
setTimeout(function () {
if (tickBarnew == tickBarBmaster) {
if ((text = obj.val().trim()) != usuariotextB) {
usuariotextB = text;
showhideUserB();
}
}
}, 500);
}
function chkAll_OncLick(valor) {
$('.GVUsuarios tr:visible input[type="checkbox"]').prop("checked", valor);
}
function chkAllB_OncLick(valor) {
$('.GVUsuariosB tr:visible input[type="checkbox"]').prop("checked", valor);
}
function showhideUser() {
let strCveRol = CveRol > 0 ? '[data-rol="' + CveRol + '"]' : '';
let strCveSucursal = CveSucursal > 0 ? '[data-sucursal="' + CveSucursal + '"]' : '';
let strusuario = usuariotext.length > 0 ? ' td:nth-child(2):contains("' + usuariotext + '")' : '';// td:nth-child(2)
$('.GVUsuarios tr.items').attr('hide', '1')//oculto todos
if (strusuario.length > 0) {
$('.GVUsuarios tr.items' + strCveRol + strCveSucursal + strusuario).closest('tr').attr('hide', '');//muestro los que tienen filtro con usuario,sucursal y rol
} else {
$('.GVUsuarios tr.items' + strCveRol + strCveSucursal).attr('hide', '');//muestro los que tienen filtro con sucursal y rol
}
//e.Row.Attributes.Add("data-rol", CveRol);
//e.Row.Attributes.Add("data-sucursal", CveRol);
}
function showhideUserB() {
let strusuario = usuariotextB.length > 0 ? ':contains("' + usuariotextB + '")' : '';// td:nth-child(2)
$('.GVUsuariosB tr.items').attr('hide', '1')//oculto todos
if (strusuario.length > 0) {
$('.GVUsuariosB tr.items' + strusuario).attr('hide', '');//muestro los que tienen filtro con usuario,sucursal y rol
} else {
$('.GVUsuariosB tr.items' ).attr('hide', '');//muestro los que tienen filtro con sucursal y rol
}
//e.Row.Attributes.Add("data-rol", CveRol);
//e.Row.Attributes.Add("data-sucursal", CveRol);
}
function loadeventos() {
let input = $('input.TxtUsuario:not(.ConEvento)')
let inputB = $('input.TxtUsuarioB:not(.ConEvento)')
input.bind({
copy: TxtUsuario_Onchange
, paste: TxtUsuario_Onchange
, cut: TxtUsuario_Onchange
, keydown: TxtUsuario_Onchange
, keyup: TxtUsuario_Onchange
});
inputB.bind({
copy: TxtUsuarioB_Onchange
, paste: TxtUsuarioB_Onchange
, cut: TxtUsuarioB_Onchange
, keydown: TxtUsuarioB_Onchange
, keyup: TxtUsuarioB_Onchange
});
input.addClass('ConEvento');
inputB.addClass('ConEvento');
}
////////////////////////////////////////////////Filtros Usuarios////////////////////////////////////////
//////////////////////////////////////////////////////CheckList/////////////////////////////////////////
function setchecklist() {
let checks = $('.GVcheklist input[type="checkbox"]:not(.chadd)');
checks.change(function () {
loaderinit = (function () { });
let ischeked = $(this).is(':checked');
$(this).closest('tr').toggleClass('finished');
if ($(".LnkSinfuncion").length) { $(".LnkSinfuncion").click(); }
});
checks.addClass('chadd');
}
//////////////////////////////////////////////////////CheckList/////////////////////////////////////////
function CargaPickers() {
$.datetimepicker.setLocale('es');
$('input.ADDateTimePicker').each(function () {
var TThis = $(this);
TThis.datetimepicker({
dayOfWeekStart: 1,
lang: 'es',
format: 'd/m/Y H:i',
formatDate: 'd/m/Y H:i',
step: 30
});
var Div = TThis.parent()
var boton = document.createElement('span');
boton.className = "input-group-btn"
var subboton = document.createElement('a')
subboton.className = "btn default btnCalendar"
subboton.innerHTML = "<i class='fa fa-calendar'></i>"
subboton.addEventListener('click', function () {
TThis.datetimepicker('show')
});
boton.appendChild(subboton)
var agregar = true;
for (var i = 0; i < Div[0].children.length; i++) {
if (Div[0].children[i].isEqualNode(boton)) {
agregar = false;
}
}
if (agregar) {
Div[0].appendChild(boton);
}
//Div[0].appendChild(boton)
});
}
function SetEditor() {
}
function GetContents() {
// Get the editor instance that you want to interact with.
var editor = CKEDITOR.instances.editor1;
// Get editor content.
// https://ckeditor.com/docs/ckeditor4/latest/api/CKEDITOR_editor.html#method-getData
alert(editor.getData());
}
function ADSReady() {
SetEditor();
CargaPickers();
loadeventos();
showhideUser();
setchecklist();
}
</script>
</asp:Content>

1170
OI/MinutaDetalle.aspx.cs Normal file

File diff suppressed because it is too large Load Diff

491
OI/Proyecto.aspx Normal file
View File

@@ -0,0 +1,491 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="Proyecto.aspx.cs" Inherits="OI_Proyecto" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<style>
.btn.newsubpro {
margin-left: 3px;
padding: 2px 4px;
}
</style>
<style>
.gantt-samples-banner_controls_bar.controls_bar {
margin: 0;
//position: absolute;
top: -30px;
width: 100%;
right: 0;
left: 0;
}
.controls_bar {
border-top: 1px solid #bababa;
border-bottom: 1px solid #bababa;
clear: both;
height: 28px;
background: #f1f1f1;
color: #494949;
font-family: Arial, sans-serif;
font-size: 13px;
padding-left: 10px;
line-height: 25px;
}
</style>
<%--<link href="/Metronic/assets/global/plugins/GantJS/jsgantt.css" rel="stylesheet" type="text/css" />--%>
<link rel="stylesheet" href="/Metronic/assets/global/plugins/dhtmlxgantt/dhtmlxgantt.css" type="text/css">
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server">
Proyecto:
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel ID="UpAcciones" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<li>
<asp:LinkButton ID="LnkNewProyecto" OnClick="LnkNewProyecto_Click" runat="server"><i class="fa fa-plus"></i> Agregar Proyecto</asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HA" runat="Server">
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="C" runat="Server">
<%--<div style="position: relative" class="gantt" id="GanttChartDIV"></div>--%>
<asp:UpdatePanel ID="UpContenido" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="gantt-samples-banner_controls_bar controls_bar">
<strong>Formato: &nbsp; </strong>
<label>
<input name="scales" onclick="zoom_tasks(this)" type="radio" value="week">
<span>Horas</span></label>
<label>
<input name="scales" onclick="zoom_tasks(this)" type="radio" value="trplweek" checked="true">
<span>Día</span></label>
<label>
<input name="scales" onclick="zoom_tasks(this)" type="radio" value="year">
<span>Mes</span></label>
<div id="filter_hours" style="display: none;">
<span>&nbsp; &nbsp; | &nbsp; &nbsp; </span>
<strong>Mostrar: &nbsp; </strong>
<label>
<input name="scales_filter" onclick="set_scale_units(this)" type="radio" value="full_day">
<span>Dia Completo</span>
</label>
<label>
<input name="scales_filter" onclick="set_scale_units(this)" type="radio" value="work_hours">
<span>Horario de Oficina</span>
</label>
</div>
<div id="filter_days" style="">
<span>&nbsp; &nbsp; | &nbsp; &nbsp; </span>
<strong>Mostrar: &nbsp; </strong>
<label>
<input name="scales_filter" onclick="set_scale_units(this)" type="radio" value="full_week">
<span>Semana completa</span>
</label>
<label>
<input name="scales_filter" onclick="set_scale_units(this)" type="radio" value="work_week">
<span>Dias de Trabajo</span>
</label>
</div>
</div>
<div id="gantt_here" style='width: 100%; height: 100vh;'></div>
<div id='<%= iddivAgregarProyecto %>' class="modal ADS fade" role="dialog">
<div class="modal-dialog">
<asp:UpdatePanel ID="UpModalProyecto" class="modal-content " tabindex="-1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span> </button>
<h4 class="modal-title" style="text-align: left">
<asp:Literal ID="LtlTituloNewProyecto" runat="server">Proyecto</asp:Literal></h4>
</div>
<div class="modal-body">
<asp:Panel runat="server" ID="portletTarea" class="portlet light smmallpadding bordered">
<div class="portlet-title">
<div class="caption font-green">
<i class="icon-pin font-green"></i>
<span class="caption-subject bold uppercase">Nuevo</span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body rowpadding">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtAsunto" runat="server" CssClass="form-control" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVAsunto" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtAsunto" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Asunto''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Asunto:" AssociatedControlID="TxtAsunto"></asp:Label>
</div>
<div class="form-group form-md-line-input">
<asp:TextBox ID="TxtDescripcion" runat="server" CssClass="form-control" CausesValidation="true" TextMode="MultiLine" Rows="2"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvDescripcion" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtDescripcion" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Descripción''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Descripción" AssociatedControlID="TxtDescripcion"></asp:Label>
</div>
<div class="form-group form-md-line-input">
<asp:DropDownList ID="DdlPara" runat="server" CssClass="form-control select2me input-sm" DataValueField="CveUsuario" DataTextField="Nombre" Width="100%">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:Label runat="server" AssociatedControlID="DdlPara">Para:</asp:Label>
</div>
<div class="row">
<div class="col-sm-6">
<div class="input-group form-group form-md-line-input date date-picker " data-date-format="dd/mm/yyyy hh:mm" style="display: inline-block;">
<asp:TextBox ID="txtFechaI" runat="server" autocomplete="false" CssClass="form-control ADDateTimePicker" CausesValidation="true" MaxLength="18" Width="132px "></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVtxtFechaI" runat="server" ControlToValidate="txtFechaI" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Inicio''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label AssociatedControlID="txtFechaI" runat="server" Text="Fecha Inicio"></asp:Label>
<%--<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="txtFechaI" Mask="99/99/9999 99:99" MaskType="DateTime" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>--%>
<ajax:ValidatorCalloutExtender ID="VcoFechaI" runat="server" HighlightCssClass="vco" TargetControlID="RFVtxtFechaI" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="col-sm-6">
<div class="input-group form-group form-md-line-input date date-picker " data-date-format="dd/mm/yyyy hh:mm" style="display: inline-block;">
<asp:TextBox ID="txtFechaF" runat="server" autocomplete="false" CssClass="form-control ADDateTimePicker" CausesValidation="true" MaxLength="18" Width="132px " placeholder=""></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVtxtFechaF" runat="server" ControlToValidate="txtFechaF" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Fin''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label AssociatedControlID="txtFechaF" runat="server" Text="Fecha Fin"></asp:Label>
<%--<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="txtFechaI" Mask="99/99/9999 99:99" MaskType="DateTime" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>--%>
<ajax:ValidatorCalloutExtender ID="VcoFechaF" runat="server" HighlightCssClass="vco" TargetControlID="RFVtxtFechaF" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-6">
<div class="form-group form-md-line-input">
<asp:DropDownList ID="DdlPrioridad" runat="server" CssClass="form-control select2me input-sm" Width="100%">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
<asp:ListItem Text="Baja" Value="1" class="itembaja"></asp:ListItem>
<asp:ListItem Text="Media" Value="2" class="itemmedia"></asp:ListItem>
<asp:ListItem Text="Alta" Value="3" class="itemalta"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVPrioridad" runat="server" ControlToValidate="DdlPrioridad" Display="None" ErrorMessage="El campo <b>''Prioridad''</b> es necesario, por favor seleccione uno." InitialValue="-1" ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label runat="server" AssociatedControlID="DdlPrioridad">Prioridad:</asp:Label>
<ajax:ValidatorCalloutExtender ID="VCOPrio" runat="server" TargetControlID="RFVPrioridad" HighlightCssClass="vco" Width="300px"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="col-sm-6">
<div class="form-group form-md-line-input">
<asp:DropDownList ID="DdlTema" runat="server" CssClass="form-control select2me input-sm" DataValueField="CveRevision" DataTextField="Revision" Width="100%">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:Label runat="server" AssociatedControlID="DdlTema">Tema:</asp:Label>
</div>
</div>
</div>
</div>
</asp:Panel>
<asp:TextBox ID="txtCveEvento" CssClass="hidden txtCveEvento" runat="server"></asp:TextBox>
<asp:Button ID="BtnopenmodalClickGant" OnClick="BtnopenmodalClickGant_Click" CssClass="hidden BtnopenmodalClickGant" UseSubmitBehavior="false" runat="server" Text="Button" />
</div>
<div class="modal-footer">
<asp:LinkButton ID="btnguardarProyecto" OnClick="btnguardarProyecto_Click" CssClass="btn btn-primary" runat="server">Guardar</asp:LinkButton>
<button data-dismiss="modal" class="btn btn-danger">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<script src="/Metronic/assets/global/plugins/dhtmlxgantt/dhtmlxgantt.js"></script>
<%--<script src="/Metronic/assets/global/plugins/GantJS/jsgantt.js" type="text/javascript"></script>--%>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
<script>
function NuevoEvento(CveEvento) {
$('.txtCveEvento').val(CveEvento);
$('.BtnopenmodalClickGant').click();
}
function zoom_tasks(node) {
switch (node.value) {
case "week":
gantt.config.scale_unit = "day";
gantt.config.date_scale = "%d %M";
gantt.config.scale_height = 60;
gantt.config.min_column_width = 30;
gantt.config.subscales = [
{ unit: "hour", step: 1, date: "%H" }
];
show_scale_options("hour");
break;
case "trplweek":
gantt.config.min_column_width = 70;
gantt.config.scale_unit = "day";
gantt.config.date_scale = "%d %M";
gantt.config.subscales = [];
gantt.config.scale_height = 35;
show_scale_options("day");
break;
case "month":
gantt.config.min_column_width = 70;
gantt.config.scale_unit = "week";
gantt.config.date_scale = "Week #%W";
gantt.config.subscales = [
{ unit: "day", step: 1, date: "%D" }
];
show_scale_options();
gantt.config.scale_height = 60;
break;
case "year":
gantt.config.min_column_width = 70;
gantt.config.scale_unit = "month";
gantt.config.date_scale = "%M";
gantt.config.scale_height = 60;
show_scale_options();
gantt.config.subscales = [
{ unit: "week", step: 1, date: "#%W" }
];
break;
}
set_scale_units();
gantt.render();
}
function show_scale_options(mode) {
var hourConf = document.getElementById("filter_hours"),
dayConf = document.getElementById("filter_days");
if (mode == 'day') {
hourConf.style.display = "none";
dayConf.style.display = "";
dayConf.getElementsByTagName("input")[0].checked = true;
} else if (mode == "hour") {
hourConf.style.display = "";
dayConf.style.display = "none";
hourConf.getElementsByTagName("input")[0].checked = true;
} else {
hourConf.style.display = "none";
dayConf.style.display = "none";
}
}
function set_scale_units(mode) {
if (mode && mode.getAttribute) {
mode = mode.getAttribute("value");
}
switch (mode) {
case "work_hours":
gantt.config.subscales = [
{ unit: "hour", step: 1, date: "%H" }
];
gantt.ignore_time = function (date) {
if (date.getHours() < 9 || date.getHours() > 16) {
return true;
} else {
return false;
}
};
break;
case "full_day":
gantt.config.subscales = [
{ unit: "hour", step: 3, date: "%H" }
];
gantt.ignore_time = null;
break;
case "work_week":
gantt.ignore_time = function (date) {
if (date.getDay() == 0 || date.getDay() == 6) {
return true;
} else {
return false;
}
};
break;
default:
gantt.ignore_time = null;
break;
}
gantt.render();
}
var datosGant = [];
function loadGant() {
gantt.config.date_format = "%Y-%m-%d %H:%i";
gantt.i18n.setLocale("es");
gantt.init("gantt_here");
gantt.config.columns = [
{ name: "text", label: "Proyecto ", width: "*", min_width: 350, tree: true, resize: true, template: function (obj) { return "<a href=\"/OI/TareaDetalle.aspx?CveEvento="+obj.id+"\" target=\"_Blank\">" + obj.text + " </a>" } },
{ name: "start_date", label: "Inicio", min_width: 90, align: "center" },
{ name: "end_date", label: "Fin", min_width: 90, align: "center" },
{ name: "progress", label: "Avance", align: "center", template: function (obj) { return "" + (obj.progress * 100) + " %" } },
{ name: "duration", label: "Duracion", align: "center" },
{ name: "new", label: "<i class='fa fa-plus'></i>", align: "center",template: function (obj) { return "<a onclick=\"NuevoEvento("+obj.id+");\" target=\"_Blank\"><i class='fa fa-plus'></i> </a>" } }
/*{name:"staff", label:"Holder(s)", template:function(obj){return obj.holder+"("+obj.progress+")"} },*/
//{ name: "add", label: "" }
];
gantt.parse({
data:datosGant
//data: [
// { id: 1, text: "Apertura de Sucursal", start_date: null, duration: null, parent: 0, progress: 0, open: true },
// { id: 2, text: "Direccion: evaluación de mercado", start_date: "2020/04/29 00:00", end_date: "2020/05/02 00:00",/*duration: 3,*/ parent: 1, progress: 0.25 },
// { id: 3, text: "RH: Personal requerido/ contrataciones", start_date: "2020/05/04 00:00", duration: 1, parent: 1, progress: 0 },
// { id: 4, text: "Logistica: inventario Inicial", start_date: "2020/04/26 00:00", duration: 10, parent: 1, progress: 0.50 },
// { id: 5, text: "Contabilidad: tramites y servicios", start_date: "2020/05/19 00:00", duration: 1, parent: 1, progress: 0 },
// { id: 6, text: "Propaganda,Mkt: Inaguración", start_date: "2020/05/05 00:00", duration: 6, parent: 1, progress: 0.1 },
// //{id: 7, text: "", start_date: "2020/05/ 00:00", duration:5, parent:1, progress: 1},
// //{id: 8, text: "", start_date: "2020/05/ 00:00", duration:5, parent:1, progress: 1},
// { id: 7, text: "Asamblea Anual", start_date: null, duration: null, parent: 0, progress: 0, open: true },
// { id: 8, text: "Contabilidad: Impuestos", start_date: "2020/05/05 00:00", duration: 13, parent: 7, progress: 0.6 },
// { id: 9, text: "Contabilida: utilidad o pérdida", start_date: "2020/05/06 00:00", duration: 9, parent: 7, progress: 0.5 },
// { id: 10, text: "Despacho: estategia Fiscal", start_date: "2020/05/14 00:00", duration: 11, parent: 7, progress: 0.33 },
// { id: 11, text: "Despacho: declaración anual", start_date: "2020/05/23 00:00", duration: 1, parent: 7, progress: 0 },
// { id: 12, text: "Despacho: informe", start_date: "2020/05/24 00:00", duration: 24, parent: 7, progress: 0 },
// { id: 13, text: "Tramites y servicios", start_date: "2020/05/ 00:00", duration: 5, parent: 7, progress: 0 },
// { id: 14, text: "Renovación licencia SCT", start_date: "2020/05/14 00:00", duration: 4, parent: 13, progress: 0 },
// { id: 15, text: "Permiso SSA año2020", start_date: "2020/05/18 00:00", duration: 14, parent: 13, progress: 0 },
// { id: 16, text: "Permiso SAT para Operar", start_date: "2020/05/03 00:00", duration: 6, parent: 13, progress: 0 }
//]
/*,
links:[
{id:1, source:2, target:3, type:"0"},
{id:2, source:3, target:4, type:"0"},
{id:3, source:5, target:6, type:"0"}
]*/
});
}
loadGant();
</script>
<%--<script>
var g = new JSGantt.GanttChart(document.getElementById('GanttChartDIV'), 'day');
g.setOptions({
vCaptionType: 'Complete', // Set to Show Caption : None,Caption,Resource,Duration,Complete,
vQuarterColWidth: 36,
vDateTaskDisplayFormat: 'day dd month yyyy', // Shown in tool tip box
vDayMajorDateDisplayFormat: 'mon yyyy - Week ww',// Set format to dates in the "Major" header of the "Day" view
vWeekMinorDateDisplayFormat: 'dd mon', // Set format to display dates in the "Minor" header of the "Week" view
vLang: 'en',
vShowTaskInfoLink: 1, // Show link in tool tip (0/1)
vShowEndWeekDate: 0, // Show/Hide the date for the last day of the week in header for daily
vAdditionalHeaders: { // Add data columns to your table
category: {
title: 'Category'
},
sector: {
title: 'Sector'
}
},
vUseSingleCell: 10000, // Set the threshold cell per table row (Helps performance for large data.
vFormatArr: ['Day', 'Week', 'Month', 'Hour'], // Even with setUseSingleCell using Hour format on such a large chart can cause issues in some browsers,
});
g.setLang('es');
// Load from a Json url
//JSGantt.parseJSON('./fixes/data.json', g);
// Or Adding Manually
//g.AddTaskItemObject({
// pID: 1,
// pName: "Define Chart <strong>API</strong><a class='btn btn-default newsubpro'><i class='fa fa-plus'></i></a>",
// pStart: "2017-02-25",
// pEnd: "2017-03-17",
// pPlanStart: "2017-04-01",
// pPlanEnd: "2017-04-15 12:00",
// pClass: "ggroupblack",
// pLink: "",
// pMile: 0,
// pRes: "Brian",
// pComp: 0,
// pGroup: 0,
// pParent: 0,
// pOpen: 1,
// pDepend: "",
// pCaption: "",
// pCost: 1000,
// pNotes: "Some Notes text",
// category: "My Category",
// sector: "Finance"
//});
g.AddTaskItemObject({pID: 1, pName: "Apertura de Sucursal", pStart: "2020/04/29",pEnd:"2020/05/20",pPlanStart: "2020/04/29 00:00",pPlanEnd:"2020/05/20 00:00", vDuration: 0, pParent:0, progress: 0, open: true});
g.AddTaskItemObject({pID: 2, pName: "Direccion: evaluación de mercado", pStart: "2020/04/29 00:00",pEnd:"2020/05/02 00:00", vDuration:3, pParent:1, progress: 0.25});
g.AddTaskItemObject({pID: 3, pName: "RH: Personal requerido/ contrataciones", pStart: "2020/05/04 00:00",pEnd:"2020/05/05 00:00", vDuration:1, pParent:1, progress: 0});
g.AddTaskItemObject({pID: 4, pName: "Logistica: inventario Inicial", pStart: "2020/04/26 00:00",pEnd:"2020/05/06 00:00", vDuration:10, pParent:1, progress: 0.50});
g.AddTaskItemObject({pID: 5, pName: "Contabilidad: tramites y servicios", pStart: "2020/05/19 00:00",pEnd:"2020/05/20 00:00", pDuration:1, pParent:1, progress: 0});
g.AddTaskItemObject({pID: 6, pName: "Propaganda,Mkt: Inaguración", pStart: "2020/05/05 00:00",pEnd:"2020/05/11 00:00", vDuration:6, pParent:1, progress: 0.1});
//{id: 7, text: "", start_date: "2020/05/ 00:00", duration:5, parent:1, progress: 1},
//{id: 8, text: "", start_date: "2020/05/ 00:00", duration:5, parent:1, progress: 1},
//g.AddTaskItemObject({pID: 7, pName: "Asamblea Anual", pStart: null, pDuration: 0, vParent:0, progress: 0, open: true});
//g.AddTaskItemObject({pID: 8, pName: "Contabilidad: Impuestos", pStart: "2020/05/05 00:00",pEnd:"2020/05/18 00:00", vDuration:13, pParent:7, progress: 0.6});
//g.AddTaskItemObject({pID: 9, pName: "Contabilida: utilidad o pérdida", pStart: "2020/05/06 00:00",pEnd:"2020/05/15 00:00", vDuration:9, pParent:7, progress: 0.5});
//g.AddTaskItemObject({pID: 10, pName: "Despacho: estategia Fiscal", pStart: "2020/05/14 00:00",pEnd:"2020/05/25 00:00", vDuration:11, pParent:7, progress: 0.33});
//g.AddTaskItemObject({pID: 11, pName: "Despacho: declaración anual", pStart: "2020/05/23 00:00",pEnd:"2020/05/24 00:00", vDuration:1, pParent:7, progress: 0});
//g.AddTaskItemObject({pID: 12, pName: "Despacho: informe", pStart: "2020/05/24 00:00", vDuration:24, parent:7, progress: 0});
//g.AddTaskItemObject({pID: 13, pName: "Tramites y servicios", pStart: "2020/05/20 00:00",pEnd:"2020/05/25 00:00", vDuration:5, pParent:7, progress: 0});
//g.AddTaskItemObject({pID: 14, pName: "Renovación licencia SCT", pStart: "2020/05/14 00:00",pEnd:"2020/05/18 00:00", vDuration:4, pParent:13, progress: 0});
//g.AddTaskItemObject({pID: 15, pName: "Permiso SSA año2020", pStart: "2020/05/18 00:00",pEnd:"2020/06/02 00:00", vDuration:14, pParent:13, progress: 0});
//g.AddTaskItemObject({pID: 16, pName: "Permiso SAT para Operar", pStart: "2020/05/03 00:00",pEnd:"2020/05/09 00:00", vDuration:6, pParent:13, progress: 0});
g.Draw();
</script>--%>
<script>
function CargaPickers() {
$.datetimepicker.setLocale('es');
$('input.ADDateTimePicker').each(function () {
var TThis = $(this);
TThis.datetimepicker({
dayOfWeekStart: 1,
lang: 'es',
format: 'd/m/Y H:i',
formatDate: 'd/m/Y H:i',
step: 30
});
var Div = TThis.parent()
var boton = document.createElement('span');
boton.className = "input-group-btn"
var subboton = document.createElement('a')
subboton.className = "btn default btnCalendar"
subboton.innerHTML = "<i class='fa fa-calendar'></i>"
subboton.addEventListener('click', function () {
TThis.datetimepicker('show')
});
boton.appendChild(subboton)
var agregar = true;
for (var i = 0; i < Div[0].children.length; i++) {
if (Div[0].children[i].isEqualNode(boton)) {
agregar = false;
}
}
if (agregar) {
Div[0].appendChild(boton);
}
//Div[0].appendChild(boton)
});
}
function ADSReady() {
CargaPickers();
}
</script>
</asp:Content>

215
OI/Proyecto.aspx.cs Normal file
View File

@@ -0,0 +1,215 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Extensiones;
public partial class OI_Proyecto : ClsPaginas
{
#region Propiedades
public const string iddivAgregarProyecto = "iddivAgregarProyecto";
public int RCveEvento { get { return ViewState["RCveEvento"] != null ? ViewState["RCveEvento"].ToString().ToEntero() : 0; } set { ViewState["RCveEvento"] = value; } }
public int RCveEventoB { get { return ViewState["RCveEventoB"] != null ? ViewState["RCveEventoB"].ToString().ToEntero() : 0; } set { ViewState["RCveEventoB"] = value; } }
public int Folio { get { return ViewState["Folio"] != null ? ViewState["Folio"].ToString().ToEntero() : 0; } set { ViewState["Folio"] = value; } }
public decimal Avance { get { return ViewState["Avance"] != null ? ViewState["Avance"].ToString().ToEntero() : 0; } set { ViewState["Avance"] = value; } }
public int CveUsuarioPara { get { return ViewState["CveUsuarioPara"].ToString().ToEntero(); } set { ViewState["CveUsuarioPara"] = value; } }
public int CveUsuarioDe { get { return ViewState["CveUsuarioDe"].ToString().ToEntero(); } set { ViewState["CveUsuarioDe"] = value; } }
public List<int> LCveUsuarioCCP { get { if (ViewState["LCveUsuarioCCP"] == null) { ViewState["LCveUsuarioCCP"] = new List<int>(); } return (List<int>)ViewState["LCveUsuarioCCP"]; } set { ViewState["LCveUsuarioCCP"] = value; } }
public List<int> LcveuserVisto { get { if (ViewState["LcveuserVisto"] == null) { ViewState["LcveuserVisto"] = new List<int>(); } return (List<int>)ViewState["LcveuserVisto"]; } set { ViewState["LcveuserVisto"] = value; } }
#endregion
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
if (Request["CveEvento"] != null)
{
RCveEvento = Request["CveEvento"].ToString().ToEntero();
}
if(RCveEvento > 0)
{
loadEvento();
}
DdlPara.DataSource = get_GlobalDTUsuarios(CveEmpresa: UsuarioActual.CveEmpresa).FiltraParametros("Estatus =1 ", "Rol ASC"); ;
DdlPara.DataBind();
DdlTema.DataSource = get_GlobalDTOIRevision(UsuarioActual.CveEmpresa).FiltraParametros(string.Format("CveUsuario = {0}", UsuarioActual.CveUsuario));
DdlTema.DataBind();
DdlTema.Items.Insert(0, new ListItem("Seleccione", "-1"));
}
}
public void loadEvento()
{
string separator = "";
StringBuilder str = new StringBuilder();
str.AppendLine("datosGant=[");
using (ClsOIEventos oieve = new ClsOIEventos())
{
if (oieve.GetTareaConHijos(RCveEvento,UsuarioActual.CveEmpresa))
{
foreach (System.Data.DataRow dr in oieve.DtResultados.Select("Nivel > 0"))
{
str.AppendLine(string.Format("{0}{{id: {1}, text: \"{2}\", start_date: \"{3:yyyy/MM/dd}\", end_date: \"{4:yyyy/MM/dd}\", parent: {5}, progress:{6}, open: true }}",
separator,dr["CveEvento"], dr["Asunto"].ToString().Replace("\\", "\\\\").Replace("\"", "\\\""), dr["FechaInicio"], dr["FechaFin"], (dr["Nivel"].ToString().ToEntero()<=1?0: dr["CveEventoPadre"].ToString().ToEntero()), dr["Avance"].ToString().ToDecimal()/100));
separator = ",";
}
}
}
str.AppendLine("];loadGant();");
this.RegistraScript(str.ToString());
UpContenido.Update();
//{ id: 2, text: "Direccion: evaluación de mercado", start_date: "2020/04/29 00:00", end_date: "2020/05/02 00:00",/*duration: 3,*/ parent: 1, progress: 0.25 }
}
protected void LnkNewProyecto_Click(object sender, EventArgs e)
{
this.RegistraScript(string.Format("$('#{0}').modal()", iddivAgregarProyecto));
RCveEventoB = RCveEvento;
}
protected void btnguardarProyecto_Click(object sender, EventArgs e)
{
string errorMessage = "";
int cveUsuarioDe = UsuarioActual.CveUsuario;
List<int> listaCCP = new List<int>();
int cveUsuarioPara = DdlPara.SelectedValue.ToEntero();
OITipoEventos cveTipoEvento = OITipoEventos.Proyecto;
string asunto = TxtAsunto.Text;
string descripcion = TxtDescripcion.Text;
int prioridad = DdlPrioridad.SelectedValue.ToEntero();
string fechaInicio = "";
if (txtFechaI.Text.ToDateTimeExcat().Year <= 1999)
{
if (txtFechaI.Text.ToDateTimeExcat("dd/MM/yyyy").Year <= 1999)
{
errorMessage = "No se ingresó una fecha de inicio valida";
}
else
{
fechaInicio = txtFechaI.Text.ToDateTimeExcat("dd/MM/yyyy").ToString("yyyy/MM/dd HH:mm");
}
}
else
{
fechaInicio = txtFechaI.Text.ToDateTimeExcat().ToString("yyyy/MM/dd HH:mm");
}
string fechaFin = "";
if (txtFechaF.Text.ToDateTimeExcat().Year <= 1999)
{
if (txtFechaF.Text.ToDateTimeExcat("dd/MM/yyyy").Year <= 1999)
{
errorMessage = "No se ingresó una fecha fin valida";
}
else
{
fechaFin = string.Format("{0:yyyy/MM/dd} 23:59", txtFechaF.Text.ToDateTimeExcat("dd/MM/yyyy"));
}
}
else
{
fechaFin = txtFechaF.Text.ToDateTimeExcat().ToString("yyyy/MM/dd HH:mm");
}
int cveRevision = DdlTema.SelectedValue.ToEntero();
string archivoname = "";
string rutaarchivoOri = "";
//string ArchivoExtencion = "";
//foreach (Archivo item in TxtArchivo.getfiles().Archivos)
//{
// archivoname = item.filenameO;
// ArchivoExtencion = string.Format("{0}{1}", (item.Extencion.Length > 0 ? "." : ""), item.Extencion);
// rutaarchivoOri = string.Format("{0}{1}{2}", AppDomain.CurrentDomain.BaseDirectory, item.patch, item.filename);
//}
int cveUsuarioIng = UsuarioActual.CveUsuario;
int cveEmpresa = UsuarioActual.CveEmpresa;
bool Continuar = false;
int Folio = -1;
int CveEvento = -1;
if (cveUsuarioDe <= 0)
{
errorMessage = "No se selecciono el miembro 'C C Para'";
}
if (cveUsuarioPara <= 0)
{
errorMessage = "No se selecciono el miembro 'Para'";
}
if (errorMessage.Length == 0)
{
List<string> chkList = new List<string>();
using (ClsOIEventos objOI = new ClsOIEventos())
{
objOI.IniciaTransacSQL();
Continuar = objOI.AddOI_Eventos2(cveTipoEvento, asunto, descripcion, prioridad, cveUsuarioDe, cveUsuarioPara, fechaInicio, fechaFin, cveRevision, archivoname, listaCCP, chkList, cveUsuarioIng, cveEmpresa, RCveEventoB);
CveEvento = objOI.CveEvento;
Folio = objOI.Folio;
if (CveEvento == 0)
{
Continuar = false;
}
if (Continuar)
{
objOI.Commit();
//ObjEventosCorreo o = objOI.objCorreo;
//string mailbody = MailgetBodyNuevatarea(o.Folio, o.Link, o.Asunto, o.Descripcion, o.Fechai, o.Fechaf, o.Prioridad, o.Tema);
//EnviarCorreo(UsuarioActual.Empresa, o.AsuntoCorreo, mailbody, o.mailPara, "");
}
else
{
objOI.RollBack();
Continuar = false;
}
}
if (Continuar && CveEvento > 0)
{
if (rutaarchivoOri.Length > 0)
{
string ruta = string.Format("{0}OIFiles\\", UsuarioActual.Empresa.Ruta);
if (!System.IO.Directory.Exists(ruta))
{
System.IO.Directory.CreateDirectory(ruta);
}
ruta = string.Format("{0}{1}\\", ruta, Folio);
if (!System.IO.Directory.Exists(ruta))
{
System.IO.Directory.CreateDirectory(ruta);
}
ruta = string.Format("{0}{1}", ruta, archivoname);//, ArchivoExtencion);
System.IO.File.Move(rutaarchivoOri, ruta);
}
//this.Alert("Se ha agregadó la nueva tarea", ModExtensiones.TipoMensaje.MsgInformacion, string.Format("location.replace(\"/OI/Proyecto.aspx?CveEvento={0}\");", CveEvento));
loadEvento();
TxtAsunto.Text = "";
TxtDescripcion.Text = "";
txtFechaF.Text = "";
txtFechaI.Text = "";
}
}
}
protected void BtnopenmodalClickGant_Click(object sender, EventArgs e)
{
this.RegistraScript(string.Format("$('#{0}').modal()", iddivAgregarProyecto));
RCveEventoB = txtCveEvento.Text.ToEntero();
}
}

View File

@@ -6,7 +6,7 @@
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="HB" runat="Server">
<li>
<asp:HyperLink runat="server" NavigateUrl="/OI/Minutas.aspx"><i class="fa fa-plus"></i>Crear Minuta</asp:HyperLink>
<asp:HyperLink runat="server" NavigateUrl="/OI/MinutaDetalle.aspx"><i class="fa fa-plus"></i>Crear Minuta</asp:HyperLink>
</li>
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="E" runat="Server">

View File

@@ -51,9 +51,9 @@ Partial Class OI_RepMinutas
'e.Row.Cells(1).Width = Unit.Pixel(200) 'Asunto
'e.Row.Cells(2).Width = Unit.Pixel(550) 'Descripcion
'e.Row.Cells(3).Width = Unit.Pixel(70) 'TareasTotal
e.Row.FCLiteral("LtlFechaInicio").Text = String.Format("<a class=""Texto"" href=""/OI/Minutas.aspx?CveEvento={0}"">{1}</a>", e.Row.DBCampo("CveEvento"), e.Row.DBCampo("FechaInicio").ToDateTime.ToString("dd/MM/yyyy"))
e.Row.FCLiteral("LtlAsunto").Text = String.Format("<a class=""Texto"" href=""/OI/Minutas.aspx?CveEvento={0}"">{1}</a>", e.Row.DBCampo("CveEvento"), e.Row.DBCampo("Asunto"))
e.Row.FCLiteral("LtlFechaInicio").Text = String.Format("<a class=""Texto"" href=""/OI/MinutaDetalle.aspx?CveEvento={0}"">{1}</a>", e.Row.DBCampo("CveEvento"), e.Row.DBCampo("FechaInicio").ToDateTime.ToString("dd/MM/yyyy"))
e.Row.FCLiteral("LtlAsunto").Text = String.Format("<a class=""Texto"" href=""/OI/MinutaDetalle.aspx?CveEvento={0}"">{1}</a>", e.Row.DBCampo("CveEvento"), e.Row.DBCampo("Asunto"))
End If
End Sub

239
OI/RepProyectos.aspx Normal file
View File

@@ -0,0 +1,239 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="RepProyectos.aspx.cs" Inherits="OI_RepProyectos" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<style>
.red-haze {
background-color: #f3565d;
}
.green-sharp {
background-color: #1bbc9b;
}
.yellow-saffron {
background-color: #F4D03F;
}
</style>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server">
Proyectos
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel ID="UpAcciones" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<li>
<asp:LinkButton ID="LnkNewProyecto" OnClick="LnkNewProyecto_Click" runat="server"><i class="fa fa-plus"></i> Agregar Proyecto</asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HA" runat="Server">
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpContenido" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvProyecto" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall" AutoGenerateColumns="False"
DataKeyNames="Titulo,NombreRegistro,CveEvento,CveTipoEvento,Folio,Asunto,Descripcion,Prioridad,CveUsuarioDe,CveUsuarioPara,CveEventoEstatus,FechaInicio,FechaFin,FechaRealTermino,CveRevision,Archivo,FechaIng,CveUsuarioIng,CveEmpresa,CveUsuarioModifico,Avance">
<Columns>
<asp:TemplateField HeaderText="Folio">
<ItemTemplate>
<a target="_blank" href='<%# Eval("CveEvento","/OI/Proyecto.aspx?CveEvento={0}")%>' class="Widthallimp">
<asp:Label runat="server" Text='<%# Eval("Folio")%>'> </asp:Label>
</a>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Proyecto">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("Asunto")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Descripción">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("Descripcion")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Para">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("UserPara")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha Inicio">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("FechaInicio","{0:dd/MM/yyyy HH}:{0:mm}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estatus">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("EventoEstatus")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Avance" ItemStyle-Width="156">
<ItemTemplate>
<div style="width: 150px; border: 1px solid #777;position:relative; text-align:center; height: 22px;">
<%# string.Format("<div style=\"width:{0}%; height:20px;left:0px;position: absolute;top: 0px;\" class=\"{2}\"></div><div style=\"text-align:center; left:0px;position: absolute;top: 0px;width:100%;font-weight: bold; \">{1}</div>",Eval("Avance"),Eval("Avance","%{0:##0.##}") ,
(Convert.ToDecimal(Eval("Avance").ToString())>70? "green-sharp":(Convert.ToDecimal(Eval("Avance").ToString())>35?"yellow-saffron":"red-haze")))
%>
</div>
<%--yellow-saffron--%>
<%--green-sharp--%>
<%--red-haze--%>
<%--<asp:Label runat="server" Text='<%# Eval("Avance","%{0:##0.##}")%>'> </asp:Label>--%>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<div id='<%= iddivAgregarProyecto %>' class="modal ADS fade" role="dialog">
<div class="modal-dialog">
<asp:UpdatePanel ID="UpModalProyecto" class="modal-content " tabindex="-1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span> </button>
<h4 class="modal-title" style="text-align: left">
<asp:Literal ID="LtlTituloNewProyecto" runat="server">Agregar Proyecto</asp:Literal></h4>
</div>
<div class="modal-body">
<asp:Panel runat="server" ID="portletTarea" class="portlet light smmallpadding bordered">
<div class="portlet-title">
<div class="caption font-green">
<i class="icon-pin font-green"></i>
<span class="caption-subject bold uppercase">Proyecto Nuevo</span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body rowpadding">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtAsunto" runat="server" CssClass="form-control" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVAsunto" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtAsunto" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Asunto''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Asunto:" AssociatedControlID="TxtAsunto"></asp:Label>
</div>
<div class="form-group form-md-line-input">
<asp:TextBox ID="TxtDescripcion" runat="server" CssClass="form-control" CausesValidation="true" TextMode="MultiLine" Rows="2"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvDescripcion" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtDescripcion" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Descripción''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Descripción" AssociatedControlID="TxtDescripcion"></asp:Label>
</div>
<div class="form-group form-md-line-input">
<asp:DropDownList ID="DdlPara" runat="server" CssClass="form-control select2me input-sm" DataValueField="CveUsuario" DataTextField="Nombre" Width="100%">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:Label runat="server" AssociatedControlID="DdlPara">Para:</asp:Label>
</div>
<div class="row">
<div class="col-sm-6">
<div class="input-group form-group form-md-line-input date date-picker " data-date-format="dd/mm/yyyy hh:mm" style="display: inline-block;">
<asp:TextBox ID="txtFechaI" runat="server" autocomplete="false" CssClass="form-control ADDateTimePicker" CausesValidation="true" MaxLength="18" Width="132px "></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVtxtFechaI" runat="server" ControlToValidate="txtFechaI" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Inicio''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label AssociatedControlID="txtFechaI" runat="server" Text="Fecha Inicio"></asp:Label>
<%--<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="txtFechaI" Mask="99/99/9999 99:99" MaskType="DateTime" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>--%>
<ajax:ValidatorCalloutExtender ID="VcoFechaI" runat="server" HighlightCssClass="vco" TargetControlID="RFVtxtFechaI" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="col-sm-6">
<div class="input-group form-group form-md-line-input date date-picker " data-date-format="dd/mm/yyyy hh:mm" style="display: inline-block;">
<asp:TextBox ID="txtFechaF" runat="server" autocomplete="false" CssClass="form-control ADDateTimePicker" CausesValidation="true" MaxLength="18" Width="132px " placeholder=""></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVtxtFechaF" runat="server" ControlToValidate="txtFechaF" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Fin''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label AssociatedControlID="txtFechaF" runat="server" Text="Fecha Fin"></asp:Label>
<%--<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="txtFechaI" Mask="99/99/9999 99:99" MaskType="DateTime" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>--%>
<ajax:ValidatorCalloutExtender ID="VcoFechaF" runat="server" HighlightCssClass="vco" TargetControlID="RFVtxtFechaF" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-6">
<div class="form-group form-md-line-input">
<asp:DropDownList ID="DdlPrioridad" runat="server" CssClass="form-control select2me input-sm" Width="100%">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
<asp:ListItem Text="Baja" Value="1" class="itembaja"></asp:ListItem>
<asp:ListItem Text="Media" Value="2" class="itemmedia"></asp:ListItem>
<asp:ListItem Text="Alta" Value="3" class="itemalta"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVPrioridad" runat="server" ControlToValidate="DdlPrioridad" Display="None" ErrorMessage="El campo <b>''Prioridad''</b> es necesario, por favor seleccione uno." InitialValue="-1" ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label runat="server" AssociatedControlID="DdlPrioridad">Prioridad:</asp:Label>
<ajax:ValidatorCalloutExtender ID="VCOPrio" runat="server" TargetControlID="RFVPrioridad" HighlightCssClass="vco" Width="300px"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="col-sm-6">
<div class="form-group form-md-line-input">
<asp:DropDownList ID="DdlTema" runat="server" CssClass="form-control select2me input-sm" DataValueField="CveRevision" DataTextField="Revision" Width="100%">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:Label runat="server" AssociatedControlID="DdlTema">Tema:</asp:Label>
</div>
</div>
</div>
</div>
</asp:Panel>
</div>
<div class="modal-footer">
<asp:LinkButton ID="btnguardarProyecto" OnClick="btnguardarProyecto_Click" CssClass="btn btn-primary" runat="server">Guardar</asp:LinkButton>
<button data-dismiss="modal" class="btn btn-danger">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
<script>
function CargaPickers() {
$.datetimepicker.setLocale('es');
$('input.ADDateTimePicker').each(function () {
var TThis = $(this);
TThis.datetimepicker({
dayOfWeekStart: 1,
lang: 'es',
format: 'd/m/Y H:i',
formatDate: 'd/m/Y H:i',
step: 30
});
var Div = TThis.parent()
var boton = document.createElement('span');
boton.className = "input-group-btn"
var subboton = document.createElement('a')
subboton.className = "btn default btnCalendar"
subboton.innerHTML = "<i class='fa fa-calendar'></i>"
subboton.addEventListener('click', function () {
TThis.datetimepicker('show')
});
boton.appendChild(subboton)
var agregar = true;
for (var i = 0; i < Div[0].children.length; i++) {
if (Div[0].children[i].isEqualNode(boton)) {
agregar = false;
}
}
if (agregar) {
Div[0].appendChild(boton);
}
//Div[0].appendChild(boton)
});
}
function ADSReady() {
CargaPickers();
}
</script>
</asp:Content>

180
OI/RepProyectos.aspx.cs Normal file
View File

@@ -0,0 +1,180 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Extensiones;
public partial class OI_RepProyectos : ClsPaginas
{
#region Propiedades
public const string iddivAgregarProyecto = "iddivAgregarProyecto";
#endregion
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
DdlPara.DataSource = get_GlobalDTUsuarios(CveEmpresa: UsuarioActual.CveEmpresa).FiltraParametros("Estatus =1 ", "Rol ASC"); ;
DdlPara.DataBind();
DdlTema.DataSource = get_GlobalDTOIRevision(UsuarioActual.CveEmpresa).FiltraParametros(string.Format("CveUsuario = {0}", UsuarioActual.CveUsuario));
DdlTema.DataBind();
DdlTema.Items.Insert(0, new ListItem("Seleccione", "-1"));
cargar();
}
}
public void cargar()
{
using (ClsOIEventos ObjOI_E = new ClsOIEventos())
{
if (ObjOI_E.GetEventos2(-1, UsuarioActual.CveEmpresa, -1) && ObjOI_E.DtResultados.Rows.Count > 0)
{
System.Data.DataTable dt = ObjOI_E.DtResultados;
GvProyecto.DataSource = dt.FiltraParametros(string.Format("CveTipoEvento ={0} AND (CveUsuarioDe ={1} OR CveUsuarioPara={1} ) AND (CveEventoPadre IS NULL OR CveEventoPadre <= 0)", (int)OITipoEventos.Proyecto, UsuarioActual.CveUsuario));
GvProyecto.DataBind();
}
}
UpContenido.Update();
}
protected void LnkNewProyecto_Click(object sender, EventArgs e)
{
this.RegistraScript(string.Format("$('#{0}').modal()", iddivAgregarProyecto));
}
protected void btnguardarProyecto_Click(object sender, EventArgs e)
{
string errorMessage = "";
int cveUsuarioDe = UsuarioActual.CveUsuario;
List<int> listaCCP = new List<int>();
int cveUsuarioPara = DdlPara.SelectedValue.ToEntero();
OITipoEventos cveTipoEvento = OITipoEventos.Proyecto;
string asunto = TxtAsunto.Text;
string descripcion = TxtDescripcion.Text;
int prioridad = DdlPrioridad.SelectedValue.ToEntero();
string fechaInicio = "";
if (txtFechaI.Text.ToDateTimeExcat().Year <= 1999)
{
if (txtFechaI.Text.ToDateTimeExcat("dd/MM/yyyy").Year <= 1999)
{
errorMessage = "No se ingresó una fecha de inicio valida";
}
else
{
fechaInicio = txtFechaI.Text.ToDateTimeExcat("dd/MM/yyyy").ToString("yyyy/MM/dd HH:mm");
}
}
else
{
fechaInicio = txtFechaI.Text.ToDateTimeExcat().ToString("yyyy/MM/dd HH:mm");
}
string fechaFin = "";
if (txtFechaF.Text.ToDateTimeExcat().Year <= 1999)
{
if (txtFechaF.Text.ToDateTimeExcat("dd/MM/yyyy").Year <= 1999)
{
errorMessage = "No se ingresó una fecha fin valida";
}
else
{
fechaFin = string.Format("{0:yyyy/MM/dd} 23:59", txtFechaF.Text.ToDateTimeExcat("dd/MM/yyyy"));
}
}
else
{
fechaFin = txtFechaF.Text.ToDateTimeExcat().ToString("yyyy/MM/dd HH:mm");
}
int cveRevision = DdlTema.SelectedValue.ToEntero();
string archivoname = "";
string rutaarchivoOri = "";
//string ArchivoExtencion = "";
//foreach (Archivo item in TxtArchivo.getfiles().Archivos)
//{
// archivoname = item.filenameO;
// ArchivoExtencion = string.Format("{0}{1}", (item.Extencion.Length > 0 ? "." : ""), item.Extencion);
// rutaarchivoOri = string.Format("{0}{1}{2}", AppDomain.CurrentDomain.BaseDirectory, item.patch, item.filename);
//}
int cveUsuarioIng = UsuarioActual.CveUsuario;
int cveEmpresa = UsuarioActual.CveEmpresa;
bool Continuar = false;
int Folio = -1;
int CveEvento = -1;
if (cveUsuarioDe <= 0)
{
errorMessage = "No se selecciono el miembro 'C C Para'";
}
if (cveUsuarioPara <= 0)
{
errorMessage = "No se selecciono el miembro 'Para'";
}
if (errorMessage.Length == 0)
{
List<string> chkList = new List<string>();
using (ClsOIEventos objOI = new ClsOIEventos())
{
objOI.IniciaTransacSQL();
Continuar = objOI.AddOI_Eventos2(cveTipoEvento, asunto, descripcion, prioridad, cveUsuarioDe, cveUsuarioPara, fechaInicio, fechaFin, cveRevision, archivoname, listaCCP, chkList, cveUsuarioIng, cveEmpresa);
CveEvento = objOI.CveEvento;
Folio = objOI.Folio;
if (CveEvento == 0)
{
Continuar = false;
}
if (Continuar)
{
objOI.Commit();
//ObjEventosCorreo o = objOI.objCorreo;
//string mailbody = MailgetBodyNuevatarea(o.Folio, o.Link, o.Asunto, o.Descripcion, o.Fechai, o.Fechaf, o.Prioridad, o.Tema);
//EnviarCorreo(UsuarioActual.Empresa, o.AsuntoCorreo, mailbody, o.mailPara, "");
}
else
{
objOI.RollBack();
Continuar = false;
}
}
if (Continuar && CveEvento > 0)
{
if (rutaarchivoOri.Length > 0)
{
string ruta = string.Format("{0}OIFiles\\", UsuarioActual.Empresa.Ruta);
if (!System.IO.Directory.Exists(ruta))
{
System.IO.Directory.CreateDirectory(ruta);
}
ruta = string.Format("{0}{1}\\", ruta, Folio);
if (!System.IO.Directory.Exists(ruta))
{
System.IO.Directory.CreateDirectory(ruta);
}
ruta = string.Format("{0}{1}", ruta, archivoname);//, ArchivoExtencion);
System.IO.File.Move(rutaarchivoOri, ruta);
}
//this.Alert("Se ha agregadó la nueva tarea", ModExtensiones.TipoMensaje.MsgInformacion, string.Format("location.replace(\"/OI/Proyecto.aspx?CveEvento={0}\");", CveEvento));
this.Alert("Se ha agregadó la nueva tarea", ModExtensiones.TipoMensaje.MsgInformacion);
cargar();
TxtAsunto.Text = "";
TxtDescripcion.Text = "";
txtFechaF.Text = "";
txtFechaI.Text = "";
}
}
}
}

View File

@@ -13,7 +13,7 @@
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="HB" runat="Server">
<li>
<a href="/OI/EventoDetalle.aspx?CveTipoEvento=1"><i class="fa fa-plus"></i>Nueva Tarea</a>
<a href="/OI/TareaDetalle.aspx?CveTipoEvento=1"><i class="fa fa-plus"></i>Nueva Tarea</a>
</li>
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="E" runat="Server">
@@ -27,7 +27,7 @@
<ContentTemplate>
<table style="width: 100%; border: 0; border-spacing: 0;">
<tr class="SubTotales3">
<td>Fecha Inicio:</td>
<td>Fecha Inicio de:</td>
<td>
<div class="input-group input-small date date-picker" data-date-format="dd/mm/yyyy">
<asp:TextBox ID="txtFechaI" runat="server" CssClass="form-control"></asp:TextBox>
@@ -42,7 +42,7 @@
<ajax:ValidatorCalloutExtender ID="vcoFfvFI" runat="server" HighlightCssClass="vco" TargetControlID="rfvFechaI" Width="350px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="vcoCvFI" runat="server" HighlightCssClass="vco" TargetControlID="cvFechaI" Width="350px"></ajax:ValidatorCalloutExtender>
</td>
<td>Fecha Fin:
<td>Fecha Inicio a:
</td>
<td>
<div class="input-group input-small date date-picker" data-date-format="dd/mm/yyyy">
@@ -64,7 +64,7 @@
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</td>
<td>Revisión:</td>
<td>Tema:</td>
<td>
<asp:DropDownList ID="DdlRevision" runat="server" AppendDataBoundItems="true" DataTextField="Revision" DataValueField="CveRevision" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 150px !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem>
@@ -78,6 +78,38 @@
<asp:Button ID="BtnEscritorio" runat="server" Text="Escritorio" class="btn btn-default" />
</td>
</tr>
<tr class="SubTotales3">
<td>Fecha Fin de:</td>
<td>
<div class="input-group input-small date date-picker" data-date-format="dd/mm/yyyy">
<asp:TextBox ID="TxtFechaFinde" runat="server" CssClass="form-control"></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="LnkFechaFinde" runat="server" class="btn default"><i class="fa fa-calendar"></i></asp:LinkButton>
</span>
</div>
<ajax:MaskedEditExtender ID="MaskedEditExtender1" runat="server" TargetControlID="TxtFechaFinde" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left" ErrorTooltipEnabled="True"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CalendarExtender1" TargetControlID="TxtFechaFinde" PopupButtonID="LnkFechaFinde" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
</td>
<td>Fecha Fin A:
</td>
<td>
<div class="input-group input-small date date-picker" data-date-format="dd/mm/yyyy">
<asp:TextBox ID="TxtFechaFinA" runat="server" CssClass="form-control"></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="LnkFechaFinA" runat="server" class="btn default"><i class="fa fa-calendar"></i></asp:LinkButton>
</span>
</div>
<ajax:MaskedEditExtender ID="MaskedEditExtender2" runat="server" TargetControlID="TxtFechaFinA" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CalendarExtender2" TargetControlID="TxtFechaFinA" PopupButtonID="LnkFechaFinA" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</table>
<asp:Timer runat="server" ID="TimmerRefresh" Interval="300000" OnTick="TimmerRefresh_Tick"></asp:Timer>
@@ -86,10 +118,101 @@
</asp:UpdatePanel>
<br />
<asp:UpdatePanel ID="UpGrafica" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="row">
<div class="col-xs-4">
<div class="dashboard-stat2 " style="border: 2px solid #DDD; margin-bottom: 0px;">
<div class="display">
<div class="number">
<h3 class="font-purple-soft">
<span>
<asp:Literal Text="0" ID="ltlGrafMEasiginaron" runat="server" /></span>
</h3>
<small>Me asignaron</small>
</div>
<div class="icon">
<i class="icon-user"></i>
</div>
</div>
<div class="progress-info">
<div class="progress">
<span style="width: 57%;" class="progress-bar progress-bar-success purple-soft">
<span class="sr-only">56% Avance</span>
</span>
</div>
<div class="status">
<div class="status-title">Avance </div>
<div class="status-number">57% </div>
</div>
</div>
</div>
</div>
<div class="col-xs-4">
<div class="dashboard-stat2 " style="border: 2px solid #DDD; margin-bottom: 0px;">
<div class="display">
<div class="number">
<h3 class="font-green-sharp">
<span>
<asp:Literal Text="0" ID="ltlgrafCcp" runat="server" /></span>
<small class="font-green-sharp"></small>
</h3>
<small>CCP</small>
</div>
<div class="icon">
<i class="icon-pie-chart"></i>
</div>
</div>
<div class="progress-info">
<div class="progress">
<span style="width: 76%;" class="progress-bar progress-bar-success green-sharp">
<span class="sr-only">76% Avance</span>
</span>
</div>
<div class="status">
<div class="status-title">Avance </div>
<div class="status-number">76% </div>
</div>
</div>
</div>
</div>
<div class="col-xs-4">
<div class="dashboard-stat2 " style="border: 2px solid #DDD; margin-bottom: 0px;">
<div class="display">
<div class="number">
<h3 class="font-red-haze">
<span>
<asp:Literal Text="0" ID="ltlgrafAsigne" runat="server" />
</span>
</h3>
<small>Asigne</small>
</div>
<div class="icon">
<i class="icon-like"></i>
</div>
</div>
<div class="progress-info">
<div class="progress">
<span style="width: 85%;" class="progress-bar progress-bar-success red-haze">
<span class="sr-only">85% Avance</span>
</span>
</div>
<div class="status">
<div class="status-title">Avance </div>
<div class="status-number">85% </div>
</div>
</div>
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<div>
<table width="100%">
<tr>
<td align="right" >
<td align="right">
<asp:UpdatePanel runat="server">
<ContentTemplate>
<code>
@@ -113,15 +236,15 @@
<asp:Literal Text="" ID="LtBurbujitaAsignaronAtendiendo" runat="server" />
</HeaderTemplate>
<ContentTemplate>
<div class="text-right">
<input type="text" id="TxtBusqueda1" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda1','{0}')", GvDatosOIEventosTareasAsignaron.ClientID) %>" style="display: inline-block;margin-right: -20px; width: 150px;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda1','{0}')", GvDatosOIEventosTareasAsignaron.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info" ><i class="icon-magnifier"></i></a>
<input type="text" id="TxtBusqueda1" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda1','{0}')", GvDatosOIEventosTareasAsignaron.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda1','{0}')", GvDatosOIEventosTareasAsignaron.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<table class="table Widthall">
<thead>
<tr class="Titulos">
<th width="40px">
<th width="40px">
<asp:LinkButton ID="LbFolio" runat="server" CausesValidation="False" Text="" CommandArgument="Folio0;0" OnClick="LbOrden_Click">
Folio
<asp:Literal ID="ImgFolio0" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
@@ -139,27 +262,45 @@
<asp:Literal ID="ImgAsunto0" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
<th width="150px">
<%--<th width="150px">
<asp:LinkButton ID="LbComentario" runat="server" CausesValidation="False" Text="" CommandArgument="Comentario0;0" OnClick="LbOrden_Click">
Comentario
<asp:Literal ID="ImgComentario0" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
</th>--%>
<th width="80px">
<asp:LinkButton ID="LbPrioridad" runat="server" CausesValidation="False" Text="" CommandArgument="Prioridad0;0" OnClick="LbOrden_Click">
Prioridad
<asp:Literal ID="ImgPrioridad0" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
<th width="50px">
<%--<th width="80px">
<asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="False" Text="" CommandArgument="Prioridad0;0" OnClick="LinkButton1_Click">
Tema
<asp:Literal ID="Literal1" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>--%>
<th width="80px">
<asp:LinkButton ID="LinkButton2" runat="server" CausesValidation="False" Text="" CommandArgument="Prioridad0;0" OnClick="LinkButton1_Click">
Fecha Inicio
<asp:Literal ID="Literal2" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
<th width="80px">
<asp:LinkButton ID="LinkButton3" runat="server" CausesValidation="False" Text="" CommandArgument="Prioridad0;0" OnClick="LinkButton1_Click">
Fecha Fin
<asp:Literal ID="Literal3" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
<%--<th width="50px">
<asp:LinkButton ID="LbOrden" runat="server" CausesValidation="False" Text="" CommandArgument="Orden0;0" OnClick="LbOrden_Click">
Orden
<asp:Literal ID="ImgOrden0" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
</th>--%>
<th width="150px">
<asp:LinkButton ID="LbRevision" runat="server" CausesValidation="False" Text="" CommandArgument="Revision0;0" OnClick="LbOrden_Click">
Revisión
Tema
<asp:Literal ID="ImgRevision0" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
@@ -175,17 +316,17 @@
<asp:Literal ID="ImgEventoEstatus0" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
<th width="100px" runat="server" id="ThEmpresa" visible="false">
<%--<th width="100px" runat="server" id="ThEmpresa" visible="false">
<asp:LinkButton ID="LbEmpresa" runat="server" CausesValidation="False" Text="" CommandArgument="Empresa;0" OnClick="LbOrden_Click">
Empresa
<asp:Literal ID="ImgEmpresa0" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
</th>--%>
</tr>
</thead>
</table>
<asp:UpdatePanel ID="UPDatosOIEventosTareasAsignaron" style="overflow-y:auto;" runat="server" UpdateMode="Conditional">
<asp:UpdatePanel ID="UPDatosOIEventosTareasAsignaron" style="overflow-y: auto;" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatosOIEventosTareasAsignaron" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontraron Registros" ShowHeader="false" CssClass="table table-hover Widthall" Style="margin-top: -5px; text-align: center;" GridLines="None">
<Columns>
@@ -204,21 +345,36 @@
<asp:Literal ID="LtlAsunto" runat="server" Text='<%# Eval("Asunto")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="150">
<%--<asp:TemplateField ItemStyle-Width="150">
<ItemTemplate>
<asp:Literal ID="LtlComentario" runat="server" Text='<%# Eval("Comentario")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
</asp:TemplateField>--%>
<asp:TemplateField ItemStyle-Width="80">
<ItemTemplate>
<asp:Literal ID="LtlPrioridad" runat="server" Text='<%# Eval("Prioridad")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="50">
<%--<asp:TemplateField ItemStyle-Width="80">
<ItemTemplate>
<asp:Literal ID="LtlRevision" runat="server" Text='<%# Eval("Revision")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>--%>
<asp:TemplateField ItemStyle-Width="80">
<ItemTemplate>
<asp:Literal ID="LtlFI" runat="server" Text='<%# Eval("FechaInicio", "{0:dd/MM/yyyy HH}:{0:MM}")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="80">
<ItemTemplate>
<asp:Literal ID="LtlFF" runat="server" Text='<%# Eval("FechaFin", "{0:dd/MM/yyyy HH}:{0:MM}")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<%--<asp:TemplateField ItemStyle-Width="50">
<ItemTemplate>
<asp:Literal ID="LtlOrden" runat="server" Text='<%# Eval("Orden", "{0:N0}")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
</asp:TemplateField>--%>
<asp:TemplateField ItemStyle-Width="150">
<ItemTemplate>
<asp:Literal ID="LtlRevision" runat="server" Text='<%# Eval("Revision")%>'></asp:Literal>
@@ -234,11 +390,11 @@
<asp:Literal ID="LtlEventoEstatus" runat="server" Text='<%# Eval("EventoEstatus")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="100" Visible="false">
<%--<asp:TemplateField ItemStyle-Width="100" Visible="false">
<ItemTemplate>
<asp:Literal ID="LtlEmpresa" runat="server" Text='<%# Eval("Empresa")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
</asp:TemplateField>--%>
</Columns>
<AlternatingRowStyle CssClass="TextoAlterno" />
<RowStyle CssClass="Texto" />
@@ -261,7 +417,7 @@
<input type="text" id="TxtBusqueda2" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda2','{0}')", GvDatosOIEventosTareasCCP.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda2','{0}')", GvDatosOIEventosTareasCCP.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<table class="table table-striped table-advance table-hover">
<table class="table table-striped table-advance table-hover Widthall">
<thead>
<tr class="Titulos">
<th width="40px">
@@ -290,13 +446,25 @@
<asp:Literal ID="ImgPrioridad1" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
<th width="120px">
<%--<th width="120px">
<asp:LinkButton ID="LbOrden1" runat="server" CausesValidation="False" Text="Orden" CommandArgument="Orden1;1" OnClick="LbOrden_Click">
<asp:Literal ID="ImgOrden1" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>--%>
<th width="80px">
<asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="False" Text="" CommandArgument="Prioridad0;0" OnClick="LinkButton1_Click">
Fecha Inicio
<asp:Literal ID="Literal1" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
<th width="80px">
<asp:LinkButton ID="LinkButton4" runat="server" CausesValidation="False" Text="" CommandArgument="Prioridad0;0" OnClick="LinkButton1_Click">
Fecha Fin
<asp:Literal ID="Literal4" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
<th width="120px">
<asp:LinkButton ID="LbRevision1" runat="server" CausesValidation="False" Text="Revisión" CommandArgument="Revision1;1" OnClick="LbOrden_Click">
<asp:LinkButton ID="LbRevision1" runat="server" CausesValidation="False" Text="Tema" CommandArgument="Revision1;1" OnClick="LbOrden_Click">
<asp:Literal ID="ImgRevision1" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
@@ -314,9 +482,9 @@
</thead>
</table>
<asp:UpdatePanel ID="UPDatosOIEventosTareasCCP" runat="server" style="overflow-y:auto;" UpdateMode="Conditional">
<asp:UpdatePanel ID="UPDatosOIEventosTareasCCP" runat="server" style="overflow-y: auto;" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatosOIEventosTareasCCP" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontraron Registros" ShowHeader="false" CssClass="table table-striped table-advance table-hover" Style="margin-top: -10px; text-align: center;" GridLines="None">
<asp:GridView ID="GvDatosOIEventosTareasCCP" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontraron Registros" ShowHeader="false" CssClass="table table-striped table-advance table-hover Widthall" Style="margin-top: -10px; text-align: center;" GridLines="None">
<Columns>
<asp:TemplateField ItemStyle-Width="40">
<ItemTemplate>
@@ -343,10 +511,20 @@
<asp:Literal ID="LtlPrioridad" runat="server" Text='<%# Eval("Prioridad")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="120">
<%--<asp:TemplateField ItemStyle-Width="120">
<ItemTemplate>
<asp:Literal ID="LtlOrden" runat="server" Text='<%# Eval("Orden", "{0:N0}")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>--%>
<asp:TemplateField ItemStyle-Width="80">
<ItemTemplate>
<asp:Literal ID="LtlFI" runat="server" Text='<%# Eval("FechaInicio", "{0:dd/MM/yyyy HH}:{0:MM}")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="80">
<ItemTemplate>
<asp:Literal ID="LtlFF" runat="server" Text='<%# Eval("FechaFin", "{0:dd/MM/yyyy HH}:{0:MM}")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="120">
<ItemTemplate>
@@ -385,7 +563,7 @@
<input type="text" id="TxtBusqueda3" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda3','{0}')", GvDatosOIEventosTareasAsigne.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda3','{0}')", GvDatosOIEventosTareasAsigne.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<table class="table table-striped table-advance table-hover">
<table class="table table-striped table-advance table-hover Widthall">
<thead>
<tr class="Titulos">
<th width="40px">
@@ -408,14 +586,27 @@
Prioridad
<asp:Literal ID="ImgPrioridad2" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton></th>
<th width="120px">
<%-- <th width="120px">
<asp:LinkButton ID="LbOrden2" runat="server" CausesValidation="False" Text="" CommandArgument="Orden2;2" OnClick="LbOrden_Click">
Orden
<asp:Literal ID="ImgOrden2" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton></th>
</asp:LinkButton></th>--%>
<th width="80px">
<asp:LinkButton ID="LinkButton5" runat="server" CausesValidation="False" Text="" CommandArgument="Prioridad0;0" OnClick="LinkButton1_Click">
Fecha Inicio
<asp:Literal ID="Literal5" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
<th width="80px">
<asp:LinkButton ID="LinkButton6" runat="server" CausesValidation="False" Text="" CommandArgument="Prioridad0;0" OnClick="LinkButton1_Click">
Fecha Fin
<asp:Literal ID="Literal6" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
<th width="120px">
<asp:LinkButton ID="LbRevision2" runat="server" CausesValidation="False" Text="" CommandArgument="Revision2;2" OnClick="LbOrden_Click">
Revisión
Tema
<asp:Literal ID="ImgRevision2" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton></th>
<th width="150px">
@@ -433,9 +624,9 @@
</table>
<asp:UpdatePanel ID="UPDatosOIEventosTareasAsigne" style="overflow-y:auto;" runat="server" UpdateMode="Conditional">
<asp:UpdatePanel ID="UPDatosOIEventosTareasAsigne" style="overflow-y: auto;" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatosOIEventosTareasAsigne" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontraron Registros" ShowHeader="false" CssClass="table table-striped table-advance table-hover" Style="margin-top: -10px; text-align: center;" GridLines="None">
<asp:GridView ID="GvDatosOIEventosTareasAsigne" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontraron Registros" ShowHeader="false" CssClass="table table-striped table-advance table-hover Widthall" Style="margin-top: -10px; text-align: center;" GridLines="None">
<Columns>
<asp:TemplateField ItemStyle-Width="40">
<ItemTemplate>
@@ -457,10 +648,20 @@
<asp:Literal ID="LtlPrioridad" runat="server" Text='<%# Eval("Prioridad")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="120">
<%--<asp:TemplateField ItemStyle-Width="120">
<ItemTemplate>
<asp:Literal ID="LtlOrden" runat="server" Text='<%# Eval("Orden", "{0:N0}")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>--%>
<asp:TemplateField ItemStyle-Width="80">
<ItemTemplate>
<asp:Literal ID="LtlFI" runat="server" Text='<%# Eval("FechaInicio", "{0:dd/MM/yyyy HH}:{0:MM}")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="80">
<ItemTemplate>
<asp:Literal ID="LtlFF" runat="server" Text='<%# Eval("FechaFin", "{0:dd/MM/yyyy HH}:{0:MM}")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="120">
<ItemTemplate>
@@ -554,7 +755,7 @@
}
function settamaños() {
var tamaño = $(window).height() - 350;
$('#<%= UPDatosOIEventosTareasAsignaron.ClientID() %>').css({ "max-height": tamaño+"px"});
$('#<%= UPDatosOIEventosTareasAsignaron.ClientID() %>').css({ "max-height": tamaño + "px" });
$('#<%= UPDatosOIEventosTareasCCP.ClientID() %>').css({ "max-height": tamaño + "px" });
$('#<%= UPDatosOIEventosTareasAsigne.ClientID() %>').css({ "max-height": tamaño + "px" });
}

View File

@@ -45,10 +45,10 @@ Partial Class OI_RepTareas
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
If UsuarioActual.CveRol = 1 Then
ThEmpresa.Visible = True
GvDatosOIEventosTareasAsignaron.Columns(9).Visible = True
End If
'If UsuarioActual.CveRol = 1 Then
' ThEmpresa.Visible = True
' GvDatosOIEventosTareasAsignaron.Columns(9).Visible = True
'End If
'ORDEN ASIGNADAS
ViewState("Orden0") = ""
@@ -66,6 +66,7 @@ Partial Class OI_RepTareas
CargaDatosOIEventosTareasAsigne()
CargaDatosOIEventosTareasCCP()
End If
UpGrafica.Update()
End Sub
Private Sub CargaFiltros()
@@ -108,7 +109,7 @@ Partial Class OI_RepTareas
If ObjProspectos.GetRepEventos(-1, -1, -1, "-1", "-1", -1, -1, -1, CveEventoEstatus, DdlRevision.SelectedValue.ToEntero, -1, "-1", -1, -1, -1, -1, -1, -1, -1, -1, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, FechaI, FechaF, TipoReporte:=TipoReporte) Then
DTOIEventosTareas = ObjProspectos.DtResultados.FiltraParametros(String.Format("CveUsuarioPara = {0} AND CveTipoEvento IN (1,3)", UsuarioActual.CveUsuario))
ltlGrafMEasiginaron.Text = DTOIEventosTareas.Rows.Count.ToString()
'BURBUJITAS - BADGE
If DTOIEventosTareas.FiltraParametros("EventoEstatus = 'Pendiente'").Rows.Count > 0 Then
LtBurbujitaAsignaronPendientes.Text = String.Format("<span Class='badge badge-danger' data-toggle='tooltip' data-placement='bottom' title='Pendientes'>{0}</span>", DTOIEventosTareas.FiltraParametros("EventoEstatus = 'Pendiente'").Rows.Count)
@@ -150,8 +151,8 @@ Partial Class OI_RepTareas
Protected Sub GvDatosOIEventosTareasAsignaron_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatosOIEventosTareasAsignaron.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
e.Row.FCLiteral("LtlUsuarioDe").Text = String.Format("<a Class=""Texto"" href=""/OI/EventoDetalle.aspx?CveTipoEvento={0}&CveEvento={1}"">{2}</a>", e.Row.DBCampo("CveTipoEvento"), e.Row.DBCampo("CveEvento"), e.Row.DBCampo("UsuarioDe"))
e.Row.FCLiteral("LtlAsunto").Text = String.Format("<a Class=""Texto"" href=""/OI/EventoDetalle.aspx?CveTipoEvento={0}&CveEvento={1}"">{2}</a>", e.Row.DBCampo("CveTipoEvento"), e.Row.DBCampo("CveEvento"), e.Row.DBCampo("Asunto"))
e.Row.FCLiteral("LtlUsuarioDe").Text = String.Format("<a Class=""Texto"" href=""/OI/TareaDetalle.aspx?CveTipoEvento={0}&CveEvento={1}"">{2}</a>", e.Row.DBCampo("CveTipoEvento"), e.Row.DBCampo("CveEvento"), e.Row.DBCampo("UsuarioDe"))
e.Row.FCLiteral("LtlAsunto").Text = String.Format("<a Class=""Texto"" href=""/OI/TareaDetalle.aspx?CveTipoEvento={0}&CveEvento={1}"">{2}</a>", e.Row.DBCampo("CveTipoEvento"), e.Row.DBCampo("CveEvento"), e.Row.DBCampo("Asunto"))
e.Row.Attributes.Add("onclick", String.Format("Previo({0});", e.Row.DBCampo("CveEvento")))
e.Row.Attributes.Add("onmouseover", "this.style.background='silver';this.style.cursor='pointer';")
@@ -175,7 +176,7 @@ Partial Class OI_RepTareas
If ObjProspectos.GetEventosUsuarioCCP(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, 1, DdlRevision.SelectedValue.ToEntero, FechaI, FechaF, CveEventoEstatus) Then
DTOIEventosTareasCCP = ObjProspectos.DtResultados.FiltraParametros(String.Format("CveUsuarioIng = {0} And CveTipoEvento In (1,3)", UsuarioActual.CveUsuario))
ltlgrafCcp.Text = DTOIEventosTareasCCP.Rows.Count.ToString()
'BURBUJITAS - BADGE
If DTOIEventosTareasCCP.FiltraParametros("EventoEstatus = 'Pendiente'").Rows.Count > 0 Then
LtBurbujitaCCPPendientes.Text = String.Format("<span Class='badge badge-danger' data-toggle='tooltip' data-placement='bottom' title='Pendientes'>{0}</span>", DTOIEventosTareasCCP.FiltraParametros("EventoEstatus = 'Pendiente'").Rows.Count)
@@ -216,9 +217,9 @@ Partial Class OI_RepTareas
End Sub
Protected Sub GvDatosOIEventosTareasCCP_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatosOIEventosTareasCCP.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
e.Row.FCLiteral("LtlUsuarioDe").Text = String.Format("<a class=""Texto"" href=""/OI/EventoDetalle.aspx?CveTipoEvento={0}&CveEvento={1}"">{2}</a>", e.Row.DBCampo("CveTipoEvento"), e.Row.DBCampo("CveEvento"), e.Row.DBCampo("UsuarioDe"))
e.Row.FCLiteral("LtlUsuarioPara").Text = String.Format("<a class=""Texto"" href=""/OI/EventoDetalle.aspx?CveTipoEvento={0}&CveEvento={1}"">{2}</a>", e.Row.DBCampo("CveTipoEvento"), e.Row.DBCampo("CveEvento"), e.Row.DBCampo("UsuarioDe"))
e.Row.FCLiteral("LtlAsunto").Text = String.Format("<a class=""Texto"" href=""/OI/EventoDetalle.aspx?CveTipoEvento={0}&CveEvento={1}"">{2}</a>", e.Row.DBCampo("CveTipoEvento"), e.Row.DBCampo("CveEvento"), e.Row.DBCampo("Asunto"))
e.Row.FCLiteral("LtlUsuarioDe").Text = String.Format("<a class=""Texto"" href=""/OI/TareaDetalle.aspx?CveTipoEvento={0}&CveEvento={1}"">{2}</a>", e.Row.DBCampo("CveTipoEvento"), e.Row.DBCampo("CveEvento"), e.Row.DBCampo("UsuarioDe"))
e.Row.FCLiteral("LtlUsuarioPara").Text = String.Format("<a class=""Texto"" href=""/OI/TareaDetalle.aspx?CveTipoEvento={0}&CveEvento={1}"">{2}</a>", e.Row.DBCampo("CveTipoEvento"), e.Row.DBCampo("CveEvento"), e.Row.DBCampo("UsuarioDe"))
e.Row.FCLiteral("LtlAsunto").Text = String.Format("<a class=""Texto"" href=""/OI/TareaDetalle.aspx?CveTipoEvento={0}&CveEvento={1}"">{2}</a>", e.Row.DBCampo("CveTipoEvento"), e.Row.DBCampo("CveEvento"), e.Row.DBCampo("Asunto"))
e.Row.Attributes.Add("onclick", String.Format("Previo({0});", e.Row.DBCampo("CveEvento")))
e.Row.Attributes.Add("onmouseover", "this.style.background='silver';this.style.cursor='pointer';")
@@ -242,7 +243,7 @@ Partial Class OI_RepTareas
If ObjProspectos.GetRepEventos(-1, -1, -1, "-1", "-1", -1, -1, -1, CveEventoEstatus, DdlRevision.SelectedValue.ToEntero, -1, "-1", -1, -1, -1, -1, -1, -1, -1, -1, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, FechaI, FechaF, TipoReporte:=TipoReporte) Then
DTOIEventosTareasAsigne = ObjProspectos.DtResultados.FiltraParametros(String.Format("CveUsuarioIng = {0} And CveTipoEvento In (1,3)", UsuarioActual.CveUsuario))
ltlgrafAsigne.Text = DTOIEventosTareasAsigne.Rows.Count.ToString()
'BURBUJITAS - BADGE
If DTOIEventosTareasAsigne.FiltraParametros("EventoEstatus = 'Pendiente'").Rows.Count > 0 Then
LtBurbujitaAsignePendientes.Text = String.Format("<span Class='badge badge-danger' data-toggle='tooltip' data-placement='bottom' title='Pendientes'>{0}</span>", DTOIEventosTareasAsigne.FiltraParametros("EventoEstatus = 'Pendiente'").Rows.Count)
@@ -282,8 +283,8 @@ Partial Class OI_RepTareas
End Sub
Protected Sub GvDatosOIEventosTareasAsigne_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatosOIEventosTareasAsigne.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
e.Row.FCLiteral("LtlUsuarioPara").Text = String.Format("<a class=""Texto"" href=""/OI/EventoDetalle.aspx?CveTipoEvento={0}&CveEvento={1}"">{2}</a>", e.Row.DBCampo("CveTipoEvento"), e.Row.DBCampo("CveEvento"), e.Row.DBCampo("UsuarioPara"))
e.Row.FCLiteral("LtlAsunto").Text = String.Format("<a class=""Texto"" href=""/OI/EventoDetalle.aspx?CveTipoEvento={0}&CveEvento={1}"">{2}</a>", e.Row.DBCampo("CveTipoEvento"), e.Row.DBCampo("CveEvento"), e.Row.DBCampo("Asunto"))
e.Row.FCLiteral("LtlUsuarioPara").Text = String.Format("<a class=""Texto"" href=""/OI/TareaDetalle.aspx?CveTipoEvento={0}&CveEvento={1}"">{2}</a>", e.Row.DBCampo("CveTipoEvento"), e.Row.DBCampo("CveEvento"), e.Row.DBCampo("UsuarioPara"))
e.Row.FCLiteral("LtlAsunto").Text = String.Format("<a class=""Texto"" href=""/OI/TareaDetalle.aspx?CveTipoEvento={0}&CveEvento={1}"">{2}</a>", e.Row.DBCampo("CveTipoEvento"), e.Row.DBCampo("CveEvento"), e.Row.DBCampo("Asunto"))
e.Row.Attributes.Add("onclick", String.Format("Previo({0});", e.Row.DBCampo("CveEvento")))
e.Row.Attributes.Add("onmouseover", "this.style.background='silver';this.style.cursor='pointer';")
@@ -393,4 +394,7 @@ Partial Class OI_RepTareas
Protected Sub LinkButton1_Click(sender As Object, e As EventArgs)
End Sub
End Class

View File

@@ -1,384 +1,80 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="RepTareas2.aspx.cs" Inherits="OI_RepTareas2" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
<asp:Content ID="Content1" ContentPlaceHolderID="CP" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<style>
.btn.btnCalendar {
padding: 5px 10px;
}
.btn.btn-circle.btn-icon-only.btnsmalli {
padding: 5px 7px 5px;
height: 27px;
width: 27px;
line-height: 1;
}
.btn.btnsmalli > i {
font-size: 10px;
}
.titletable {
background-color: #e1e5ec;
}
#Gvmiembros tr > td:nth-child(2) {
width: 30px;
text-align: right;
}
</style>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" Runat="Server">
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server">
<asp:Content ID="Content3" ContentPlaceHolderID="E" Runat="Server">
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server">
<asp:Content ID="Content4" ContentPlaceHolderID="HB" Runat="Server">
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<li>
<asp:LinkButton ID="LnkAddEvento" OnClick="LnkAddEvento_Click" runat="server"><i class="fa fa-plus"></i> Agregar Tarea</asp:LinkButton>
</li>
<asp:Content ID="Content5" ContentPlaceHolderID="H" Runat="Server">
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HA" runat="Server">
<asp:Content ID="Content6" ContentPlaceHolderID="HA" Runat="Server">
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="C" runat="Server">
<div id='<%= iddivAgregar %>' class="modal ADS fade" role="dialog">
<div class="modal-dialog modal-lg">
<asp:UpdatePanel ID="UpAgregarConductor" class="modal-content " tabindex="-1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span> </button>
<h4 class="modal-title" style="text-align: left">
<asp:Literal ID="LtleventoTitle" runat="server">Agregar Tarea</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="row">
<div class="col-md-7">
<div class="portlet light smmallpadding bordered">
<div class="portlet-title">
<div class="caption font-green">
<i class="icon-pin font-green"></i>
<span class="caption-subject bold uppercase">Tarea</span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body rowpadding">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtAsunto" runat="server" CssClass="form-control" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVAsunto" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtAsunto" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Asunto''</b> es necesario, por favor ingréselo." ValidationGroup="GrpConductor"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Asunto:" AssociatedControlID="TxtAsunto"></asp:Label>
</div>
<div class="form-group form-md-line-input">
<asp:TextBox ID="TxtDescripcion" runat="server" CssClass="form-control" CausesValidation="true" TextMode="MultiLine" Rows="3"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvDescripcion" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtDescripcion" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Descripción''</b> es necesario, por favor ingréselo." ValidationGroup="GrpConductor"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Descripción" AssociatedControlID="TxtDescripcion"></asp:Label>
</div>
<div class="row">
<div class="col-sm-6">
<div class="input-group form-group form-md-line-input date date-picker " data-date-format="dd/mm/yyyy hh:mm" style="display: inline-block;">
<asp:TextBox ID="txtFechaI" runat="server" autocomplete="false" CssClass="form-control input-sm ADDateTimePicker" CausesValidation="true" MaxLength="18" Width="132px "></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVtxtFechaI" runat="server" ControlToValidate="txtFechaI" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Inicio''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpFechas"></asp:RequiredFieldValidator>
<asp:Label AssociatedControlID="txtFechaI" runat="server" Text="Fecha Inicio"></asp:Label>
<%--<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="txtFechaI" Mask="99/99/9999 99:99" MaskType="DateTime" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>--%>
<ajax:ValidatorCalloutExtender ID="VcoFechaI" runat="server" HighlightCssClass="vco" TargetControlID="RFVtxtFechaI" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="col-sm-6">
<div class="input-group form-group form-md-line-input date date-picker " data-date-format="dd/mm/yyyy hh:mm" style="display: inline-block;">
<asp:TextBox ID="txtFechaF" runat="server" autocomplete="false" CssClass="form-control input-sm ADDateTimePicker" CausesValidation="true" MaxLength="18" Width="132px " placeholder=""></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVtxtFechaF" runat="server" ControlToValidate="txtFechaF" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Fin''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpFechas"></asp:RequiredFieldValidator>
<asp:Label AssociatedControlID="txtFechaF" runat="server" Text="Fecha Fin"></asp:Label>
<%--<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="txtFechaI" Mask="99/99/9999 99:99" MaskType="DateTime" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>--%>
<ajax:ValidatorCalloutExtender ID="VcoFechaF" runat="server" HighlightCssClass="vco" TargetControlID="RFVtxtFechaF" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-6">
<div class="form-group form-md-line-input">
<asp:DropDownList ID="DdlPrioridad" runat="server" CssClass="form-control select2me input-sm" Width="100%">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
<asp:ListItem Text="Baja" Value="1" style="color: #00CC00;"></asp:ListItem>
<asp:ListItem Text="Media" Value="2" style="color: #000000;"></asp:ListItem>
<asp:ListItem Text="Alta" Value="3" style="color: #FF0000;"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVPrioridad" runat="server" ControlToValidate="DdlPrioridad" Display="None" ErrorMessage="El campo <b>''Prioridad''</b> es necesario, por favor seleccione uno." InitialValue="-1" ValidationGroup="Guarda"></asp:RequiredFieldValidator>
<asp:Label runat="server" AssociatedControlID="DdlPrioridad">Prioridad:</asp:Label>
<ajax:ValidatorCalloutExtender ID="VCOPrio" runat="server" TargetControlID="RFVPrioridad" HighlightCssClass="vco" Width="300px"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="col-sm-6">
<div class="form-group form-md-line-input">
<asp:DropDownList ID="DdlRevision" runat="server" CssClass="form-control select2me input-sm" DataValueField="CveRevision" DataTextField="Revision" Width="100%">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:Label runat="server" AssociatedControlID="DdlRevision">Revisión:</asp:Label>
</div>
</div>
</div>
</div>
</div>
<div class="portlet light smmallpadding bordered">
<div class="portlet-title">
<div class="caption font-green">
<i class="fa fa-check-square-o font-green"></i>
<span class="caption-subject bold uppercase">CheckList (2/5)</span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body rowpadding">
<div class="row">
<div class="col-md-8">
<div class="form-group form-md-line-input">
<asp:TextBox ID="TxtActividad" runat="server" CssClass="form-control" CausesValidation="true" TextMode="MultiLine" Rows="1"></asp:TextBox>
<asp:Label runat="server" Text="Agregar Actividad" AssociatedControlID="TxtActividad"></asp:Label>
</div>
</div>
<div class="col-md-4">
<a class="btn btn-default">Agregar</a>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-5">
<div class="portlet light smmallpadding bordered">
<div class="portlet-title">
<div class="caption font-green">
<i class="icon-pin font-green"></i>
<span class="caption-subject bold uppercase">Estatus</span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body rowpadding">
<div class="form-group form-md-line-input">
<asp:DropDownList ID="DdlEventoEstatus" Visible="true" runat="server" DataValueField="CveEventoEstatus" CssClass="form-control select2me input-sm" Width="100%" DataTextField="EventoEstatus">
</asp:DropDownList>
<asp:Label runat="server" AssociatedControlID="DdlEventoEstatus">Estatus:</asp:Label>
</div>
</div>
</div>
<div class="portlet light smmallpadding bordered">
<div class="portlet-title">
<div class="caption font-green">
<i class="fa fa-user-plus font-green"></i>
<span class="caption-subject bold uppercase">Miembros</span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body rowpadding">
<div class="row">
<div class="col-md-10">
<div class="form-group form-md-line-input">
<asp:DropDownList ID="DdlUsuario" Visible="true" runat="server" CssClass="form-control select2me input-sm" Width="100%" DataValueField="CveUsuario" DataTextField="Usuario">
</asp:DropDownList>
<asp:Label runat="server" AssociatedControlID="DdlUsuario">Usuario:</asp:Label>
</div>
</div>
<div class="col-md-2" style="direction: rtl; padding-top: 15px;">
<a class="btn btn-default"><i class="fa fa-plus"></i></a>
</div>
</div>
<table id="Gvmiembros" class="Widthall">
<tr class="titletable">
<td colspan="2">Para</td>
</tr>
<tr>
<td>jorge caudillo</td>
<td><a class="btn btn-circle btn-icon-only red btnsmalli"><i class='icon-trash'></i></a></td>
</tr>
<tr class="titletable">
<td colspan="2">Con copia para</td>
</tr>
<tr>
<td>Julian Moreno</td>
<td><a class="btn btn-circle btn-icon-only red btnsmalli"><i class='icon-trash'></i></a></td>
</tr>
</table>
</div>
</div>
</div>
<asp:Content ID="Content7" ContentPlaceHolderID="C" Runat="Server">
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" Runat="Server">
<asp:UpdatePanel ID="UPFiltros" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<table style="width: 100%; border: 0; border-spacing: 0;">
<tr class="SubTotales3">
<td>Fecha Inicio:</td>
<td>
<div class="input-group input-small date date-picker" data-date-format="dd/mm/yyyy">
<asp:TextBox ID="txtFechaI" runat="server" CssClass="form-control"></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="imgCalendario" runat="server" class="btn default"><i class="fa fa-calendar"></i></asp:LinkButton>
</span>
</div>
<div class="portlet light smmallpadding bordered">
<div class="portlet-title">
<div class="caption font-green">
<i class="fa fa-bars font-green"></i>
<span class="caption-subject bold uppercase">Registro de actividades</span>
</div>
<div class="tools">
<a href="javascript:;" class="expand" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body rowpadding" style="display: none;">
<div class="row">
<div class="col-md-8">
<div class="form-group form-md-line-input">
<asp:TextBox ID="TxtComentario" runat="server" CssClass="form-control" CausesValidation="true" TextMode="MultiLine" Rows="1"></asp:TextBox>
<asp:Label runat="server" Text="Agregar Comentario" AssociatedControlID="TxtComentario"></asp:Label>
</div>
</div>
<div class="col-md-4">
<a class="btn btn-default">Agregar</a>
</div>
</div>
<table class="Widthall table ">
<tbody>
<tr>
<td>19/04/2020 </td>
<td>comentario con archivo</td>
<td><a><i class="fa fa-download"></i></a></td>
</tr>
<tr>
<td>19/04/2020 </td>
<td>comentario</td>
</tr>
<tr>
<td>19/04/2020 </td>
<td>Se termino la activada y del checklist</td>
</tr>
<tr>
<td>19/04/2020 </td>
<td>Se termino la activada x del checklist</td>
</tr>
<tr>
<td>19/04/2020 </td>
<td>Se agrego la activada p al checklist</td>
</tr>
<tr>
<td>19/04/2020 </td>
<td>Se agrego la activada w al checklist</td>
</tr>
<tr>
<td>19/04/2020 </td>
<td>Se agrego la activada z al checklist</td>
</tr>
<tr>
<td>19/04/2020 </td>
<td>Se agrego la activada y al checklist</td>
</tr>
<tr>
<td>19/04/2020 </td>
<td>Se agrego la activada x al checklist</td>
</tr>
<tr>
<td>19/04/2020 </td>
<td>Se registro la tarea oi</td>
</tr>
</tbody>
</table>
</div>
<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="txtFechaI" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left" ErrorTooltipEnabled="True"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="Calendario" TargetControlID="txtFechaI" PopupButtonID="ImgCalendario" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="rfvFechaI" runat="server" ControlToValidate="txtFechaI" Display="None" ErrorMessage="El campo <b>''Fecha Inicial''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="Valida"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="cvFechaI" runat="server" ControlToValidate="txtFechaI" Display="None" ErrorMessage="El campo <b>''Fecha Inicial''</b> no tienes el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="Valida"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="vcoFfvFI" runat="server" HighlightCssClass="vco" TargetControlID="rfvFechaI" Width="350px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="vcoCvFI" runat="server" HighlightCssClass="vco" TargetControlID="cvFechaI" Width="350px"></ajax:ValidatorCalloutExtender>
</td>
<td>Fecha Fin:
</td>
<td>
<div class="input-group input-small date date-picker" data-date-format="dd/mm/yyyy">
<asp:TextBox ID="txtFechaF" runat="server" CssClass="form-control"></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="imgCalendarioF" runat="server" class="btn default"><i class="fa fa-calendar"></i></asp:LinkButton>
</span>
</div>
<ajax:MaskedEditExtender ID="MEEFechaF" runat="server" TargetControlID="txtFechaF" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="Calendario2" TargetControlID="txtFechaF" PopupButtonID="imgCalendarioF" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="rfvFechaF" runat="server" ControlToValidate="txtFechaF" Display="None" ErrorMessage="El campo <b>''Fecha Final''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="Valida"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="cvFechaF" runat="server" ControlToValidate="txtFechaF" Display="None" ErrorMessage="El campo <b>''Fecha Final''</b> no tienes el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="Valida"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="vcoRfvFF" runat="server" HighlightCssClass="vco" TargetControlID="rfvFechaF" Width="350px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="vcoCvFF" runat="server" HighlightCssClass="vco" TargetControlID="cvFechaF" Width="350px"></ajax:ValidatorCalloutExtender>
</td>
<td>Estatus:</td>
<td>
<asp:DropDownList ID="DdlEventoEstatus" runat="server" AppendDataBoundItems="true" DataTextField="EventoEstatus" DataValueField="CveEventoEstatus" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 150px !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</td>
<td>Tema:</td>
<td>
<asp:DropDownList ID="DdlRevision" runat="server" AppendDataBoundItems="true" DataTextField="Revision" DataValueField="CveRevision" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 150px !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem>
<asp:ListItem Text="Sin Revisión" Value="-2"></asp:ListItem>
</asp:DropDownList>
</td>
<td>
<asp:Button ID="BtnConsultar" runat="server" Text="Consultar" class="btn btn-default" />
</td>
<td>
<asp:Button ID="BtnEscritorio" runat="server" Text="Escritorio" class="btn btn-default" />
</td>
</tr>
</table>
<%--<div class="row" style="margin-top: 10px; margin-bottom: 10px;">
<div class="col-md-2">Vencimiento de Licencia:</div>
<div class="col-md-4">
<div class="input-group input-sm date date-picker " data-date-format="dd/mm/yyyy" style="display: inline-block;">
<asp:TextBox ID="TxtFechaVenc" runat="server" CssClass="form-control input-sm" CausesValidation="true" MaxLength="10" Width="82px "></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="imgCalendarioF" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
</div>
<ajax:MaskedEditExtender ID="MEEFechaF" runat="server" TargetControlID="TxtFechaVenc" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="Calendario2" TargetControlID="TxtFechaVenc" PopupButtonID="imgCalendarioF" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="rfvFechaF" runat="server" ControlToValidate="TxtFechaVenc" Display="None" ErrorMessage="El campo <b>''Fecha Vencimiento''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="Valida"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="cvFechaF" runat="server" ControlToValidate="TxtFechaVenc" Display="None" ErrorMessage="El campo <b>''Fecha Vencimiento''</b> no tienes el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="Valida"></asp:CompareValidator>
</div>
<div class="col-md-2">Fecha de Nacimiento:</div>
<div class="col-md-4">
<div class="input-group input-sm date date-picker " data-date-format="dd/mm/yyyy" style="display: inline-block;">
<asp:TextBox ID="TxtFechaNacimiento" runat="server" CssClass="form-control input-sm" CausesValidation="true" MaxLength="10" Width="82px "></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="imgCalendarioN" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
</div>
<ajax:MaskedEditExtender ID="MaskedEditExtender1" runat="server" TargetControlID="TxtFechaNacimiento" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CalendarExtender1" TargetControlID="TxtFechaNacimiento" PopupButtonID="imgCalendarioN" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" ControlToValidate="TxtFechaNacimiento" Display="None" ErrorMessage="El campo <b>''Fecha Vencimiento''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="Valida"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CompareValidator1" runat="server" ControlToValidate="TxtFechaNacimiento" Display="None" ErrorMessage="El campo <b>''Fecha Vencimiento''</b> no tienes el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="Valida"></asp:CompareValidator>
</div>
</div>
<div id="dvEstatus" runat="server" class="form-group form-md-line-input input-iconright">
<label>Activo: </label>
<br />
<asp:CheckBox ID="CheckBox1" Text=" " runat="server" CssClass="chksino" Width="250px"></asp:CheckBox>
</div>--%>
</div>
<div class="modal-footer">
<%--<asp:LinkButton ID="LnkAddConductor" OnClick="LnkAddConductor_Click" runat="server" Text="Agregar" CssClass="btn btn-primary" ValidationGroup="GrpConductor"></asp:LinkButton>--%>
<button data-dismiss="modal" class="btn btn-default">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
<script>
function CargaPickers() {
$.datetimepicker.setLocale('es');
$('input.ADDateTimePicker').each(function () {
var TThis = $(this);
TThis.datetimepicker({
dayOfWeekStart: 1,
lang: 'es',
format: 'd/m/Y H:i',
formatDate: 'd/m/Y H:i',
step: 30
});
var Div = TThis.parent()
var boton = document.createElement('span');
boton.className = "input-group-btn"
var subboton = document.createElement('a')
subboton.className = "btn default btnCalendar"
subboton.innerHTML = "<i class='fa fa-calendar'></i>"
subboton.addEventListener('click', function () {
TThis.datetimepicker('show')
});
boton.appendChild(subboton)
var agregar = true;
for (var i = 0; i < Div[0].children.length; i++) {
if (Div[0].children[i].isEqualNode(boton)) {
agregar = false;
}
}
if (agregar) {
Div[0].appendChild(boton);
}
//Div[0].appendChild(boton)
});
}
Sys.Application.add_load(function (s, e) {
CargaPickers();
});
$(document).ready(function () {
CargaPickers();
});
</script>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>

View File

@@ -8,15 +8,8 @@ using Extensiones;
public partial class OI_RepTareas2 : System.Web.UI.Page
{
public const string iddivAgregar = "divModalAgregarEvento";
protected void Page_Load(object sender, EventArgs e)
{
}
protected void LnkAddEvento_Click(object sender, EventArgs e)
{
this.RegistraScript(string.Format("$('#{0}').modal()", iddivAgregar));
}
}

384
OI/RepTareas3.aspx Normal file
View File

@@ -0,0 +1,384 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="RepTareas3.aspx.cs" Inherits="OI_RepTareas3" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<style>
.btn.btnCalendar {
padding: 5px 10px;
}
.btn.btn-circle.btn-icon-only.btnsmalli {
padding: 5px 7px 5px;
height: 27px;
width: 27px;
line-height: 1;
}
.btn.btnsmalli > i {
font-size: 10px;
}
.titletable {
background-color: #e1e5ec;
}
#Gvmiembros tr > td:nth-child(2) {
width: 30px;
text-align: right;
}
</style>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server">
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<li>
<asp:LinkButton ID="LnkAddEvento" OnClick="LnkAddEvento_Click" runat="server"><i class="fa fa-plus"></i> Agregar Tarea</asp:LinkButton>
</li>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HA" runat="Server">
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="C" runat="Server">
<div id='<%= iddivAgregar %>' class="modal ADS fade" role="dialog">
<div class="modal-dialog modal-lg">
<asp:UpdatePanel ID="UpAgregarConductor" class="modal-content " tabindex="-1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span> </button>
<h4 class="modal-title" style="text-align: left">
<asp:Literal ID="LtleventoTitle" runat="server">Agregar Tarea</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="row">
<div class="col-md-7">
<div class="portlet light smmallpadding bordered">
<div class="portlet-title">
<div class="caption font-green">
<i class="icon-pin font-green"></i>
<span class="caption-subject bold uppercase">Tarea</span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body rowpadding">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtAsunto" runat="server" CssClass="form-control" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVAsunto" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtAsunto" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Asunto''</b> es necesario, por favor ingréselo." ValidationGroup="GrpConductor"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Asunto:" AssociatedControlID="TxtAsunto"></asp:Label>
</div>
<div class="form-group form-md-line-input">
<asp:TextBox ID="TxtDescripcion" runat="server" CssClass="form-control" CausesValidation="true" TextMode="MultiLine" Rows="3"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvDescripcion" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtDescripcion" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Descripción''</b> es necesario, por favor ingréselo." ValidationGroup="GrpConductor"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Descripción" AssociatedControlID="TxtDescripcion"></asp:Label>
</div>
<div class="row">
<div class="col-sm-6">
<div class="input-group form-group form-md-line-input date date-picker " data-date-format="dd/mm/yyyy hh:mm" style="display: inline-block;">
<asp:TextBox ID="txtFechaI" runat="server" autocomplete="false" CssClass="form-control input-sm ADDateTimePicker" CausesValidation="true" MaxLength="18" Width="132px "></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVtxtFechaI" runat="server" ControlToValidate="txtFechaI" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Inicio''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpFechas"></asp:RequiredFieldValidator>
<asp:Label AssociatedControlID="txtFechaI" runat="server" Text="Fecha Inicio"></asp:Label>
<%--<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="txtFechaI" Mask="99/99/9999 99:99" MaskType="DateTime" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>--%>
<ajax:ValidatorCalloutExtender ID="VcoFechaI" runat="server" HighlightCssClass="vco" TargetControlID="RFVtxtFechaI" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="col-sm-6">
<div class="input-group form-group form-md-line-input date date-picker " data-date-format="dd/mm/yyyy hh:mm" style="display: inline-block;">
<asp:TextBox ID="txtFechaF" runat="server" autocomplete="false" CssClass="form-control input-sm ADDateTimePicker" CausesValidation="true" MaxLength="18" Width="132px " placeholder=""></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVtxtFechaF" runat="server" ControlToValidate="txtFechaF" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Fin''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpFechas"></asp:RequiredFieldValidator>
<asp:Label AssociatedControlID="txtFechaF" runat="server" Text="Fecha Fin"></asp:Label>
<%--<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="txtFechaI" Mask="99/99/9999 99:99" MaskType="DateTime" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>--%>
<ajax:ValidatorCalloutExtender ID="VcoFechaF" runat="server" HighlightCssClass="vco" TargetControlID="RFVtxtFechaF" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-6">
<div class="form-group form-md-line-input">
<asp:DropDownList ID="DdlPrioridad" runat="server" CssClass="form-control select2me input-sm" Width="100%">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
<asp:ListItem Text="Baja" Value="1" style="color: #00CC00;"></asp:ListItem>
<asp:ListItem Text="Media" Value="2" style="color: #000000;"></asp:ListItem>
<asp:ListItem Text="Alta" Value="3" style="color: #FF0000;"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVPrioridad" runat="server" ControlToValidate="DdlPrioridad" Display="None" ErrorMessage="El campo <b>''Prioridad''</b> es necesario, por favor seleccione uno." InitialValue="-1" ValidationGroup="Guarda"></asp:RequiredFieldValidator>
<asp:Label runat="server" AssociatedControlID="DdlPrioridad">Prioridad:</asp:Label>
<ajax:ValidatorCalloutExtender ID="VCOPrio" runat="server" TargetControlID="RFVPrioridad" HighlightCssClass="vco" Width="300px"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="col-sm-6">
<div class="form-group form-md-line-input">
<asp:DropDownList ID="DdlRevision" runat="server" CssClass="form-control select2me input-sm" DataValueField="CveRevision" DataTextField="Revision" Width="100%">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:Label runat="server" AssociatedControlID="DdlRevision">Revisión:</asp:Label>
</div>
</div>
</div>
</div>
</div>
<div class="portlet light smmallpadding bordered">
<div class="portlet-title">
<div class="caption font-green">
<i class="fa fa-check-square-o font-green"></i>
<span class="caption-subject bold uppercase">CheckList (2/5)</span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body rowpadding">
<div class="row">
<div class="col-md-8">
<div class="form-group form-md-line-input">
<asp:TextBox ID="TxtActividad" runat="server" CssClass="form-control" CausesValidation="true" TextMode="MultiLine" Rows="1"></asp:TextBox>
<asp:Label runat="server" Text="Agregar Actividad" AssociatedControlID="TxtActividad"></asp:Label>
</div>
</div>
<div class="col-md-4">
<a class="btn btn-default">Agregar</a>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-5">
<div class="portlet light smmallpadding bordered">
<div class="portlet-title">
<div class="caption font-green">
<i class="icon-pin font-green"></i>
<span class="caption-subject bold uppercase">Estatus</span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body rowpadding">
<div class="form-group form-md-line-input">
<asp:DropDownList ID="DdlEventoEstatus" Visible="true" runat="server" DataValueField="CveEventoEstatus" CssClass="form-control select2me input-sm" Width="100%" DataTextField="EventoEstatus">
</asp:DropDownList>
<asp:Label runat="server" AssociatedControlID="DdlEventoEstatus">Estatus:</asp:Label>
</div>
</div>
</div>
<div class="portlet light smmallpadding bordered">
<div class="portlet-title">
<div class="caption font-green">
<i class="fa fa-user-plus font-green"></i>
<span class="caption-subject bold uppercase">Miembros</span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body rowpadding">
<div class="row">
<div class="col-md-10">
<div class="form-group form-md-line-input">
<asp:DropDownList ID="DdlUsuario" Visible="true" runat="server" CssClass="form-control select2me input-sm" Width="100%" DataValueField="CveUsuario" DataTextField="Usuario">
</asp:DropDownList>
<asp:Label runat="server" AssociatedControlID="DdlUsuario">Usuario:</asp:Label>
</div>
</div>
<div class="col-md-2" style="direction: rtl; padding-top: 15px;">
<a class="btn btn-default"><i class="fa fa-plus"></i></a>
</div>
</div>
<table id="Gvmiembros" class="Widthall">
<tr class="titletable">
<td colspan="2">Para</td>
</tr>
<tr>
<td>jorge caudillo</td>
<td><a class="btn btn-circle btn-icon-only red btnsmalli"><i class='icon-trash'></i></a></td>
</tr>
<tr class="titletable">
<td colspan="2">Con copia para</td>
</tr>
<tr>
<td>Julian Moreno</td>
<td><a class="btn btn-circle btn-icon-only red btnsmalli"><i class='icon-trash'></i></a></td>
</tr>
</table>
</div>
</div>
</div>
</div>
<div class="portlet light smmallpadding bordered">
<div class="portlet-title">
<div class="caption font-green">
<i class="fa fa-bars font-green"></i>
<span class="caption-subject bold uppercase">Registro de actividades</span>
</div>
<div class="tools">
<a href="javascript:;" class="expand" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body rowpadding" style="display: none;">
<div class="row">
<div class="col-md-8">
<div class="form-group form-md-line-input">
<asp:TextBox ID="TxtComentario" runat="server" CssClass="form-control" CausesValidation="true" TextMode="MultiLine" Rows="1"></asp:TextBox>
<asp:Label runat="server" Text="Agregar Comentario" AssociatedControlID="TxtComentario"></asp:Label>
</div>
</div>
<div class="col-md-4">
<a class="btn btn-default">Agregar</a>
</div>
</div>
<table class="Widthall table ">
<tbody>
<tr>
<td>19/04/2020 </td>
<td>comentario con archivo</td>
<td><a><i class="fa fa-download"></i></a></td>
</tr>
<tr>
<td>19/04/2020 </td>
<td>comentario</td>
</tr>
<tr>
<td>19/04/2020 </td>
<td>Se termino la activada y del checklist</td>
</tr>
<tr>
<td>19/04/2020 </td>
<td>Se termino la activada x del checklist</td>
</tr>
<tr>
<td>19/04/2020 </td>
<td>Se agrego la activada p al checklist</td>
</tr>
<tr>
<td>19/04/2020 </td>
<td>Se agrego la activada w al checklist</td>
</tr>
<tr>
<td>19/04/2020 </td>
<td>Se agrego la activada z al checklist</td>
</tr>
<tr>
<td>19/04/2020 </td>
<td>Se agrego la activada y al checklist</td>
</tr>
<tr>
<td>19/04/2020 </td>
<td>Se agrego la activada x al checklist</td>
</tr>
<tr>
<td>19/04/2020 </td>
<td>Se registro la tarea oi</td>
</tr>
</tbody>
</table>
</div>
</div>
<%--<div class="row" style="margin-top: 10px; margin-bottom: 10px;">
<div class="col-md-2">Vencimiento de Licencia:</div>
<div class="col-md-4">
<div class="input-group input-sm date date-picker " data-date-format="dd/mm/yyyy" style="display: inline-block;">
<asp:TextBox ID="TxtFechaVenc" runat="server" CssClass="form-control input-sm" CausesValidation="true" MaxLength="10" Width="82px "></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="imgCalendarioF" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
</div>
<ajax:MaskedEditExtender ID="MEEFechaF" runat="server" TargetControlID="TxtFechaVenc" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="Calendario2" TargetControlID="TxtFechaVenc" PopupButtonID="imgCalendarioF" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="rfvFechaF" runat="server" ControlToValidate="TxtFechaVenc" Display="None" ErrorMessage="El campo <b>''Fecha Vencimiento''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="Valida"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="cvFechaF" runat="server" ControlToValidate="TxtFechaVenc" Display="None" ErrorMessage="El campo <b>''Fecha Vencimiento''</b> no tienes el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="Valida"></asp:CompareValidator>
</div>
<div class="col-md-2">Fecha de Nacimiento:</div>
<div class="col-md-4">
<div class="input-group input-sm date date-picker " data-date-format="dd/mm/yyyy" style="display: inline-block;">
<asp:TextBox ID="TxtFechaNacimiento" runat="server" CssClass="form-control input-sm" CausesValidation="true" MaxLength="10" Width="82px "></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="imgCalendarioN" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
</div>
<ajax:MaskedEditExtender ID="MaskedEditExtender1" runat="server" TargetControlID="TxtFechaNacimiento" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CalendarExtender1" TargetControlID="TxtFechaNacimiento" PopupButtonID="imgCalendarioN" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" ControlToValidate="TxtFechaNacimiento" Display="None" ErrorMessage="El campo <b>''Fecha Vencimiento''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="Valida"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CompareValidator1" runat="server" ControlToValidate="TxtFechaNacimiento" Display="None" ErrorMessage="El campo <b>''Fecha Vencimiento''</b> no tienes el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="Valida"></asp:CompareValidator>
</div>
</div>
<div id="dvEstatus" runat="server" class="form-group form-md-line-input input-iconright">
<label>Activo: </label>
<br />
<asp:CheckBox ID="CheckBox1" Text=" " runat="server" CssClass="chksino" Width="250px"></asp:CheckBox>
</div>--%>
</div>
<div class="modal-footer">
<%--<asp:LinkButton ID="LnkAddConductor" OnClick="LnkAddConductor_Click" runat="server" Text="Agregar" CssClass="btn btn-primary" ValidationGroup="GrpConductor"></asp:LinkButton>--%>
<button data-dismiss="modal" class="btn btn-default">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
<script>
function CargaPickers() {
$.datetimepicker.setLocale('es');
$('input.ADDateTimePicker').each(function () {
var TThis = $(this);
TThis.datetimepicker({
dayOfWeekStart: 1,
lang: 'es',
format: 'd/m/Y H:i',
formatDate: 'd/m/Y H:i',
step: 30
});
var Div = TThis.parent()
var boton = document.createElement('span');
boton.className = "input-group-btn"
var subboton = document.createElement('a')
subboton.className = "btn default btnCalendar"
subboton.innerHTML = "<i class='fa fa-calendar'></i>"
subboton.addEventListener('click', function () {
TThis.datetimepicker('show')
});
boton.appendChild(subboton)
var agregar = true;
for (var i = 0; i < Div[0].children.length; i++) {
if (Div[0].children[i].isEqualNode(boton)) {
agregar = false;
}
}
if (agregar) {
Div[0].appendChild(boton);
}
//Div[0].appendChild(boton)
});
}
Sys.Application.add_load(function (s, e) {
CargaPickers();
});
$(document).ready(function () {
CargaPickers();
});
</script>
</asp:Content>

22
OI/RepTareas3.aspx.cs Normal file
View File

@@ -0,0 +1,22 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Extensiones;
public partial class OI_RepTareas3 : System.Web.UI.Page
{
public const string iddivAgregar = "divModalAgregarEvento";
protected void Page_Load(object sender, EventArgs e)
{
}
protected void LnkAddEvento_Click(object sender, EventArgs e)
{
this.RegistraScript(string.Format("$('#{0}').modal()", iddivAgregar));
}
}

View File

@@ -6,6 +6,11 @@
<style>
tr[hide="1"] {
display: none;
background-color:rgb(4,71,103)
}
.portlet {
margin-bottom: 10px;
}
.btn.btnCalendar {
@@ -100,6 +105,18 @@
color: #659be0;
font-weight: bold;
}
.DivAvance {
position: relative;
}
.DivAvance .TxtAvance.aspNetDisabled ~ .Avancereadonly {
position: absolute;
top: 0px;
width: 100%;
height: 100%;
cursor: not-allowed;
}
</style>
<link href="/Metronic/assets/global/plugins/ion.rangeslider/css/ion.rangeSlider.css" rel="stylesheet" type="text/css" />
@@ -131,7 +148,9 @@
<li>
<asp:LinkButton ID="LnkUpFile" OnClick="LnkUpFile_Click" Visible="false" runat="server"><i class="fa fa-plus"></i> Agregar Archivo</asp:LinkButton></li>
<li>
<asp:LinkButton ID="LnkUpUsuarios" OnClick="LnkUpUsuarios_Click" Visible="true" runat="server"><i class="fa fa-pencil"></i> Actualizar Usuarios</asp:LinkButton></li>
<asp:LinkButton ID="LnkUpUsuarios" OnClick="LnkUpUsuarios_Click" Visible="true" runat="server"><i class="fa fa-pencil"></i> Actualizar Miembros</asp:LinkButton></li>
<li>
<asp:LinkButton ID="LnkReasignar" OnClick="LnkReasignar_Click" Visible="true" runat="server"><i class="fa fa-pencil"></i> Reasignar</asp:LinkButton></li>
</ContentTemplate>
</asp:UpdatePanel>
@@ -195,7 +214,7 @@
<div class="row">
<div class="col-sm-6">
<div class="input-group form-group form-md-line-input date date-picker " data-date-format="dd/mm/yyyy hh:mm" style="display: inline-block;">
<asp:TextBox ID="txtFechaI" runat="server" autocomplete="false" CssClass="form-control input-sm ADDateTimePicker" CausesValidation="true" MaxLength="18" Width="132px "></asp:TextBox>
<asp:TextBox ID="txtFechaI" runat="server" autocomplete="false" CssClass="form-control ADDateTimePicker" CausesValidation="true" MaxLength="18" Width="132px "></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVtxtFechaI" runat="server" ControlToValidate="txtFechaI" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Inicio''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label AssociatedControlID="txtFechaI" runat="server" Text="Fecha Inicio"></asp:Label>
<%--<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="txtFechaI" Mask="99/99/9999 99:99" MaskType="DateTime" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>--%>
@@ -204,7 +223,7 @@
</div>
<div class="col-sm-6">
<div class="input-group form-group form-md-line-input date date-picker " data-date-format="dd/mm/yyyy hh:mm" style="display: inline-block;">
<asp:TextBox ID="txtFechaF" runat="server" autocomplete="false" CssClass="form-control input-sm ADDateTimePicker" CausesValidation="true" MaxLength="18" Width="132px " placeholder=""></asp:TextBox>
<asp:TextBox ID="txtFechaF" runat="server" autocomplete="false" CssClass="form-control ADDateTimePicker" CausesValidation="true" MaxLength="18" Width="132px " placeholder=""></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVtxtFechaF" runat="server" ControlToValidate="txtFechaF" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Fin''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpTarea"></asp:RequiredFieldValidator>
<asp:Label AssociatedControlID="txtFechaF" runat="server" Text="Fecha Fin"></asp:Label>
<%--<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="txtFechaI" Mask="99/99/9999 99:99" MaskType="DateTime" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>--%>
@@ -287,7 +306,7 @@
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="30" Visible="false">
<ItemTemplate>
<asp:LinkButton data-toggle="tooltip" title="Editar" ID="LnkEditar" OnClick="LnkEditarCheck_Click" CssClass="btn btn-circle btn-sm green" runat="server" Text="<i class='fa fa-pencil'></i>"></asp:LinkButton>
<%--<asp:LinkButton data-toggle="tooltip" title="Editar" ID="LnkEditar" OnClick="LnkEditarCheck_Click" CssClass="btn btn-circle btn-sm green" runat="server" Text="<i class='fa fa-pencil'></i>"></asp:LinkButton>--%>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="30">
@@ -324,9 +343,10 @@
</asp:DropDownList>
<asp:Label runat="server" AssociatedControlID="DdlEventoEstatus">Estatus:</asp:Label>
</div>
<div class="">
<div class="DivAvance">
<asp:Label runat="server" CssClass="labelitem" AssociatedControlID="TxtAvance">Avance:</asp:Label>
<asp:TextBox ID="TxtAvance" runat="server" CssClass="form-control TxtAvance" CausesValidation="true"></asp:TextBox>
<div class="Avancereadonly"></div>
</div>
<asp:Button ID="BtnUpAvance" OnClick="BtnUpAvance_Click" CssClass="hidden BtnUpAvance" runat="server" Text="ActualizarAvance" />
@@ -407,8 +427,8 @@
<HeaderTemplate>
C. C. Para
<br />
<a id="chkAll" onclick="chkAll_OncLick(1);" class="linkCorreo" data-toggle="tooltip" title="Seleccionar todos(Visibles)"><i class="fa fa-check-square"></i></a>
<a id="UnchkAll" onclick="chkAll_OncLick(0);" class="linkCorreo" data-toggle="tooltip" title="Quitar seleccion todos(Visibles)"><i class="fa fa-check-square-o"></i></a>
<a id="chkAll" onclick="chkAll_OncLick(1);" class="linkCorreo" data-toggle="tooltip" title="Seleccionar todos(Visibles)"><i class="fa fa-check-square-o"></i></a>
<a id="UnchkAll" onclick="chkAll_OncLick(0);" class="linkCorreo" data-toggle="tooltip" title="Quitar seleccion todos(Visibles)"><i class="fa fa-square-o"></i></a>
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="ChkCCP" CssClass="ChkOk" Checked="false" runat="server" />
@@ -533,22 +553,22 @@
</ContentTemplate>
</asp:UpdatePanel>
<div id='<%= iddivAgregarPara %>' class="modal ADS fade" role="dialog">
<div id='<%= iddivAgregarMiembros %>' class="modal ADS fade" role="dialog">
<div class="modal-dialog">
<asp:UpdatePanel ID="UpUsuarios" class="modal-content " tabindex="-1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span> </button>
<h4 class="modal-title" style="text-align: left">
<asp:Literal ID="Literal4" runat="server">Para</asp:Literal></h4>
<asp:Literal ID="LtlTituloUsuarios" runat="server">Actualizar miembros</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input">
<div class="modal-body">
<div class="form-group form-md-line-input" style="display:none">
<asp:DropDownList runat="server" ID="DdlRoles" DataValueField="CveRol" DataTextField="Rol" CssClass="select2me form-control ddlrol" Width="100%" onchange="ddlRol_Onchange();" />
<asp:Label runat="server" Text="Perfil:" AssociatedControlID="DdlRoles"></asp:Label>
</div>
<div class="form-group form-md-line-input">
<div class="form-group form-md-line-input" style="display:none">
<asp:DropDownList runat="server" ID="DdlSucursales" DataValueField="CveProyecto" DataTextField="SubProyecto" CssClass="select2me form-control ddlsucursal" Width="100%" onchange="DdlSucursales_Onchange();" />
<asp:Label runat="server" Text="Sucursales:" AssociatedControlID="DdlSucursales"></asp:Label>
</div>
@@ -581,8 +601,8 @@
<HeaderTemplate>
C. C. Para
<br />
<a id="chkAll" onclick="chkAll_OncLick(1);" class="linkCorreo" data-toggle="tooltip" title="Seleccionar todos(Visibles)"><i class="fa fa-check-square"></i></a>
<a id="UnchkAll" onclick="chkAll_OncLick(0);" class="linkCorreo" data-toggle="tooltip" title="Quitar seleccion todos(Visibles)"><i class="fa fa-check-square-o"></i></a>
<a id="chkAll" onclick="chkAll_OncLick(1);" class="linkCorreo" data-toggle="tooltip" title="Seleccionar todos(Visibles)"><i class="fa fa-check-square-o"></i></a>
<a id="UnchkAll" onclick="chkAll_OncLick(0);" class="linkCorreo" data-toggle="tooltip" title="Quitar seleccion todos(Visibles)"><i class="fa fa fa-square-o"></i></a>
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="ChkCCP" CssClass="ChkOk" Checked="false" runat="server" />
@@ -604,7 +624,8 @@
</asp:GridView>
</div>
<div class="modal-footer">
<asp:LinkButton ID="BtnUpMiembros" OnClick="BtnUpMiembros_Click" CssClass="btn btn-primary" runat="server">Agregar</asp:LinkButton>
<asp:LinkButton ID="BtnReasignarTarea" OnClick="BtnReasignarTarea_Click" CssClass="btn btn-primary" runat="server">Guardar</asp:LinkButton>
<asp:LinkButton ID="BtnUpMiembros" OnClick="BtnUpMiembros_Click" CssClass="btn btn-primary" runat="server">Guardar</asp:LinkButton>
<button data-dismiss="modal" class="btn btn-danger">Cancelar</button>
</div>
</ContentTemplate>
@@ -707,7 +728,17 @@
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</div>
<%--<script>
Sys.Application.add_load(function (s, e) {
let checkboxes = $('input[type="checkbox"]');
let checkboxes = $('input[type="checkbox"]');
checkboxes.addClass('icheck');
checkboxes.data('checkbox', 'icheckbox_flat-red');
});
</script>--%>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
@@ -778,12 +809,12 @@
//e.Row.Attributes.Add("data-rol", CveRol);
//e.Row.Attributes.Add("data-sucursal", CveRol);
}
function showhideUser2() {
function showhideUser2() {
let strusuario = usuariotext.length > 0 ? ' td:nth-child(3):contains("' + usuariotext + '")' : '';// td:nth-child(2)
$('.GVUsuarios tr.items').attr('hide', '1')//oculto todos
$('.GVUsuarios tr.items' + strusuario).closest('tr').attr('hide', '');//muestro los que tienen filtro con usuario
$('.GVUsuarios tr.items' + strusuario).closest('tr').attr('hide', '');//muestro los que tienen filtro con usuario
//e.Row.Attributes.Add("data-sucursal", CveRol);
}
function loadeventos() {
@@ -793,7 +824,7 @@
copy: TxtUsuario_Onchange
, paste: TxtUsuario_Onchange
, cut: TxtUsuario_Onchange
, keydown: function (event) { if (event.which == 13) { event.preventDefault(); } TxtUsuario_Onchange();}
, keydown: function (event) { if (event.which == 13) { event.preventDefault(); } TxtUsuario_Onchange(); }
, keyup: TxtUsuario_Onchange
});
input.addClass('ConEvento');
@@ -805,7 +836,7 @@
copy: TxtUsuario2_Onchange
, paste: TxtUsuario2_Onchange
, cut: TxtUsuario2_Onchange
, keydown: function (event) { if (event.which == 13) { event.preventDefault(); } TxtUsuario2_Onchange();}
, keydown: function (event) { if (event.which == 13) { event.preventDefault(); } TxtUsuario2_Onchange(); }
, keyup: TxtUsuario2_Onchange
});
input2.addClass('ConEvento');
@@ -869,7 +900,7 @@
loaderinit = (function () { });
let ischeked = $(this).is(':checked');
$(this).closest('tr').toggleClass('finished');
$(".LnkSinfuncion").click();
if ($(".LnkSinfuncion").length) { $(".LnkSinfuncion").click(); }
});
}
function CambiarTitulo(cadena) {
@@ -889,6 +920,8 @@
item.ionRangeSlider({
min: 0,
max: 100,
step: .01,
//[disable]
onChange: (function () {
setTimeout(function () { if ($(".TxtAvance").val() != Valorxyz) { avancecambio = 1 } }, 50);
})
@@ -907,7 +940,7 @@
});
$(document).ready(function () {
$(document).mouseup(function () {
setTimeout(function () { if (avancecambio == 1) { loaderinit = (function () { }); $('.BtnUpAvance').click(); avancecambio = 0; } }, 100);
setTimeout(function () { if (avancecambio == 1) { loaderinit = (function () { }); if ($('.BtnUpAvance').length) { $('.BtnUpAvance').click(); avancecambio = 0; } } }, 100);
});
CargaPickers();
setchecklistitulo();

File diff suppressed because one or more lines are too long

View File

@@ -1,25 +1,39 @@

var NotificacionesADS = function () {
var VentanaConConexion = false;
const valueok = "1";
function initherramientas() {
let nointentos = 0;
const maxintentos = 4;
var wNum;
const valueok = "1";
const AdsNotificacionesReconected = "AdsNotificacionesReconected";
const Windownumber = "ADSWindownumber";
const AdsNotificacionesIsConnected = "AdsNotificacionesIsConnected";
function initherramientas() {
if (("Notification" in window)) {
if (Notification.permission !== 'denied') {
Notification.requestPermission(function (permission) {
// If the user accepts, let's create a notification
if (permission === "granted") {
}
//if (permission === "granted") {
//}
});
}
}
}
//-------------------------------------------------------------------- Eventos ----------------------------------------------------------------------
var AlertaVentana = function (Titulo, Mensaje, Tipo, timeoutseconds,Opciones) {
var AlertaVentana = function (Titulo, Mensaje, Tipo, timeoutseconds, Opciones) {
console.log(Mensaje);
let obj = { metodo: "AlertaVentana", titulo: Titulo, mensaje: Mensaje, timeout: timeoutseconds, tipo: Tipo, opciones: Opciones, tick: (new Date()).getTime() }
let obj = { metodo: "AlertaVentana", titulo: Titulo, mensaje: Mensaje, timeout: timeoutseconds, tipo: Tipo, opciones: Opciones, tick: (new Date()).getTime() };
let myjson = JSON.stringify(obj);
localStorage.setItem("ADSNotificaciones", myjson);
execAlertaVentana(obj);
execAlertaVentana(obj);
};
function Execstring(script) {
try {
eval(script);
} catch (e) {
console.error('(SignalR) ErrorScript \'' + script + '\'');
}
}
var execAlertaVentana = function (obj) {
console.log(obj);
@@ -42,7 +56,7 @@ var NotificacionesADS = function () {
//});
let Mensaje = obj.mensaje;
let titulo = obj.titulo;
let timeout = obj.timeout;
let timeout = obj.timeout;
if (timeout) {
timeout = timeout * 1000;//convierto a milisegundos
} else { timeout = 0; }
@@ -60,7 +74,7 @@ var NotificacionesADS = function () {
"showMethod": "fadeIn",
"hideMethod": "fadeOut"
}
};
switch (obj.tipo) {
case 5:
@@ -79,70 +93,95 @@ var NotificacionesADS = function () {
toastr.warning(Mensaje, titulo, opciones);
}
}
}
};
//-------------------------------------------------------------------- EndEventos ----------------------------------------------------------------------
function closeopenConexion() {
let varreconected = localStorage.getItem("AdsNotificacionesReconected");
localStorage.removeItem("AdsNotificacionesIsConnected");
if (varreconected == "1") {
localStorage.removeItem("AdsNotificacionesReconected");
} else { localStorage.setItem("AdsNotificacionesReconected", "1"); }
if (VentanaConConexion) {
localStorage.removeItem(AdsNotificacionesIsConnected);
let varreconected = localStorage.getItem(AdsNotificacionesReconected);//obtengo la variable para cambiarla y dispara el evento local change
if (varreconected === "1") {
localStorage.removeItem(AdsNotificacionesReconected);
} else { localStorage.setItem(AdsNotificacionesReconected, "1"); }
}
nointentos = maxintentos;
}
function beforeunloadcloseopenConexion(e) {
closeopenConexion()
closeopenConexion();
}
function loadConection() {
// VentanaConConexion = true;
//localStorage.setItem("AdsNotificacionesIsConnected", valueok);
//if ($.connection) {
// let nointentos =0
// var proxy = $.connection.notificaciones;
// /*$.connection.hub.url = '/signalr';*/
// $.connection.hub.disconnected(function () {
// setTimeout(function () { nointentos = nointentos + 1; if (nointentos < 4) { $.connection.hub.start().done(function () { nointentos = 0 }); console.log('Reconected'); } }, 120000);
// });
function loadConection() {
VentanaConConexion = true;
localStorage.setItem(AdsNotificacionesIsConnected, valueok);
if ($.connection) {
var proxy = $.connection.notificaciones;
/*$.connection.hub.url = '/signalr';*/
$.connection.hub.disconnected(function () {
console.log(' (SignalR) diconnected');
signalrconectionStar(1200);
});
// proxy.client.AlertaVentana = AlertaVentana;
proxy.client.AlertaVentana = AlertaVentana;
// $.connection.hub.start().done(function () {
// console.log('Bienvenido');
// });
//} else {
// console.error('Signal Error (no se encontro $.connection)');
proxy.client.Execstring = Execstring;
signalrconectionStar(1200);
//}
//window.addEventListener("beforeunload", beforeunloadcloseopenConexion);
}
function initConnection() {
let isconnected = localStorage.getItem("AdsNotificacionesIsConnected");
if (isconnected == valueok) {
} else {
loadConection()
console.error('(SignalR) Error :\'no se encontro $.connection\'');
}
window.addEventListener("beforeunload", beforeunloadcloseopenConexion);
}
function signalrconectionStar(TimeOut) {
setTimeout(function () {
nointentos = nointentos + 1;
if (nointentos < maxintentos) {
$.connection.hub.start().done(function () { console.log('(SignalR)Bienvenido'); nointentos = 0; })
.fail(function () { console.log(' (SignalR) no conectado (Intento:' + nointentos + ')'); signalrconectionStar(12000); });
}
}, TimeOut);
}
function initConnection() {
let isconnected = localStorage.getItem(AdsNotificacionesIsConnected);
if (isconnected !== valueok) {
loadConection();
} else {
console.log('is some there conected (' + wNum+')');
}
}
function handlelocalstorage() {
function handlelocalstorage() {
window.addEventListener('storage', function (evt) {
if (evt.key == "ADSNotificaciones") {
if (evt.key === "ADSNotificaciones") {
///
x = 1;
}
switch (evt.key + "") {
case 'ADSCloseConection':
closeopenConexion();
$.connection.hub.stop().done(function () {
console.log('stopped');
});
break;
case 'AdsNotificacionesReconected':
if (!VentanaConConexion) {
setTimeout(function () { initConnection() }, 5000)
setTimeout(function () { initConnection(); }, (wNum * 200));
} else {
window.removeEventListener("beforeunload", beforeunloadcloseopenConexion)
window.removeEventListener("beforeunload", beforeunloadcloseopenConexion);
}
break;
case 'ADSNotificaciones':
try {
let obj = JSON.parse(evt.newValue);
if (obj && obj.metodo == "AlertaVentana") {
if (obj && obj.metodo === "AlertaVentana") {
execAlertaVentana(obj);
}
} catch (e) {
console.error(e)
console.error(e);
}
break;
}
@@ -152,6 +191,11 @@ var NotificacionesADS = function () {
return {
init: function () {
wNum = parseInt(localStorage.getItem(Windownumber));
if (isNaN(wNum) || (wNum > 50)) { wNum = 12; }
wNum = wNum + 1;
localStorage.setItem(Windownumber, wNum);
initherramientas();
handlelocalstorage();
initConnection();

View File

@@ -7,11 +7,11 @@ conf = {
log: console.log,
warn: console.warn,
debug: console.debug
}
};
console.error = function (texto) {
loaderEnd();
setTimeout(function () { if (Metronic && Metronic.unblockUI) { Metronic.unblockUI(); } }, 10);
conf.error(texto);
}
};
function alertatoast(tipo,Mensaje,Funcion,timeout){
if (timeout) {
timeout = timeout * 1000;//convierto a milisegundos
@@ -1765,7 +1765,7 @@ jQuery(document).ready(function () {
padre.find('> .progress.tab-wizard > .progress-bar').css('width', '' + ((maximo / total) * 100) + '%');
});
$(window).on('shown.bs.modal', function () {
setTimeout(loadadscroll, 10)
setTimeout(loadadscroll, 10);
});
loadsortadscroll();
@@ -1775,6 +1775,20 @@ jQuery(document).ready(function () {
setswitch();
function ocultarbtnmaster() { if ($('#btnmaster_actionssidebar + ul').text().trim() == "") { $('#btnmaster_actionssidebar').css('display', 'none'); } else { $('#btnmaster_actionssidebar').css('display', 'block'); } }
function loadjquerys() {
$('.ADSckeditor[id]').each(function () {
let $Tthis = $(this);
$Tthis.val($Tthis.val().replace(/< /gi, '<'));
let id = $Tthis.attr('id');
$(this).removeClass("ADSckeditor");
$(this).addClass("ckeditorADS");
let ckedit = CKEDITOR.replace(id, { /*height: 260,*/autoUpdateElement: false });
ckedit.on('change', function () { $Tthis.val(ckedit.getData().replace(/</gi, '< ')); });
ckedit.on("instanceReady", function () { $Tthis.val($Tthis.val().replace(/</gi, '< '));});
//CKEDITOR.instances[id].on('change', function () { CKEDITOR.instances[i].updateElement(); });
});
buscadorMenuCaudi();
AdsTabWizard();
ADSBegin();
@@ -1844,6 +1858,10 @@ jQuery(document).ready(function () {
prm.add_initializeRequest(function (s, e) {
objscollapse = $('.portlet-title .collapse').closest('.portlet[id]');
objsexpand = $('.portlet-title .expand').closest('.portlet[id]');
//$('.ckeditorADS[id]').each(function () {
// let id = $(this).attr('id');
// $(this).val(CKEDITOR.instances[id].getData());
//});
saveposicionADScroller();
loaderinit();

View File

@@ -73,6 +73,22 @@
</li>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpDescargaZipPDF" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<li>
<asp:LinkButton ID="BtnDescargarZipPDF" runat="server"> <i class="fa fa-cloud-download"></i> Descargar Facturas</asp:LinkButton>
</li>
</ContentTemplate>
<Triggers>
<asp:PostBackTrigger ControlID= "BtnDescargarZipPDF" />
</Triggers>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="E" runat="Server">
Reporte de Productos Servicios
@@ -294,7 +310,9 @@
</asp:UpdatePanel>
<asp:UpdatePanel ID="UPDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" Width="99%" AutoGenerateColumns="False" EmptyDataText="No se encontraron Ventas con los filtros especificados" ToolTip="Listado de Ventas" CssClass="table table-striped table-advance table-hover Widthall ScrollAD" GridLines="None">
<asp:GridView ID="GvDatos" runat="server" Width="99%" AutoGenerateColumns="False" EmptyDataText="No se encontraron Ventas con los filtros especificados" ToolTip="Listado de Ventas"
CssClass="table table-striped table-advance table-hover Widthall ScrollAD" GridLines="None" DataKeyNames="TipoDocumento,SerieFolio" >
<Columns>
<asp:HyperLinkField HeaderText="Serie Folio" DataTextField="SerieFolio" Target="_blank" DataNavigateUrlFields="CveVenta" DataNavigateUrlFormatString="~/Ventas/Ventas.aspx?CveVenta={0}" ItemStyle-Width="5%" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField HeaderText="Fecha" DataField="Fecha" DataFormatString="{0:d}" ItemStyle-Width="5%" ItemStyle-HorizontalAlign="Center" />
@@ -316,6 +334,7 @@
<RowStyle CssClass="Texto" />
<HeaderStyle CssClass="Titulos" />
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel runat="server" ID="UPPersonalizar" UpdateMode="Conditional">

View File

@@ -2,12 +2,14 @@
Option Strict On
Imports System.Data
Imports System.IO
Imports Extensiones
Imports Microsoft.Reporting.WebForms
Imports System.IO.Compression
Partial Class Ventas_RepProductosServiciosDetalle
Inherits ClsPaginas
Inherits ClsPaginas
#Region "PROPIEDADES"
Private Property TmpDT As DataTable
Get
@@ -57,9 +59,9 @@ Partial Class Ventas_RepProductosServiciosDetalle
Set(value As String)
ViewState("Agrupador") = value
End Set
End Property
End Property
#End Region
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
@@ -68,11 +70,11 @@ Partial Class Ventas_RepProductosServiciosDetalle
CargaParametrosDetalle()
End If
End Sub
End Sub
#Region " CARGA DATOS INICIALES "
Private Sub CargaGrupo()
DdlGrupo.Items.Insert(0, New ListItem("Categoria", "3"))
DdlGrupo.Items.Insert(1, New ListItem("Clasificacion", "4"))
@@ -382,9 +384,9 @@ Partial Class Ventas_RepProductosServiciosDetalle
DdlTipoPSDes.SelectedValueExist(CveClasificacionDetalle)
CargaDatos(CveProyecto, CveSubProyecto, CveCategoria, CveClasificacion, CvePS, Mes, MesEjec, CveCliente, CveSubProyectoEjecucion, CveVendedor, CveUsuario, CveEstatus, GPO.ToEntero, TipoDocto, CveMarca)
CargarMarcas(CveMarca)
End Sub
End Sub
#End Region
#Region " CARGA DATOS "
Protected Sub BtnConsultar_Click(sender As Object, e As System.EventArgs) Handles BtnConsultar.Click
CargaDatos()
@@ -465,11 +467,11 @@ Partial Class Ventas_RepProductosServiciosDetalle
End If
DdlMarcaPSDes.Items.Insert(0, New ListItem(" - ", "-1"))
DdlMarcaPSDes.Items.FindByValue(CStr(CveMarca)).Selected = True
End Sub
End Sub
#End Region
#Region "TIPO CAMBIO"
Private Sub RblTipoCambio_SelectedIndexChanged(sender As Object, e As EventArgs) Handles RblTipoCambio.SelectedIndexChanged
TipoCambio = RblTipoCambio.SelectedValue.ToEntero
If RblTipoCambio.SelectedValue.ToEntero = 3 Then
@@ -481,10 +483,10 @@ Partial Class Ventas_RepProductosServiciosDetalle
LiEspecifico.Visible = False
End If
UpBodyTipoCambio.Update()
End Sub
End Sub
#End Region
#Region " GV DATOS - PERSONALIZAR "
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
@@ -545,11 +547,11 @@ Partial Class Ventas_RepProductosServiciosDetalle
CargaDatos()
UPDatos.Update()
End Sub
End Sub
#End Region
#Region " SELECTED INDEX CHANGED"
Protected Sub DdlClienteClasificacion_SelectedIndexChanged(sender As Object, e As EventArgs)
CargaClientes()
End Sub
@@ -641,17 +643,17 @@ Partial Class Ventas_RepProductosServiciosDetalle
End If
DdlEstatus.Items.Add(New ListItem("Todos", "-1"))
DdlEstatus.DataBind()
End Sub
End Sub
#End Region
#Region " EXCEL "
Protected Sub ImgExcel_Click(sender As Object, e As EventArgs) Handles ImgExcel.Click
GvDatos.ExportToExcel("ReporteProductosServicios" & Now.ToShortDateString)
End Sub
End Sub
#End Region
#Region " PDF "
Protected Sub ImgImprimir_Click(sender As Object, e As EventArgs) Handles ImgImprimir.Click
ImprimirReporte()
@@ -684,11 +686,11 @@ Partial Class Ventas_RepProductosServiciosDetalle
End If
ObjVentas.Dispose()
End Sub
End Sub
#End Region
#Region "GRAFICA"
Protected Sub LnkVerGrafica_Click(sender As Object, e As EventArgs)
If Not TmpDT IsNot Nothing AndAlso TmpDT.Rows.Count > 0 Then
Alert("No hay datos disponibles", TipoMensaje.MsgAdvertencia)
@@ -818,9 +820,74 @@ Partial Class Ventas_RepProductosServiciosDetalle
Protected Sub DdlVer_SelectedIndexChanged(sender As Object, e As EventArgs)
CambioGrafica()
End Sub
End Sub
#End Region
#Region " D E S C A R G A S "
Private Sub BtnDescargarPDF_Click(sender As Object, e As EventArgs) Handles BtnDescargarZipPDF.Click
'If Not Directory.Exists(AppDomain.CurrentDomain.BaseDirectory & "Temp\" & UsuarioActual.CveUsuario.ToString & "\") Then
' Directory.CreateDirectory(AppDomain.CurrentDomain.BaseDirectory & "Temp\" & UsuarioActual.CveUsuario.ToString & "\")
'End If
Dim Archivo As String = String.Empty
Dim HuboInexistentes As Boolean = False
Dim SBInexistentes As New StringBuilder : SBInexistentes.Append("No se pudieron anexar los siguientes archivos:<br />")
Dim ArchivoDestino As String = String.Format("{0}Temp\{1}.zip", AppDomain.CurrentDomain.BaseDirectory, Now.ToString("yyyyMMddhhmmss") & UsuarioActual.CveUsuario.ToString)
Dim archiveZip As ZipArchive = ZipFile.Open(ArchivoDestino, ZipArchiveMode.Create)
Dim DTVentas As DataTable = TmpDT.FiltraParametros("", "", {"CveVenta", "TipoDocumento", "Folio", "SerieFolio"})
Try
For Each Drow As DataRow In DTVentas.Rows
Dim SerieFolio As String = Drow("SerieFolio").ToString.Replace("-", "_")
If Drow("TipoDocumento").ToString.Trim <> String.Empty Then
Archivo = String.Format("{0}PDF/{1}/{2}.pdf", UsuarioActual.Empresa.Ruta.Replace("\", "/"), Drow("TipoDocumento").ToString, Drow("SerieFolio").ToString)
If File.Exists(Archivo) Then
archiveZip.CreateEntryFromFile(Archivo, Drow("SerieFolio").ToString & ".pdf")
' Exit For
Else
HuboInexistentes = True
SBInexistentes.AppendFormat("Tipo {0}, Folio {1} - {2}<br />", Drow("TipoDocumento").ToString, SerieFolio, Archivo)
End If
End If
Next
Catch ex As Exception
End Try
archiveZip.Dispose()
Response.Clear()
Response.ContentType = "application/zip"
Response.AddHeader("content-disposition", $"attachment; filename=facturas{Now.ToString("yyyyMMddhhmmss")}.zip")
Response.TransmitFile(ArchivoDestino)
Response.Flush()
Try
File.Delete(ArchivoDestino)
Catch ex As Exception
End Try
Response.End()
End Sub
#End Region
End Class

View File

@@ -9426,15 +9426,20 @@ Partial Class Ventas
If factura.TipoDocto.Contiene("Dev", "Egs") Or DtVentasNC IsNot Nothing Then
If DtVentasNC IsNot Nothing Then
For Each row As DataRow In DtVentasNC.Rows
If Not ObjVentas.AddVentasRelacionadas(ObjVentas.CveVenta, row("CveVenta").ToString.ToEntero) Then
ErrorList.Add("Ocurrió un error al relacionar las ventas entre si comuníquese a Soporte Técnico")
If Not row("CveVenta").ToString.ToEntero = -1 Then
If Not ObjVentas.AddVentasRelacionadas(ObjVentas.CveVenta, row("CveVenta").ToString.ToEntero) Then
ErrorList.Add("Ocurrió un error al relacionar las ventas entre si comuníquese a Soporte Técnico")
End If
End If
Next
Else
If Not ObjVentas.AddVentasRelacionadas(ObjVentas.CveVenta, CveVenta) Then
ErrorList.Add("Ocurrió un error al relacionar las ventas entre si comuníquese a Soporte Técnico")
If Not CveVenta = -1 Then
If Not ObjVentas.AddVentasRelacionadas(ObjVentas.CveVenta, CveVenta) Then
ErrorList.Add("Ocurrió un error al relacionar las ventas entre si comuníquese a Soporte Técnico")
End If
End If
End If
End If
End If

447
WebJLC.config Normal file
View File

@@ -0,0 +1,447 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Note: As an alternative to hand editing this file you can use the
web admin tool to configure settings for your application. Use
the Website->Asp.Net Configuration option in Visual Studio.
A full list of settings and comments can be found in
machine.config.comments usually located in
\Windows\Microsoft.Net\Framework\vx.x\Config
-->
<configuration>
<configSections>
<section name="ajaxControlToolkit" type="AjaxControlToolkit.AjaxControlToolkitConfigSection, AjaxControlToolkit" />
<sectionGroup name="businessObjects">
<sectionGroup name="crystalReports">
<section name="rptBuildProvider" type="CrystalDecisions.Shared.RptBuildProviderHandler, CrystalDecisions.Shared, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304, Custom=null" />
<section name="crystalReportViewer" type="System.Configuration.NameValueSectionHandler" />
</sectionGroup>
</sectionGroup>
</configSections>
<ajaxControlToolkit useStaticResources="true" renderStyleLinks="false" htmlSanitizer="AjaxControlToolkit.HtmlEditor.Sanitizer.DefaultHtmlSanitizer, AjaxControlToolkit.HtmlEditor.Sanitizer" />
<businessObjects>
<crystalReports>
<rptBuildProvider>
<add embedRptInResource="true" />
</rptBuildProvider>
<crystalReportViewer>
<add key="ResourceUri" value="/aspnet_client/system_web/4_0_30319/crystalreportviewers" />
</crystalReportViewer>
</crystalReports>
</businessObjects>
<system.webServer>
<staticContent>
<remove fileExtension=".woff" />
<remove fileExtension=".woff2" />
<mimeMap fileExtension=".woff" mimeType="application/x-font-woff" />
<mimeMap fileExtension=".woff2" mimeType="application/font-woff2" />
</staticContent>
<handlers>
<remove name="ChartImageHandler" />
<add name="AspMap.Web.ImageHandler" path="MapImageHandler.axd" verb="*" type="AspMap.Web.ImageHandler, AspMapNET" preCondition="integratedMode" />
<add name="ChartImageHandler" preCondition="integratedMode" verb="GET,HEAD,POST" path="ChartImg.axd" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<add name="CrystalImageHandler.aspx_GET" verb="GET" path="CrystalImageHandler.aspx" type="CrystalDecisions.Web.CrystalImageHandler, CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" preCondition="integratedMode" />
<add name="ReportViewerWebControlHandler" preCondition="integratedMode" verb="*" path="Reserved.ReportViewerWebControl.axd" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=12.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
<add name="AjaxFileUploadHandler" verb="*" path="AjaxFileUploadHandler.axd" type="AjaxControlToolkit.AjaxFileUploadHandler, AjaxControlToolkit" />
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<remove name="OPTIONSVerbHandler" />
<remove name="TRACEVerbHandler" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>
<defaultDocument>
<files>
<add value="Inicio.aspx" />
</files>
</defaultDocument>
<validation validateIntegratedModeConfiguration="false" />
</system.webServer>
<!-- BLOQUEO, NO es accesible a todos los usuarios -->
<location path="Empresas">
<system.web>
<authorization>
<deny users="*" />
</authorization>
</system.web>
</location>
<!-- Esta página, es accesible a todos los usuarios -->
<location path="Portal">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="PortalGPS">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="Proveedores">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="bundles">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="Scripts">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="Content">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="Metronic">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="AIMMGM">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="Ashx">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="Asmx">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="Loginx.aspx">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="Login2.aspx">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="OC/CotizacionEnLinea.aspx">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="ZDG/WhatsApp.aspx">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="ZDG/MensajeAutomatico.aspx">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="Sistemas/WsRespaldos.asmx">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="Sistemas/NotificacionesEnlinea.aspx">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="Politicas.aspx">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="ScriptResource.axd">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="api">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="api/SIGVentas">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="Ventas/RepVentaDetalle.aspx">
<system.web>
<httpRuntime executionTimeout="200" maxRequestLength="1550000" targetFramework="3.5" />
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<appSettings>
<add key="ChartImageHandler" value="storage=file;timeout=5;dir=C:\inetpub\wwwVentas\Temp;" />
<add key="CrystalImageCleaner-AutoStart" value="true" />
<add key="CrystalImageCleaner-Sleep" value="60000" />
<add key="CrystalImageCleaner-Age" value="120000" />
<add key="ValidationSettings:UnobtrusiveValidationMode" value="None" />
<add key="aspnet:MaxHttpCollectionKeys" value="50000" />
<add key="ContPAQDescargas" value="D:\Compac\Empresas\" />
<add key="RespaldosArchivos" value="\\WIN-80TBS47AVIU\Compac\Empresas\" />
<add key="UrlSitio" value="http://sig.adsistemas.mx/" />
<add key="UrlDirecciones" value="https://addr.signalsgps.com/" />
<add key="EsProduccion" value="0" />
<add key="urlcerrarSession" value="http://localhost:85/Inicio.aspx?logout=1" />
</appSettings>
<connectionStrings>
<add name="ConexionBD" connectionString="Data Source=192.168.10.111\server2017,1533;Initial Catalog=SIG_Resp_OIC;User Id=Usuario;Password=Desarrollo2017;pooling=True; Min Pool Size=10;Application Name=SIGJLC;" />
<add name="Conexion" connectionString="Data Source=localhost;Initial Catalog=SIG_Resp_JLC;User Id=JCaudillo;Password=JCau127*953;pooling=True; Min Pool Size=10;Application Name=SIGJLC;" />
<add name="Conexionbera" connectionString="Data Source=192.168.10.111;Initial Catalog=SIG_Resp_JLC;User Id=Usuario;Password=Desarrollo2019;pooling=True; Min Pool Size=10;Application Name=SIGJLC;" />
<add name="Conexionz" connectionString="Data Source=192.168.10.111;Initial Catalog=Ventas20190424;User Id=Usuario;Password=Desarrollo2019;pooling=True; Min Pool Size=10;Application Name=SIGJLC;" />
<add name="Conexiozg" connectionString="Data Source=192.168.10.111\server2017,1533;Initial Catalog=SIG_Resp_JLC;User Id=Usuario;Password=Desarrollo2017;pooling=True; Min Pool Size=10;Application Name=SIGJLC;" />
<add name="Conexionpepper" connectionString="Data Source=192.168.10.111\server2017,1533;Initial Catalog=SIG_Resp_Pepper;User Id=Usuario;Password=Desarrollo2017;pooling=True; Min Pool Size=10;Application Name=SIGJLC;" />
<add name="Conexiongdfg" connectionString="Data Source=192.168.10.111\server2017,1533;Initial Catalog=SIG_Resp_JLC;User Id=Usuario;Password=Desarrollo2017;pooling=True; Min Pool Size=10;Application Name=SIGJLC;" />
<add name="Conexionn" connectionString="Data Source=192.168.10.111\server2017,1533;Initial Catalog=SIG_Resp_Pepper;User Id=Usuario;Password=Desarrollo2017;pooling=True; Min Pool Size=10;Application Name=SIGJLC;" />
<add name="ConexionProdoc" connectionString="Data Source=192.168.0.2;Initial Catalog=Ventas;User Id=JCaudillo;Password=JCau127*953;pooling=True; Min Pool Size=10;Application Name=SIGJLC;" />
<add name="Conexionoscafr" connectionString="Data Source=192.168.10.111\server2017,1533;Initial Catalog=SIG_Resp_OIC;User Id=Usuario;Password=Desarrollo2017;pooling=True; Min Pool Size=10;Application Name=SIGJLC;" />
<add name="ConexionJLC2" connectionString="Data Source=192.168.10.111\server2017,1533;Initial Catalog=SIG_Resp_JLC2;User Id=Usuario;Password=Desarrollo2017;pooling=True; Min Pool Size=10;Application Name=SIGJLC;" />
<add name="ConexionProduccion" connectionString="Data Source=192.168.0.2;Initial Catalog=Ventas;User Id=JCaudillo;Password=JCau127*953;pooling=True; Min Pool Size=10;Application Name=SIG;" />
<add name="Conexionzxyu" connectionString="Data Source=Caudillo\Cauditronic;Initial Catalog=Ventas2;User Id=sa;Password=JCau127*953;pooling=True; Min Pool Size=10;Application Name=SIG;" />
<add name="Conexionlocall6" connectionString="Data Source=Caudillo\Cauditronic;Initial Catalog=Ventas3;User Id=sa;Password=JCau127*953;pooling=True; Min Pool Size=10;Application Name=SIG;" />
<add name="Conexion8" connectionString="Data Source=(local);Initial Catalog=Ventas;User Id=RMolina;Password=RMol156.321;pooling=True; Min Pool Size=10;Application Name=SIG;" />
<add name="ConexionContPAQi" connectionString="Data Source=192.168.0.2\COMPAC,1430;User Id=RMolina;Password=Rene2013;" />
<add name="ConexionDG" connectionString="Data Source=192.168.0.2;Initial Catalog=DG2016;User Id=IPina;Password=IsrPin2708*987;pooling=True; Min Pool Size=10;Application Name=SIG;" />
</connectionStrings>
<system.web>
<!--
Set compilation debug="true" to insert debugging
symbols into the compiled page. Because this
affects performance, set this value to true only
during development.
-->
<httpHandlers>
<add path="ChartImg.axd" verb="GET,HEAD,POST" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false" />
<add path="MapImageHandler.axd" verb="*" type="AspMap.Web.ImageHandler, AspMapNET" />
<add path="Reserved.ReportViewerWebControl.axd" verb="*" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=15.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" validate="false" />
<add verb="GET" path="CrystalImageHandler.aspx" type="CrystalDecisions.Web.CrystalImageHandler, CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" />
<add verb="*" path="AjaxFileUploadHandler.axd" type="AjaxControlToolkit.AjaxFileUploadHandler, AjaxControlToolkit" />
</httpHandlers>
<pages>
<controls>
<add assembly="Microsoft.AspNet.Web.Optimization.WebForms" namespace="Microsoft.AspNet.Web.Optimization.WebForms" tagPrefix="webopt" />
<add tagPrefix="asp" namespace="System.Web.UI.DataVisualization.Charting" assembly="System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<add tagPrefix="ADS" namespace="ADServerControl" assembly="ADServerControl" />
<add tagPrefix="ajax" namespace="AjaxControlToolkit" assembly="AjaxControlToolkit" />
<add tagPrefix="CR" namespace="CrystalDecisions.Web" assembly="CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" />
<add tagPrefix="rvweb" namespace="Microsoft.Reporting.WebForms" assembly="Microsoft.ReportViewer.WebForms, Version=15.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
<add tagPrefix="telerik" namespace="Telerik.Web.UI" assembly="Telerik.Web.UI" />
</controls>
</pages>
<globalization culture="es-MX" uiCulture="es-MX" />
<httpRuntime executionTimeout="200" maxRequestLength="1550000" targetFramework="4.5" />
<compilation debug="true" strict="true" explicit="true" targetFramework="4.5">
<assemblies>
<!--<add assembly="Microsoft.ReportViewer.WebForms, Version=12.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91"/>
<add assembly="Microsoft.ReportViewer.Common, Version=12.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91"/>-->
<!--<add assembly="CrystalDecisions.CrystalReports.Engine, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
<add assembly="CrystalDecisions.ReportSource, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
<add assembly="CrystalDecisions.Shared, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
<add assembly="CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
<add assembly="CrystalDecisions.ReportAppServer.ClientDoc, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>-->
<add assembly="Microsoft.SqlServer.Types, Version=12.0.0.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91" />
<add assembly="Microsoft.ReportViewer.Common, Version=12.0.0.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91" />
<!--<add assembly="Microsoft.ReportViewer.Common, Version=12.0.0.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91" />
<add assembly="Microsoft.ReportViewer.ProcessingObjectModel, Version=12.0.0.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91" />-->
<!--<add assembly="CrystalDecisions.CrystalReports.Engine, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/>
<add assembly="CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/>
<add assembly="CrystalDecisions.ReportSource, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/>
<add assembly="CrystalDecisions.Shared, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
<add assembly="CrystalDecisions.ReportAppServer.ClientDoc, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>-->
<add assembly="System.IO.Compression, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
<add assembly="System.IO.Compression.FileSystem, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
<add assembly="Stimulsoft.Report, Version=2017.1.10, Culture=neutral, PublicKeyToken=EBE6666CBA19647A" />
<add assembly="Stimulsoft.Report.Web, Version=2017.1.10, Culture=neutral, PublicKeyToken=EBE6666CBA19647A" />
<add assembly="Stimulsoft.Report.WebDesign, Version=2017.1.10, Culture=neutral, PublicKeyToken=EBE6666CBA19647A" />
<add assembly="Stimulsoft.Base, Version=2017.1.10, Culture=neutral, PublicKeyToken=EBE6666CBA19647A" />
<add assembly="Stimulsoft.Report.MobileDesign, Version=2017.1.10, Culture=neutral, PublicKeyToken=EBE6666CBA19647A" />
<add assembly="Stimulsoft.Report.Mobile, Version=2017.1.10, Culture=neutral, PublicKeyToken=EBE6666CBA19647A" />
<add assembly="Microsoft.VisualBasic, Version=10.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
<add assembly="System.Net.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
<add assembly="stdole, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
<add assembly="CrystalDecisions.CrystalReports.Engine, Version=13.0.3500.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304" />
<add assembly="CrystalDecisions.Shared, Version=13.0.3500.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304" />
<add assembly="CrystalDecisions.ReportSource, Version=13.0.3500.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304" />
<add assembly="CrystalDecisions.Web, Version=13.0.3500.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304" />
<!--<add assembly="log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/> -->
<add assembly="CrystalDecisions.ReportAppServer.Controllers, Version=13.0.3500.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304" />
<add assembly="CrystalDecisions.ReportAppServer.DataDefModel, Version=13.0.3500.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304" />
<add assembly="System.Security, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
</assemblies>
<buildProviders>
<add extension=".rdlc" type="Microsoft.Reporting.RdlBuildProvider, Microsoft.ReportViewer.WebForms, Version=12.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
<add extension=".rpt" type="CrystalDecisions.Web.Compilation.RptBuildProvider, CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" />
</buildProviders>
</compilation>
<!--
The <authentication> section enables configuration
of the security authentication mode used by
ASP.NET to identify an incoming user.
-->
<authentication mode="Forms">
<forms loginUrl="LogIn.aspx" protection="All" timeout="90" name=".ASPXSIG" path="/" requireSSL="false" slidingExpiration="true" defaultUrl="Inicio.aspx" cookieless="UseDeviceProfile" enableCrossAppRedirects="false" />
</authentication>
<authorization>
<deny users="?" />
</authorization>
<customErrors mode="Off" />
<machineKey validationKey="729966AC958271629627612BB77B2B02A3F24EE20B16FBE6F3E62E4029CE2B11E24CA9EEFDC4B22406550B3C58691B765B093D2C90C15E08AF147B6DBB962F6B" decryptionKey="F73E5A8FB4ED7CB9D5EC4DEE876FEDAD4F5E6829FCB1B590670A8112F8EB7D8F" validation="SHA1" decryption="AES" />
<!-- <sessionState mode="InProc" regenerateExpiredSessionId="true" timeout="60" compressionEnabled="false" />
The <customErrors> section enables configuration
of what to do if/when an unhandled error occurs
during the execution of a request. Specifically,
it enables developers to configure html error pages
to be displayed in place of a error stack trace.
<customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
<error statusCode="403" redirect="NoAccess.htm" />
<error statusCode="404" redirect="FileNotFound.htm" />
</customErrors>
-->
<sessionState cookieless="UseCookies" customProvider="NCacheSessionProvider" mode="InProc" regenerateExpiredSessionId="true" timeout="120">
<providers>
<add name="NCacheSessionProvider" type="Alachisoft.NCache.Web.SessionState.NSessionStoreProvider" sessionAppId="WebF1" cacheName="locCache" writeExceptionsToEventLog="false" asyncSession="false" enableLogs="false" />
</providers>
</sessionState>
<!--<machineKey validationKey="A01D6E0D1A5D2A22E0854CA612FE5C5EC4AECF24" decryptionKey="ACD8EBF87C4C8937" validation="SHA1" />-->
<!--
The <customErrors> section enables configuration
of what to do if/when an unhandled error occurs
during the execution of a request. Specifically,
it enables developers to configure html error pages
to be displayed in place of a error stack trace.
<customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
<error statusCode="403" redirect="NoAccess.htm" />
<error statusCode="404" redirect="FileNotFound.htm" />
</customErrors>
-->
</system.web>
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="DgieWSPortSoapBinding" />
<binding name="Service1Soap" />
<binding name="Service1Soap1" />
<binding name="Timbrado33Soap" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard" maxBufferPoolSize="524288" maxBufferSize="5242880" maxReceivedMessageSize="5242880" textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true" messageEncoding="Text">
<readerQuotas maxDepth="32" maxStringContentLength="5242880" maxArrayLength="32768" maxBytesPerRead="4096" maxNameTableCharCount="32768" />
<security mode="Transport">
<transport clientCredentialType="None" proxyCredentialType="None" realm="" />
<message clientCredentialType="UserName" algorithmSuite="Default" />
</security>
</binding>
<binding name="WebServiceSoap" maxBufferPoolSize="52428800" maxBufferSize="52428800" maxReceivedMessageSize="52428800" />
</basicHttpBinding>
</bindings>
<client>
<endpoint address="http://www.banxico.org.mx/DgieWSWeb/DgieWS" binding="basicHttpBinding" bindingConfiguration="DgieWSPortSoapBinding" contract="WSBancoMexico.DgieWSPort" name="DgieWSPort" />
<endpoint address="http://generacfdi.com.mx/wsconsultas/service1.asmx" binding="basicHttpBinding" bindingConfiguration="Service1Soap" contract="WSRVConsultas.Service1Soap" name="Service1Soap" />
<endpoint address="http://192.168.0.2:8080/ADSistemas/Timbrado.asmx" binding="basicHttpBinding" bindingConfiguration="Service1Soap1" contract="WSGF.Service1Soap" name="Service1Soap1" />
<endpoint address="https://cfdi33-pruebas.buzoncfdi.mx:1443/Timbrado.asmx" binding="basicHttpBinding" bindingConfiguration="Timbrado33Soap" contract="wsReference33.TimbradoSoap" name="Timbrado33SoapPruebas" />
<endpoint address="http://192.168.10.111:7999/WebService.asmx" binding="basicHttpBinding" bindingConfiguration="WebServiceSoap" contract="WSRDLC.WebServiceSoap" name="WebServiceSoap" />
</client>
</system.serviceModel>
<!-- <runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="AjaxControlToolkit" publicKeyToken="28f01b0e84b6d53e" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.1.7.1213" newVersion="4.1.7.1213" />
</dependentAssembly>
</assemblyBinding>
</runtime>-->
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" culture="neutral" publicKeyToken="30ad4fe6b2a6aeed" />
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="12.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="WebGrease" culture="neutral" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="0.0.0.0-1.5.2.14234" newVersion="1.5.2.14234" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="EntityFramework" publicKeyToken="b77a5c561934e089" />
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.Owin" culture="neutral" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="0.0.0.0-3.0.1.0" newVersion="3.0.1.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.Owin.Security.OAuth" culture="neutral" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="0.0.0.0-3.0.1.0" newVersion="3.0.1.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.Owin.Security.Cookies" culture="neutral" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="0.0.0.0-3.0.1.0" newVersion="3.0.1.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.Owin.Security" culture="neutral" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="0.0.0.0-3.0.1.0" newVersion="3.0.1.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="AjaxControlToolkit" publicKeyToken="28f01b0e84b6d53e" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-15.1.4.0" newVersion="15.1.4.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="HtmlAgilityPack" publicKeyToken="bd319b19eaf3b43a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.4.6.0" newVersion="1.4.6.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<system.codedom>
<compilers>
<compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:6 /nowarn:1659;1699;1701" />
<compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:14 /nowarn:41008 /define:_MYTYPE=\&quot;Web\&quot; /optionInfer+" />
</compilers>
</system.codedom>
</configuration>

View File

@@ -50,6 +50,8 @@