Commit inicial Ventas Productivo

This commit is contained in:
JORGE LUIS CAUDILLO ESPARZA
2019-08-14 16:40:54 -07:00
commit c35cf91883
13328 changed files with 3711549 additions and 0 deletions

161
RH/ActualizacionMasiva.aspx Normal file
View File

@@ -0,0 +1,161 @@
<%@ Page Title="RH - Cargas Masivas" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="ActualizacionMasiva.aspx.vb" Inherits="RH_ActualizacionMasiva" %>
<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">
Cargas Masivas
</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 class="portlet solid grey-cascade portlet-filter" style="">
<div class="portlet-title portlet-filterT" style="">
<div class="portlet-body" style="font-size:120%">
<ul class="list-inline">
<li>Cliente:
<asp:Button ID="BtnCargarClientes" runat="server" ClientIDMode="Static" Text="CargarClientes" Style="display: none;" />
<asp:DropDownList ID="DdlCliente" runat="server" AppendDataBoundItems="true" DataTextField="Nombre" DataValueField="CveCliente" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 250px !important;">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</li>
<li>Proyecto:
<asp:DropDownList ID="DdlProyecto" runat="server" AppendDataBoundItems="true" AutoPostBack="true" DataTextField="Proyecto" DataValueField="CveProyecto" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 200px !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</li>
<li>SubProyecto:
<asp:DropDownList ID="DdlSubProyecto" runat="server" AppendDataBoundItems="true" DataTextField="SubProyecto" DataValueField="CveSubProyecto" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 200px !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem>
</asp:DropDownList>
</li>
</ul>
</div>
<div class="tools">
<asp:Button ID="BtnConsultar" runat="server" Text="Consultar" class="btn btn-primary" />
<a href="javascript:;" class="expand"></a>
<a onclick="document.getElementById('C_BtnConsultar').click();" class="reload"></a>
</div>
</div>
<div class="portlet-body" style="display: none;font-size:120%">
<ul class="list-inline">
<li style="width: 297px;">&nbsp;&nbsp;Turno:
<asp:DropDownList ID="DdlTurno" runat="server" AppendDataBoundItems="true" DataTextField="Turno" DataValueField="CveTurno" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 100px !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem>
</asp:DropDownList>
</li>
<li>Supervisor:
<asp:DropDownList ID="DdlSupervisor" runat="server" AppendDataBoundItems="true" DataTextField="Nombre" DataValueField="CveUsuario" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 200px !important;">
<asp:ListItem Selected="True" Text="Sin Supervisor Asignado" Value="-1"></asp:ListItem>
</asp:DropDownList>
</li>
</ul>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<br />
<asp:UpdatePanel ID="UPDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<table border="0" cellpadding="0" cellspacing="0">
<tr>
<td align="right">
<asp:Button ID="BtnGuardar" runat="server" Text="Guardar Cambios" ValidationGroup="GrpGuardar" class="btn btn-primary" />
</td>
</tr>
<tr>
<td align="left">
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" DataKeyNames="CvePersonal, CveSubProyecto" EmptyDataText="No se encontraron Ventas con los filtros especificados" ToolTip="Listado de Asistencias" CssClass="table table-striped table-advance table-hover" Style="margin-top: -10px; text-align: center;" GridLines="None">
<Columns>
<asp:TemplateField>
<HeaderTemplate>Nombre</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlNombre" runat="server" Text='<%# Eval("Nombre") %>'></asp:Literal>
</ItemTemplate>
<ItemStyle Width="250px" HorizontalAlign="Left" />
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Proyecto</HeaderTemplate>
<ItemTemplate>
<asp:DropDownList ID="DdlGVProyecto" runat="server" AutoPostBack="True" DataTextField="Proyecto" DataValueField="CveProyecto" OnSelectedIndexChanged="DdlGVProyecto_SelectedIndexChanged" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 190px !important;"></asp:DropDownList>
</ItemTemplate>
<ItemStyle HorizontalAlign="Left" />
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Sub Proyecto</HeaderTemplate>
<ItemTemplate>
<asp:DropDownList ID="DdlGVSubProyecto" runat="server" DataTextField="SubProyecto" DataValueField="CveSubProyecto" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 190px !important;"></asp:DropDownList>
</ItemTemplate>
<ItemStyle HorizontalAlign="Left" />
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Turno</HeaderTemplate>
<ItemTemplate>
<asp:DropDownList ID="DdlTurno" runat="server" DataTextField="Turno" DataValueField="CveTurno" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 90px !important;">
</asp:DropDownList>
</ItemTemplate>
<ItemStyle HorizontalAlign="Left" />
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Supervisor</HeaderTemplate>
<ItemTemplate>
<asp:DropDownList ID="DdlSupervisor" runat="server" DataTextField="Nombre" DataValueField="CveUsuario" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 140px !important;">
</asp:DropDownList>
</ItemTemplate>
<ItemStyle HorizontalAlign="Left" />
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>SDD</HeaderTemplate>
<ItemTemplate>
<asp:TextBox ID="TxtSalarioDiario" runat="server" MaxLength="10" Text='<%# Eval("SalarioDiario", "{0:N2}") %>' Width="50px"></asp:TextBox>
<asp:CompareValidator ID="CVSalarioDiario" runat="server" ControlToValidate="TxtSalarioDiario" Display="None" ErrorMessage="El campo <b>''Salario Diario''</b> no tiene el formato correcto, por favor corrija e intente de nuevo (Solo formato numérico)." Operator="DataTypeCheck" Type="Currency" ValidationGroup="GrpGuardar"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCOSalarioDiario" runat="server" HighlightCssClass="vco" TargetControlID="CVSalarioDiario" Width="300px"></ajax:ValidatorCalloutExtender>
</ItemTemplate>
<ItemStyle HorizontalAlign="Left" />
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>SDI</HeaderTemplate>
<ItemTemplate>
<asp:TextBox ID="TxtSDI" runat="server" MaxLength="10" Text='<%# Eval("SDI", "{0:N2}") %>' Width="50px"></asp:TextBox>
<asp:CompareValidator ID="CVSDI" runat="server" ControlToValidate="TxtSDI" Display="None" ErrorMessage="El campo <b>''SDI''</b> no tiene el formato correcto, por favor corrija e intente de nuevo (Solo formato numérico)." Operator="DataTypeCheck" Type="Currency" ValidationGroup="GrpGuardar"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCOSDI" runat="server" HighlightCssClass="vco" TargetControlID="CVSDI" Width="300px"></ajax:ValidatorCalloutExtender>
</ItemTemplate>
<ItemStyle HorizontalAlign="Left" />
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>SD IMSS</HeaderTemplate>
<ItemTemplate>
<asp:TextBox ID="TxtSalarioCotizado" runat="server" MaxLength="10" Text='<%# Eval("SalarioDiarioSS", "{0:N2}") %>' Width="60px"></asp:TextBox>
<asp:CompareValidator ID="CVSDT" runat="server" ControlToValidate="TxtSalarioCotizado" Display="None" ErrorMessage="El campo <b>''Salario Diario Cotizado''</b> no tiene el formato correcto, por favor corrija e intente de nuevo (Solo formato numérico)." Operator="DataTypeCheck" Type="Currency" ValidationGroup="GrpGuardar"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCOSDT" runat="server" HighlightCssClass="vco" TargetControlID="CVSDT" Width="300px"></ajax:ValidatorCalloutExtender>
</ItemTemplate>
<ItemStyle HorizontalAlign="Left" />
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" />
<HeaderStyle CssClass="Titulos" />
</asp:GridView>
</td>
</tr>
</table>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
<script language="javascript" type="text/javascript">
function CargaClientes() {
$("#BtnCargarClientes").click();
}
function F(Obj, Obj2) {
if (Obj.selectedIndex == 0) {
Obj2.selectedIndex = 0;
}
}
</script>
</asp:Content>

View File

@@ -0,0 +1,237 @@
Option Strict On
Option Explicit On
Imports Extensiones
Imports System.Data
Partial Class RH_ActualizacionMasiva
Inherits ClsPaginas
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
SetPermisos()
DdlCliente.Attributes.Add("onclick", "CargaClientes();")
CargaProyecto()
CargaTurnos()
CargaSupervisores()
End If
End Sub
Private Sub SetPermisos()
End Sub
#Region "Propiedades"
Private ReadOnly Property DTUsuarios As DataTable
Get
Return DirectCast(ViewState("DTUsuarios"), DataTable)
End Get
End Property
Private ReadOnly Property DTTurno As DataTable
Get
Return DirectCast(ViewState("DTTurno"), DataTable)
End Get
End Property
Private ReadOnly Property DTSubProyectos As DataTable
Get
Return DirectCast(ViewState("DTSubProyectos"), DataTable)
End Get
End Property
Private ReadOnly Property DTProyectos As DataTable
Get
Return DirectCast(ViewState("DTProyectos"), DataTable)
End Get
End Property
#End Region
#Region "CargaCombos"
Private Sub CargaClientes()
Dim ObjClientes As New ClsClientes
If ObjClientes.GetClientes(-1, "-1", "-1", "-1", "-1", "-1", "-1", -1, UsuarioActual.CveEmpresa) Then
DdlCliente.DataSource = ObjClientes.DtResultados
Else
DdlCliente.DataSource = Nothing
End If
ObjClientes.Dispose()
'Application("GlobalDTResponsable")
DdlCliente.DataBind()
End Sub
Protected Sub BtnCargarClientes_Click(sender As Object, e As System.EventArgs) Handles BtnCargarClientes.Click
CargaClientes()
DdlCliente.Attributes.Remove("onclick")
End Sub
Private Sub CargaProyecto()
ViewState("DTProyectos") = GlobalDTProyectos(UsuarioActual.Empresa.CveEmpresa)
Dim Row As DataRow = DirectCast(ViewState("DTProyectos"), DataTable).NewRow()
Row("CveProyecto") = -1 : Row("Proyecto") = "Sin Proyecto asignado"
DirectCast(ViewState("DTProyectos"), DataTable).Rows.InsertAt(Row, 0)
DdlProyecto.DataSource = GlobalDTProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, 1)
DdlProyecto.DataBind()
End Sub
Private Sub CargaSubProyecto()
ViewState("DTSubProyectos") = GlobalDTSubProyectos(DdlProyecto.SelectedValue.ToEntero)
DdlSubProyecto.Items.Clear()
DdlSubProyecto.DataSource = GlobalDTSubProyectos(DdlProyecto.SelectedValue.ToEntero)
DdlSubProyecto.DataBind()
DdlSubProyecto.Items.Insert(0, New ListItem("Todos", "-1"))
End Sub
Private Sub CargaTurnos()
ViewState("DTTurno") = GlobalDTTurno.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
DdlTurno.DataSource = GlobalDTTurno.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
DdlTurno.DataBind()
End Sub
Private Sub CargaSupervisores()
ViewState("DTUsuarios") = GlobalDTUsuarios.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa & " AND EsSupervisorRH = 1 ")
Dim Row As DataRow = DirectCast(ViewState("DTUsuarios"), DataTable).NewRow()
Row("CveUsuario") = -1 : Row("Nombre") = "Sin Supervisor Asignado"
DirectCast(ViewState("DTUsuarios"), DataTable).Rows.InsertAt(Row, 0)
DdlSupervisor.DataSource = GlobalDTUsuarios.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa & " AND EsSupervisorRH = 1 ")
DdlSupervisor.DataBind()
End Sub
#End Region
Protected Sub DdlProyecto_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles DdlProyecto.SelectedIndexChanged
CargaSubProyecto()
End Sub
Protected Sub BtnConsultar_Click(sender As Object, e As System.EventArgs) Handles BtnConsultar.Click
Dim ObjPersonal As New ClsRH
If ObjPersonal.GetPersonalMasivo(DdlTurno.SelectedValue.ToEntero, DdlProyecto.SelectedValue.ToEntero, DdlSubProyecto.SelectedValue.ToEntero, DdlSupervisor.SelectedValue.ToEntero, UsuarioActual.CveEmpresa) Then
GvDatos.DataSource = ObjPersonal.DtResultados
Else
GvDatos.DataSource = Nothing
End If
ObjPersonal.Dispose()
GvDatos.DataBind()
UPDatos.Update()
End Sub
Protected Sub GvDatos_RowCreated(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowCreated
If e.Row.RowType = DataControlRowType.DataRow AndAlso (e.Row.RowState = DataControlRowState.Alternate OrElse e.Row.RowState = DataControlRowState.Normal) Then
e.Row.FCDropDownList("DdlGVProyecto").DataSource = DTProyectos
e.Row.FCDropDownList("DdlGVProyecto").DataBind()
'e.Row.FCDropDownList("DdlGVProyecto").Items.Insert(0, New ListItem("Sin Proyecto asignado", "-1"))
e.Row.FCDropDownList("DdlGVSubProyecto").DataSource = DTSubProyectos
e.Row.FCDropDownList("DdlGVSubProyecto").DataBind()
'e.Row.FCDropDownList("DdlGVSubProyecto").Items.Insert(0, New ListItem("Sin SubProyecto asignado", "-1"))
e.Row.FCDropDownList("DdlTurno").DataSource = DTTurno
e.Row.FCDropDownList("DdlTurno").DataBind()
e.Row.FCDropDownList("DdlSupervisor").DataSource = DTUsuarios
e.Row.FCDropDownList("DdlSupervisor").DataBind()
'e.Row.FCDropDownList("DdlSupervisor").Items.Insert(0, New ListItem("Sin Supervisor Asignado", "-1"))
End If
End Sub
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.DBCampo("Turno") = "" AndAlso e.Row.DBCampo("Nombre") = "" Then
e.Row.FCLiteral("LtlNombre").Text = "<b>Sub Proyecto:</b> " & If(e.Row.DBCampo("SubProyecto") = String.Empty, "Sin Proyecto Asignado", e.Row.DBCampo("SubProyecto"))
e.Row.Cells(0).ColumnSpan = 8
For i As Integer = 1 To 7
e.Row.Cells(i).Visible = False
Next
e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left
ElseIf e.Row.DBCampo("Turno") <> "" AndAlso e.Row.DBCampo("Nombre") = "" Then
e.Row.FCLiteral("LtlNombre").Text = "<b>Turno:</b> " & e.Row.DBCampo("Turno")
e.Row.Cells(0).ColumnSpan = 8
For i As Integer = 1 To 7
e.Row.Cells(i).Visible = False
Next
e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left
Else
If e.Row.DBCampo("CveProyecto") <> String.Empty Then e.Row.FCDropDownList("DdlGVProyecto").SelectedValue = e.Row.DBCampo("CveProyecto")
CargaSubProyectoGV(e.Row.FCDropDownList("DdlGVProyecto"), e.Row.FCDropDownList("DdlGVSubProyecto"))
If e.Row.DBCampo("CveSubProyecto") <> String.Empty Then e.Row.FCDropDownList("DdlGVSubProyecto").SelectedValue = e.Row.DBCampo("CveSubProyecto")
e.Row.FCDropDownList("DdlGVSubProyecto").Attributes.Add("onChange", "F(this, " & e.Row.FCDropDownList("DdlGVProyecto").ClientID & ")")
If e.Row.DBCampo("CveTurno") <> String.Empty Then e.Row.FCDropDownList("DdlTurno").SelectedValue = e.Row.DBCampo("CveTurno")
If e.Row.DBCampo("CveSupervisor") <> String.Empty Then e.Row.FCDropDownList("DdlSupervisor").SelectedValue = e.Row.DBCampo("CveSupervisor")
e.Row.FCTextBox("TxtSalarioCotizado").Text = e.Row.FCTextBox("TxtSalarioCotizado").Text.Replace(",", "")
''Deshabilita todo
'e.Row.Cells(1).Enabled = True : e.Row.Cells(2).Enabled = True : e.Row.Cells(3).Enabled = True : e.Row.Cells(4).Enabled = True
'e.Row.Cells(5).Enabled = True : e.Row.Cells(6).Enabled = True : e.Row.Cells(7).Enabled = True
'25: CargaMasiva-Proy,Sup,Tur
If Not UsuarioActual.TienePermisoProceso(25) Then e.Row.Cells(1).Enabled = False : e.Row.Cells(2).Enabled = False : e.Row.Cells(3).Enabled = False : e.Row.Cells(4).Enabled = False
'26: CargaMasiva-Salarios
If Not UsuarioActual.TienePermisoProceso(26) Then e.Row.Cells(5).Enabled = False : e.Row.Cells(6).Enabled = False : e.Row.Cells(7).Enabled = False
End If
End If
End Sub
Protected Sub BtnGuardar_Click(sender As Object, e As System.EventArgs) Handles BtnGuardar.Click
Dim ObjPersonal As New ClsRH
ObjPersonal.IniciaTransacSQL()
Dim OcurrioError As Boolean = False
For Each Row As GridViewRow In GvDatos.Rows
If Row.DataKey("CvePersonal") <> "" Then
If Not ObjPersonal.UpdatePersonalMasivo(Row.FCDropDownList("DdlTurno").SelectedValue.ToEntero, Row.FCDropDownList("DdlGVSubProyecto").SelectedValue.ToEntero, Row.FCDropDownList("DdlSupervisor").SelectedValue.ToEntero,
Row.FCTextBox("TxtSalarioDiario").Text.ToDouble, Row.FCTextBox("TxtSDI").Text.ToDouble, Row.FCTextBox("TxtSalarioCotizado").Text.ToDouble,
Row.DataKey("CvePersonal").ToEntero, UsuarioActual.CveEmpresa) Then
OcurrioError = True
ObjPersonal.RollBack()
Exit For
End If
End If
Next
If Not OcurrioError Then
ObjPersonal.Commit()
Alert("La información se guardó correctamente.", TipoMensaje.MsgInformacion)
Else
Alert("Ocurrió un error al guardar la información.", TipoMensaje.MsgError)
End If
ObjPersonal.Dispose()
End Sub
Private Sub CargaSubProyectoGV(DdlProyecto As DropDownList, DdlSubProyecto As DropDownList)
DdlSubProyecto.Items.Clear()
DdlSubProyecto.DataSource = GlobalDTSubProyectos(DdlProyecto.SelectedValue.ToEntero)
DdlSubProyecto.DataBind()
DdlSubProyecto.Items.Insert(0, New ListItem("Sin SubProyecto asignado", "-1"))
End Sub
Protected Sub DdlGVProyecto_SelectedIndexChanged(sender As Object, e As System.EventArgs)
Dim Array() As String = Nothing
Dim DdlGVSubProyecto As DropDownList = Nothing
Array = DirectCast(sender, DropDownList).ClientID.Split("_"c)
If Array.Length > 0 Then
DdlGVSubProyecto = DirectCast(GvDatos.Rows(Array(3).ToEntero).Controls(2).Controls(1), DropDownList)
End If
If DdlGVSubProyecto IsNot Nothing Then CargaSubProyectoGV(DirectCast(sender, DropDownList), DdlGVSubProyecto)
End Sub
End Class

167
RH/AsistenciaDetalle.aspx Normal file
View File

@@ -0,0 +1,167 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="AsistenciaDetalle.aspx.vb" Inherits="RH_AsistenciaDetalle" %>
<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">
Detalles de Asistencia
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpTitulos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<table class="table table-striped table-advance table-hover">
<thead>
<tr class="Titulos">
<td style="text-align: center;" width="200px">
<asp:LinkButton ID="LbProyecto" runat="server" CausesValidation="false" Text="Proyecto" CommandArgument="Proyecto" OnClick="LbOrden_Click">
<asp:Literal ID="ImgProyecto" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton></td>
<td style="text-align: center;" width="200px">
<asp:LinkButton ID="LbSubProyecto" runat="server" CausesValidation="false" Text="SubProyecto" CommandArgument="SubProyecto" OnClick="LbOrden_Click">
<asp:Literal ID="ImgSubProyecto" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton></td>
<td style="text-align: center;" width="100px">
<asp:LinkButton ID="LbHoraInicio" runat="server" CausesValidation="false" Text="Hora Inicio" CommandArgument="HoraInicio" OnClick="LbOrden_Click">
<asp:Literal ID="ImgHoraInicio" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton></td>
<td style="text-align: center;" width="100px">
<asp:LinkButton ID="LbHoraFin" runat="server" CausesValidation="false" Text="Hora Fin" CommandArgument="HoraFin" OnClick="LbOrden_Click">
<asp:Literal ID="ImgHoraFin" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton></td>
<td style="text-align: center;" width="200px">
<asp:LinkButton ID="LbTipoHora" runat="server" CausesValidation="false" Text="Tipo Hora" CommandArgument="TipoHoraTexto" OnClick="LbOrden_Click">
<asp:Literal ID="ImgTipoHoraTexto" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton></td>
<td style="text-align: center;" width="155px">Comandos</td>
</tr>
</thead>
<tr>
<td>
<asp:DropDownList ID="DdlProyectoAsignado" runat="server" AppendDataBoundItems="true" AutoPostBack="true" DataTextField="Proyecto" DataValueField="CveProyecto" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 190px !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</td>
<td>
<asp:DropDownList ID="DdlSubProyectoAsignado" runat="server" AppendDataBoundItems="true" DataTextField="SubProyecto" DataValueField="CveSubProyecto" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 190px !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</td>
<td>
<asp:TextBox ID="TxtHoraInicio" runat="server" CausesValidation="true" MaxLength="10" Width="94px" ValidationGroup="GrpGuardar"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVHoraInicio" runat="server" ControlToValidate="TxtHoraInicio" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hr. Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOHoraInicio1" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraInicio" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:MaskedEditExtender ID="MEEHoraInicio" runat="server" TargetControlID="TxtHoraInicio" Mask="99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraInicio" runat="server" ControlExtender="MEEHoraInicio" ControlToValidate="TxtHoraInicio" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hr. Entrada''</b> no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpGuardar"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="VCOHoraInicio2" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraInicio"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtHoraFin" runat="server" CausesValidation="true" MaxLength="10" Width="94px" ValidationGroup="GrpGuardar"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVHoraFin" runat="server" ControlToValidate="TxtHoraFin" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hr. Fin''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOHoraFin1" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraFin" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:MaskedEditExtender ID="MEEHoraFin" runat="server" TargetControlID="TxtHoraFin" Mask="99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraFin" runat="server" ControlExtender="MEEHoraFin" ControlToValidate="TxtHoraFin" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hr. Salida''</b> no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpGuardar"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="VCOHoraFin2" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraFin"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:DropDownList ID="DdlTipoHora" runat="server" AppendDataBoundItems="false" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 190px !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
<asp:ListItem Text="Normal" Value="0"></asp:ListItem>
<asp:ListItem Text="Horas Extras" Value="1"></asp:ListItem>
<asp:ListItem Text="Horas Triples" Value="2"></asp:ListItem>
</asp:DropDownList>
</td>
<td style="text-align: center;">
<asp:LinkButton ID="LbAgregar" runat="server" CausesValidation="true" CssClass="Texto" Text="Agregar" ValidationGroup="GrpGuardar"></asp:LinkButton></td>
</tr>
</table>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" DataKeyNames="CveAsistencia" EmptyDataText="No se encontraron Detallado de asistencias Registradas" ToolTip="Listado de Asistencias Detalle" CssClass="table table-striped table-advance table-hover" Style="margin-top: -10px; text-align: center;" GridLines="None">
<Columns>
<asp:TemplateField>
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlProyecto" runat="server" Text='<%# Eval("Proyecto", "{0}")%>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:DropDownList ID="DdlProyectoAsignadoEdit" runat="server" AppendDataBoundItems="true" AutoPostBack="true" DataTextField="Proyecto" DataValueField="CveProyecto" OnSelectedIndexChanged="DdlProyectoAsignadoEdit_SelectedIndexChanged" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 190px !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlSubProyecto" runat="server" Text='<%# Eval("SubProyecto", "{0}")%>'></asp:Literal>
&nbsp;<asp:Literal ID="LtlCveSubProyecto" runat="server" Text='<%# Eval("CveSubProyecto", "{0}")%>' Visible="false"></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:DropDownList ID="DdlSubProyectoAsignadoEdit" runat="server" AppendDataBoundItems="true" DataTextField="SubProyecto" DataValueField="CveSubProyecto" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 190px !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlHoraInicio" runat="server" Text='<%# Eval("HoraInicioH", "{0}")%>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="TxtHoraInicio" runat="server" MaxLength="15" Text='<%# Eval("HoraInicio", "{0:t}")%>' Width="94px"></asp:TextBox>
<ajax:MaskedEditExtender ID="MEEHoraInicio" runat="server" TargetControlID="TxtHoraInicio" Mask="99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlHoraFin" runat="server" Text='<%# Eval("HoraFinH", "{0}")%>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="TxtHoraFin" runat="server" MaxLength="15" Text='<%# Eval("HoraFin", "{0:t}")%>' Width="94px"></asp:TextBox>
<ajax:MaskedEditExtender ID="MEEHoraFin" runat="server" TargetControlID="TxtHoraFin" Mask="99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlTipoHora" runat="server" Text='<%# Eval("TipoHoraTexto", "{0}")%>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:DropDownList ID="DdlTipoHora" runat="server" AppendDataBoundItems="false" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 190px !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
<asp:ListItem Text="Normal" Value="0"></asp:ListItem>
<asp:ListItem Text="Horas Extras" Value="1"></asp:ListItem>
<asp:ListItem Text="Horas Triples" Value="2"></asp:ListItem>
</asp:DropDownList>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Editar">
<EditItemTemplate>
<center>
<asp:LinkButton ID="imgU" runat="server" AlternateText="Actualizar" CausesValidation="True" CommandName="Update" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-check'></i>" ValidationGroup="GrpGV" />
&nbsp;<asp:LinkButton ID="imgC" runat="server" AlternateText="Cancelar" CausesValidation="False" CommandName="Cancel" CssClass="btn btn-circle btn-sm red" Text="<i class='fa fa-times'></i>" />
</center>
</EditItemTemplate>
<ItemTemplate>
<asp:LinkButton ID="imgE" runat="server" AlternateText="Editar" CausesValidation="False" CommandName="Edit" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Eliminar">
<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="confirmar" data-btn-ok-label="si" OnClientClick="javascript:return C();" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" />
<AlternatingRowStyle CssClass="TextoAlterno" />
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

View File

@@ -0,0 +1,234 @@
Option Explicit On
Option Strict On
Imports Extensiones
Imports System.Data
Partial Class RH_AsistenciaDetalle
Inherits ClsPaginas
#Region "PROPIEDADES"
Private ReadOnly Property CvePersonal As Integer
Get
Return ViewState("CvePersonal").ToString.ToEntero
End Get
End Property
#End Region
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not IsPostBack Then
ViewState("Orden") = ""
If Request("CvePersonal") IsNot Nothing AndAlso IsNumeric(Request("CvePersonal")) AndAlso Request("CvePersonal").ToEntero > 0 Then
ViewState("CvePersonal") = Request("CvePersonal")
CargaProyecto()
CargaDatos()
Else
ViewState("CvePersonal") = -1
End If
End If
End Sub
Private Sub CargaDatos()
Dim ObjAsistenciaDetalle As New ClsRH
If ObjAsistenciaDetalle.GetAsistenciasDetalle() Then
ViewState("DTAsistenciaDetalle") = ObjAsistenciaDetalle.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GvDatos.DataSource = ObjAsistenciaDetalle.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
Else
Me.GvDatos.DataSource = Nothing
End If
ObjAsistenciaDetalle.Dispose()
GvDatos.DataBind()
UpDatos.Update()
End Sub
#Region "G V D A T O S"
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.RowIndex = 0 Then
e.Row.Cells(0).Width = Unit.Pixel(200)
e.Row.Cells(1).Width = Unit.Pixel(200)
e.Row.Cells(2).Width = Unit.Pixel(100)
e.Row.Cells(3).Width = Unit.Pixel(100)
e.Row.Cells(4).Width = Unit.Pixel(200)
e.Row.Cells(5).Width = Unit.Pixel(105)
e.Row.Cells(6).Width = Unit.Pixel(55)
End If
e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left
e.Row.Cells(1).HorizontalAlign = HorizontalAlign.Left
e.Row.Cells(4).HorizontalAlign = HorizontalAlign.Left
If e.Row.RowState = DataControlRowState.Edit OrElse e.Row.RowState = 5 Then
e.Row.FCDropDownList("DdlProyectoAsignadoEdit").DataSource = GlobalDTProyectos(UsuarioActual.CveEmpresa)
e.Row.FCDropDownList("DdlProyectoAsignadoEdit").DataBind()
e.Row.FCDropDownList("DdlProyectoAsignadoEdit").SelectedValue = e.Row.DBCampo("CveProyecto")
e.Row.FCDropDownList("DdlSubProyectoAsignadoEdit").Items.Clear()
e.Row.FCDropDownList("DdlSubProyectoAsignadoEdit").DataSource = GlobalDTSubProyectos(e.Row.DBCampo("CveProyecto").ToEntero).FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa, "", {"CveSubProyecto", "SubProyecto"})
e.Row.FCDropDownList("DdlSubProyectoAsignadoEdit").DataBind()
e.Row.FCDropDownList("DdlSubProyectoAsignadoEdit").SelectedValue = e.Row.DBCampo("CveSubProyecto")
e.Row.FCDropDownList("DdlTipoHora").SelectedValue = e.Row.DBCampo("TipoHora")
End If
End If
End Sub
Protected Sub GvDatos_RowDeleting(sender As Object, e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles GvDatos.RowDeleting
Dim ObjAsistDetall As New ClsRH
Dim CveAsistencia As Integer = GvDatos.DataKeys(e.RowIndex).Value.ToString.ToEntero
Dim CveSubProyecto As Integer = DirectCast(GvDatos.Rows(e.RowIndex).FindControl("LtlCveSubProyecto"), Literal).Text.ToEntero
If ObjAsistDetall.RemoveAsistenciasDetalle(CveAsistencia, CveSubProyecto) Then
GvDatos.EditIndex = -1
ViewState("DTAsistenciaDetalle") = ObjAsistDetall.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GlobalDTAsistenciaDetalle = ObjAsistDetall.DtResultados
Alert("El Detalle de la Asistencia se eliminó correctamente.", TipoMensaje.MsgInformacion)
End If
ObjAsistDetall.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowCancelingEdit(sender As Object, e As System.Web.UI.WebControls.GridViewCancelEditEventArgs) Handles GvDatos.RowCancelingEdit
GvDatos.EditIndex = -1
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowUpdating(sender As Object, e As System.Web.UI.WebControls.GridViewUpdateEventArgs) Handles GvDatos.RowUpdating
Dim ObjAsistenciaDetalle As New ClsRH
'Dim Departamento As String = DirectCast(GvDatos.Rows(e.RowIndex).FindControl("TxtDepartamento"), TextBox).Text.Trim
'Dim Estatus As Boolean = GvDatos.Rows(e.RowIndex).FCCheckBox("ChkEstatus").Checked
Dim CveSubProyecto As Integer = DirectCast(GvDatos.Rows(e.RowIndex).FindControl("DdlSubProyectoAsignadoEdit"), DropDownList).SelectedValue.ToEntero
Dim HoraInicio As Date = (DateTime.Today & " " & DirectCast(GvDatos.Rows(e.RowIndex).FindControl("TxtHoraInicio"), TextBox).Text.Trim).ToDateTime
Dim HoraFin As Date = (DateTime.Today & " " & DirectCast(GvDatos.Rows(e.RowIndex).FindControl("TxtHoraFin"), TextBox).Text.Trim).ToDateTime
Dim TipoHora As Integer = DirectCast(GvDatos.Rows(e.RowIndex).FindControl("DdlTipoHora"), DropDownList).SelectedValue.ToEntero
Dim CveAsistencia As Integer = GvDatos.DataKeys(e.RowIndex).Value.ToString.ToEntero
If ObjAsistenciaDetalle.UpdateAsistenciaDetalle(CveSubProyecto, HoraInicio, HoraFin, TipoHora, CveAsistencia) Then
GvDatos.EditIndex = -1
ViewState("DTAsistenciaDetalle") = ObjAsistenciaDetalle.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GlobalDTAsistenciaDetalle = ObjAsistenciaDetalle.DtResultados
Alert("Los cambios se guardaron correctamente.", TipoMensaje.MsgInformacion)
End If
ObjAsistenciaDetalle.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowEditing(sender As Object, e As System.Web.UI.WebControls.GridViewEditEventArgs) Handles GvDatos.RowEditing
GvDatos.EditIndex = e.NewEditIndex
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
#End Region
#Region "O R D E N A M I E N T O"
Protected Sub LbOrden_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim Orden As String = ""
Dim Campo As String = ""
Dim Literal As Literal = Nothing
Const OrdenInicial As String = ""
Dim Arg(2) As String
Arg = CType(sender, LinkButton).CommandArgument().ToString.Split(";"c)
Campo = Arg(0)
Literal = CType(CType(sender, LinkButton).NamingContainer.FindControl("Img" & Campo.Replace(",", "_")), Literal)
If ViewState(String.Format("O{0}", Campo)) IsNot Nothing AndAlso ViewState(String.Format("O{0}", Campo)).ToString = String.Format("{0} DESC", Campo) Then
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} ASC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-asc' style='color:#999' ></i>")
Else
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} DESC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-desc' style='color:#999' ></i>")
End If
Orden = OrdenInicial & ViewState(String.Format("O{0}", Campo)).ToString
ViewState("Orden") = Orden
CargaGrid(Orden)
End Sub
Private Sub CargaGrid(Orden As String)
If Orden <> String.Empty Then
Dim DV As New DataView(CType(ViewState("DTAsistenciaDetalle"), DataTable), "", Orden, DataViewRowState.CurrentRows)
GvDatos.DataSource = DV.ToTable()
DV.Dispose()
Else
GvDatos.DataSource = CType(ViewState("DTAsistenciaDetalle"), DataTable)
End If
GvDatos.DataBind()
UpDatos.Update()
End Sub
#End Region
#Region "COMBOS"
Public Sub CargaProyecto()
DdlProyectoAsignado.DataSource = GlobalDTProyectos(UsuarioActual.CveEmpresa)
DdlProyectoAsignado.DataBind()
End Sub
Public Sub CargaSubProyecto()
DdlSubProyectoAsignado.Items.Clear()
DdlSubProyectoAsignado.DataSource = GlobalDTSubProyectos(DdlProyectoAsignado.SelectedValue.ToEntero).FiltraParametros("", "", {"CveSubProyecto", "SubProyecto"})
DdlSubProyectoAsignado.DataBind()
DdlSubProyectoAsignado.Items.Insert(0, New ListItem("Seleccione", "-1"))
End Sub
Protected Sub DdlProyectoAsignado_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlProyectoAsignado.SelectedIndexChanged
CargaSubProyecto()
End Sub
Protected Sub DdlProyectoAsignadoEdit_SelectedIndexChanged(sender As Object, e As EventArgs)
Dim GvDatos As GridViewRow = DirectCast(DirectCast(sender, DropDownList).BindingContainer, GridViewRow)
Dim CveProyecto As String = DirectCast(sender, DropDownList).SelectedValue
GvDatos.FCDropDownList("DdlSubProyectoAsignadoEdit").Items.Clear()
GvDatos.FCDropDownList("DdlSubProyectoAsignadoEdit").DataSource = GlobalDTSubProyectos(CveProyecto.ToEntero).FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa, "", {"CveSubProyecto", "SubProyecto"})
GvDatos.FCDropDownList("DdlSubProyectoAsignadoEdit").DataBind()
End Sub
#End Region
Protected Sub LbAgregar_Click(sender As Object, e As EventArgs) Handles LbAgregar.Click
Dim ObjAsistencias As New ClsRH
Dim ObjAsistenciasDetalle As New ClsRH
If ObjAsistencias.AddAsistencia(CvePersonal, -1, DdlSubProyectoAsignado.SelectedValue.ToEntero, Now, 6, 100, 0, 0, -1, "", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
If ObjAsistencias.CveAsistencia > 0 AndAlso
ObjAsistenciasDetalle.AddAsistenciasDetalle(ObjAsistencias.CveAsistencia, DdlSubProyectoAsignado.SelectedValue.ToEntero, TxtHoraInicio.Text.Trim.ToDateTime, TxtHoraFin.Text.Trim.ToDateTime, DdlTipoHora.SelectedValue.ToEntero) Then
TxtHoraInicio.Text = ""
TxtHoraFin.Text = ""
Alert("El nuevo Registro se guardó correctamente.", TipoMensaje.MsgInformacion)
UpTitulos.Update()
ViewState("DTAsistenciaDetalle") = ObjAsistenciasDetalle.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GlobalDTAsistenciaDetalle = ObjAsistenciasDetalle.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End If
ObjAsistenciasDetalle.Dispose()
End If
ObjAsistencias.Dispose()
End Sub
End Class

194
RH/Asistencias.aspx Normal file
View File

@@ -0,0 +1,194 @@
<%@ Page Title="RH - Captura de Asistencias" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="Asistencias.aspx.vb" Inherits="RH_Asistencias" %>
<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">
Registro de Asistencias
</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 class="portlet solid grey-cascade portlet-filter" style="">
<div class="portlet-title portlet-filterT" style="">
<div class="portlet-body" style="font-size:120%">
<ul class="list-inline">
<li>Cliente:
<asp:Button ID="BtnCargarClientes" runat="server" ClientIDMode="Static" Text="CargarClientes" Style="display: none;" />
<asp:DropDownList ID="DdlCliente" runat="server" AppendDataBoundItems="true" DataTextField="Nombre" DataValueField="CveCliente" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 250px !important;">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</li>
<li>Proyecto:
<asp:DropDownList ID="DdlProyecto" runat="server" AppendDataBoundItems="true" AutoPostBack="true" DataTextField="Proyecto" DataValueField="CveProyecto" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 200px !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</li>
<li>SubProyecto:
<asp:DropDownList ID="DdlSubProyecto" runat="server" AppendDataBoundItems="true" DataTextField="SubProyecto" DataValueField="CveSubProyecto" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 200px !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem>
</asp:DropDownList>
</li>
</ul>
</div>
<div class="tools">
<asp:Button ID="BtnConsultar" runat="server" Text="Consultar" class="btn btn-primary" />
<a href="javascript:;" class="expand"></a>
<a onclick="document.getElementById('C_BtnConsultar').click();" class="reload"></a>
</div>
</div>
<div class="portlet-body" style="display: none;font-size:120%">
<ul class="list-inline">
<li style="width: 297px;">&nbsp;&nbsp;Turno:
<asp:DropDownList ID="DdlTurno" runat="server" AppendDataBoundItems="true" DataTextField="Turno" DataValueField="CveTurno" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 100px !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem>
</asp:DropDownList>
</li>
<li>F. Asistencia:
<asp:TextBox ID="TxtFechaAsistencia" runat="server" MaxLength="10" Width="70px" Height="30px"></asp:TextBox>
&nbsp;<asp:ImageButton runat="server" ID="ImgFechaAsistencia" ImageUrl="/Imagenes/calendar.png" ImageAlign="AbsMiddle" Width="16px" Height="16px" AlternateText="Click para ver el Calendario" />
<ajax:MaskedEditExtender ID="MEEFechaAsistencia" runat="server" TargetControlID="TxtFechaAsistencia" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CEFechaAsistencia" TargetControlID="TxtFechaAsistencia" PopupButtonID="ImgFechaAsistencia" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="RFVFechaAsistencia" runat="server" ControlToValidate="TxtFechaAsistencia" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha de Ingreso''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CVFechaAsistencia" runat="server" ControlToValidate="TxtFechaAsistencia" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha de Ingreso''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpGuardar"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCOFechaAsistencia1" runat="server" HighlightCssClass="vco" TargetControlID="RFVFechaAsistencia" Width="350px"></ajax:ValidatorCalloutExtender>
&nbsp;
<ajax:ValidatorCalloutExtender ID="VCOFechaAsistencia2" runat="server" HighlightCssClass="vco" TargetControlID="CVFechaAsistencia" Width="350px"></ajax:ValidatorCalloutExtender>
</li>
</ul>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<table width="100%">
<tr>
<td width="48%">&nbsp;</td>
<td>
<asp:UpdatePanel ID="UPP" runat="server">
<ContentTemplate>
<asp:Panel ID="PnlMasivo" runat="server" Visible="False">
<table width="200px" border="0">
<tr>
<td>Tipo:</td>
<td>
<asp:DropDownList ID="DdlTipoPeriodo" runat="server" AppendDataBoundItems="true" AutoPostBack="true" DataTextField="TipoPeriodo" DataValueField="CveTipoPeriodo" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 110px !important;">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList></td>
</tr>
<tr>
<td>Periodo:</td>
<td>
<asp:DropDownList ID="DdlPeriodo" runat="server" AppendDataBoundItems="true" DataTextField="NominaEstatus" DataValueField="CvePeriodo" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 150px !important;">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList></td>
</tr>
<tr>
<td colspan="2" style="text-align: center;">
<asp:Button ID="BtnCargaMasiva" runat="server" Text="Carga Masiva" class="btn btn-primary" />
</td>
</tr>
</table>
</asp:Panel>
</ContentTemplate>
</asp:UpdatePanel>
</td>
<td align="left">
<table class="table table-striped table-advance table-hover">
<thead>
<tr class="Titulos">
<th>#</th>
<th align="left">&nbsp;Notación</th>
</tr>
</thead>
<tr>
<td>1&nbsp;</td>
<td align="left">&nbsp;Sin registrar asistencia</td>
</tr>
<tr>
<td>2&nbsp;</td>
<td align="left" style="background-color: #ADD8E6">&nbsp;Se registró asistencia</td>
</tr>
<tr>
<td>3&nbsp;</td>
<td align="left" style="color: #FF0000">&nbsp;Se registró asistencia y fue modificada</td>
</tr>
</table>
</td>
</tr>
</table>
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GV" runat="server" AutoGenerateColumns="false" DataKeyNames="CvePersonal" EmptyDataText="No se encontró Personal asignado al Proyecto o al Cliente" ToolTip="Listado de Personal" CssClass="table table-striped table-advance table-hover" Style="margin-top: -10px; text-align: center;" GridLines="None">
<Columns>
<asp:TemplateField>
<HeaderTemplate>N°</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlCodigo" runat="server" Text='<%# Eval("Codigo") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Personal</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlPersonal" runat="server" Text='<%# Eval("Nombre") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Asistencia</HeaderTemplate>
<ItemTemplate>
<asp:DropDownList ID="DdlTipoAsistencias" runat="server" DataTextField="Tipo" DataValueField="CveAsistenciasInasistencias" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 90px !important;"></asp:DropDownList>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>% de Pago</HeaderTemplate>
<ItemTemplate>
<asp:TextBox ID="TxtPorPago" runat="server" MaxLength="3" Text="100" Width="74px"></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Hrs Dobles</HeaderTemplate>
<ItemTemplate>
<asp:TextBox ID="TxtHorasDobles" runat="server" MaxLength="3" Text="0" Width="79px"></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Hrs Triples</HeaderTemplate>
<ItemTemplate>
<asp:TextBox ID="TxtHorasTriples" runat="server" MaxLength="3" Text="0" Width="79px"></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Motivo H. Extras</HeaderTemplate>
<ItemTemplate>
<asp:DropDownList ID="DdlMotivoHoraExtra" runat="server" AppendDataBoundItems="true" DataTextField="MotivoHoraExtra" DataValueField="CveMotivoHoraExtra" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 140px !important;">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Obs.</HeaderTemplate>
<ItemTemplate>
<asp:TextBox ID="TxtObservaciones" runat="server" Width="84px" MaxLength="150"></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" />
<AlternatingRowStyle CssClass="TextoAlterno" />
<HeaderStyle CssClass="Titulos" />
</asp:GridView>
<asp:Button ID="BtnGuardar" runat="server" Text="Guardar Asistencia" class="btn btn-primary" />
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
<script language="javascript" type="text/javascript">
function CargaClientes() {
$("#BtnCargarClientes").click();
}
</script>
</asp:Content>

199
RH/Asistencias.aspx.vb Normal file
View File

@@ -0,0 +1,199 @@
Imports Extensiones
Partial Class RH_Asistencias
Inherits ClsPaginas
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
'CargaClientes()
DdlCliente.Attributes.Add("onclick", "CargaClientes();")
CargaProyecto()
CargaTurnos()
TxtFechaAsistencia.Text = Now.ToShortDateString
If UsuarioActual.CveRol = 1 Then
PnlMasivo.Visible = True
CargaTiposPeriodo()
End If
End If
End Sub
#Region "CargaCombos"
Private Sub CargaClientes()
Dim ObjClientes As New ClsClientes
If ObjClientes.GetClientes(-1, "-1", "-1", "-1", "-1", "-1", "-1", -1, UsuarioActual.CveEmpresa, -1) Then
DdlCliente.DataSource = ObjClientes.DtResultados
Else
DdlCliente.DataSource = Nothing
End If
ObjClientes.Dispose()
'Application("GlobalDTResponsable")
DdlCliente.DataBind()
End Sub
Protected Sub BtnCargarClientes_Click(sender As Object, e As System.EventArgs) Handles BtnCargarClientes.Click
CargaClientes()
DdlCliente.Attributes.Remove("onclick")
End Sub
Private Sub CargaProyecto()
DdlProyecto.DataSource = GlobalDTProyectos(UsuarioActual.Empresa.CveEmpresa).FiltraParametros("", DistinctColumns:={"CveProyecto", "Proyecto"})
DdlProyecto.DataBind()
End Sub
Private Sub CargaSubProyecto()
DdlSubProyecto.Items.Clear()
DdlSubProyecto.DataSource = GlobalDTSubProyectos(DdlProyecto.SelectedValue.ToEntero)
DdlSubProyecto.DataBind()
DdlSubProyecto.Items.Insert(0, New ListItem("Todos", "-1"))
End Sub
Private Sub CargaTurnos()
DdlTurno.DataSource = GlobalDTTurno.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
DdlTurno.DataBind()
End Sub
#End Region
Protected Sub DdlProyecto_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles DdlProyecto.SelectedIndexChanged
CargaSubProyecto()
End Sub
Protected Sub BtnConsultar_Click(sender As Object, e As System.EventArgs) Handles BtnConsultar.Click
If TxtFechaAsistencia.Text.Trim.ToDate.Year.Contiene(Now.Year - 1, Now.Year, Now.Year + 1) Then
Dim objpersonal As New ClsRH
If objpersonal.GetAsistencias(-1, DdlCliente.SelectedValue.ToEntero, DdlProyecto.SelectedValue.ToEntero, DdlSubProyecto.SelectedValue.ToEntero, DdlTurno.SelectedValue.ToEntero, 1, TxtFechaAsistencia.Text.Trim.ToDate, TxtFechaAsistencia.Text.Trim.ToDate, UsuarioActual.CveEmpresa) Then
GV.DataSource = objpersonal.DtResultados
Else
GV.DataSource = Nothing
End If
objpersonal.Dispose()
GV.DataBind()
UpDatos.Update()
Else
Alert("La Fecha está fuera de los parámetros establecidos, por favor revise. Fecha: " & TxtFechaAsistencia.Text, TipoMensaje.MsgAdvertencia)
End If
End Sub
Protected Sub GV_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GV.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.RowIndex = 0 Then
e.Row.Cells(0).Width = Unit.Pixel(60)
e.Row.Cells(1).Width = Unit.Pixel(300)
e.Row.Cells(2).Width = Unit.Pixel(100)
e.Row.Cells(3).Width = Unit.Pixel(80)
e.Row.Cells(4).Width = Unit.Pixel(85)
e.Row.Cells(5).Width = Unit.Pixel(85)
e.Row.Cells(6).Width = Unit.Pixel(150)
e.Row.Cells(7).Width = Unit.Pixel(90)
End If
e.Row.FCLiteral("LtlCodigo").Text = "<a class=""Texto"" href=""/RH/Personal.aspx?CvePersonal=" & e.Row.DBCampo("CvePersonal") & "&Opt=4"">" & e.Row.DBCampo("Codigo") & "</a>"
e.Row.FCLiteral("LtlPersonal").Text = "<a class=""Texto"" href=""/RH/Personal.aspx?CvePersonal=" & e.Row.DBCampo("CvePersonal") & "&Opt=4"">" & e.Row.DBCampo("Nombre") & "</a>"
e.Row.Cells(1).HorizontalAlign = HorizontalAlign.Left
e.Row.FCTextBox("TxtPorPago").Text = e.Row.DBCampo("PorcentajePago")
e.Row.FCTextBox("TxtHorasDobles").Text = e.Row.DBCampo("HorasDobles")
e.Row.FCTextBox("TxtHorasTriples").Text = e.Row.DBCampo("HorasTriples")
'Carga Tipos de Asistencia
e.Row.FCDropDownList("DdlTipoAsistencias").DataSource = GlobalDTAsistenciasInasistencias.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
e.Row.FCDropDownList("DdlTipoAsistencias").DataBind()
If e.Row.DBCampo("CveAsistenciasInasistencias") <> "-1" Then e.Row.FCDropDownList("DdlTipoAsistencias").SelectedValue = e.Row.DBCampo("CveAsistenciasInasistencias")
'Carga Motivos Horas Extras
e.Row.FCDropDownList("DdlMotivoHoraExtra").DataSource = GlobalDTMotivosHorasExtras.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
e.Row.FCDropDownList("DdlMotivoHoraExtra").DataBind()
If e.Row.DBCampo("CveMotivoHoraExtra") <> "-1" Then e.Row.FCDropDownList("DdlMotivoHoraExtra").SelectedValue = e.Row.DBCampo("CveMotivoHoraExtra")
e.Row.FCTextBox("TxtObservaciones").Text = e.Row.DBCampo("Observacion")
If e.Row.DBCampo("SeModifico") = "0" Then
e.Row.Cells(0).BackColor = Drawing.Color.LightBlue
e.Row.Cells(1).BackColor = Drawing.Color.LightBlue
ElseIf e.Row.DBCampo("SeModifico") = "1" Then
e.Row.Cells(0).ForeColor = Drawing.Color.Red
e.Row.Cells(1).ForeColor = Drawing.Color.Red
End If
End If
End Sub
Protected Sub BtnGuardar_Click(sender As Object, e As System.EventArgs) Handles BtnGuardar.Click
Dim ObjPersonal As New ClsRH()
ObjPersonal.IniciaTransacSQL()
Dim OcurrioError As Boolean = False
For Each Row As GridViewRow In GV.Rows
If Not ObjPersonal.AddAsistencia(Row.DataKey("CvePersonal").ToEntero, DdlCliente.SelectedValue.ToEntero, DdlSubProyecto.SelectedValue.ToEntero, TxtFechaAsistencia.Text.Trim.ToDate,
Row.FCDropDownList("DdlTipoAsistencias").SelectedValue.ToEntero, Row.FCTextBox("TxtPorPago").Text.Trim.ToDouble, Row.FCTextBox("TxtHorasDobles").Text.Trim.ToDouble,
Row.FCTextBox("TxtHorasTriples").Text.Trim.ToDouble, Row.FCDropDownList("DdlMotivoHoraExtra").SelectedValue.ToEntero, Row.FCTextBox("TxtObservaciones").Text.Trim,
UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
OcurrioError = True
Exit For
End If
Next
If OcurrioError Then
ObjPersonal.RollBack()
Alert("Ocurrió un error al guardar las Asistencias.", TipoMensaje.MsgError)
Else
ObjPersonal.Commit()
Alert("Las Asistencias se guardaron correctamente.", TipoMensaje.MsgInformacion)
End If
ObjPersonal.Dispose()
BtnConsultar_Click(sender, e)
End Sub
Protected Sub BtnCargaMasiva_Click(sender As Object, e As EventArgs) Handles BtnCargaMasiva.Click
Dim ObjPersonal As New ClsRH()
ObjPersonal.IniciaTransacSQL()
Dim OcurrioError As Boolean = False
If Not ObjPersonal.AddAsistenciaMasiva(DdlPeriodo.SelectedValue.ToEntero, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
OcurrioError = True
End If
If OcurrioError Then
ObjPersonal.RollBack()
Alert("Ocurrió un error al guardar las Asistencias.", TipoMensaje.MsgError)
Else
ObjPersonal.Commit()
Alert("Las Asistencias se guardaron correctamente.", TipoMensaje.MsgInformacion)
End If
ObjPersonal.Dispose()
End Sub
Protected Sub DdlTipoPeriodo_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles DdlTipoPeriodo.SelectedIndexChanged
CargaPeriodos()
End Sub
Private Sub CargaTiposPeriodo()
DdlTipoPeriodo.DataSource = GlobalDTTipoPeriodo
DdlTipoPeriodo.DataBind()
End Sub
Private Sub CargaPeriodos()
Dim ObjPeriodos As New ClsNominas
If ObjPeriodos.GetPeriodos(DdlTipoPeriodo.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, -1, -1, -1) Then
DdlPeriodo.DataSource = ObjPeriodos.DtResultados
Else
DdlPeriodo.DataSource = Nothing
End If
ObjPeriodos.Dispose()
DdlPeriodo.DataBind()
DdlPeriodo.Items.Clear()
DdlPeriodo.DataBind()
DdlPeriodo.Items.Insert(0, New ListItem("Seleccione", "-1"))
End Sub
End Class

305
RH/BuzonCalidad.aspx Normal file
View File

@@ -0,0 +1,305 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="BuzonCalidad.aspx.vb" Inherits="RH_BuzonCalidad" %>
<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">
<asp:Literal ID="LtlTitulo" runat="server" Text="Registro de Personal"></asp:Literal>&nbsp;<asp:Literal ID="LtlPersonal" runat="server"></asp:Literal>
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<table width="100%" style="padding-top: 20px;">
<tr>
<td align="left">
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<table border="0" class="contenido">
<tr>
<td valign="top">
<div>
<fieldset>
<legend><b>Datos del Personal</b></legend>
<table border="0">
<tr>
<td>Personal:
</td>
<td>
<asp:TextBox ID="TxtCvePersonal" runat="server" Width="128px"></asp:TextBox>
</td>
</tr>
<tr>
<td>Cliente:
</td>
<td>
<asp:DropDownList ID="DdlCliente" runat="server" AppendDataBoundItems="true"
DataTextField="Cliente" DataValueField="CveCliente" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 140px !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVCliente" runat="server" ControlToValidate="DdlCliente"
Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Cliente''</b> es necesario, por favor seleccione uno."
InitialValue="-1" ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOCliente" runat="server" HighlightCssClass="vco"
TargetControlID="RFVCliente" Width="300px">
</ajax:ValidatorCalloutExtender>
</td>
</tr>
<tr>
<td>Tipo de Buzon:
</td>
<td>
<asp:DropDownList ID="DdlTipoBuzon" runat="server" AppendDataBoundItems="true" DataTextField="TipoBuzon"
DataValueField="CveTipoBuzon" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 140px !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVTipoBuzon" runat="server" ControlToValidate="DdlTipoBuzon"
Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''TipoBuzon''</b> es necesario, por favor seleccione uno."
InitialValue="-1" ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOTipoBuzon" runat="server" HighlightCssClass="vco"
TargetControlID="RFVTipoBuzon" Width="300px">
</ajax:ValidatorCalloutExtender>
</td>
</tr>
<%-- <tr>
<td>Sucursal:
</td>
<td>
<asp:DropDownList ID="DdlSucursal" runat="server" AppendDataBoundItems="true" DataTextField="Sucursal"
DataValueField="CveSucursal" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 140px !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVSucursal" runat="server" ControlToValidate="DdlSucursal"
Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Sucursal''</b> es necesario, por favor seleccione uno."
InitialValue="-1" ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOSucursal" runat="server" HighlightCssClass="vco"
TargetControlID="RFVSucursal" Width="300px">
</ajax:ValidatorCalloutExtender>
</td>
</tr>--%>
<tr>
<td>Fecha de Queja:
</td>
<td>
<table border="0" cellpadding="0" cellspacing="0">
<tr>
<td>
<asp:TextBox ID="TxtFechaQueja" runat="server" MaxLength="10" Width="94px"></asp:TextBox>
&nbsp;<asp:ImageButton runat="server" ID="ImgFechaQueja" ImageUrl="/Imagenes/calendar.png"
ImageAlign="AbsMiddle" Width="16px" Height="16px" AlternateText="Click para ver el Calendario" />
<ajax:MaskedEditExtender ID="MEEFechaQueja" runat="server" TargetControlID="TxtFechaQueja"
Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left">
</ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CEFechaQueja" TargetControlID="TxtFechaQueja"
PopupButtonID="ImgFechaQueja" PopupPosition="BottomRight" Enabled="True">
</ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="RFVFechaQueja" runat="server" ControlToValidate="TxtFechaQueja"
Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''FechaQueja''</b> es necesario, por favor ingréselo."
ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CVFechaQueja" runat="server" ControlToValidate="TxtFechaQueja"
Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''FechaQueja''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)."
Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpGuardar"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCOFechaQueja1" runat="server" HighlightCssClass="vco"
TargetControlID="RFVFechaQueja" Width="350px">
</ajax:ValidatorCalloutExtender>
&nbsp;
<ajax:ValidatorCalloutExtender ID="VCOFechaQueja2" runat="server" HighlightCssClass="vco"
TargetControlID="CVFechaQueja" Width="350px">
</ajax:ValidatorCalloutExtender>
&nbsp;
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td>Descripción:
</td>
<td>
<asp:TextBox ID="TxtDescripcion" runat="server" MaxLength="1500" Width="319px"
TextMode="MultiLine"></asp:TextBox>
</td>
</tr>
</table>
</fieldset>
</div>
</td>
<td valign="top">
<div>
<fieldset>
<legend><b>Reportó</b></legend>
<table border="0">
<tr>
<td>Nombre:
</td>
<td>
<asp:TextBox ID="TxtNombreReporto" runat="server" MaxLength="18" Width="134px"></asp:TextBox>
</td>
</tr>
<tr>
<td>Teléfono:
</td>
<td>
<asp:TextBox ID="TxtTelefonoReporto" runat="server" MaxLength="70" Width="200px"></asp:TextBox>
</td>
</tr>
<tr>
<td>Mail:
</td>
<td>
<asp:TextBox ID="TxtMailReporto" runat="server" MaxLength="5" Width="200px"></asp:TextBox>
</td>
</tr>
<tr>
<td>Observaciones:
</td>
<td>
<asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="30" Width="200px"></asp:TextBox>
</td>
</tr>
</table>
</fieldset>
</div>
</td>
</tr>
</table>
</ContentTemplate>
</asp:UpdatePanel>
</td>
</tr>
<tr>
<td align="center">
<asp:UpdatePanel ID="UpGuardar" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Button ID="BtnGuardar" runat="server" Text="Guardar" ValidationGroup="GrpGuardar" class="btn btn-primary" />
<asp:Button ID="BtnEliminar" runat="server" Text="Eliminar" class="btn btn-danger" />
<asp:ValidationSummary ID="VS" runat="server" DisplayMode="BulletList" ShowSummary="true"
ValidationGroup="GrpGuardar" class="btn btn-danger" />
<asp:Button ID="BtnCancelar" runat="server" Text="Cancelar" OnClientClick="javascript:window.location.href='/RH/CatPersonal.aspx';return false" class="btn btn-danger" />
</ContentTemplate>
</asp:UpdatePanel>
</td>
</tr>
</table>
<div id="DivMail" style="width: 350px; background-color: White; border: solid 1px black; color: Black; display: none; position: fixed; z-index: 1500">
<asp:UpdatePanel ID="UpSendMail" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:HiddenField ID="HdnCveVenta" runat="server" ClientIDMode="Static" Value="-1" />
<asp:HiddenField ID="HdnFolioVenta" runat="server" ClientIDMode="Static" Value="-1" />
<table style="width: 350px">
<tr align="left">
<td width="150">Para:
</td>
<td width="200">
<asp:TextBox ID="TxtParaMail" runat="server" ClientIDMode="Static" Width="194px"
ReadOnly="true"></asp:TextBox>
<asp:RegularExpressionValidator ID="REVParaMail" runat="server" Display="None" ValidationExpression="\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"
ControlToValidate="TxtParaMail" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Para (Mail)''</b> no es válido, por favor ingrése uno correcto."
ValidationGroup="GrpGuardar"></asp:RegularExpressionValidator>
<ajax:ValidatorCalloutExtender ID="VCOParaMail" runat="server" HighlightCssClass="vco"
TargetControlID="REVParaMail" Width="300px">
</ajax:ValidatorCalloutExtender>
</td>
</tr>
<tr align="left">
<td>Con copia para:<br />
(Separar con: ;)
</td>
<td>
<asp:TextBox ID="TxtCC" runat="server" TextMode="MultiLine" Columns="3" Rows="3"
Width="194px"></asp:TextBox>
</td>
</tr>
<tr align="left">
<td>Texto Adicional:
</td>
<td>
<asp:TextBox ID="TxtBody" runat="server" TextMode="MultiLine" Columns="3" Rows="3"
Width="194px"></asp:TextBox>
</td>
</tr>
<tr>
<td align="center" colspan="2">
<asp:Button ID="BtnSendMail" runat="server" OnClientClick="javascript:$get('DivMail').style.display='none';"
Text="Enviar" class="btn btn-primary" />&nbsp;<input type="button" value="Cancelar" onclick="javascript: $get('DivMail').style.display = 'none';" class="btn btn-danger" />
</td>
</tr>
</table>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<div id="DivAddPago" style="width: 350px; background-color: White; border: solid 1px black; color: Black; display: none; position: fixed; z-index: 1500">
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:HiddenField ID="HdnCveVentaAbono" runat="server" ClientIDMode="Static" Value="-1" />
<table style="width: 350px">
<tr align="left">
<td width="150">Cantidad:
</td>
<td width="200">
<asp:TextBox ID="TxtCantidad" runat="server" ClientIDMode="Static" ValidationGroup="GpoGuardarAbonar"
Width="80px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVCantidad" runat="server" ControlToValidate="TxtCantidad"
Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Cantidad''</b> es necesario, por favor ingréselo."
ValidationGroup="GpoGuardarAbonar"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CVCantidadAbonar" runat="server" ControlToValidate="TxtCantidad"
Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Cantidad''</b> no tiene el formato correcto, por favor corrija."
Operator="DataTypeCheck" Type="Currency" ValidationGroup="GpoGuardarAbonar"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCOCantidad" runat="server" HighlightCssClass="vco"
TargetControlID="RFVCantidad" Width="300px">
</ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="VCOCantidad2" runat="server" HighlightCssClass="vco"
TargetControlID="CVCantidadAbonar" Width="300px">
</ajax:ValidatorCalloutExtender>
</td>
</tr>
<tr>
<td>Referencia:
</td>
<td>
<asp:TextBox ID="TxtReferencia" runat="server" ClientIDMode="Static" ValidationGroup="GpoGuardarAbonar"
Width="80px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVReferencia" runat="server" ControlToValidate="TxtReferencia"
Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Referencia''</b> es necesario, por favor ingréselo."
ValidationGroup="GpoGuardarAbonar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOReferencia" runat="server" HighlightCssClass="vco"
TargetControlID="RFVReferencia" Width="300px">
</ajax:ValidatorCalloutExtender>
</td>
</tr>
<tr>
<td align="center" colspan="2">
<asp:Button ID="BtnAbonar" runat="server" Text="Abonar" ValidationGroup="GpoGuardarAbonar" />&nbsp;<input
type="button" value="Cancelar" onclick="javascript: $get('DivAddPago').style.display = 'none';" />
</td>
</tr>
</table>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
<script language="javascript" type="text/javascript">
function SetText(ObjFrom, ObjTo) {
ObjTo.innerText = ObjFrom.value;
}
function SetText2(ObjTo, Value) {
ObjTo.innerText = Value;
}
function getSelectedText(Obj, IfIsNull) {
if (Obj.selectedIndex == -1)
return IfIsNull;
else
return Obj.options[Obj.selectedIndex].text;
}
function CargaClientes() {
$("#BtnCargarClientes").click();
}
</script>
</asp:Content>

View File

@@ -0,0 +1,342 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="BuzonCalidad.aspx.vb" Inherits="RH_BuzonCalidad" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<asp:Content ID="Content1" ContentPlaceHolderID="H" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="E" runat="Server">
<asp:Literal ID="LtlTitulo" runat="server" Text="Registro de Personal"></asp:Literal>&nbsp;<asp:Literal
ID="LtlPersonal" runat="server"></asp:Literal>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="C" runat="Server">
<script language="javascript" type="text/javascript">
function SetText(ObjFrom, ObjTo) {
ObjTo.innerText = ObjFrom.value;
}
function SetText2(ObjTo, Value) {
ObjTo.innerText = Value;
}
function getSelectedText(Obj, IfIsNull) {
if (Obj.selectedIndex == -1)
return IfIsNull;
else
return Obj.options[Obj.selectedIndex].text;
}
function CargaClientes() {
$("#BtnCargarClientes").click();
}
</script>
<table border="0" cellpadding="0" cellspacing="0" width="100%" style="padding-top: 20px;">
<tr>
<td align="left">
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<table border="0" class="contenido">
<tr>
<td valign="top">
<div>
<fieldset>
<legend><b>Datos del Personal</b></legend>
<table border="0">
<tr>
<td>
Personal:
</td>
<td>
<asp:TextBox ID="TxtCvePersonal" runat="server" Width="128px" ></asp:TextBox>
</td>
</tr>
<tr>
<td>
Cliente:
</td>
<td>
<asp:DropDownList ID="DdlCliente" runat="server" AppendDataBoundItems="true"
DataTextField="Cliente" DataValueField="CveCliente" Width="140px" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVCliente" runat="server" ControlToValidate="DdlCliente"
Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Cliente''</b> es necesario, por favor seleccione uno."
InitialValue="-1" ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOCliente" runat="server" HighlightCssClass="vco"
TargetControlID="RFVCliente" Width="300px">
</ajax:ValidatorCalloutExtender>
</td>
</tr>
<tr>
<td>
Tipo de Buzon:
</td>
<td>
<asp:DropDownList ID="DdlTipoBuzon" runat="server" AppendDataBoundItems="true" DataTextField="TipoBuzon"
DataValueField="CveTipoBuzon" Width="140px" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVTipoBuzon" runat="server" ControlToValidate="DdlTipoBuzon"
Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''TipoBuzon''</b> es necesario, por favor seleccione uno."
InitialValue="-1" ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOTipoBuzon" runat="server" HighlightCssClass="vco"
TargetControlID="RFVTipoBuzon" Width="300px">
</ajax:ValidatorCalloutExtender>
</td>
</tr>
<tr>
<td>
Sucursal:
</td>
<td>
<asp:DropDownList ID="DdlSucursal" runat="server" AppendDataBoundItems="true" DataTextField="Sucursal"
DataValueField="CveSucursal" Width="140px" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVSucursal" runat="server" ControlToValidate="DdlSucursal"
Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Sucursal''</b> es necesario, por favor seleccione uno."
InitialValue="-1" ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOSucursal" runat="server" HighlightCssClass="vco"
TargetControlID="RFVSucursal" Width="300px">
</ajax:ValidatorCalloutExtender>
</td>
</tr>
<tr>
<td>
Fecha de Queja:
</td>
<td>
<table border="0" cellpadding="0" cellspacing="0">
<tr>
<td>
<asp:TextBox ID="TxtFechaQueja" runat="server" MaxLength="10" Width="94px"></asp:TextBox>
&nbsp;<asp:ImageButton runat="server" ID="ImgFechaQueja" ImageUrl="/Imagenes/calendar.png"
ImageAlign="AbsMiddle" Width="16px" Height="16px" AlternateText="Click para ver el Calendario" />
<ajax:MaskedEditExtender ID="MEEFechaQueja" runat="server" TargetControlID="TxtFechaQueja"
Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left">
</ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CEFechaQueja" TargetControlID="TxtFechaQueja"
PopupButtonID="ImgFechaQueja" PopupPosition="BottomRight" Enabled="True">
</ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="RFVFechaQueja" runat="server" ControlToValidate="TxtFechaQueja"
Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''FechaQueja''</b> es necesario, por favor ingréselo."
ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CVFechaQueja" runat="server" ControlToValidate="TxtFechaQueja"
Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''FechaQueja''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)."
Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpGuardar"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCOFechaQueja1" runat="server" HighlightCssClass="vco"
TargetControlID="RFVFechaQueja" Width="350px">
</ajax:ValidatorCalloutExtender>
&nbsp;
<ajax:ValidatorCalloutExtender ID="VCOFechaQueja2" runat="server" HighlightCssClass="vco"
TargetControlID="CVFechaQueja" Width="350px">
</ajax:ValidatorCalloutExtender>
&nbsp;
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td>
Descripción:
</td>
<td>
<asp:TextBox ID="TxtDescripcion" runat="server" MaxLength="1500" Width="319px"
TextMode="MultiLine"></asp:TextBox>
</td>
</tr>
</table>
</fieldset>
</div>
</td>
<td valign="top">
<div>
<fieldset>
<legend><b>Reportó</b></legend>
<table border="0">
<tr>
<td>
Nombre:
</td>
<td>
<asp:TextBox ID="TxtNombreReporto" runat="server" MaxLength="18" Width="134px"></asp:TextBox>
</td>
</tr>
<tr>
<td>
Teléfono:
</td>
<td>
<asp:TextBox ID="TxtTelefonoReporto" runat="server" MaxLength="70" Width="200px"></asp:TextBox>
</td>
</tr>
<tr>
<td>
Mail:
</td>
<td>
<asp:TextBox ID="TxtMailReporto" runat="server" MaxLength="5" Width="200px"></asp:TextBox>
</td>
</tr>
<tr>
<td>
Observaciones:
</td>
<td>
<asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="30" Width="200px"></asp:TextBox>
</td>
</tr>
</table>
</fieldset>
</div>
</td>
</tr>
</table>
</ContentTemplate>
</asp:UpdatePanel>
</td>
</tr>
<tr>
<td align="center">
<asp:UpdatePanel ID="UpGuardar" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Button ID="BtnGuardar" runat="server" Text="Guardar" ValidationGroup="GrpGuardar" />
<asp:Button ID="BtnEliminar" runat="server" Text="Eliminar" />
<asp:ValidationSummary ID="VS" runat="server" DisplayMode="BulletList" ShowSummary="true"
ValidationGroup="GrpGuardar" />
<asp:Button ID="BtnCancelar" runat="server" Text="Cancelar" OnClientClick="javascript:window.location.href='/RH/CatPersonal.aspx';return false" />
</ContentTemplate>
</asp:UpdatePanel>
</td>
</tr>
</table>
<div id="DivMail" style="width: 350px; background-color: White; border: solid 1px black;
color: Black; display: none; position: fixed; z-index: 1500">
<asp:UpdatePanel ID="UpSendMail" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:HiddenField ID="HdnCveVenta" runat="server" ClientIDMode="Static" Value="-1" />
<asp:HiddenField ID="HdnFolioVenta" runat="server" ClientIDMode="Static" Value="-1" />
<table border="1" rules="all" style="border-collapse: collapse; width: 350px">
<tr align="left">
<td width="150">
Para:
</td>
<td width="200">
<asp:TextBox ID="TxtParaMail" runat="server" ClientIDMode="Static" Width="194px"
ReadOnly="true"></asp:TextBox>
<asp:RegularExpressionValidator ID="REVParaMail" runat="server" Display="None" ValidationExpression="\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"
ControlToValidate="TxtParaMail" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Para (Mail)''</b> no es válido, por favor ingrése uno correcto."
ValidationGroup="GrpGuardar"></asp:RegularExpressionValidator>
<ajax:ValidatorCalloutExtender ID="VCOParaMail" runat="server" HighlightCssClass="vco"
TargetControlID="REVParaMail" Width="300px">
</ajax:ValidatorCalloutExtender>
</td>
</tr>
<tr align="left">
<td>
Con copia para:<br />
(Separar con: ;)
</td>
<td>
<asp:TextBox ID="TxtCC" runat="server" TextMode="MultiLine" Columns="3" Rows="3"
Width="194px"></asp:TextBox>
</td>
</tr>
<tr align="left">
<td>
Texto Adicional:
</td>
<td>
<asp:TextBox ID="TxtBody" runat="server" TextMode="MultiLine" Columns="3" Rows="3"
Width="194px"></asp:TextBox>
</td>
</tr>
<tr>
<td align="center" colspan="2">
<asp:Button ID="BtnSendMail" runat="server" OnClientClick="javascript:$get('DivMail').style.display='none';"
Text="Enviar" />&nbsp;<input type="button" value="Cancelar" onclick="javascript:$get('DivMail').style.display='none';" />
</td>
</tr>
</table>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<div id="DivAddPago" style="width: 350px; background-color: White; border: solid 1px black;
color: Black; display: none; position: fixed; z-index: 1500">
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:HiddenField ID="HdnCveVentaAbono" runat="server" ClientIDMode="Static" Value="-1" />
<table border="1" rules="all" style="border-collapse: collapse; width: 350px">
<tr align="left">
<td width="150">
Cantidad:
</td>
<td width="200">
<asp:TextBox ID="TxtCantidad" runat="server" ClientIDMode="Static" ValidationGroup="GpoGuardarAbonar"
Width="80px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVCantidad" runat="server" ControlToValidate="TxtCantidad"
Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Cantidad''</b> es necesario, por favor ingréselo."
ValidationGroup="GpoGuardarAbonar"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CVCantidadAbonar" runat="server" ControlToValidate="TxtCantidad"
Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Cantidad''</b> no tiene el formato correcto, por favor corrija."
Operator="DataTypeCheck" Type="Currency" ValidationGroup="GpoGuardarAbonar"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCOCantidad" runat="server" HighlightCssClass="vco"
TargetControlID="RFVCantidad" Width="300px">
</ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="VCOCantidad2" runat="server" HighlightCssClass="vco"
TargetControlID="CVCantidadAbonar" Width="300px">
</ajax:ValidatorCalloutExtender>
</td>
</tr>
<tr>
<td>
Referencia:
</td>
<td>
<asp:TextBox ID="TxtReferencia" runat="server" ClientIDMode="Static" ValidationGroup="GpoGuardarAbonar"
Width="80px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVReferencia" runat="server" ControlToValidate="TxtReferencia"
Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Referencia''</b> es necesario, por favor ingréselo."
ValidationGroup="GpoGuardarAbonar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOReferencia" runat="server" HighlightCssClass="vco"
TargetControlID="RFVReferencia" Width="300px">
</ajax:ValidatorCalloutExtender>
</td>
</tr>
<tr>
<td align="center" colspan="2">
<asp:Button ID="BtnAbonar" runat="server" Text="Abonar" ValidationGroup="GpoGuardarAbonar" />&nbsp;<input
type="button" value="Cancelar" onclick="javascript:$get('DivAddPago').style.display='none';" />
</td>
</tr>
</table>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<br />
<%--<asp:UpdateProgress ID="upProgress" runat="server" DisplayAfter="0">
<ProgressTemplate>
<div id="overlay">
<div id="modalprogress">
<div id="theprogress">
<center>
<table border="0" cellpadding="0" cellspacing="0">
<tr>
<td>
La información se está procesando...
</td>
</tr>
<tr>
<td>
<img src="/Imagenes/Cargando.gif" style="border-width: 0px;" alt="" />
</td>
</tr>
</table>
</center>
</div>
</div>
</div>
</ProgressTemplate>
</asp:UpdateProgress>--%>
</asp:Content>

330
RH/BuzonCalidad.aspx.vb Normal file
View File

@@ -0,0 +1,330 @@
Option Explicit On
Option Strict On
Imports Extensiones
Imports System.Runtime.InteropServices
Imports System.IO
Partial Class RH_BuzonCalidad
Inherits ClsPaginas
'Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
' If Not IsPostBack Then
' CargaEscolaridad()
' CargaEstadoCivil()
' CargaDepartamento()
' CargaEstatusPersonal()
' CargaGenero()
' CargaMotivoBaja()
' CargaPuesto()
' CargaRuta()
' CargaTiposContrato()
' CargaTipoPeriodo()
' CargaTurno()
' 'CargaClientes()
' DdlCliente.Attributes.Add("onclick", "CargaClientes();")
' CargaProyecto()
' If Request("CvePersonal") IsNot Nothing AndAlso IsNumeric(Request("CvePersonal")) AndAlso Request("CvePersonal").ToEntero > 0 Then
' ViewState("CvePersonal") = Request("CvePersonal")
' CargaDatos()
' 'Configuración de Modalidad Update
' BtnGuardar.Text = "Guardar Cambios"
' LtlTitulo.Text = "Consulta del Cliente:"
' 'ImgAddVenta
' If Request("Opt") IsNot Nothing AndAlso IsNumeric(Request("Opt")) Then TAB.ActiveTabIndex = Request("Opt").ToEntero
' 'Inicia Permisos
' 'If Not PermisoModificar Then BtnGuardar.Enabled = False
' 'If Not PermisoEliminar Then BtnEliminar.Enabled = False
' 'Fin Permisos
' Else
' 'Configuración de Modalidad Insert
' LblFechaCaptura.Text = Now.ToShortDateString()
' LblUsuarioCapturo.Text = UsuarioActual.Usuario
' ViewState("CvePersonal") = -1
' BtnEliminar.Visible = False
' 'Inicia Permisos
' 'If Not PermisoRegistro Then BtnGuardar.Enabled = False
' 'Fin Permisos
' End If
' End If
'End Sub
''Private Sub CargaPersonal()
'' DdlPersonal.DataSource = GlobalDTPersonal
'' DdlPersonal.DataBind()
''End Sub
'Private Sub CargaCliente()
' DdlCliente.DataSource = GlobalDTCliente
' DdlCliente.DataBind()
'End Sub
'Private Sub CargarSucursal()
' DdlSucursal.DataSource = GlobalDTSucursales
' DdlSucursal.DataBind()
'End Sub
'Private Sub CargarTipoBuzon()
' DdlTipoBuzon.DataSource = GlobalDTTipoBuzon
' DdlTipoBuzon.DataBind()
'End Sub
'Private Sub CargaDatos()
' Dim ObjPersonal As New ClsRH()
' If ObjPersonal.GetPersonal(CvePersonal, "-1", "-1", "-1", "-1", -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, "-1", UsuarioActual.CveEmpresa) Then
' If ObjPersonal.DtResultados.Rows.Count > 0 Then
' 'Carga Datos Personales
' LtlPersonal.Text = ObjPersonal.Nombre
' TxtNombre.Text = ObjPersonal.Nombre
' TxtCodigo.Text = ObjPersonal.Codigo
' DdlEscolaridad.SelectedValue = ObjPersonal.CveEscolaridad.ToString
' DdlEstadoCivil.SelectedValue = ObjPersonal.CveEstadoCivil.ToString
' DdlGenero.SelectedValue = ObjPersonal.CveGenero.ToString
' TxtFechaNacimiento.Text = ObjPersonal.FechaNacimiento.ToShortDateString
' TxtRFC.Text = ObjPersonal.RFC
' TxtCURP.Text = ObjPersonal.CURP
' 'Localización
' TxtDireccion.Text = ObjPersonal.Direccion.ToString
' TxtCP.Text = ObjPersonal.CP.ToString
' TxtCiudad.Text = ObjPersonal.Ciudad.ToString
' TxtEstado.Text = ObjPersonal.Estado.ToString
' TxtTelefono.Text = ObjPersonal.Telefono.ToString
' TxtCelular.Text = ObjPersonal.Telefono.ToString
' TxtLugarNacimiento.Text = ObjPersonal.LugarNacimiento.ToString
' TxtNombrePadre.Text = ObjPersonal.NombrePadre.ToString
' TxtNombreMadre.Text = ObjPersonal.NombreMadre.ToString
' 'Carga RH
' TxtFechaInicioContrato.Text = ObjPersonal.FechaInicioContrato.ToShortDateString
' TxtFechaFinContrato.Text = If(ObjPersonal.FechaFinContrato.ToShortDateString = "01/01/0001", "", ObjPersonal.FechaFinContrato.ToShortDateString)
' DdlTipoContrato.SelectedValue = ObjPersonal.CveTipoContrato.ToString
' DdlTurno.SelectedValue = ObjPersonal.CveTurno.ToString
' DdlPuesto.SelectedValue = ObjPersonal.CvePuesto.ToString
' DdlDepartamento.SelectedValue = ObjPersonal.CveDepartamento.ToString
' DdlRuta.SelectedValue = ObjPersonal.CveRuta.ToString
' DdlMotivoBaja.SelectedValue = ObjPersonal.CveMotivoBaja.ToString
' DdlEstatusPersonal.SelectedValue = ObjPersonal.CveEstatusPersonal.ToString
' 'Asignación
' If ObjPersonal.CveCliente <> -1 Then
' DdlCliente.Items.Insert(1, New ListItem(ObjPersonal.Cliente, ObjPersonal.CveCliente.ToString))
' DdlCliente.SelectedValue = ObjPersonal.CveCliente.ToString
' Else
' DdlCliente.SelectedValue = ObjPersonal.CveCliente.ToString
' End If
' DdlProyecto.SelectedValue = ObjPersonal.CveProyecto.ToString
' If ObjPersonal.CveProyecto <> -1 Then DdlProyecto_SelectedIndexChanged(Me, New System.EventArgs())
' DdlSubProyecto.SelectedValue = ObjPersonal.CveSubProyecto.ToString
' 'Carga Nómina
' TxtFechaIngreso.Text = ObjPersonal.FechaIngreso.ToShortDateString
' DdlTipoPeriodo.SelectedValue = ObjPersonal.CveTipoPeriodo.ToString
' TxtNumeroSS.Text = ObjPersonal.NumeroSS
' ChkSeInscribioSS.Checked = ObjPersonal.SeInscribioSS
' TxtSalarioDiario.Text = ObjPersonal.SalarioDiario.ToString
' TxtSDI.Text = ObjPersonal.SDI.ToString
' TxtSalarioTotal.Text = ObjPersonal.SalarioDiario.ToString
' TxtNumDiasAguinaldo.Text = ObjPersonal.NumDiasAguinaldo.ToString
' TxtPorPrimaVacacional.Text = ObjPersonal.PorPrimaVacacional.ToString
' 'Carga Incidencias
' 'Carga Formatos
' 'Carga Sistemas
' LblFechaCaptura.Text = ObjPersonal.FechaIngreso.ToShortDateString
' LblUsuarioCapturo.Text = ObjPersonal.Usuario
' Else
' Alert("El Personal Solicitado no existe, por favor revise su búsqueda.", TipoMensaje.MsgAdvertencia)
' BtnGuardar.Enabled = False
' End If
' End If
' ObjPersonal.Dispose()
'End Sub
'Protected Sub BtnGuardar_Click(sender As Object, e As System.EventArgs) Handles BtnGuardar.Click
' 'System.Threading.Thread.Sleep(3000)
' Dim ObjPersonal As New ClsRH()
' If CvePersonal = -1 Then
' If ObjPersonal.AddPersonal(TxtCodigo.Text.Trim, TxtNombre.Text.Trim, TxtFechaIngreso.Text.ToDate,
' DdlTipoPeriodo.SelectedValue.ToEntero, TxtNumeroSS.Text.Trim, ChkSeInscribioSS.Checked,
' TxtSalarioDiario.Text.Trim.ToDouble, TxtSDI.Text.Trim.ToDouble, TxtSalarioTotal.Text.Trim.ToDouble, TxtNumDiasAguinaldo.Text.Trim.ToEntero,
' TxtPorPrimaVacacional.Text.Trim.ToDouble, TxtFechaInicioContrato.Text.Trim.ToDate, If(IsDate(TxtFechaFinContrato.Text.Trim()), TxtFechaFinContrato.Text.Trim(), "-1"),
' DdlTipoContrato.SelectedValue.ToEntero,
' DdlTurno.SelectedValue.ToEntero, DdlPuesto.SelectedValue.ToEntero,
' DdlDepartamento.SelectedValue.ToEntero,
' DdlRuta.SelectedValue.ToEntero,
' DdlEscolaridad.SelectedValue.ToEntero,
' DdlEstadoCivil.SelectedValue.ToEntero,
' DdlGenero.SelectedValue.ToEntero,
' DdlMotivoBaja.SelectedValue.ToEntero,
' DdlEstatusPersonal.SelectedValue.ToEntero, TxtFechaNacimiento.Text.ToDate,
' TxtLugarNacimiento.Text.Trim, TxtDireccion.Text.Trim, TxtCP.Text.Trim, TxtCiudad.Text.Trim,
' TxtEstado.Text.Trim, TxtTelefono.Text.Trim, TxtCelular.Text.Trim, TxtRFC.Text.Trim,
' TxtCURP.Text.Trim, TxtNombrePadre.Text.Trim, TxtNombreMadre.Text.Trim, DdlCliente.SelectedValue.ToEntero, DdlSubProyecto.SelectedValue.ToEntero,
' UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
' Alert("El Personal se guardó correctamente.", TipoMensaje.MsgInformacion, "window.location.href=""/RH/CatPersonal.aspx"";")
' End If
' Else
' If ObjPersonal.UpdatePersonal(TxtCodigo.Text.Trim, TxtNombre.Text.Trim, TxtFechaIngreso.Text.ToDate,
' DdlTipoPeriodo.SelectedValue.ToEntero, TxtNumeroSS.Text.Trim, ChkSeInscribioSS.Checked,
' TxtSalarioDiario.Text.Trim.ToDouble, TxtSDI.Text.Trim.ToDouble, TxtSalarioTotal.Text.Trim.ToDouble, TxtNumDiasAguinaldo.Text.Trim.ToEntero,
' TxtPorPrimaVacacional.Text.Trim.ToDouble, TxtFechaInicioContrato.Text.Trim.ToDate, If(IsDate(TxtFechaFinContrato.Text.Trim()), TxtFechaFinContrato.Text.Trim(), "-1"),
' DdlTipoContrato.SelectedValue.ToEntero,
' DdlTurno.SelectedValue.ToEntero, DdlPuesto.SelectedValue.ToEntero,
' DdlDepartamento.SelectedValue.ToEntero,
' DdlRuta.SelectedValue.ToEntero,
' DdlEscolaridad.SelectedValue.ToEntero,
' DdlEstadoCivil.SelectedValue.ToEntero,
' DdlGenero.SelectedValue.ToEntero,
' DdlMotivoBaja.SelectedValue.ToEntero,
' DdlEstatusPersonal.SelectedValue.ToEntero, TxtFechaNacimiento.Text.ToDate,
' TxtLugarNacimiento.Text.Trim, TxtDireccion.Text.Trim, TxtCP.Text.Trim, TxtCiudad.Text.Trim,
' TxtEstado.Text.Trim, TxtTelefono.Text.Trim, TxtCelular.Text.Trim, TxtRFC.Text.Trim,
' TxtCURP.Text.Trim, TxtNombrePadre.Text.Trim, TxtNombreMadre.Text.Trim, DdlCliente.SelectedValue.ToEntero, DdlSubProyecto.SelectedValue.ToEntero, CvePersonal,
' UsuarioActual.CveEmpresa) Then
' CargaDatos()
' UpDatos.Update()
' Alert("Los cambios se guardaron correctamente.", TipoMensaje.MsgInformacion)
' End If
' End If
' ObjPersonal.Dispose()
'End Sub
'Protected Sub BtnEliminar_Click(sender As Object, e As System.EventArgs) Handles BtnEliminar.Click
' Dim ObjPersonal As New ClsRH()
' If ObjPersonal.RemovePersonal(CvePersonal, UsuarioActual.CveEmpresa) Then
' Alert("El Personal se Eliminó correctamente.", TipoMensaje.MsgInformacion, "window.location.href=""/RH/CatPersonal.aspx""")
' End If
' ObjPersonal.Dispose()
'End Sub
'Protected Sub DdlProyecto_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles DdlProyecto.SelectedIndexChanged
' CargaSubProyecto()
'End Sub
'Protected Sub LbContrato_Click(sender As Object, e As System.EventArgs) Handles LbContrato.Click
' Dim oWordApp As Word.Application = Nothing
' Dim oWordDoc As Word.Document = Nothing
' Dim objSelection As Word.Selection = Nothing
' Dim ArchivoPath As String = ""
' Try
' 'GuardaLog("Inicia Petición de Aplicación")
' oWordApp = New Word.Application
' oWordApp.Visible = True
' oWordDoc = oWordApp.Documents.Open(AppDomain.CurrentDomain.BaseDirectory & "Empresas\" & UsuarioActual.CveEmpresa & "\RH\Contratos\" & "SOGO.doc")
' 'GuardaLog("Inicia Petición de Documento")
' If oWordDoc IsNot Nothing Then
' 'GuardaLog("Creación de Documento")
' oWordDoc.Activate()
' objSelection = oWordApp.Selection
' objSelection.WholeStory()
' objSelection.Copy()
' objSelection.Delete(Unit:=wdCharacter, COUNT:=1)
' 'GuardaLog("Recorrer de reemplazo de variables")
' objSelection.PasteAndFormat(Word.WdRecoveryType.wdPasteDefault)
' ReemplazaTexto(objSelection, "{NOMBRE_PERSONAL}", TxtNombre.Text.Trim)
' ReemplazaTexto(objSelection, "{DIRECCION}", TxtDireccion.Text.Trim)
' ReemplazaTexto(objSelection, "{CP}", TxtCP.Text.Trim)
' ReemplazaTexto(objSelection, "{CIUDAD}", TxtCiudad.Text.Trim)
' ReemplazaTexto(objSelection, "{ESTADO}", TxtEstado.Text.Trim)
' ReemplazaTexto(objSelection, "{DIA_INICIA_CONTRATO}", TxtFechaIngreso.Text.ToDate.Day.ToString)
' ReemplazaTexto(objSelection, "{MES_INICIA_CONTRATO}", MonthName(TxtFechaIngreso.Text.ToDate.Month))
' ReemplazaTexto(objSelection, "{ANIO_INICIA_CONTRATO}", TxtFechaIngreso.Text.ToDate.Year.ToString)
' ReemplazaTexto(objSelection, "{DIA_FIN_CONTRATO}", TxtFechaFinContrato.Text.ToDate.Day.ToString)
' ReemplazaTexto(objSelection, "{MES_FIN_CONTRATO}", MonthName(TxtFechaFinContrato.Text.ToDate.Month))
' ReemplazaTexto(objSelection, "{ANIO_FIN_CONTRATO}", TxtFechaFinContrato.Text.ToDate.Year.ToString)
' 'objSelection.InsertBreak(Type:=wdPageBreak)
' 'GuardaLog("Termina de reemplazo de variables")
' objSelection.TypeBackspace()
' objSelection.TypeBackspace()
' If Not System.IO.Directory.Exists(AppDomain.CurrentDomain.BaseDirectory & "Empresas\" & UsuarioActual.CveEmpresa & "\Temp\") Then
' System.IO.Directory.CreateDirectory(AppDomain.CurrentDomain.BaseDirectory & "Empresas\" & UsuarioActual.CveEmpresa & "\Temp\")
' End If
' ArchivoPath = AppDomain.CurrentDomain.BaseDirectory & "Empresas\" & UsuarioActual.CveEmpresa & "\Temp\" & UsuarioActual.CveUsuario & ".doc"
' oWordDoc.SaveAs(ArchivoPath.ToString)
' oWordDoc.Close()
' Else
' Alert("No se pudo generar el archivo", TipoMensaje.MsgAdvertencia)
' End If
' Catch ex As Exception
' Alert(ex.Message, TipoMensaje.MsgError)
' OnError("", ex)
' ArchivoPath = ""
' Finally
' If oWordDoc IsNot Nothing Then
' 'GuardaLog("Documento Destruido")
' While (Marshal.ReleaseComObject(oWordDoc) > 0)
' End While
' 'GuardaLog("Documento Destruido")
' oWordDoc = Nothing
' End If
' If oWordApp IsNot Nothing Then
' oWordApp.Quit(False)
' While (Marshal.ReleaseComObject(oWordApp) > 0)
' End While
' 'GuardaLog("Aplicación Destruida")
' oWordApp = Nothing
' End If
' System.GC.Collect()
' objSelection = Nothing
' End Try
' If ArchivoPath <> "" Then
' Dim Archivo As New System.IO.FileInfo(ArchivoPath)
' 'If Archivo.Exists Then
' 'HttpContext.Current.Response.Clear()
' 'HttpContext.Current.Response.ClearContent()
' ''HttpContext.Current.Response.ContentType = "application/msword"
' 'HttpContext.Current.Response.ContentType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"
' 'HttpContext.Current.Response.AppendHeader("Content-disposition", "attachment; filename=" & Archivo.Name)
' 'HttpContext.Current.Response.AddHeader("Content-Length", Archivo.Length.ToString())
' 'HttpContext.Current.Response.TransmitFile(ArchivoPath)
' 'HttpContext.Current.Response.Flush()
' 'HttpContext.Current.Response.End()
' RegistraScript("AbrirVentana('/Ventas/PopUpImprimir.aspx?RH=True&Ext=" & Archivo.Extension & "', 700, 400, 'N', 'ImpRH')")
' 'End If
' Archivo = Nothing
' End If
'End Sub
'Private Sub ReemplazaTexto(ByRef ObjSelection As Word.Selection, ByVal Texto As String, ByVal Reemplazar As String)
' With ObjSelection.Find
' .Text = Texto
' .Replacement.Text = Reemplazar
' .Forward = True
' .Wrap = Word.WdFindWrap.wdFindContinue
' .Format = False
' .MatchCase = True
' .MatchWholeWord = False
' .MatchWildcards = False
' .MatchSoundsLike = False
' .MatchAllWordForms = False
' End With
' ObjSelection.Find.Execute(Replace:=Word.WdReplace.wdReplaceAll)
'End Sub
'Protected Sub BtnCargarClientes_Click(sender As Object, e As System.EventArgs) Handles BtnCargarClientes.Click
' CargaClientes()
' DdlCliente.Attributes.Remove("onclick")
'End Sub
End Class

View File

@@ -0,0 +1,330 @@
Option Explicit On
Option Strict On
Imports Extensiones
Imports System.Runtime.InteropServices
Imports System.IO
Partial Class RH_BuzonCalidad
Inherits ClsPaginas
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
CargaEscolaridad()
CargaEstadoCivil()
CargaDepartamento()
CargaEstatusPersonal()
CargaGenero()
CargaMotivoBaja()
CargaPuesto()
CargaRuta()
CargaTiposContrato()
CargaTipoPeriodo()
CargaTurno()
'CargaClientes()
DdlCliente.Attributes.Add("onclick", "CargaClientes();")
CargaProyecto()
If Request("CvePersonal") IsNot Nothing AndAlso IsNumeric(Request("CvePersonal")) AndAlso Request("CvePersonal").ToEntero > 0 Then
ViewState("CvePersonal") = Request("CvePersonal")
CargaDatos()
'Configuración de Modalidad Update
BtnGuardar.Text = "Guardar Cambios"
LtlTitulo.Text = "Consulta del Cliente:"
'ImgAddVenta
If Request("Opt") IsNot Nothing AndAlso IsNumeric(Request("Opt")) Then TAB.ActiveTabIndex = Request("Opt").ToEntero
'Inicia Permisos
'If Not PermisoModificar Then BtnGuardar.Enabled = False
'If Not PermisoEliminar Then BtnEliminar.Enabled = False
'Fin Permisos
Else
'Configuración de Modalidad Insert
LblFechaCaptura.Text = Now.ToShortDateString()
LblUsuarioCapturo.Text = UsuarioActual.Usuario
ViewState("CvePersonal") = -1
BtnEliminar.Visible = False
'Inicia Permisos
'If Not PermisoRegistro Then BtnGuardar.Enabled = False
'Fin Permisos
End If
End If
End Sub
'Private Sub CargaPersonal()
' DdlPersonal.DataSource = GlobalDTPersonal
' DdlPersonal.DataBind()
'End Sub
Private Sub CargaCliente()
DdlCliente.DataSource = GlobalDTCliente
DdlCliente.DataBind()
End Sub
Private Sub CargarSucursal()
DdlSucursal.DataSource = GlobalDTSucursales
DdlSucursal.DataBind()
End Sub
Private Sub CargarTipoBuzon()
DdlTipoBuzon.DataSource = GlobalDTTipoBuzon
DdlTipoBuzon.DataBind()
End Sub
Private Sub CargaDatos()
Dim ObjPersonal As New ClsRH()
If ObjPersonal.GetPersonal(CvePersonal, "-1", "-1", "-1", "-1", -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, "-1", UsuarioActual.CveEmpresa) Then
If ObjPersonal.DtResultados.Rows.Count > 0 Then
'Carga Datos Personales
LtlPersonal.Text = ObjPersonal.Nombre
TxtNombre.Text = ObjPersonal.Nombre
TxtCodigo.Text = ObjPersonal.Codigo
DdlEscolaridad.SelectedValue = ObjPersonal.CveEscolaridad.ToString
DdlEstadoCivil.SelectedValue = ObjPersonal.CveEstadoCivil.ToString
DdlGenero.SelectedValue = ObjPersonal.CveGenero.ToString
TxtFechaNacimiento.Text = ObjPersonal.FechaNacimiento.ToShortDateString
TxtRFC.Text = ObjPersonal.RFC
TxtCURP.Text = ObjPersonal.CURP
'Localización
TxtDireccion.Text = ObjPersonal.Direccion.ToString
TxtCP.Text = ObjPersonal.CP.ToString
TxtCiudad.Text = ObjPersonal.Ciudad.ToString
TxtEstado.Text = ObjPersonal.Estado.ToString
TxtTelefono.Text = ObjPersonal.Telefono.ToString
TxtCelular.Text = ObjPersonal.Telefono.ToString
TxtLugarNacimiento.Text = ObjPersonal.LugarNacimiento.ToString
TxtNombrePadre.Text = ObjPersonal.NombrePadre.ToString
TxtNombreMadre.Text = ObjPersonal.NombreMadre.ToString
'Carga RH
TxtFechaInicioContrato.Text = ObjPersonal.FechaInicioContrato.ToShortDateString
TxtFechaFinContrato.Text = If(ObjPersonal.FechaFinContrato.ToShortDateString = "01/01/0001", "", ObjPersonal.FechaFinContrato.ToShortDateString)
DdlTipoContrato.SelectedValue = ObjPersonal.CveTipoContrato.ToString
DdlTurno.SelectedValue = ObjPersonal.CveTurno.ToString
DdlPuesto.SelectedValue = ObjPersonal.CvePuesto.ToString
DdlDepartamento.SelectedValue = ObjPersonal.CveDepartamento.ToString
DdlRuta.SelectedValue = ObjPersonal.CveRuta.ToString
DdlMotivoBaja.SelectedValue = ObjPersonal.CveMotivoBaja.ToString
DdlEstatusPersonal.SelectedValue = ObjPersonal.CveEstatusPersonal.ToString
'Asignación
If ObjPersonal.CveCliente <> -1 Then
DdlCliente.Items.Insert(1, New ListItem(ObjPersonal.Cliente, ObjPersonal.CveCliente.ToString))
DdlCliente.SelectedValue = ObjPersonal.CveCliente.ToString
Else
DdlCliente.SelectedValue = ObjPersonal.CveCliente.ToString
End If
DdlProyecto.SelectedValue = ObjPersonal.CveProyecto.ToString
If ObjPersonal.CveProyecto <> -1 Then DdlProyecto_SelectedIndexChanged(Me, New System.EventArgs())
DdlSubProyecto.SelectedValue = ObjPersonal.CveSubProyecto.ToString
'Carga Nómina
TxtFechaIngreso.Text = ObjPersonal.FechaIngreso.ToShortDateString
DdlTipoPeriodo.SelectedValue = ObjPersonal.CveTipoPeriodo.ToString
TxtNumeroSS.Text = ObjPersonal.NumeroSS
ChkSeInscribioSS.Checked = ObjPersonal.SeInscribioSS
TxtSalarioDiario.Text = ObjPersonal.SalarioDiario.ToString
TxtSDI.Text = ObjPersonal.SDI.ToString
TxtSalarioTotal.Text = ObjPersonal.SalarioDiario.ToString
TxtNumDiasAguinaldo.Text = ObjPersonal.NumDiasAguinaldo.ToString
TxtPorPrimaVacacional.Text = ObjPersonal.PorPrimaVacacional.ToString
'Carga Incidencias
'Carga Formatos
'Carga Sistemas
LblFechaCaptura.Text = ObjPersonal.FechaIngreso.ToShortDateString
LblUsuarioCapturo.Text = ObjPersonal.Usuario
Else
Alert("El Personal Solicitado no existe, por favor revise su búsqueda.", TipoMensaje.MsgAdvertencia)
BtnGuardar.Enabled = False
End If
End If
ObjPersonal.Dispose()
End Sub
Protected Sub BtnGuardar_Click(sender As Object, e As System.EventArgs) Handles BtnGuardar.Click
'System.Threading.Thread.Sleep(3000)
Dim ObjPersonal As New ClsRH()
If CvePersonal = -1 Then
If ObjPersonal.AddPersonal(TxtCodigo.Text.Trim, TxtNombre.Text.Trim, TxtFechaIngreso.Text.ToDate,
DdlTipoPeriodo.SelectedValue.ToEntero, TxtNumeroSS.Text.Trim, ChkSeInscribioSS.Checked,
TxtSalarioDiario.Text.Trim.ToDouble, TxtSDI.Text.Trim.ToDouble, TxtSalarioTotal.Text.Trim.ToDouble, TxtNumDiasAguinaldo.Text.Trim.ToEntero,
TxtPorPrimaVacacional.Text.Trim.ToDouble, TxtFechaInicioContrato.Text.Trim.ToDate, If(IsDate(TxtFechaFinContrato.Text.Trim()), TxtFechaFinContrato.Text.Trim(), "-1"),
DdlTipoContrato.SelectedValue.ToEntero,
DdlTurno.SelectedValue.ToEntero, DdlPuesto.SelectedValue.ToEntero,
DdlDepartamento.SelectedValue.ToEntero,
DdlRuta.SelectedValue.ToEntero,
DdlEscolaridad.SelectedValue.ToEntero,
DdlEstadoCivil.SelectedValue.ToEntero,
DdlGenero.SelectedValue.ToEntero,
DdlMotivoBaja.SelectedValue.ToEntero,
DdlEstatusPersonal.SelectedValue.ToEntero, TxtFechaNacimiento.Text.ToDate,
TxtLugarNacimiento.Text.Trim, TxtDireccion.Text.Trim, TxtCP.Text.Trim, TxtCiudad.Text.Trim,
TxtEstado.Text.Trim, TxtTelefono.Text.Trim, TxtCelular.Text.Trim, TxtRFC.Text.Trim,
TxtCURP.Text.Trim, TxtNombrePadre.Text.Trim, TxtNombreMadre.Text.Trim, DdlCliente.SelectedValue.ToEntero, DdlSubProyecto.SelectedValue.ToEntero,
UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
Alert("El Personal se guardó correctamente.", TipoMensaje.MsgInformacion, "window.location.href=""/RH/CatPersonal.aspx"";")
End If
Else
If ObjPersonal.UpdatePersonal(TxtCodigo.Text.Trim, TxtNombre.Text.Trim, TxtFechaIngreso.Text.ToDate,
DdlTipoPeriodo.SelectedValue.ToEntero, TxtNumeroSS.Text.Trim, ChkSeInscribioSS.Checked,
TxtSalarioDiario.Text.Trim.ToDouble, TxtSDI.Text.Trim.ToDouble, TxtSalarioTotal.Text.Trim.ToDouble, TxtNumDiasAguinaldo.Text.Trim.ToEntero,
TxtPorPrimaVacacional.Text.Trim.ToDouble, TxtFechaInicioContrato.Text.Trim.ToDate, If(IsDate(TxtFechaFinContrato.Text.Trim()), TxtFechaFinContrato.Text.Trim(), "-1"),
DdlTipoContrato.SelectedValue.ToEntero,
DdlTurno.SelectedValue.ToEntero, DdlPuesto.SelectedValue.ToEntero,
DdlDepartamento.SelectedValue.ToEntero,
DdlRuta.SelectedValue.ToEntero,
DdlEscolaridad.SelectedValue.ToEntero,
DdlEstadoCivil.SelectedValue.ToEntero,
DdlGenero.SelectedValue.ToEntero,
DdlMotivoBaja.SelectedValue.ToEntero,
DdlEstatusPersonal.SelectedValue.ToEntero, TxtFechaNacimiento.Text.ToDate,
TxtLugarNacimiento.Text.Trim, TxtDireccion.Text.Trim, TxtCP.Text.Trim, TxtCiudad.Text.Trim,
TxtEstado.Text.Trim, TxtTelefono.Text.Trim, TxtCelular.Text.Trim, TxtRFC.Text.Trim,
TxtCURP.Text.Trim, TxtNombrePadre.Text.Trim, TxtNombreMadre.Text.Trim, DdlCliente.SelectedValue.ToEntero, DdlSubProyecto.SelectedValue.ToEntero, CvePersonal,
UsuarioActual.CveEmpresa) Then
CargaDatos()
UpDatos.Update()
Alert("Los cambios se guardaron correctamente.", TipoMensaje.MsgInformacion)
End If
End If
ObjPersonal.Dispose()
End Sub
Protected Sub BtnEliminar_Click(sender As Object, e As System.EventArgs) Handles BtnEliminar.Click
Dim ObjPersonal As New ClsRH()
If ObjPersonal.RemovePersonal(CvePersonal, UsuarioActual.CveEmpresa) Then
Alert("El Personal se Eliminó correctamente.", TipoMensaje.MsgInformacion, "window.location.href=""/RH/CatPersonal.aspx""")
End If
ObjPersonal.Dispose()
End Sub
Protected Sub DdlProyecto_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles DdlProyecto.SelectedIndexChanged
CargaSubProyecto()
End Sub
Protected Sub LbContrato_Click(sender As Object, e As System.EventArgs) Handles LbContrato.Click
Dim oWordApp As Word.Application = Nothing
Dim oWordDoc As Word.Document = Nothing
Dim objSelection As Word.Selection = Nothing
Dim ArchivoPath As String = ""
Try
'GuardaLog("Inicia Petición de Aplicación")
oWordApp = New Word.Application
oWordApp.Visible = True
oWordDoc = oWordApp.Documents.Open(AppDomain.CurrentDomain.BaseDirectory & "Empresas\" & UsuarioActual.CveEmpresa & "\RH\Contratos\" & "SOGO.doc")
'GuardaLog("Inicia Petición de Documento")
If oWordDoc IsNot Nothing Then
'GuardaLog("Creación de Documento")
oWordDoc.Activate()
objSelection = oWordApp.Selection
objSelection.WholeStory()
objSelection.Copy()
objSelection.Delete(Unit:=wdCharacter, COUNT:=1)
'GuardaLog("Recorrer de reemplazo de variables")
objSelection.PasteAndFormat(Word.WdRecoveryType.wdPasteDefault)
ReemplazaTexto(objSelection, "{NOMBRE_PERSONAL}", TxtNombre.Text.Trim)
ReemplazaTexto(objSelection, "{DIRECCION}", TxtDireccion.Text.Trim)
ReemplazaTexto(objSelection, "{CP}", TxtCP.Text.Trim)
ReemplazaTexto(objSelection, "{CIUDAD}", TxtCiudad.Text.Trim)
ReemplazaTexto(objSelection, "{ESTADO}", TxtEstado.Text.Trim)
ReemplazaTexto(objSelection, "{DIA_INICIA_CONTRATO}", TxtFechaIngreso.Text.ToDate.Day.ToString)
ReemplazaTexto(objSelection, "{MES_INICIA_CONTRATO}", MonthName(TxtFechaIngreso.Text.ToDate.Month))
ReemplazaTexto(objSelection, "{ANIO_INICIA_CONTRATO}", TxtFechaIngreso.Text.ToDate.Year.ToString)
ReemplazaTexto(objSelection, "{DIA_FIN_CONTRATO}", TxtFechaFinContrato.Text.ToDate.Day.ToString)
ReemplazaTexto(objSelection, "{MES_FIN_CONTRATO}", MonthName(TxtFechaFinContrato.Text.ToDate.Month))
ReemplazaTexto(objSelection, "{ANIO_FIN_CONTRATO}", TxtFechaFinContrato.Text.ToDate.Year.ToString)
'objSelection.InsertBreak(Type:=wdPageBreak)
'GuardaLog("Termina de reemplazo de variables")
objSelection.TypeBackspace()
objSelection.TypeBackspace()
If Not System.IO.Directory.Exists(AppDomain.CurrentDomain.BaseDirectory & "Empresas\" & UsuarioActual.CveEmpresa & "\Temp\") Then
System.IO.Directory.CreateDirectory(AppDomain.CurrentDomain.BaseDirectory & "Empresas\" & UsuarioActual.CveEmpresa & "\Temp\")
End If
ArchivoPath = AppDomain.CurrentDomain.BaseDirectory & "Empresas\" & UsuarioActual.CveEmpresa & "\Temp\" & UsuarioActual.CveUsuario & ".doc"
oWordDoc.SaveAs(ArchivoPath.ToString)
oWordDoc.Close()
Else
Alert("No se pudo generar el archivo", TipoMensaje.MsgAdvertencia)
End If
Catch ex As Exception
Alert(ex.Message, TipoMensaje.MsgError)
OnError("", ex)
ArchivoPath = ""
Finally
If oWordDoc IsNot Nothing Then
'GuardaLog("Documento Destruido")
While (Marshal.ReleaseComObject(oWordDoc) > 0)
End While
'GuardaLog("Documento Destruido")
oWordDoc = Nothing
End If
If oWordApp IsNot Nothing Then
oWordApp.Quit(False)
While (Marshal.ReleaseComObject(oWordApp) > 0)
End While
'GuardaLog("Aplicación Destruida")
oWordApp = Nothing
End If
System.GC.Collect()
objSelection = Nothing
End Try
If ArchivoPath <> "" Then
Dim Archivo As New System.IO.FileInfo(ArchivoPath)
'If Archivo.Exists Then
'HttpContext.Current.Response.Clear()
'HttpContext.Current.Response.ClearContent()
''HttpContext.Current.Response.ContentType = "application/msword"
'HttpContext.Current.Response.ContentType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"
'HttpContext.Current.Response.AppendHeader("Content-disposition", "attachment; filename=" & Archivo.Name)
'HttpContext.Current.Response.AddHeader("Content-Length", Archivo.Length.ToString())
'HttpContext.Current.Response.TransmitFile(ArchivoPath)
'HttpContext.Current.Response.Flush()
'HttpContext.Current.Response.End()
RegistraScript("AbrirVentana('/Ventas/PopUpImprimir.aspx?RH=True&Ext=" & Archivo.Extension & "', 700, 400, 'N', 'ImpRH')")
'End If
Archivo = Nothing
End If
End Sub
Private Sub ReemplazaTexto(ByRef ObjSelection As Word.Selection, ByVal Texto As String, ByVal Reemplazar As String)
With ObjSelection.Find
.Text = Texto
.Replacement.Text = Reemplazar
.Forward = True
.Wrap = Word.WdFindWrap.wdFindContinue
.Format = False
.MatchCase = True
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
ObjSelection.Find.Execute(Replace:=Word.WdReplace.wdReplaceAll)
End Sub
Protected Sub BtnCargarClientes_Click(sender As Object, e As System.EventArgs) Handles BtnCargarClientes.Click
CargaClientes()
DdlCliente.Attributes.Remove("onclick")
End Sub
End Class

View File

@@ -0,0 +1,162 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatAsistenciasInasistencias.aspx.vb" Inherits="RH_CatAsistenciasInasistencias" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<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 Tipos de Asistencias/Inasistencias
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel runat="server" ID="UpAgregar">
<ContentTemplate>
<li>
<asp:LinkButton runat="server" ID="BtnAgregarMotivoD" data-toggle="tooltip" data-placement="left" title="Agregar un Defecto" Text="<i class='fa fa-plus'></i>Agregar Asistencia/Inacistencia"></asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpTitulos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" DataKeyNames="CveAsistenciasInasistencias,Tipo,AplicaAsistencia,Estatus" EmptyDataText="No se encontraron AsistenciasInasistenciass Registrados" ToolTip="Listado de AsistenciasInasistenciass" CssClass="table table-striped table-hover Widthall" GridLines="None">
<Columns>
<asp:TemplateField HeaderText="Tipo" ItemStyle-Width="25%" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Literal ID="LtlTipo" runat="server" Text='<%# Eval("Tipo", "&nbsp;{0}") %>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="TxtTipo" runat="server" CausesValidation="true" MaxLength="50" Text='<%# Eval("Tipo") %>' ValidationGroup="GrpGV" Width="240px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVTipo" runat="server" ControlToValidate="TxtTipo" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGV"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCTipo" runat="server" HighlightCssClass="vco" TargetControlID="RFVTipo" Width="300px"></ajax:ValidatorCalloutExtender>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Aplica Falta" ItemStyle-Width="15%" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:Literal ID="LtlAplicaFalta" runat="server" Text='<%# Eval("AplicaFalta") %>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:CheckBox ID="ChkAplicaFalta" runat="server" Checked='<%# If (Eval("AplicaFalta").ToString = "Aplica", True, False) %>' />
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Aplica Asistencia" ItemStyle-Width="15%" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:Literal ID="LtlAplicaAsistencia" runat="server" Text='<%# Eval("AplicaAsistencia") %>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:CheckBox ID="ChkAplicaAsistencia" runat="server" Checked='<%# If (Eval("AplicaAsistencia").ToString = "Aplica", True, False) %>' />
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estatus" ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:Literal ID="LtlEstatus" runat="server" Text='<%# Eval("Estatus") %>'>a</asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:CheckBox ID="ChkEstatus" runat="server" Checked='<%# If (Eval("Estatus").ToString = "Activo", True, False) %>' />
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha" ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:Literal ID="LtlFechaIng" runat="server" Text='<%# Eval("FechaIng", "{0:d}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Usuario" ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:Literal ID="LtlUsuario" runat="server" Text='<%# Eval("Usuario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Editar" ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:LinkButton ID="imgE" runat="server" AlternateText="Editar" CausesValidation="False" CommandName="Edit" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
<%--<asp:ImageButton ID="imgE" runat="server" AlternateText="Editar" CausesValidation="False" CommandName="Edit" ImageUrl="/Imagenes/Btn_Edit.png" />--%>
</ItemTemplate>
<EditItemTemplate>
<center>
<asp:LinkButton ID="imgU" runat="server" AlternateText="Actualizar" CausesValidation="True" CommandName="Update" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-check'></i>" />
<asp:LinkButton ID="imgC" runat="server" AlternateText="Cancelar" CausesValidation="False" CommandName="Cancel" CssClass="btn btn-circle btn-sm red" Text="<i class='fa fa-times'></i>" />
<%--<asp:ImageButton ID="imgU" runat="server" AlternateText="Actualizar" CausesValidation="True" CommandName="Update" ImageUrl="/Imagenes/Btn_Update.png" ValidationGroup="GrpGV" />--%>&nbsp;
<%--<asp:ImageButton ID="imgC" runat="server" AlternateText="Cancelar" CausesValidation="False" CommandName="Cancel" ImageUrl="/Imagenes/Btn_Cancel.png" />--%>
</center>
</EditItemTemplate>
<ItemTemplate>
<asp:LinkButton ID="imgE" OnClick="GvDatos_RowEditing" runat="server" AlternateText="Editar" CausesValidation="False" CommandName="Edit" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Eliminar">
<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="Confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<!--Esta es la modal ##############################################################################################################################-->
<div id="DivAgregarTiposD" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalTiposD" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloModalTiposD" runat="server">Asistencia e Inasistencia</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TipoTxt" CssClass="form-control " runat="server" MaxLength="70" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvTxtTiposD" runat="server" ControlToValidate="TipoTxt" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTiposD"></asp:RequiredFieldValidator>
<label for="TipoTxt">Tipo:</label>
<i></i>
</div>
<br />
<div ID="AplicaNoAplicaSection" runat="server" class="form-group form-md-line-input input-iconright">
<label for="AplicaNoAplica">Aplica Asistencia:</label>&nbsp;
<asp:CheckBox ID="AplicaNoAplica" runat="server" CssClass="make-switchsd" data-size="small" Text=" " Checked="true" />
<i></i>
</div>
<br ID="saltoDeLinea" runat="server" />
<div ID="CheckActiveSection" runat="server" class="form-group form-md-line-input input-iconright">
<label for="ChkEstatus">Activo:</label>&nbsp;
<asp:CheckBox ID="ChkEstatus" runat="server" CssClass="make-switchsd" data-size="small" Text=" " Checked="true" />
<i></i>
</div>
</div>
<br />
<div class="modal-footer">
<asp:Button ID="BtnAgregarTiposDModal" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpTiposD" />
<asp:Button ID="BtnEditarTiposDModal" runat="server" class="btn btn-success" Text="Confirmar" ValidationGroup="GrpTiposD" />
<button id="Button3" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
<script language="javascript" type="text/javascript">
function C() {
return confirm('¿Está seguro que desea eliminar el tipo de Asistencias/Inasistencias?');
}
</script>
</asp:Content>

View File

@@ -0,0 +1,205 @@
Option Explicit On
Option Strict On
Imports System.Data
Imports System.Linq
Imports Extensiones
Partial Class RH_CatAsistenciasInasistencias
Inherits ClsPaginas
#Region " PROPIEDADES "
Public Property PuedeEditar As Boolean
Get
Return CBool(ViewState("PuedeEditar"))
End Get
Set(value As Boolean)
ViewState("PuedeEditar") = value
End Set
End Property
Public Property PuedeEliminar As Boolean
Get
Return CBool(ViewState("PuedeEditar"))
End Get
Set(value As Boolean)
ViewState("PuedeEditar") = value
End Set
End Property
Private Property CveTipoAsisAEditar() As Integer 'Guardamos el ID de registro para saber cual registro Editar
Get
Return If(IsNothing(ViewState("CveTipoAsisAEditar")), -1, CInt(ViewState("CveTipoAsisAEditar")))
End Get
Set
ViewState("CveTipoAsisAEditar") = Value
End Set
End Property
#End Region
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
ViewState("Orden") = ""
CargaDatos()
End If
End Sub
Public Sub CargaDatos()
Dim ObjAsistenciasInasistencias As New ClsRH
If ObjAsistenciasInasistencias.GetAsistenciasInasistencias() Then
ViewState("DTAsistenciasInasistencias") = ObjAsistenciasInasistencias.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GlobalDTAsistenciasInasistencias = ObjAsistenciasInasistencias.DtResultados
Else
Me.GvDatos.DataSource = Nothing
End If
ObjAsistenciasInasistencias.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub BtnAgregarMotivo_Click(sender As Object, e As EventArgs) Handles BtnAgregarMotivoD.Click 'Hacemos aparecer la ventana modal con los campos limpios
BtnEditarTiposDModal.Visible = False
BtnAgregarTiposDModal.Visible = True
CheckActiveSection.Visible = False
saltoDeLinea.Visible = False
TipoTxt.Text = ""
UpModalTiposD.Update()
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarTiposD"))
End Sub
Protected Sub LbAgregar_Click(sender As Object, e As System.EventArgs) Handles BtnAgregarTiposDModal.Click 'esta funcion es la que agrega un nuevo motivo de baja se activa con el boton "Agregar" de la ventana modal"
Dim ObjAsistenciasInasistencias As New ClsRH
If ObjAsistenciasInasistencias.AddAsistenciasInasistencias(TipoTxt.Text.Trim, Not AplicaNoAplica.Checked, AplicaNoAplica.Checked, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
TipoTxt.Text = ""
Alert("El nuevo Tipo Asistencias/Inasistencias se guardó correctamente.", TipoMensaje.MsgInformacion)
UpTitulos.Update()
ViewState("DTAsistenciasInasistencias") = ObjAsistenciasInasistencias.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GlobalDTAsistenciasInasistencias = ObjAsistenciasInasistencias.DtResultados
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End If
ObjAsistenciasInasistencias.Dispose()
End Sub
#Region "G V D A T O S"
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
End If
End Sub
Public Sub GvDatos_RowEditing(sender As Object, e As EventArgs) 'Este metodo muestra la pantalla modal con la información del renglon ya puesta en los campos del formulario
BtnAgregarTiposDModal.Visible = False
BtnEditarTiposDModal.Visible = True
CheckActiveSection.Visible = True
saltoDeLinea.Visible = True
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) 'obtenemos el renglon que acabamos de seleccionar
TipoTxt.Text = GvRow.DataKey("Tipo")
AplicaNoAplica.Checked = If(GvRow.DataKey("AplicaAsistencia") = "Aplica", True, False)
ChkEstatus.Checked = If(GvRow.DataKey("Estatus") = "Activo", True, False)
CveTipoAsisAEditar = Convert.ToInt32(GvRow.DataKey("CveAsistenciasInasistencias")) 'Guardamos en una propiedad el id del registro del cual haremos cambios, se guarda y se utiliza en el metodo "GvDatos_RowUpdating"
UpDatos.Update()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarTiposD"))
End Sub
Protected Sub GvDatos_RowUpdating(sender As Object, e As EventArgs) Handles BtnEditarTiposDModal.Click '(Leer primero "GvDatos_RowEditing")Se manda la informacion a un procedmiento que hace la actualizacion
Dim ObjAsistenciasInasistencias As New ClsRH
Dim Tipo As String = TipoTxt.Text.Trim
Dim Estatus As Boolean = ChkEstatus.Checked
Dim AplicaFalta As Boolean = Not AplicaNoAplica.Checked
Dim AplicaAsistencia As Boolean = AplicaNoAplica.Checked
Dim CveAsistenciasInasistencias As Integer = CveTipoAsisAEditar 'aquí obtenemos el valor de la propiedad que utilizamos en el metodo "GvDatos_RowEditing"
If ObjAsistenciasInasistencias.UpdateAsistenciasInasistencias(Tipo, AplicaFalta, AplicaAsistencia, Estatus, CveAsistenciasInasistencias) Then
GvDatos.EditIndex = -1
ViewState("DTAsistenciasInasistencias") = ObjAsistenciasInasistencias.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GlobalDTAsistenciasInasistencias = ObjAsistenciasInasistencias.DtResultados
Alert("Los cambios se guardaron correctamente.", TipoMensaje.MsgInformacion)
End If
ObjAsistenciasInasistencias.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowCancelingEdit(sender As Object, e As System.Web.UI.WebControls.GridViewCancelEditEventArgs) Handles GvDatos.RowCancelingEdit
GvDatos.EditIndex = -1
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowDeleting(sender As Object, e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles GvDatos.RowDeleting
Dim ObjAsistenciasInasistencias As New ClsRH
If ObjAsistenciasInasistencias.RemoveAsistenciasInasistencias(GvDatos.DataKeys(e.RowIndex).Value.ToString.ToEntero) Then
GvDatos.EditIndex = -1
ViewState("DTAsistenciasInasistencias") = ObjAsistenciasInasistencias.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GlobalDTAsistenciasInasistencias = ObjAsistenciasInasistencias.DtResultados
Alert("El AsistenciasInasistencias se eliminó correctamente.", TipoMensaje.MsgInformacion)
End If
ObjAsistenciasInasistencias.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
#End Region
#Region "O R D E N A M I E N T O"
Protected Sub LbOrden_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim Orden As String = ""
Dim Campo As String = ""
Dim Literal As Literal = Nothing
Const OrdenInicial As String = ""
Dim Arg(2) As String
Arg = CType(sender, LinkButton).CommandArgument().ToString.Split(";"c)
Campo = Arg(0)
Literal = CType(CType(sender, LinkButton).NamingContainer.FindControl("Img" & Campo.Replace(",", "_")), Literal)
If ViewState(String.Format("O{0}", Campo)) IsNot Nothing AndAlso ViewState(String.Format("O{0}", Campo)).ToString = String.Format("{0} DESC", Campo) Then
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} ASC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-asc' style='color:#999' ></i>")
Else
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} DESC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-desc' style='color:#999' ></i>")
End If
Orden = OrdenInicial & ViewState(String.Format("O{0}", Campo)).ToString
ViewState("Orden") = Orden
CargaGrid(Orden)
End Sub
Private Sub CargaGrid(Orden As String)
If Orden <> String.Empty Then
Dim DV As New DataView(CType(ViewState("DTAsistenciasInasistencias"), DataTable), "", Orden, DataViewRowState.CurrentRows)
GvDatos.DataSource = DV.ToTable()
DV.Dispose()
Else
GvDatos.DataSource = CType(ViewState("DTAsistenciasInasistencias"), DataTable)
End If
GvDatos.DataBind()
UpDatos.Update()
End Sub
#End Region
End Class

137
RH/CatCaptaciones.aspx Normal file
View File

@@ -0,0 +1,137 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatCaptaciones.aspx.vb" Inherits="RH_CatCaptaciones" %>
<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="E" Runat="Server">
Catalogo Captaciones de personal
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" Runat="Server">
<asp:UpdatePanel ID="UpAcciones" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<li>
<asp:LinkButton ID="LnkNuevoMedioCaptacion" runat="server" ><i class="fa fa-plus"></i> Nuevo Medio de captacion</asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" Runat="Server">
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HA" Runat="Server">
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="C" Runat="Server">
<div class="col-md-12 ">
<div class="col-md-6" id="DVAdjuntos" runat="server" visible="true">
<div class="portlet light smmallpadding bordered">
<div class="portlet-title font-green">
<div class="caption font-green">
<i class="fa fa-indent font-green"></i><span class="caption-subject bold uppercase">Medios de Captación</span>
</div>
<div class="tools">
<div style="display: inline-block">
</div>
<div style="display: inline-block">
<input type="text" id="TxtBusqueda" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvDatos.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px; height: 25px; border-color: #89C4F4;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvDatos.ClientID) %>" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body rowpadding">
<div class="Widthall">
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" ShowHeaderWhenEmpty="true" DataKeyNames="CveCaptacion,Captacion,Estatus" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontraron Registros de medio de captacion" ShowHeader="true" CssClass="table table-striped table-advance table-hover Widthall ScrollAD"
data-sort="true"
data-freezerows="1"
GridLines="None">
<Columns>
<asp:TemplateField HeaderText="Captacion" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Literal ID="LtlCaptacion" runat="server" Text='<%# Eval("Captacion")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estado" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="LblEstatus" runat="server" Text='<%# Eval("Estado")%>' ></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="LblFecha" runat="server" Text='<%# Eval("FechaIng", "{0:d}")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Usuario" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="LblUsuario" runat="server" Text='<%# Eval("Usuario")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Right" HeaderText="" ItemStyle-Width="80">
<ItemTemplate>
<asp:LinkButton ID="imgE" Width="28" runat="server" AlternateText="Editar" CausesValidation="False" CssClass="btn btn-circle btn-sm green" OnClick="Edit_Click" Text="<i class='fa fa-pencil'></i>" />
<asp:LinkButton ID="imgD" Width="28" runat="server" AlternateText="Eliminar" OnClick="Delete_Click" CausesValidation="False" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="Confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</div>
</div>
</div>
<div id="DivModaMedio" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalCaptacion" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal"></button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloModalCaptacion" runat="server"></asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<label for="<%= TxtCaptacion.ClientID.ToString()%>">
<asp:Literal ID="LtltxtModalHojaTecnica" runat="server"></asp:Literal>
</label>
<asp:TextBox ID="TxtCaptacion" CssClass="form-control" runat="server" MaxLength="50" ValidationGroup="grpFormatoTecnico" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtCaptacion" runat="server" ControlToValidate="TxtCaptacion" CssClass="help-block errorimput"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="grpFormatoTecnico"></asp:RequiredFieldValidator>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:CheckBox Id="ChkModalEstatus" runat="Server" Text ="Activo" />
</div>
</div>
<div class="modal-footer">
<asp:LinkButton ID="LnkModalCaptacionAgregar" cssClass="btn btn-success" runat="server" ValidationGroup="grpCaptacion" >Agregar</asp:LinkButton>
<button id="btnCancelarHojaTecnica" runat="server" type="button" class="btn btn-danger" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" Runat="Server">
</asp:Content>

117
RH/CatCaptaciones.aspx.vb Normal file
View File

@@ -0,0 +1,117 @@
Option Strict On
Imports Extensiones
Imports System.Data
Partial Class RH_CatCaptaciones
Inherits ClsPaginas
Property CveCaptacion As Integer
Get
If ViewState("CveCaptacion") Is Nothing Then
Return -1
Else
Return DirectCast(ViewState("CveCaptacion"), Integer)
End If
End Get
Set(value As Integer)
ViewState("CveCaptacion") = value
End Set
End Property
Private Sub RH_CatCaptaciones_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
CargaDatos()
End If
End Sub
Public Sub CargaDatos()
Dim objRH As New ClsRH
If objRH.CaptacionCatalogoGet(-1, -1, UsuarioActual.CveEmpresa) Then
GvDatos.DataSource = objRH.DtResultados
Else
GvDatos.DataSource = Nothing
End If
objRH.Dispose()
GvDatos.DataBind()
UpDatos.Update()
End Sub
Private Sub LimpiaModalCaptacion()
TxtCaptacion.Text = ""
ChkModalEstatus.Checked = False
UpModalCaptacion.Update()
End Sub
Public Sub Edit_Click(sender As Object, e As EventArgs)
LtlTituloModalCaptacion.Text = "Actualizar medio de captacion"
LnkModalCaptacionAgregar.Text = "Actualizar"
LimpiaModalCaptacion()
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
CveCaptacion = GvRow.DataKey("CveCaptacion").ToEntero
TxtCaptacion.Text = GvRow.DataKey("Captacion").ToString
If Boolean.Parse(GvRow.DataKey("Estatus")) = True Then
ChkModalEstatus.Checked = True
Else
ChkModalEstatus.Checked = False
End If
RegistraScript("$('#DivModaMedio').modal({ backdrop: 'static', keyboard: false});", "MCaptaciones")
End Sub
Public Sub Delete_Click(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
CveCaptacion = GvRow.DataKey("CveCaptacion").ToEntero
Dim objRH As New ClsRH
If objRH.CaptacionCatalogoRemove(CveCaptacion, UsuarioActual.CveEmpresa) Then
Alert("Se elimino el medio de captación correctamente.")
End If
CveCaptacion = -1
CargaDatos()
End Sub
Private Sub LnkNuevoMedioCaptacion_Click(sender As Object, e As EventArgs) Handles LnkNuevoMedioCaptacion.Click
LtlTituloModalCaptacion.Text = "Agregar medio de captacion"
LnkModalCaptacionAgregar.Text = "Agregar"
LimpiaModalCaptacion()
RegistraScript("$('#DivModaMedio').modal({ backdrop: 'static', keyboard: false});", "MCaptaciones")
End Sub
Private Sub LnkModalCaptacionAgregar_Click(sender As Object, e As EventArgs) Handles LnkModalCaptacionAgregar.Click
Dim objRH As New ClsRH
Dim Estatus As Integer = If(ChkModalEstatus.Checked, 1, 0)
If CveCaptacion < 0 Then
If objRH.CaptacionCatalogoAddUpdate(-1, TxtCaptacion.Text.Trim, Estatus, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
Alert("El medio de captación se agrego correctamente")
RegistraScript("$('#DivModaMedio').modal('hide');", "MCaptaciones")
End If
Else
If objRH.CaptacionCatalogoAddUpdate(CveCaptacion, TxtCaptacion.Text.Trim, Estatus, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
Alert("El medio de captación se actualizo correctamente")
RegistraScript("$('#DivModaMedio').modal('hide');", "MCaptaciones")
End If
End If
objRH.Dispose()
CveCaptacion = -1
CargaDatos()
End Sub
End Class

View File

@@ -0,0 +1,132 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatChecadorEstaciones.aspx.vb" Inherits="RH_CatChecadorEstaciones" %>
<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="E" Runat="Server">
Catálogo Estaciones
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" Runat="Server">
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" Runat="Server">
<li>
<asp:LinkButton ID="LnkChecadorEstaciones" runat="server"><i class="fa fa-plus-circle"></i> Agregar</asp:LinkButton>
</li>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HA" Runat="Server">
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="C" Runat="Server">
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:HiddenField ClientIDMode="Static" runat="server" ID="HdnCveChecadorEstaciones" Value="-1" />
<div class="row" style="margin-right: 10px; margin-top: 18px;text-align:right">
<input type="text" id="TxtBusqueda" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvChecadorEstaciones.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvChecadorEstaciones.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<asp:GridView ID="GvChecadorEstaciones" runat="server" GridLines="None" DataKeyNames="CveChecadorEstacion,ChecadorEstacion,CveChecadorTipo,Ip,Puerto,CveZonaHoraria,Estatus,Fecha,CveUsuario,CveEmpresa,ChecadorTipo,Usuario,ZonaHoraria"
CssClass="table table-striped table-advance table-hover Widthall ScrollAD" data-sort="true" data-freezerows="1" AutoGenerateColumns ="False" EmptyDataText="No se encontraron registros" ToolTip="Listado de Checadores de Estaciones ">
<Columns>
<asp:BoundField DataField="ChecadorEstacion" HeaderText="Checador de Estacion" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField DataField="ChecadorTipo" HeaderText="Tipo de Checador" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField DataField="ZonaHoraria" HeaderText="Zona Horaria" ItemStyle-HorizontalAlign="Center" />
<asp:BoundField DataField="Ip" HeaderText="IP" ItemStyle-HorizontalAlign="Center" />
<asp:BoundField DataField="Puerto" HeaderText="Puerto" ItemStyle-HorizontalAlign="Center" />
<asp:BoundField DataField="Usuario" HeaderText="Usuario" ItemStyle-HorizontalAlign="Center" />
<asp:BoundField DataField="Fecha" HeaderText="Fecha" ItemStyle-HorizontalAlign="Center" DataFormatString="{0:d}" />
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="Estatus">
<ItemTemplate>
<asp:Label ID="LblEstatus" runat="server" Text='<%# Eval("Estatus") %>'>></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="Comandos">
<ItemTemplate>
<asp:LinkButton ID="imgE" runat="server" AlternateText="Editar" CausesValidation="False" CssClass="btn btn-circle btn-sm green" OnClick="Edit_Click" Text="<i class='fa fa-pencil'></i>" />
<asp:LinkButton ID="imgD" runat="server" AlternateText="Eliminar" OnClick="Delete_Click" 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="Confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:HiddenField ID="HdnModalidad" runat="server" Value="A" ClientIDMode="Static" />
<asp:HiddenField ID="HdnID" runat="server" Value="-1" ClientIDMode="Static" />
</ContentTemplate>
</asp:UpdatePanel>
<%--POPUP AGREGAR--%>
<div id="divAddChecadorEstaciones" class="modal ADS fade" role="dialog">
<div class="modal-dialog">
<asp:UpdatePanel ID="UpAddChecadorEstaciones" class="modal-content rowpadding" 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" id="myModalLabel">Agregar Checador de Estacion</h4>
</div>
<div class="modal-body">
<asp:UpdatePanel ID="UpBodyChecadorEstaciones" UpdateMode="Conditional" runat="server">
<ContentTemplate>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtChecadorEstaciones" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="50"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVChecadorEstaciones" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtChecadorEstaciones" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Checador de Estaciones''</b> es necesario, por favor ingréselo." ValidationGroup="GrpObligatorio"></asp:RequiredFieldValidator>
<label for="<%= TxtChecadorEstaciones.ClientID.ToString()%>">Checador de Estaciones:</label>
<i></i>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlChecadorTipo" DataValueField="CveChecadorTipo" Width="150" DataTextField="ChecadorTipo" runat="server" CssClass="form-control select2me"></asp:DropDownList>
<label for="<%= DdlChecadorTipo.ClientID.ToString()%>">Tipo de Checador:</label>
<asp:RequiredFieldValidator runat="server" Enabled="true" Display="None" ID="RfvDdlChecadorTipo" ControlToValidate="DdlChecadorTipo" InitialValue="-1" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor seleccione uno." ValidationGroup="GrpObligatorio"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VADdlChecadorTipo" runat="server" HighlightCssClass="vco" TargetControlID="RfvDdlChecadorTipo" Width="300px"></ajax:ValidatorCalloutExtender>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlZonaHoraria" DataValueField="CveZonaHoraria" DataTextField="ZonaHoraria" Width="150" runat="server" CssClass="form-control select2me"></asp:DropDownList>
<label for="<%= DdlZonaHoraria.ClientID.ToString()%>">Zona Horaria:</label>
<asp:RequiredFieldValidator runat="server" Enabled="true" Display="None" ID="RfvDdlZonaHoraria" ControlToValidate="DdlZonaHoraria" InitialValue="-1" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor seleccione uno." ValidationGroup="GrpObligatorio"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VADdlZonaHoraria" runat="server" HighlightCssClass="vco" TargetControlID="RfvDdlZonaHoraria" Width="300px"></ajax:ValidatorCalloutExtender>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtIp" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="25"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVIp" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtIp" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''IP''</b> es necesario, por favor ingréselo." ValidationGroup="GrpObligatorio"></asp:RequiredFieldValidator>
<label for="<%= TxtIp.ClientID.ToString()%>">IP:</label>
<i></i>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtPuerto" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="5" ></asp:TextBox>
<ajax:FilteredTextBoxExtender ID="FIETxtPuerto" TargetControlID="TxtPuerto" FilterType="Numbers" runat="server" />
<asp:RequiredFieldValidator ID="RFVPuerto" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtPuerto" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Puerto''</b> es necesario, por favor ingréselo." ValidationGroup="GrpObligatorio"></asp:RequiredFieldValidator>
<label for="<%= TxtPuerto.ClientID.ToString()%>">Puerto:</label>
<i></i>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:CheckBox ID="ChkEstatus" runat="server" CssClass="form-control" />
<label for="<%= ChkEstatus.ClientID.ToString()%>">Estatus:</label>
<i></i>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<div class="modal-footer">
<asp:UpdatePanel ID="UpFooter" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:LinkButton ID="BtnAgregarChecadorEstaciones" runat="server" CssClass="btn btn-primary" ValidationGroup="GrpObligatorio"> <i class='material-icons'>done_all</i> Agregar</asp:LinkButton>
<button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" Runat="Server">
</asp:Content>

View File

@@ -0,0 +1,131 @@

Imports Extensiones
Imports System.Data
Partial Class RH_CatChecadorEstaciones
Inherits ClsPaginas
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
CargaDdlChecadorTipo()
CargaDdlZonaHoraria()
CargaDatos()
End If
End Sub
Private Sub CargaDatos()
Dim ObjRH As New ClsRH()
HdnID.Value = -1
If ObjRH.ChecadorEstacionesGet(HdnID.Value, UsuarioActual.CveEmpresa) Then
GvChecadorEstaciones.DataSource = ObjRH.DtResultados
GvChecadorEstaciones.DataBind()
End If
ObjRH.Dispose()
UpDatos.Update()
End Sub
Private Sub CargaDdlChecadorTipo()
Dim ObjRH As New ClsRH()
If ObjRH.DdlChecadorTipoGet(UsuarioActual.CveEmpresa) Then
DdlChecadorTipo.DataSource = ObjRH.DtResultados
DdlChecadorTipo.DataBind()
End If
ObjRH.Dispose()
UpDatos.Update()
End Sub
Private Sub CargaDdlZonaHoraria()
Dim ObjRH As New ClsRH()
If ObjRH.DdlZonaHorariaGet() Then
DdlZonaHoraria.DataSource = ObjRH.DtResultados
DdlZonaHoraria.DataBind()
End If
ObjRH.Dispose()
UpDatos.Update()
End Sub
Private Sub BtnAgregarChecadorEstaciones_Click(sender As Object, e As EventArgs) Handles BtnAgregarChecadorEstaciones.Click
Dim ObjRH As New ClsRH
Dim Estatus = 0
If ChkEstatus.Checked Then Estatus = 1
If HdnModalidad.Value = "A" Then
If ObjRH.ChecadorEstacionesAdd(DdlChecadorTipo.SelectedValue, DdlZonaHoraria.SelectedValue, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, TxtChecadorEstaciones.Text, TxtIp.Text, TxtPuerto.Text, Estatus) Then
CargaDatos()
Alert("Agregado Correctamente.", TipoMensaje.MsgInformacion)
End If
ElseIf HdnModalidad.Value = "U" Then
If ObjRH.ChecadorEstacionesUpdate(HdnID.Value, DdlChecadorTipo.SelectedValue, DdlZonaHoraria.SelectedValue, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, TxtChecadorEstaciones.Text, TxtIp.Text, TxtPuerto.Text, Estatus) Then
CargaDatos()
Alert("Actualizado Correctamente.", TipoMensaje.MsgInformacion)
End If
End If
RegistraScript(String.Format("$('#{0}').modal('hide');", "divAddChecadorEstaciones"))
ObjRH.Dispose()
UpDatos.Update()
End Sub
Public Sub Edit_Click(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
HdnModalidad.Value = "U"
HdnID.Value = GvRow.DataKey("CveChecadorEstacion")
UpDatos.Update()
BtnAgregarChecadorEstaciones.Text = "Actualizar"
DdlChecadorTipo.SelectedValueExist(GvRow.DataKey("CveChecadorTipo"))
DdlZonaHoraria.SelectedValueExist(GvRow.DataKey("CveZonaHoraria"))
TxtChecadorEstaciones.Text = GvRow.DataKey("ChecadorEstacion")
TxtIp.Text = GvRow.DataKey("Ip")
TxtPuerto.Text = GvRow.DataKey("Puerto")
ChkEstatus.Checked = CBool(GvRow.DataKey("Estatus"))
UpAddChecadorEstaciones.Update()
RegistraScript(String.Format("$('#{0}').modal('show');", "divAddChecadorEstaciones"))
End Sub
Public Sub Agregar()
HdnModalidad.Value = "A"
UpDatos.Update()
BtnAgregarChecadorEstaciones.Text = "Agregar"
TxtChecadorEstaciones.Text = ""
TxtIp.Text = ""
TxtPuerto.Text = ""
CargaDdlChecadorTipo()
CargaDdlZonaHoraria()
ChkEstatus.Checked = False
UpAddChecadorEstaciones.Update()
RegistraScript(String.Format("$('#{0}').modal('show');", "divAddChecadorEstaciones"))
End Sub
Public Sub Delete_Click(sender As Object, e As EventArgs)
Dim ObjRH As New ClsRH()
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
HdnID.Value = GvRow.DataKey("CveChecadorEstacion")
UpDatos.Update()
If ObjRH.ChecadorEstacionesRemove(HdnID.Value) Then
CargaDatos()
End If
ObjRH.Dispose()
UpDatos.Update()
End Sub
Private Sub LnkChecadorEstaciones_Click(sender As Object, e As EventArgs) Handles LnkChecadorEstaciones.Click
Agregar()
End Sub
Private Sub GvChecadorEstaciones_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvChecadorEstaciones.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.DBCampo("Estatus") = True Then
e.Row.FCLabel("LblEstatus").Text = "Activo"
e.Row.FCLabel("LblEstatus").ForeColor = Drawing.Color.Green
Else
e.Row.FCLabel("LblEstatus").Text = "Inactivo"
e.Row.FCLabel("LblEstatus").ForeColor = Drawing.Color.Red
End If
End If
End Sub
End Class

515
RH/CatChecadorHorarios.aspx Normal file
View File

@@ -0,0 +1,515 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatChecadorHorarios.aspx.vb" Inherits="RH_CatChecadorHorarios" %>
<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="E" Runat="Server">
Catalogo Horarios
</asp:Content>
<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 runat="server" ID="BtnAgregarSucursalModal" OnClick="BtnAgregarSucursalModal_Click" data-toggle="tooltip" data-placement="left" title="Agregar Horario" Text="<i class='fa fa-plus'></i> Agregar Horario"></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="UpDatos" runat="server">
<ContentTemplate>
<div class="portlet smmallpadding light bordered" id="DIVDocumentacion" runat="server">
<div class="portlet-title">
<div class="caption font-green">
<i class="icon-pin font-green"></i>
<span class="caption-subject bold uppercase">Horarios</span>
</div>
</div>
<div class="portlet-body form">
<asp:UpdatePanel ID="UPGvHorarios" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvHorarios" runat="server"
DataKeyNames="CveChecadorHorario, ChecadorHorario,
Lunes, LunesEntrada, LunesSalidaComida, LunesEntradaComida, LunesSalida,
Martes, MartesEntrada, MartesSalidaComida, MartesEntradaComida, MartesSalida,
Miercoles, MiercolesEntrada, MiercolesSalidaComida, MiercolesEntradaComida, MiercolesSalida,
Jueves, JuevesEntrada, JuevesSalidaComida, JuevesEntradaComida, JuevesSalida,
Viernes, ViernesEntrada, ViernesSalidaComida, ViernesEntradaComida, ViernesSalida,
Sabado, SabadoEntrada, SabadoSalidaComida, SabadoEntradaComida, SabadoSalida,
Domingo, DomingoEntrada, DomingoSalidaComida, DomingoEntradaComida, DomingoSalida,
Estatus, TolRetAcumulados,TolRetEntradaMin,TolFalEntradaMin,RetSalidaAntes,TolSalidaAntesMin"
AutoGenerateColumns="false" EmptyDataText="No se encontraron registros"
CssClass="ADSCROLLER2 table table-striped table-advance table-hover Widthall"
data-rows="1" data-cols="0" data-heightmenos="100" data-heightfijo="600" Style="text-align: center;" GridLines="None">
<Columns>
<asp:TemplateField ItemStyle-HorizontalAlign="Left" HeaderText="Horario">
<ItemTemplate>
<asp:Literal ID="LtlChecadorHorario" runat="server" Text='<%# Eval("ChecadorHorario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Left" HeaderText="Estatus">
<ItemTemplate>
<asp:Literal ID="LtlEstatus" runat="server" Text='<%# Eval("SEstatus") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="Fecha Ing." ItemStyle-Width="100">
<ItemTemplate>
<asp:Literal ID="ltlFechaIng" runat="server" Text='<%# Eval("FechaIng", "{0:d}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="Fecha" ItemStyle-Width="100">
<ItemTemplate>
<asp:Literal ID="ltlFecha" runat="server" Text='<%# Eval("Fecha", "{0:d}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Left" HeaderText="Usuario">
<ItemTemplate>
<asp:Literal ID="LtlUsuario" runat="server" Text='<%# Eval("Usuario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Right" ItemStyle-Width="80px">
<ItemTemplate>
<asp:LinkButton ID="ImgE" OnClick="Edit_ClickCursos" runat="server" ToolTip="Editar Curso" AlternateText="Editar" CausesValidation="False"
CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Left" ItemStyle-Width="80px">
<ItemTemplate>
<asp:LinkButton ID="imgD" OnClick="Remove_ClickHorario" runat="server" AlternateText="Eliminar" CausesValidation="False" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<div id="divHorarios" class="modal ADS fade" role="dialog">
<div id="Div1" runat="server" class="modal-dialog" style="width: 750px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpHorarios" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlAsistenciaHorariosModal" runat="server">Horarios</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtHorario" CssClass="form-control " runat="server" MaxLength="100" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtHorario" runat="server" ControlToValidate="TxtHorario" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<label for="<%= TxtHorario.ClientID.ToString()%>">Horario:</label>
</div>
<table class="table table-striped Widthall">
<thead>
<tr>
<th>Día</th>
<th>Se trabaja</th>
<th>Entrada</th>
<th>Salida comida</th>
<th>Entrada comida</th>
<th>Salida</th>
</tr>
</thead>
<tbody>
<tr>
<td>Lunes</td>
<td>
<asp:CheckBox ID="ChkLunes" runat="server" AutoPostBack="true" /></td>
<td>
<asp:TextBox ID="TxtLunesEntrada" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtLunesEntrada" runat="server" ControlToValidate="TxtLunesEntrada" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtLunesEntrada" runat="server" TargetControlID="TxtLunesEntrada" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtLunesEntrada" runat="server" ControlExtender="MEETxtLunesEntrada" ControlToValidate="TxtLunesEntrada" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtLunesEntrada" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtLunesEntrada" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVCTxtLunesEntrada" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtLunesEntrada"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtLunesSalidaComida" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtLunesSalidaComida" runat="server" ControlToValidate="TxtLunesSalidaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtLunesSalidaComida" runat="server" TargetControlID="TxtLunesSalidaComida" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtLunesSalidaComida" runat="server" ControlExtender="MEETxtLunesSalidaComida" ControlToValidate="TxtLunesSalidaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtLunesSalidaComida" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtLunesSalidaComida" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVTcTxtLunesEntrada" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtLunesSalidaComida"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtLunesEntradaComida" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtLunesEntradaComida" runat="server" ControlToValidate="TxtLunesEntradaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtLunesEntradaComida" runat="server" TargetControlID="TxtLunesEntradaComida" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtLunesEntradaComida" runat="server" ControlExtender="MEETxtLunesEntradaComida" ControlToValidate="TxtLunesEntradaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtEntradaComida" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtLunesEntradaComida" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVCTxtLunesEntradaComida" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtLunesEntradaComida"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtLunesSalida" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtLunesSalida" runat="server" ControlToValidate="TxtLunesSalida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtLunesSalida" runat="server" TargetControlID="TxtLunesSalida" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtLunesSalida" runat="server" ControlExtender="MEETxtLunesSalida" ControlToValidate="TxtLunesSalida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtLunesSalida" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtLunesSalida" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVCTxtLunesSalida" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtLunesSalida"></ajax:ValidatorCalloutExtender>
</td>
</tr>
<tr>
<td>Martes</td>
<td>
<asp:CheckBox ID="ChkMartes" runat="server" AutoPostBack="true" /></td>
<td>
<asp:TextBox ID="TxtMartesEntrada" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtMartesEntrada" runat="server" ControlToValidate="TxtMartesEntrada" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtMartesEntrada" runat="server" TargetControlID="TxtMartesEntrada" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtMartesEntrada" runat="server" ControlExtender="MEETxtMartesEntrada" ControlToValidate="TxtMartesEntrada" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtMartesEntrada" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtMartesEntrada" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVCTxtMartesEntrada" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtMartesEntrada"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtMartesSalidaComida" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtMartesSalidaComida" runat="server" ControlToValidate="TxtMartesSalidaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtMartesSalidaComida" runat="server" TargetControlID="TxtMartesSalidaComida" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtMartesSalidaComida" runat="server" ControlExtender="MEETxtMartesSalidaComida" ControlToValidate="TxtMartesSalidaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtMartesSalidaComida" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtMartesSalidaComida" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVTcTxtMartesEntrada" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtMartesSalidaComida"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtMartesEntradaComida" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtMartesEntradaComida" runat="server" ControlToValidate="TxtMartesEntradaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtMartesEntradaComida" runat="server" TargetControlID="TxtMartesEntradaComida" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtMartesEntradaComida" runat="server" ControlExtender="MEETxtMartesEntradaComida" ControlToValidate="TxtMartesEntradaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtMartesEntradaComida" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtMartesEntradaComida" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVCTxtMartesEntradaComida" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtMartesEntradaComida"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtMartesSalida" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtMartesSalida" runat="server" ControlToValidate="TxtMartesSalida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtMartesSalida" runat="server" TargetControlID="TxtMartesSalida" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtMartesSalida" runat="server" ControlExtender="MEETxtMartesSalida" ControlToValidate="TxtMartesSalida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtMartesSalida" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtMartesSalida" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVCTxtMartesSalida" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtMartesSalida"></ajax:ValidatorCalloutExtender>
</td>
</tr>
<tr>
<td>Miercoles</td>
<td>
<asp:CheckBox ID="ChkMiercoles" runat="server" AutoPostBack="true" /></td>
<td>
<asp:TextBox ID="TxtMiercolesEntrada" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtMiercolesEntrada" runat="server" ControlToValidate="TxtMiercolesEntrada" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtMiercolesEntrada" runat="server" TargetControlID="TxtMiercolesEntrada" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtMiercolesEntrada" runat="server" ControlExtender="MEETxtMiercolesEntrada" ControlToValidate="TxtMiercolesEntrada" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtMiercolesEntrada" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtMiercolesEntrada" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVCTxtMiercolesEntrada" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtMiercolesEntrada"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtMiercolesSalidaComida" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtMiercolesSalidaComida" runat="server" ControlToValidate="TxtMiercolesSalidaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtMiercolesSalidaComida" runat="server" TargetControlID="TxtMiercolesSalidaComida" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtMiercolesSalidaComida" runat="server" ControlExtender="MEETxtMiercolesSalidaComida" ControlToValidate="TxtMiercolesSalidaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtMiercolesSalidaComida" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtMiercolesSalidaComida" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVTcTxtMiercolesEntrada" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtMiercolesSalidaComida"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtMiercolesEntradaComida" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtMiercolesEntradaComida" runat="server" ControlToValidate="TxtMiercolesEntradaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtMiercolesEntradaComida" runat="server" TargetControlID="TxtMiercolesEntradaComida" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtMiercolesEntradaComida" runat="server" ControlExtender="MEETxtMiercolesEntradaComida" ControlToValidate="TxtMiercolesEntradaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtMiercolesEntradaComida" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtMiercolesEntradaComida" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVCTxtMiercolesEntradaComida" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtMiercolesEntradaComida"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtMiercolesSalida" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtMiercolesSalida" runat="server" ControlToValidate="TxtMiercolesSalida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtMiercolesSalida" runat="server" TargetControlID="TxtMiercolesSalida" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtMiercolesSalida" runat="server" ControlExtender="MEETxtMiercolesSalida" ControlToValidate="TxtMiercolesSalida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtMiercolesSalida" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtMiercolesSalida" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVCTxtMiercolesSalida" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtMiercolesSalida"></ajax:ValidatorCalloutExtender>
</td>
</tr>
<tr>
<td>Jueves</td>
<td>
<asp:CheckBox ID="ChkJueves" runat="server" AutoPostBack="true" /></td>
<td>
<asp:TextBox ID="TxtJuevesEntrada" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtJuevesEntrada" runat="server" ControlToValidate="TxtJuevesEntrada" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtJuevesEntrada" runat="server" TargetControlID="TxtJuevesEntrada" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtJuevesEntrada" runat="server" ControlExtender="MEETxtJuevesEntrada" ControlToValidate="TxtJuevesEntrada" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtJuevesEntrada" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtJuevesEntrada" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVCTxtJuevesEntrada" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtJuevesEntrada"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtJuevesSalidaComida" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtJuevesSalidaComida" runat="server" ControlToValidate="TxtJuevesSalidaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtJuevesSalidaComida" runat="server" TargetControlID="TxtJuevesSalidaComida" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtJuevesSalidaComida" runat="server" ControlExtender="MEETxtJuevesSalidaComida" ControlToValidate="TxtJuevesSalidaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtJuevesSalidaComida" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtJuevesSalidaComida" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVTcTxtJuevesEntrada" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtJuevesSalidaComida"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtJuevesEntradaComida" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtJuevesEntradaComida" runat="server" ControlToValidate="TxtJuevesEntradaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtJuevesEntradaComida" runat="server" TargetControlID="TxtJuevesEntradaComida" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtJuevesEntradaComida" runat="server" ControlExtender="MEETxtJuevesEntradaComida" ControlToValidate="TxtJuevesEntradaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtJuevesEntradaComida" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtJuevesEntradaComida" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVCTxtJuevesEntradaComida" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtJuevesEntradaComida"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtJuevesSalida" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtJuevesSalida" runat="server" ControlToValidate="TxtJuevesSalida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtJuevesSalida" runat="server" TargetControlID="TxtJuevesSalida" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtJuevesSalida" runat="server" ControlExtender="MEETxtJuevesSalida" ControlToValidate="TxtJuevesSalida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtJuevesSalida" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtJuevesSalida" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVCTxtJuevesSalida" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtJuevesSalida"></ajax:ValidatorCalloutExtender>
</td>
</tr>
<tr>
<td>Viernes</td>
<td>
<asp:CheckBox ID="ChkViernes" runat="server" AutoPostBack="true" /></td>
<td>
<asp:TextBox ID="TxtViernesEntrada" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtViernesEntrada" runat="server" ControlToValidate="TxtViernesEntrada" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtViernesEntrada" runat="server" TargetControlID="TxtViernesEntrada" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtViernesEntrada" runat="server" ControlExtender="MEETxtViernesEntrada" ControlToValidate="TxtViernesEntrada" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtViernesEntrada" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtViernesEntrada" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVCTxtViernesEntrada" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtViernesEntrada"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtViernesSalidaComida" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtViernesSalidaComida" runat="server" ControlToValidate="TxtViernesSalidaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtViernesSalidaComida" runat="server" TargetControlID="TxtViernesSalidaComida" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtViernesSalidaComida" runat="server" ControlExtender="MEETxtViernesSalidaComida" ControlToValidate="TxtViernesSalidaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtViernesSalidaComida" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtViernesSalidaComida" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVTcTxtViernesEntrada" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtViernesSalidaComida"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtViernesEntradaComida" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtViernesEntradaComida" runat="server" ControlToValidate="TxtViernesEntradaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtViernesEntradaComida" runat="server" TargetControlID="TxtViernesEntradaComida" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtViernesEntradaComida" runat="server" ControlExtender="MEETxtViernesEntradaComida" ControlToValidate="TxtViernesEntradaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtViernesEntradaComida" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtViernesEntradaComida" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVCTxtViernesEntradaComida" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtViernesEntradaComida"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtViernesSalida" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtViernesSalida" runat="server" ControlToValidate="TxtViernesSalida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtViernesSalida" runat="server" TargetControlID="TxtViernesSalida" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtViernesSalida" runat="server" ControlExtender="MEETxtViernesSalida" ControlToValidate="TxtViernesSalida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtViernesSalida" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtViernesSalida" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVCTxtViernesSalida" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtViernesSalida"></ajax:ValidatorCalloutExtender>
</td>
</tr>
<tr>
<td>Sabado</td>
<td>
<asp:CheckBox ID="ChkSabado" runat="server" AutoPostBack="true" /></td>
<td>
<asp:TextBox ID="TxtSabadoEntrada" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtSabadoEntrada" runat="server" ControlToValidate="TxtSabadoEntrada" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtSabadoEntrada" runat="server" TargetControlID="TxtSabadoEntrada" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtSabadoEntrada" runat="server" ControlExtender="MEETxtSabadoEntrada" ControlToValidate="TxtSabadoEntrada" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtSabadoEntrada" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtSabadoEntrada" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVCTxtSabadoEntrada" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtSabadoEntrada"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtSabadoSalidaComida" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtSabadoSalidaComida" runat="server" ControlToValidate="TxtSabadoSalidaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtSabadoSalidaComida" runat="server" TargetControlID="TxtSabadoSalidaComida" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtSabadoSalidaComida" runat="server" ControlExtender="MEETxtSabadoSalidaComida" ControlToValidate="TxtSabadoSalidaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtSabadoSalidaComida" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtSabadoSalidaComida" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVTcTxtSabadoEntrada" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtSabadoSalidaComida"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtSabadoEntradaComida" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtSabadoEntradaComida" runat="server" ControlToValidate="TxtSabadoEntradaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtSabadoEntradaComida" runat="server" TargetControlID="TxtSabadoEntradaComida" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtSabadoEntradaComida" runat="server" ControlExtender="MEETxtSabadoEntradaComida" ControlToValidate="TxtSabadoEntradaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtSabadoEntradaComida" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtSabadoEntradaComida" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVCTxtSabadoEntradaComida" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtSabadoEntradaComida"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtSabadoSalida" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtSabadoSalida" runat="server" ControlToValidate="TxtSabadoSalida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtSabadoSalida" runat="server" TargetControlID="TxtSabadoSalida" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtSabadoSalida" runat="server" ControlExtender="MEETxtSabadoSalida" ControlToValidate="TxtSabadoSalida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtSabadoSalida" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtSabadoSalida" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVCTxtSabadoSalida" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtSabadoSalida"></ajax:ValidatorCalloutExtender>
</td>
</tr>
<tr>
<td>Domingo</td>
<td>
<asp:CheckBox ID="ChkDomingo" runat="server" AutoPostBack="true" /></td>
<td>
<asp:TextBox ID="TxtDomingoEntrada" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtDomingoEntrada" runat="server" ControlToValidate="TxtDomingoEntrada" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtDomingoEntrada" runat="server" TargetControlID="TxtDomingoEntrada" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtDomingoEntrada" runat="server" ControlExtender="MEETxtDomingoEntrada" ControlToValidate="TxtDomingoEntrada" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtDomingoEntrada" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtDomingoEntrada" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVCTxtDomingoEntrada" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtDomingoEntrada"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtDomingoSalidaComida" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtDomingoSalidaComida" runat="server" ControlToValidate="TxtDomingoSalidaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtDomingoSalidaComida" runat="server" TargetControlID="TxtDomingoSalidaComida" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtDomingoSalidaComida" runat="server" ControlExtender="MEETxtDomingoSalidaComida" ControlToValidate="TxtDomingoSalidaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtDomingoSalidaComida" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtDomingoSalidaComida" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVTcTxtDomingoEntrada" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtDomingoSalidaComida"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtDomingoEntradaComida" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtDomingoEntradaComida" runat="server" ControlToValidate="TxtDomingoEntradaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtDomingoEntradaComida" runat="server" TargetControlID="TxtDomingoEntradaComida" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtDomingoEntradaComida" runat="server" ControlExtender="MEETxtDomingoEntradaComida" ControlToValidate="TxtDomingoEntradaComida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtDomingoEntradaComida" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtDomingoEntradaComida" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVCTxtDomingoEntradaComida" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtDomingoEntradaComida"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtDomingoSalida" runat="server" CausesValidation="true" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtDomingoSalida" runat="server" ControlToValidate="TxtDomingoSalida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtDomingoSalida" runat="server" TargetControlID="TxtDomingoSalida" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtDomingoSalida" runat="server" ControlExtender="MEETxtDomingoSalida" ControlToValidate="TxtDomingoSalida" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpHorario"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtDomingoSalida" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtDomingoSalida" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVCTxtDomingoSalida" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtDomingoSalida"></ajax:ValidatorCalloutExtender>
</td>
</tr>
</tbody>
</table>
<div style="margin-top:15px!important">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtTolRetAcumulados" CssClass="form-control " runat="server" MaxLength="100" CausesValidation="true" data-toggle="tooltip" data-placement="left" title="Numero de retardos coumulados que generarn falta"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvTxttinyint" runat="server" ControlToValidate="TxtTolRetAcumulados" CssClass="help-block errorimput"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:FilteredTextBoxExtender ID="FTETxtTolRetAcumulados" runat="server" TargetControlID="TxtTolRetAcumulados" FilterMode="ValidChars" FilterType="Numbers" InvalidChars=".-+," />
<label for="<%= TxtTolRetAcumulados.ClientID.ToString()%>">Numero retardos de acumulados que generan falta:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtTolRetEntradaMin" CssClass="form-control " runat="server" MaxLength="2" CausesValidation="true" data-toggle="tooltip" data-placement="left" title="Tiempo en minutos de tolerancia antes de marcar la entrada como retardo."></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvTxtTolRetEntradaMin" runat="server" ControlToValidate="TxtTolRetEntradaMin" CssClass="help-block errorimput"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:FilteredTextBoxExtender ID="FETxtTolRetEntradaMin" runat="server" TargetControlID="TxtTolRetAcumulados" FilterMode="ValidChars" FilterType="Numbers" InvalidChars=".-+," />
<label for="<%= TxtTolRetAcumulados.ClientID.ToString()%>">Tolerancia min. retardo:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtTolFalEntradaMin" CssClass="form-control " runat="server" MaxLength="2" CausesValidation="true" data-toggle="tooltip" data-placement="left" title="Tiempo en minutos de tolerancia antes de marcar la entrada como falta."></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvTxtTolFalEntradaMin" runat="server" ControlToValidate="TxtTolFalEntradaMin" CssClass="help-block errorimput"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:FilteredTextBoxExtender ID="FETxtTolFalEntradaMin" runat="server" TargetControlID="TxtTolFalEntradaMin" FilterMode="ValidChars" FilterType="Numbers" InvalidChars=".-+," />
<label for="<%= TxtTolFalEntradaMin.ClientID.ToString()%>">Tolerancia min. falta:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:CheckBox ID="ChkRetardoSalidaAntes" runat="server" AutoPostBack="true" data-toggle="tooltip" data-placement="left" title="Si se sale antes de la hora se marcara como un reatrdo (Se debe especificar el tiempo de tolerancia)" />
<label for="<%= ChkRetardoSalidaAntes.ClientID.ToString()%>">Retardo en caso de salida antes de tiempo:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtTolSalidaAntes" Enabled="false" CssClass="form-control " runat="server" MaxLength="2" CausesValidation="true" data-toggle="tooltip" data-placement="left" title="Tiempo en minutos de tolerancia antes de marcar la entrada como retardo."></asp:TextBox>
<asp:RequiredFieldValidator Enabled ="false" ID="rfvTxtTolSalidaAntes" runat="server" ControlToValidate="TxtTolSalidaAntes" CssClass="help-block errorimput"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpHorario"></asp:RequiredFieldValidator>
<ajax:FilteredTextBoxExtender ID="FETxtTolSalidaAntes" runat="server" TargetControlID="TxtTolSalidaAntes" FilterMode="ValidChars" FilterType="Numbers" InvalidChars=".-+," />
<label for="<%= TxtTolSalidaAntes.ClientID.ToString()%>">Tolerancia min. salida antes de tiempo:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:CheckBox id="ChkActivo" runat="server" />
<label for="<%= ChkActivo.ClientID.ToString()%>">Activo:</label>
</div>
</div>
</div>
<div class="modal-footer">
<div class="row">
<asp:Button ID="BtnHorarioModal" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpHorario" />
<button id="Button4" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" Runat="Server">
</asp:Content>

View File

@@ -0,0 +1,615 @@
Option Strict On
Imports Extensiones
Imports System.Data
Partial Class RH_CatChecadorHorarios
Inherits ClsPaginas
Private Property CveChecadorHorario As Integer
Get
If ViewState("CveChecadorHorario") Is Nothing Then
Return -1
Else
Return DirectCast(ViewState("CveChecadorHorario"), Integer)
End If
End Get
Set(value As Integer)
ViewState("CveChecadorHorario") = value
End Set
End Property
Private Property Actulizar As Boolean
Get
If ViewState("Actulizar") Is Nothing Then
Return True
Else
Return Boolean.Parse(ViewState("Actulizar").ToString)
End If
End Get
Set(value As Boolean)
ViewState("Actulizar") = value
End Set
End Property
Private Sub RH_CatChecadorHorarios_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
CargaDatos()
End If
End Sub
Private Sub CargaDatos()
Dim objRH As New ClsRH
If objRH.ChecadorHorariosGet(-1, -1, UsuarioActual.CveEmpresa) Then
GvHorarios.DataSource = objRH.DtResultados
Else
GvHorarios.DataSource = Nothing
End If
objRH.Dispose()
GvHorarios.DataBind()
UPGvHorarios.Update()
End Sub
Protected Sub BtnAgregarSucursalModal_Click(sender As Object, e As EventArgs) Handles BtnAgregarSucursalModal.Click
LtlAsistenciaHorariosModal.Text = "Agregar Horario"
BtnHorarioModal.Text = "Agregar"
ResetControles()
CamposFechas()
RegistraScript("$('#divHorarios').modal({ backdrop: 'static', keyboard: false});")
End Sub
Private Sub ResetControles()
TxtHorario.Text = ""
ChkLunes.Checked = True
ChkMartes.Checked = True
ChkMiercoles.Checked = True
ChkJueves.Checked = True
ChkViernes.Checked = True
ChkSabado.Checked = True
ChkDomingo.Checked = False
TxtLunesEntrada.Text = ""
TxtLunesSalidaComida.Text = ""
TxtLunesEntradaComida.Text = ""
TxtLunesSalida.Text = ""
TxtMartesEntrada.Text = ""
TxtMartesSalidaComida.Text = ""
TxtMartesEntradaComida.Text = ""
TxtMartesSalida.Text = ""
TxtMiercolesEntrada.Text = ""
TxtMiercolesSalidaComida.Text = ""
TxtMiercolesEntradaComida.Text = ""
TxtMiercolesSalida.Text = ""
TxtJuevesEntrada.Text = ""
TxtJuevesSalidaComida.Text = ""
TxtJuevesEntradaComida.Text = ""
TxtJuevesSalida.Text = ""
TxtViernesEntrada.Text = ""
TxtViernesSalidaComida.Text = ""
TxtViernesEntradaComida.Text = ""
TxtViernesSalida.Text = ""
TxtSabadoEntrada.Text = ""
TxtSabadoSalidaComida.Text = ""
TxtSabadoEntradaComida.Text = ""
TxtSabadoSalida.Text = ""
TxtDomingoEntrada.Text = ""
TxtDomingoSalidaComida.Text = ""
TxtDomingoEntradaComida.Text = ""
TxtDomingoSalida.Text = ""
UpHorarios.Update()
TxtTolRetAcumulados.Text = ""
TxtTolRetEntradaMin.Text = ""
TxtTolFalEntradaMin.Text = ""
ChkRetardoSalidaAntes.Checked = False
TxtTolSalidaAntes.Text = "0"
ChkActivo.Checked = True
TxtHorario.Text = ""
Actulizar = False
CveChecadorHorario = -1
End Sub
Public Sub Edit_ClickCursos(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim objRH As New ClsRH
LtlAsistenciaHorariosModal.Text = "Actualizar Horario"
BtnHorarioModal.Text = "Actualizar"
ChkActivo.Checked = Boolean.Parse(GvRow.DataKey("Estatus"))
TxtHorario.Text = GvRow.DataKey("ChecadorHorario")
ChkLunes.Checked = Boolean.Parse(GvRow.DataKey("Lunes"))
TxtLunesEntrada.Text = GvRow.DataKey("LunesEntrada")
TxtLunesSalidaComida.Text = GvRow.DataKey("LunesSalidaComida")
TxtLunesEntradaComida.Text = GvRow.DataKey("LunesEntradaComida")
TxtLunesSalida.Text = GvRow.DataKey("LunesSalida")
ChkMartes.Checked = Boolean.Parse(GvRow.DataKey("Martes"))
TxtMartesEntrada.Text = GvRow.DataKey("MartesEntrada")
TxtMartesSalidaComida.Text = GvRow.DataKey("MartesSalidaComida")
TxtMartesEntradaComida.Text = GvRow.DataKey("MartesEntradaComida")
TxtMartesSalida.Text = GvRow.DataKey("MartesSalida")
ChkMiercoles.Checked = Boolean.Parse(GvRow.DataKey("Miercoles"))
TxtMiercolesEntrada.Text = GvRow.DataKey("MiercolesEntrada")
TxtMiercolesSalidaComida.Text = GvRow.DataKey("MiercolesSalidaComida")
TxtMiercolesEntradaComida.Text = GvRow.DataKey("MiercolesEntradaComida")
TxtMiercolesSalida.Text = GvRow.DataKey("MiercolesSalida")
ChkJueves.Checked = Boolean.Parse(GvRow.DataKey("Jueves"))
TxtJuevesEntrada.Text = GvRow.DataKey("JuevesEntrada")
TxtJuevesSalidaComida.Text = GvRow.DataKey("JuevesSalidaComida")
TxtJuevesEntradaComida.Text = GvRow.DataKey("JuevesEntradaComida")
TxtJuevesSalida.Text = GvRow.DataKey("JuevesSalida")
ChkViernes.Checked = Boolean.Parse(GvRow.DataKey("Viernes"))
TxtViernesEntrada.Text = GvRow.DataKey("ViernesEntrada")
TxtViernesSalidaComida.Text = GvRow.DataKey("ViernesSalidaComida")
TxtViernesEntradaComida.Text = GvRow.DataKey("ViernesEntradaComida")
TxtViernesSalida.Text = GvRow.DataKey("ViernesSalida")
ChkSabado.Checked = Boolean.Parse(GvRow.DataKey("Sabado"))
TxtSabadoEntrada.Text = GvRow.DataKey("SabadoEntrada")
TxtSabadoSalidaComida.Text = GvRow.DataKey("SabadoSalidaComida")
TxtSabadoEntradaComida.Text = GvRow.DataKey("SabadoEntradaComida")
TxtSabadoSalida.Text = GvRow.DataKey("SabadoSalida")
ChkDomingo.Checked = Boolean.Parse(GvRow.DataKey("Domingo"))
TxtDomingoEntrada.Text = GvRow.DataKey("DomingoEntrada")
TxtDomingoSalidaComida.Text = GvRow.DataKey("DomingoSalidaComida")
TxtDomingoEntradaComida.Text = GvRow.DataKey("DomingoEntradaComida")
TxtDomingoSalida.Text = GvRow.DataKey("DomingoSalida")
CveChecadorHorario = GvRow.DataKey("CveChecadorHorario").ToEntero
Actulizar = True
'TolRetAcumulados,TolRetEntradaMin,TolFalEntradaMin,RetSalidaAntes,TolSalidaAntes"
TxtTolRetAcumulados.Text = GvRow.DataKey("TolRetAcumulados").ToString
'TxtTolSalidaAntes.Text = GvRow.DataKey("TolSalidaAntesMin.").ToString
TxtTolRetEntradaMin.Text = GvRow.DataKey("TolRetEntradaMin").ToString
TxtTolFalEntradaMin.Text = GvRow.DataKey("TolFalEntradaMin").ToString
ChkRetardoSalidaAntes.Checked = Boolean.Parse(GvRow.DataKey("RetSalidaAntes").ToString)
If ChkRetardoSalidaAntes.Checked Then
TxtTolSalidaAntes.Enabled = True
Else
TxtTolSalidaAntes.Enabled = False
End If
TxtTolSalidaAntes.Text = GvRow.DataKey("TolSalidaAntesMin").ToString
UpHorarios.Update()
CamposFechas()
RegistraScript("$('#divHorarios').modal({ backdrop: 'static', keyboard: false});")
End Sub
Protected Sub BtnHorarioModal_Click(sender As Object, e As EventArgs) Handles BtnHorarioModal.Click
Dim objRH As New ClsRH
Dim _Lunes, _Martes, _Miercoles, _Jueves, _Viernes, _Sabado, _Domingo, _Estatus, _RetSalidaAntes As Integer
If ChkLunes.Checked Then _Lunes = 1 Else _Lunes = 0
If ChkMartes.Checked Then _Martes = 1 Else _Martes = 0
If ChkMiercoles.Checked Then _Miercoles = 1 Else _Miercoles = 0
If ChkJueves.Checked Then _Jueves = 1 Else _Jueves = 0
If ChkViernes.Checked Then _Viernes = 1 Else _Viernes = 0
If ChkSabado.Checked Then _Sabado = 1 Else _Sabado = 0
If ChkDomingo.Checked Then _Domingo = 1 Else _Domingo = 0
If ChkRetardoSalidaAntes.Checked Then _RetSalidaAntes = 1 Else _RetSalidaAntes = 0
If ChkActivo.Checked Then _Estatus = 1 Else _Estatus = 0
If CveChecadorHorario = -1 And Actulizar = False Then
If objRH.ChecadorHorariosAddUpdate(-1, TxtHorario.Text.Trim,
_Lunes, TxtLunesEntrada.Text, TxtLunesSalidaComida.Text, TxtLunesEntradaComida.Text, TxtLunesSalida.Text,
_Martes, TxtMartesEntrada.Text, TxtMartesSalidaComida.Text, TxtMartesEntradaComida.Text, TxtMartesSalida.Text,
_Miercoles, TxtMiercolesEntrada.Text, TxtMiercolesSalidaComida.Text, TxtMiercolesEntradaComida.Text, TxtMiercolesSalida.Text,
_Jueves, TxtJuevesEntrada.Text, TxtJuevesSalidaComida.Text, TxtJuevesEntradaComida.Text, TxtJuevesSalida.Text,
_Viernes, TxtViernesEntrada.Text, TxtViernesSalidaComida.Text, TxtViernesEntradaComida.Text, TxtViernesSalida.Text,
_Sabado, TxtSabadoEntrada.Text, TxtSabadoSalidaComida.Text, TxtSabadoEntradaComida.Text, TxtSabadoSalida.Text,
_Domingo, TxtDomingoEntrada.Text, TxtDomingoSalidaComida.Text, TxtDomingoEntradaComida.Text, TxtDomingoSalida.Text,
TxtTolRetAcumulados.Text.ToEntero, TxtTolRetEntradaMin.Text.ToEntero, TxtTolFalEntradaMin.Text.ToEntero, _RetSalidaAntes, TxtTolSalidaAntes.Text.ToEntero,
_Estatus, UsuarioActual.CveUsuario, UsuarioActual.Empresa.CveEmpresa) Then
Alert("Horario agregado correctamente.")
CargaDatos()
End If
Else
If objRH.ChecadorHorariosAddUpdate(CveChecadorHorario, TxtHorario.Text.Trim,
_Lunes, TxtLunesEntrada.Text, TxtLunesSalidaComida.Text, TxtLunesEntradaComida.Text, TxtLunesSalida.Text,
_Martes, TxtMartesEntrada.Text, TxtMartesSalidaComida.Text, TxtMartesEntradaComida.Text, TxtMartesSalida.Text,
_Miercoles, TxtMiercolesEntrada.Text, TxtMiercolesSalidaComida.Text, TxtMiercolesEntradaComida.Text, TxtMiercolesSalida.Text,
_Jueves, TxtJuevesEntrada.Text, TxtJuevesSalidaComida.Text, TxtJuevesEntradaComida.Text, TxtJuevesSalida.Text,
_Viernes, TxtViernesEntrada.Text, TxtViernesSalidaComida.Text, TxtViernesEntradaComida.Text, TxtViernesSalida.Text,
_Sabado, TxtSabadoEntrada.Text, TxtSabadoSalidaComida.Text, TxtSabadoEntradaComida.Text, TxtSabadoSalida.Text,
_Domingo, TxtDomingoEntrada.Text, TxtDomingoSalidaComida.Text, TxtDomingoEntradaComida.Text, TxtDomingoSalida.Text,
TxtTolRetAcumulados.Text.ToEntero, TxtTolRetEntradaMin.Text.ToEntero, TxtTolFalEntradaMin.Text.ToEntero, _RetSalidaAntes, TxtTolSalidaAntes.Text.ToEntero,
_Estatus, UsuarioActual.CveUsuario, UsuarioActual.Empresa.CveEmpresa) Then
Alert("Horario actualizado correctamente.")
CargaDatos()
End If
End If
CveChecadorHorario = -1
Actulizar = False
RegistraScript("$('#divHorarios').modal('hide');")
End Sub
Public Sub Remove_ClickHorario(sender As Object, e As EventArgs)
Dim objRH As New ClsRH
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim _CveChecadorHorario As Integer = GvRow.DataKey("CveChecadorHorario").ToEntero
If objRH.ChecadorHorariosRemove(_CveChecadorHorario, UsuarioActual.Empresa.CveEmpresa) Then
CargaDatos()
Alert("Horario elimino correctamente ", TipoMensaje.MsgInformacion)
Else
Alert("Ocurrio un error al eliminar el horario.", TipoMensaje.MsgError)
End If
objRH.Dispose()
End Sub
Protected Sub ChkLunes_CheckedChanged(sender As Object, e As EventArgs) Handles ChkLunes.CheckedChanged
If ChkLunes.Checked = False Then
TxtLunesEntrada.Text = "00:00:00"
TxtLunesSalidaComida.Text = "00:00:00"
TxtLunesEntradaComida.Text = "00:00:00"
TxtLunesSalida.Text = "00:00:00"
TxtLunesEntrada.Enabled = False
TxtLunesSalidaComida.Enabled = False
TxtLunesEntradaComida.Enabled = False
TxtLunesSalida.Enabled = False
Else
TxtLunesEntrada.Text = ""
TxtLunesSalidaComida.Text = ""
TxtLunesEntradaComida.Text = ""
TxtLunesSalida.Text = ""
TxtLunesEntrada.Enabled = True
TxtLunesSalidaComida.Enabled = True
TxtLunesEntradaComida.Enabled = True
TxtLunesSalida.Enabled = True
End If
UpHorarios.Update()
End Sub
Protected Sub ChkMartes_CheckedChanged(sender As Object, e As EventArgs) Handles ChkMartes.CheckedChanged
If ChkMartes.Checked = False Then
TxtMartesEntrada.Text = "00:00:00"
TxtMartesSalidaComida.Text = "00:00:00"
TxtMartesEntradaComida.Text = "00:00:00"
TxtMartesSalida.Text = "00:00:00"
TxtMartesEntrada.Enabled = False
TxtMartesSalidaComida.Enabled = False
TxtMartesEntradaComida.Enabled = False
TxtMartesSalida.Enabled = False
Else
TxtMartesEntrada.Text = ""
TxtMartesSalidaComida.Text = ""
TxtMartesEntradaComida.Text = ""
TxtMartesSalida.Text = ""
TxtMartesEntrada.Enabled = True
TxtMartesSalidaComida.Enabled = True
TxtMartesEntradaComida.Enabled = True
TxtMartesSalida.Enabled = True
End If
UpHorarios.Update()
End Sub
Protected Sub ChkMiercoles_CheckedChanged(sender As Object, e As EventArgs) Handles ChkMiercoles.CheckedChanged
If ChkMiercoles.Checked = False Then
TxtMiercolesEntrada.Text = "00:00:00"
TxtMiercolesSalidaComida.Text = "00:00:00"
TxtMiercolesEntradaComida.Text = "00:00:00"
TxtMiercolesSalida.Text = "00:00:00"
TxtMiercolesEntrada.Enabled = False
TxtMiercolesSalidaComida.Enabled = False
TxtMiercolesEntradaComida.Enabled = False
TxtMiercolesSalida.Enabled = False
Else
TxtMiercolesEntrada.Text = ""
TxtMiercolesSalidaComida.Text = ""
TxtMiercolesEntradaComida.Text = ""
TxtMiercolesSalida.Text = ""
TxtMiercolesEntrada.Enabled = True
TxtMiercolesSalidaComida.Enabled = True
TxtMiercolesEntradaComida.Enabled = True
TxtMiercolesSalida.Enabled = True
End If
UpHorarios.Update()
End Sub
Protected Sub ChkJueves_CheckedChanged(sender As Object, e As EventArgs) Handles ChkJueves.CheckedChanged
If ChkJueves.Checked = False Then
TxtJuevesEntrada.Text = "00:00:00"
TxtJuevesSalidaComida.Text = "00:00:00"
TxtJuevesEntradaComida.Text = "00:00:00"
TxtJuevesSalida.Text = "00:00:00"
TxtJuevesEntrada.Enabled = False
TxtJuevesSalidaComida.Enabled = False
TxtJuevesEntradaComida.Enabled = False
TxtJuevesSalida.Enabled = False
Else
TxtJuevesEntrada.Text = ""
TxtJuevesSalidaComida.Text = ""
TxtJuevesEntradaComida.Text = ""
TxtJuevesSalida.Text = ""
TxtJuevesEntrada.Enabled = True
TxtJuevesSalidaComida.Enabled = True
TxtJuevesEntradaComida.Enabled = True
TxtJuevesSalida.Enabled = True
End If
UpHorarios.Update()
End Sub
Protected Sub ChkViernes_CheckedChanged(sender As Object, e As EventArgs) Handles ChkViernes.CheckedChanged
If ChkViernes.Checked = False Then
TxtViernesEntrada.Text = "00:00:00"
TxtViernesSalidaComida.Text = "00:00:00"
TxtViernesEntradaComida.Text = "00:00:00"
TxtViernesSalida.Text = "00:00:00"
TxtViernesEntrada.Enabled = False
TxtViernesSalidaComida.Enabled = False
TxtViernesEntradaComida.Enabled = False
TxtViernesSalida.Enabled = False
Else
TxtViernesEntrada.Text = ""
TxtViernesSalidaComida.Text = ""
TxtViernesEntradaComida.Text = ""
TxtViernesSalida.Text = ""
TxtViernesEntrada.Enabled = True
TxtViernesSalidaComida.Enabled = True
TxtViernesEntradaComida.Enabled = True
TxtViernesSalida.Enabled = True
End If
UpHorarios.Update()
End Sub
Protected Sub ChkSabado_CheckedChanged(sender As Object, e As EventArgs) Handles ChkSabado.CheckedChanged
If ChkSabado.Checked = False Then
TxtSabadoEntrada.Text = "00:00:00"
TxtSabadoSalidaComida.Text = "00:00:00"
TxtSabadoEntradaComida.Text = "00:00:00"
TxtSabadoSalida.Text = "00:00:00"
TxtSabadoEntrada.Enabled = False
TxtSabadoSalidaComida.Enabled = False
TxtSabadoEntradaComida.Enabled = False
TxtSabadoSalida.Enabled = False
Else
TxtSabadoEntrada.Text = ""
TxtSabadoSalidaComida.Text = ""
TxtSabadoEntradaComida.Text = ""
TxtSabadoSalida.Text = ""
TxtSabadoEntrada.Enabled = True
TxtSabadoSalidaComida.Enabled = True
TxtSabadoEntradaComida.Enabled = True
TxtSabadoSalida.Enabled = True
End If
UpHorarios.Update()
End Sub
Protected Sub ChkDomingo_CheckedChanged(sender As Object, e As EventArgs) Handles ChkDomingo.CheckedChanged
If ChkDomingo.Checked = False Then
TxtDomingoEntrada.Text = "00:00:00"
TxtDomingoSalidaComida.Text = "00:00:00"
TxtDomingoEntradaComida.Text = "00:00:00"
TxtDomingoSalida.Text = "00:00:00"
TxtDomingoEntrada.Enabled = False
TxtDomingoSalidaComida.Enabled = False
TxtDomingoEntradaComida.Enabled = False
TxtDomingoSalida.Enabled = False
Else
TxtDomingoEntrada.Text = ""
TxtDomingoSalidaComida.Text = ""
TxtDomingoEntradaComida.Text = ""
TxtDomingoSalida.Text = ""
TxtDomingoEntrada.Enabled = True
TxtDomingoSalidaComida.Enabled = True
TxtDomingoEntradaComida.Enabled = True
TxtDomingoSalida.Enabled = True
End If
UpHorarios.Update()
End Sub
Private Sub CamposFechas()
If ChkLunes.Checked = False Then
TxtLunesEntrada.Text = "00:00:00"
TxtLunesSalidaComida.Text = "00:00:00"
TxtLunesEntradaComida.Text = "00:00:00"
TxtLunesSalida.Text = "00:00:00"
TxtLunesEntrada.Enabled = False
TxtLunesSalidaComida.Enabled = False
TxtLunesEntradaComida.Enabled = False
TxtLunesSalida.Enabled = False
Else
TxtLunesEntrada.Enabled = True
TxtLunesSalidaComida.Enabled = True
TxtLunesEntradaComida.Enabled = True
TxtLunesSalida.Enabled = True
End If
If ChkMartes.Checked = False Then
TxtMartesEntrada.Text = "00:00:00"
TxtMartesSalidaComida.Text = "00:00:00"
TxtMartesEntradaComida.Text = "00:00:00"
TxtMartesSalida.Text = "00:00:00"
TxtMartesEntrada.Enabled = False
TxtMartesSalidaComida.Enabled = False
TxtMartesEntradaComida.Enabled = False
TxtMartesSalida.Enabled = False
Else
TxtMartesEntrada.Enabled = True
TxtMartesSalidaComida.Enabled = True
TxtMartesEntradaComida.Enabled = True
TxtMartesSalida.Enabled = True
End If
If ChkMiercoles.Checked = False Then
TxtMiercolesEntrada.Text = "00:00:00"
TxtMiercolesSalidaComida.Text = "00:00:00"
TxtMiercolesEntradaComida.Text = "00:00:00"
TxtMiercolesSalida.Text = "00:00:00"
TxtMiercolesEntrada.Enabled = False
TxtMiercolesSalidaComida.Enabled = False
TxtMiercolesEntradaComida.Enabled = False
TxtMiercolesSalida.Enabled = False
Else
TxtMiercolesEntrada.Enabled = True
TxtMiercolesSalidaComida.Enabled = True
TxtMiercolesEntradaComida.Enabled = True
TxtMiercolesSalida.Enabled = True
End If
If ChkJueves.Checked = False Then
TxtJuevesEntrada.Text = "00:00:00"
TxtJuevesSalidaComida.Text = "00:00:00"
TxtJuevesEntradaComida.Text = "00:00:00"
TxtJuevesSalida.Text = "00:00:00"
TxtJuevesEntrada.Enabled = False
TxtJuevesSalidaComida.Enabled = False
TxtJuevesEntradaComida.Enabled = False
TxtJuevesSalida.Enabled = False
Else
TxtJuevesEntrada.Enabled = True
TxtJuevesSalidaComida.Enabled = True
TxtJuevesEntradaComida.Enabled = True
TxtJuevesSalida.Enabled = True
End If
If ChkViernes.Checked = False Then
TxtViernesEntrada.Text = "00:00:00"
TxtViernesSalidaComida.Text = "00:00:00"
TxtViernesEntradaComida.Text = "00:00:00"
TxtViernesSalida.Text = "00:00:00"
TxtViernesEntrada.Enabled = False
TxtViernesSalidaComida.Enabled = False
TxtViernesEntradaComida.Enabled = False
TxtViernesSalida.Enabled = False
Else
TxtViernesEntrada.Enabled = True
TxtViernesSalidaComida.Enabled = True
TxtViernesEntradaComida.Enabled = True
TxtViernesSalida.Enabled = True
End If
If ChkSabado.Checked = False Then
TxtSabadoEntrada.Text = "00:00:00"
TxtSabadoSalidaComida.Text = "00:00:00"
TxtSabadoEntradaComida.Text = "00:00:00"
TxtSabadoSalida.Text = "00:00:00"
TxtSabadoEntrada.Enabled = False
TxtSabadoSalidaComida.Enabled = False
TxtSabadoEntradaComida.Enabled = False
TxtSabadoSalida.Enabled = False
Else
TxtSabadoEntrada.Enabled = True
TxtSabadoSalidaComida.Enabled = True
TxtSabadoEntradaComida.Enabled = True
TxtSabadoSalida.Enabled = True
End If
If ChkDomingo.Checked = False Then
TxtDomingoEntrada.Text = "00:00:00"
TxtDomingoSalidaComida.Text = "00:00:00"
TxtDomingoEntradaComida.Text = "00:00:00"
TxtDomingoSalida.Text = "00:00:00"
TxtDomingoEntrada.Enabled = False
TxtDomingoSalidaComida.Enabled = False
TxtDomingoEntradaComida.Enabled = False
TxtDomingoSalida.Enabled = False
Else
TxtDomingoEntrada.Enabled = True
TxtDomingoSalidaComida.Enabled = True
TxtDomingoEntradaComida.Enabled = True
TxtDomingoSalida.Enabled = True
End If
End Sub
Private Sub ChkRetardoSalidaAntes_CheckedChanged(sender As Object, e As EventArgs) Handles ChkRetardoSalidaAntes.CheckedChanged
If ChkRetardoSalidaAntes.Checked Then
TxtTolSalidaAntes.Enabled = True
rfvTxtTolSalidaAntes.Enabled = True
Else
TxtTolSalidaAntes.Enabled = False
TxtTolSalidaAntes.Text = "0"
rfvTxtTolSalidaAntes.Enabled = False
End If
UpHorarios.Update()
End Sub
End Class

110
RH/CatChecadorTipo.aspx Normal file
View File

@@ -0,0 +1,110 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatChecadorTipo.aspx.vb" Inherits="RH_ChecadorTipo" %>
<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="E" runat="Server">
CATALOGO DE TIPOS DE CHECADORES
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel ID="UppAddAcciones" runat="server">
<ContentTemplate>
<li>
<asp:LinkButton ID="LnkChecadorTipo" runat="server" Text="Agregar" class="fa fa-plus-circle"></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="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:HiddenField ClientIDMode="Static" runat="server" ID="HdnCveChecadorTipo" Value="-1" />
<div class="row" style="margin-right: 10px; margin-top: 18px;" align="right">
<input type="text" id="TxtBusqueda" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvChecadorTipo.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvChecadorTipo.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<asp:GridView ID="GvChecadorTipo" runat="server" GridLines="None" DataKeyNames="CveUsuario,CveEmpresa,CveChecadorTipo,Fecha,Nombre,ChecadorTipo,Estatus,Descripcion" CssClass="table table-striped table-advance table-hover Widthall" CellSpacing="0" Width="100%" AutoGenerateColumns="False" EmptyDataText="No se encontraron registros" ToolTip="Listado De Tipos De Checadores">
<Columns>
<asp:BoundField DataField="ChecadorTipo" HeaderText="Tipo De Checador" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField DataField="Descripcion" HeaderText="Descripcion" ItemStyle-HorizontalAlign="Left" />
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="Estatus">
<ItemTemplate>
<asp:Label ID="LblEstatus" runat="server" Text='<%# Eval("Estatus") %>'>></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="Nombre" HeaderText="Usuario" ItemStyle-HorizontalAlign="Center" />
<asp:BoundField DataField="Fecha" HeaderText="Fecha" ItemStyle-HorizontalAlign="Center" DataFormatString="{0:d}" />
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="Comandos">
<ItemTemplate>
<asp:LinkButton ID="imgE" runat="server" AlternateText="Editar" CausesValidation="False" CssClass="btn btn-circle btn-sm green" OnClick="Edit_Click" Text="<i class='fa fa-pencil'></i>" />
<asp:LinkButton ID="imgD" runat="server" AlternateText="Eliminar" OnClick="Delete_Click" 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="Confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:HiddenField ID="HdnModalidad" runat="server" Value="A" ClientIDMode="Static" />
<asp:HiddenField ID="HdnID" runat="server" Value="-1" ClientIDMode="Static" />
</ContentTemplate>
</asp:UpdatePanel>
<%--POPUP AGREGAR--%>
<div id="divAddChecadorTipo" class="modal ADS fade" role="dialog">
<div class="modal-dialog">
<asp:UpdatePanel ID="UpAddChecadorTipo" class="modal-content rowpadding" 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" id="myModalLabel">Agregar Tipo De Checador</h4>
</div>
<div class="modal-body">
<asp:UpdatePanel ID="UpBodyChecadorTipo" UpdateMode="Conditional" runat="server">
<ContentTemplate>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtChecadorTipo" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="50"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVTipoChecador" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtChecadorTipo" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo De Checador''</b> es necesario, por favor ingréselo." ValidationGroup="GrpObligatorio"></asp:RequiredFieldValidator>
<label for="<%= TxtChecadorTipo.ClientID.ToString()%>">Tipo De Checador:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtDescripcion" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="100"></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>''Descripcion''</b> es necesario, por favor ingréselo." ValidationGroup="GrpObligatorio"></asp:RequiredFieldValidator>
<label for="<%= TxtDescripcion.ClientID.ToString()%>">Descripcion:</label>
</div>
<div class="row">
<div class="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:CheckBox ID="ChkEstatus" runat="server" CssClass="form-control" />
<label for="<%= ChkEstatus.ClientID.ToString()%>">Estatus:</label>
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<div class="modal-footer">
<asp:UpdatePanel ID="UpFooter" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:LinkButton ID="BtnAgregarChecadorTipo" runat="server" CssClass="btn btn-primary" ValidationGroup="GrpObligatorio"> <i class='material-icons'>done_all</i> Agregar</asp:LinkButton>
<button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

View File

@@ -0,0 +1,99 @@
Option Strict On
Imports Extensiones
Partial Class RH_ChecadorTipo
Inherits ClsPaginas
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
CargaDatos()
End If
End Sub
Private Sub CargaDatos()
Dim ObjRH As New ClsRH()
If ObjRH.ChecadorTipoGet(-1, UsuarioActual.Empresa.CveEmpresa) Then
GvChecadorTipo.DataSource = ObjRH.DtResultados
GvChecadorTipo.DataBind()
End If
ObjRH.Dispose()
UpDatos.Update()
End Sub
Private Sub BtnAgregarChecadorTipo_Click(sender As Object, e As EventArgs) Handles BtnAgregarChecadorTipo.Click
Dim ObjRH As New ClsRH
Dim Estatus As Integer = 0
If ChkEstatus.Checked Then Estatus = 1
If HdnModalidad.Value = "A" Then
If ObjRH.ChecadorTipoAdd(UsuarioActual.CveEmpresa, UsuarioActual.CveUsuario, TxtChecadorTipo.Text, TxtDescripcion.Text, Estatus) Then
CargaDatos()
Alert("Agregado Correctamente.", TipoMensaje.MsgInformacion)
End If
ElseIf HdnModalidad.Value = "U" Then
If ObjRH.ChecadorTipoUpdate(HdnID.Value.ToEntero, UsuarioActual.CveEmpresa, UsuarioActual.CveUsuario, TxtChecadorTipo.Text, TxtDescripcion.Text, Estatus, Date.Now) Then
CargaDatos()
Alert("Actualizado Correctamente.", TipoMensaje.MsgInformacion)
End If
End If
RegistraScript(String.Format("$('#{0}').modal('hide');", "divAddChecadorTipo"))
ObjRH.Dispose()
UpDatos.Update()
End Sub
Public Sub Edit_Click(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
HdnModalidad.Value = "U"
HdnID.Value = GvRow.DataKey("CveChecadorTipo")
UpDatos.Update()
BtnAgregarChecadorTipo.Text = "Actualizar"
TxtChecadorTipo.Text = GvRow.DataKey("ChecadorTipo")
TxtDescripcion.Text = GvRow.DataKey("Descripcion")
ChkEstatus.Checked = CBool(GvRow.DataKey("Estatus"))
UpAddChecadorTipo.Update()
RegistraScript(String.Format("$('#{0}').modal('show');", "divAddChecadorTipo"))
End Sub
Private Sub LnkChecadorTipo_Click(sender As Object, e As EventArgs) Handles LnkChecadorTipo.Click
Agregar()
End Sub
Public Sub Delete_Click(sender As Object, e As EventArgs)
Dim ObjRH As New ClsRH()
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
HdnID.Value = GvRow.DataKey("CveChecadorTipo")
UpDatos.Update()
If ObjRH.ChecadorTipoRemove(HdnID.Value.ToEntero) Then
CargaDatos()
End If
ObjRH.Dispose()
UpDatos.Update()
End Sub
Public Sub Agregar()
HdnModalidad.Value = "A"
UpDatos.Update()
BtnAgregarChecadorTipo.Text = "Agregar"
TxtChecadorTipo.Text = ""
TxtDescripcion.Text = ""
ChkEstatus.Checked = False
UpAddChecadorTipo.Update()
RegistraScript(String.Format("$('#{0}').modal('show');", "divAddChecadorTipo"))
End Sub
Private Sub GvChecadorTipo_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvChecadorTipo.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.DBCampo("Estatus") = True.ToString Then
e.Row.FCLabel("LblEstatus").Text = "Activo"
e.Row.FCLabel("LblEstatus").ForeColor = Drawing.Color.Green
Else
e.Row.FCLabel("LblEstatus").Text = "Inactivo"
e.Row.FCLabel("LblEstatus").ForeColor = Drawing.Color.Red
End If
End If
End Sub
End Class

View File

@@ -0,0 +1,91 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="CatConceptosViaticos.aspx.cs" Inherits="RH_CatConceptosViaticos" %>
<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="E" runat="Server">
Catálogo de Conceptos de Viáticos
</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="LnkAgregarConceptos" OnClick="LnkAgregarConceptos_Click" runat="server"><i class="fa fa-plus"></i><span style="padding-left:5px;">Agregar Concepto Viático</span></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="UPDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="row" style="margin-right: 10px; margin-top: 18px;margin-bottom: 5px;" align="right">
<input type="text" id="TxtBusqueda" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GVConceptosViaticos.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GVConceptosViaticos.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<asp:GridView ID="GVConceptosViaticos" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD mysmallbtn" data-sort="true" Width="100%" AutoGenerateColumns="False"
DataKeyNames="CveConceptoViatico, ConceptoViatico, CveEstatus, Estatus, FechaIng, CveUsuarioIng, Usuario" OnRowDeleting="GVConceptosViaticos_RowDeleting">
<Columns>
<asp:TemplateField HeaderText="Concepto" ItemStyle-Width="30%" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblestatus" runat="server" Text='<%# Eval("ConceptoViatico")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estatus" ItemStyle-Width="15%" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblestado" runat="server" Text='<%# Eval("Estatus")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="FechaIng" ItemStyle-Width="15%" HeaderText="Fecha de Ingreso" ItemStyle-HorizontalAlign="Center" DataFormatString="{0:g}" />
<asp:TemplateField HeaderText="Usuario" ItemStyle-Width="25%" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblusuario" runat="server" Text='<%# Eval("Usuario")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" ItemStyle-Width="15%" 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>
<asp:LinkButton ID="LnkEliminar" runat="server" CommandName="Delete" AlternateText="Eliminar" data-toggle="confirmation" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-popout="true" data-original-title="¿Está seguro que desea eliminar el Concepto Viático?" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
<div id="DivModalConcepto" class="modal ADS fade" role="dialog">
<asp:UpdatePanel class="modal-dialog" runat="server" ID="UPModalConcepto" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-content">
<div class="modal-header ">
<h4 class="modal-title">
<asp:Literal ID="LtlModalTitulo" Text="Conceptos Viáticos" runat="server"> </asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtConcepto" CssClass="form-control" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVConcepto" runat="server" ControlToValidate="TxtConcepto" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Concepto Viático''</b> es necesario, por favor ingréselo." ValidationGroup="VGConcepto"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOConcepto" runat="server" HighlightCssClass="vco" TargetControlID="RFVConcepto"></ajax:ValidatorCalloutExtender>
<label for="<%= TxtConcepto.ClientID.ToString()%>">Concepto Viático:</label>
</div>
<div class="form-group form-md-line-input input-iconright" id="DivEstatus" runat="server">
<label for="<%= ChkEstatus.ClientID.ToString()%>">Estatus:</label>
<asp:CheckBox ID="ChkEstatus" runat="server" />
</div>
</div>
<div class="modal-footer">
<asp:Button ID="BtnGuardarConcepto" OnClick="BtnGuardarConcepto_Click" runat="server" Text="Agregar" CssClass="btn btn-primary" ValidationGroup="VGConcepto" />
<button type="button" class="btn btn-danger" data-dismiss="modal">Cancelar</button>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

View File

@@ -0,0 +1,164 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using Extensiones;
public partial class RH_CatConceptosViaticos : ClsPaginas
{
#region "PROPIEDADES"
private int EsEditar
{
get
{
return ViewState["EsEditar"].ToString().ToEntero();
}
set
{
ViewState["EsEditar"] = value;
}
}
private DataTable TmpDT
{
get
{
return (DataTable)ViewState["TmpDT"];
}
set
{
ViewState["TmpDT"] = value;
}
}
private int CveConceptoViatico
{
get
{
return ViewState["CveConceptoViatico"].ToString().ToEntero();
}
set
{
ViewState["CveConceptoViatico"] = value;
}
}
#endregion
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
CargaDatos();
}
}
#region "CARGA DATOS"
protected void CargaDatos()
{
ClsBancos ObjBancos = new ClsBancos();
if (ObjBancos.GetConceptosViaticos(UsuarioActual.CveEmpresa, -1))
{
TmpDT = ObjBancos.DtResultados;
GVConceptosViaticos.DataSource = TmpDT;
}
ObjBancos.Dispose();
GVConceptosViaticos.DataBind();
UPDatos.Update();
}
protected void limpiarCamposModal()
{
if (EsEditar == 1)
{
LtlModalTitulo.Text = "Actualizar Concepto de Viático";
BtnGuardarConcepto.Text = "Actualizar";
}
else
{
LtlModalTitulo.Text = "Agregar Concepto de Viático";
BtnGuardarConcepto.Text = "Guardar";
}
TxtConcepto.Text = "";
ChkEstatus.Checked = true;
}
#endregion
#region "BOTONES"
protected void LnkAgregarConceptos_Click(object sender, EventArgs e)
{
EsEditar = 0;
limpiarCamposModal();
UPModalConcepto.Update();
this.RegistraScript("$('#DivModalConcepto').modal();");
}
protected void LnkEditar_Click(object sender, EventArgs e)
{
EsEditar = 1;
limpiarCamposModal();
GridViewRow GvRow = (GridViewRow)(((LinkButton)sender).NamingContainer);
CveConceptoViatico = GvRow.DataKey("CveConceptoViatico").ToEntero();
TxtConcepto.Text = GvRow.DataKey("ConceptoViatico").ToString();
ChkEstatus.Checked = GvRow.DataKey("CveEstatus").ToString() == "True" ? true : false;
UPModalConcepto.Update();
this.RegistraScript("$('#DivModalConcepto').modal();");
}
protected void BtnGuardarConcepto_Click(object sender, EventArgs e)
{
ClsBancos ObjBanco = new ClsBancos();
String Concepto = TxtConcepto.Text;
Boolean Estatus = ChkEstatus.Checked;
int CveUsuarioIng = UsuarioActual.CveUsuario;
DateTime FechaIng = DateTime.Now;
if (EsEditar == 0)
{
if (ObjBanco.AddConceptosViaticos(Concepto, Estatus, CveUsuarioIng, FechaIng, UsuarioActual.CveEmpresa))
{
Alert("El Concepto de Viático fue creado correctamente.", ModExtensiones.TipoMensaje.MsgInformacion);
}
}
else
{
if (ObjBanco.UpdateConceptosViaticos(CveConceptoViatico, Concepto, Estatus))
{
Alert("El Concepto de Viático fue actualizado correctamente.", ModExtensiones.TipoMensaje.MsgInformacion);
}
}
ObjBanco.Dispose();
limpiarCamposModal();
this.RegistraScript("$('#DivModalConcepto').modal('hide');");
CargaDatos();
}
protected void GVConceptosViaticos_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
CveConceptoViatico = GVConceptosViaticos.Rows[e.RowIndex].DataKey("CveConceptoViatico").ToEntero();
ClsBancos ObjBanco = new ClsBancos();
if (ObjBanco.RemoveConceptosViaticos(CveConceptoViatico))
{
Alert("El Concepto de Viático ha sido eliminado.", ModExtensiones.TipoMensaje.MsgInformacion);
}
ObjBanco.Dispose();
CargaDatos();
}
#endregion
}

502
RH/CatCursos.aspx Normal file
View File

@@ -0,0 +1,502 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatCursos.aspx.vb" Inherits="RH_CatCursos" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<style>
.Widthall {
width: 100% !important;
}
.dataTables_scrollHeadInner {
width: 100% !important;
background-color: #dddddd;
padding-left: 0px !important;
}
.dataTables_scrollFoot {
display: none;
position: static;
}
.table-scrollable {
margin: 0px !important;
}
.dataTables_scroll {
margin-bottom: 0px;
}
.table.dataTable {
margin-top: 0px !important;
}
.dataTables_scrollBody table th {
padding: 0px !important;
padding-right: 4px !important;
padding-left: 4px !important;
}
.sinlink td a {
pointer-events: none;
cursor: default;
color: black;
font-size: small;
}
.white a {
color: white !important;
}
</style>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" Runat="Server">
Cursos
</asp:Content>
<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 runat="server" ID="BtnAgregarCurso" data-toggle="tooltip" data-placement="left" title="Agregar un Curso"
Text="<i class='fa fa-plus'></i> Agregar Curso"></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="UpGral" runat="server" UpdateMode="Conditional" ><ContentTemplate>
<ajax:TabContainer ID="TabCursos" runat="server" ActiveTabIndex="0" Width="100%">
<ajax:TabPanel ID="TabCapacitadoresSub" runat="server" HeaderText="Cursos">
<ContentTemplate>
<div class="row col-md-12" style="text-align:right!important;margin-top:20px!important;margin-bottom:2px!important">
<input type="text" id="TxtBusqueda" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvCurso.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvCurso.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<div class="row">
<div class="col-md-12">
<asp:UpdatePanel ID="UPGvCursos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvCurso" runat="server" AutoGenerateColumns="False"
DataKeyNames="CveCurso,Curso,CveTema,Tema,CveSubtema,Subtema,CveCapacitador,Capacitador,Duracion,Estatus,Activo,Observaciones,ConstanciaDC3,CveAreaTematica,Fecha,Hora,Ubicacion"
EmptyDataText="No se encontraron datos" ToolTip="" CssClass="ScrollAD table table-striped table-advance table-hover Widthall" GridLines="None">
<Columns>
<asp:TemplateField HeaderText="Curso">
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlCurso" runat="server" Text='<%# Eval("Curso") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Area Temática" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
&nbsp;<asp:Literal ID="ltlAreaTematica" runat="server" Text='<%# Eval("AreaTematica")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Tema" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
&nbsp;<asp:Literal ID="ltlTema" runat="server" Text='<%# Eval("Tema")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Subtema" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="LtlSubtema" runat="server" Text='<%# Eval("Subtema") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Capacitador" ItemStyle-HorizontalAlign ="Left" >
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlCapacitador" runat="server" Text='<%# Eval("Capacitador") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Dc3" ItemStyle-HorizontalAlign ="Left" >
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlConstanciaDC3" runat="server" Text='<%# Eval("SConstanciaDC3") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Duracion" ItemStyle-HorizontalAlign ="Left" >
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlDuracion" runat="server" Text='<%# Eval("Duracion") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estatus" ItemStyle-HorizontalAlign ="Center" >
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlEstatus" runat="server" Text='<%# Eval("Activo") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="100px">
<ItemTemplate>
&nbsp;<asp:Literal ID="lblFecha" runat="server" Text='<%# Eval("FechaIng", "{0:d}")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="300px" HeaderText="Usuario">
<ItemTemplate>
<asp:Literal ID="lblUsuario" runat="server" Text='<%# Eval("Usuario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" ItemStyle-Width="40px">
<ItemTemplate>
<asp:LinkButton ID="ImgE" OnClick="Edit_ClickCursos" runat="server" ToolTip="Editar Curso" AlternateText="Editar" CausesValidation="False"
CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" ItemStyle-Width="40px">
<ItemTemplate>
<asp:LinkButton ID="ImgEA" OnClick="Asistencias_ClickCursos" ToolTip="Asistencias" runat="server" AlternateText="Editar" CausesValidation="False"
CssClass="btn btn-circle btn-sm blue" Text="<i class='fa fa-list-ul'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" ItemStyle-Width="40px">
<ItemTemplate>
<asp:LinkButton ID="ImgReimprimir" OnClick="ImgReimprimir_Click" ToolTip="Imprimir Lista" runat="server" AlternateText="Editar" CausesValidation="False"
CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-list-alt'></i>"
data-toggle="confirmation" data-popout="true" data-original-title="confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" ItemStyle-Width="40px">
<ItemTemplate>
<asp:LinkButton ID="ImgSendMails" OnClick="ImgSendMails_Click" ToolTip="Enviar Invitaciones" runat="server" AlternateText="Editar" CausesValidation="False"
CssClass="btn btn-circle btn-sm blue" Text="<i class='fa fa-envelope-o' title='Enviar Invitaciones'></i>"
data-toggle="confirmation" data-popout="true" data-original-title="confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Left" ItemStyle-Width="40px">
<ItemTemplate>
<asp:LinkButton ID="imgD" OnClick="Remove_ClickCursos" runat="server" AlternateText="Eliminar" CausesValidation="False" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</ajax:TabPanel>
</ajax:TabContainer>
<div id="divAgregarCurso" class="modal ADS fade" role="dialog">
<div id="dvEdicion" runat="server" class="modal-dialog" style="width:750px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalCurso" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloModalCapacitadores" runat="server">Agregar Curso</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtCurso" CssClass="form-control " runat="server" MaxLength="100" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="TxtCurso" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Curso''</b> es necesario, por favor ingréselo." ValidationGroup="GrpCurso"></asp:RequiredFieldValidator>
<label for="<%= TxtCurso.ClientID.ToString()%>">Curso:</label>
<i></i>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DDlTema" runat="server" Width="250" AutoPostBack="true" CssClass="form-control input-sm select2me js-referencia-programmatic" DataTextField="Tema" DataValueField="CveTema"></asp:DropDownList>
<asp:RequiredFieldValidator InitialValue="-1" ID="rfvDDlTema" ControlToValidate="DDlTema" Display="None" ValidationGroup="GrpCurso" runat="server" Text="*" ErrorMessage="Seleccione una de las opciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="rfvcDDLTema" runat="server" TargetControlID="rfvDDlTema" HighlightCssClass="validatorCalloutHighlight"></ajax:ValidatorCalloutExtender>
<label for="<%= DDlTema.ClientID.ToString()%>">Tema:</label>
<i></i>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DDLSubtema" runat="server" Width="250" CssClass="form-control input-sm select2me js-referencia-programmatic" DataTextField="Subtema" DataValueField="CveSubtema"></asp:DropDownList>
<asp:RequiredFieldValidator InitialValue="-1" ID="rfvDDLSubtema" ControlToValidate="DDLSubtema" Display="None" ValidationGroup="GrpCurso" runat="server" Text="*" ErrorMessage="Seleccione una de las opciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="rfvcDDLSubtema" runat="server" TargetControlID="rfvDDLSubtema" HighlightCssClass="validatorCalloutHighlight"></ajax:ValidatorCalloutExtender>
<label for="<%= DDLSubtema.ClientID.ToString()%>">Subtema:</label>
<i></i>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DDLAreaTematica" runat="server" Width="250" CssClass="form-control input-sm select2me js-referencia-programmatic" DataTextField="Denominacion" DataValueField="CveAreaTematica"></asp:DropDownList>
<label for="<%= DDLSubtema.ClientID.ToString()%>">Área Temática(STPS):</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DDLCapacitador" runat="server" Width="250" CssClass="form-control input-sm select2me js-referencia-programmatic" DataTextField="Capacitador" DataValueField="CveCapacitador"></asp:DropDownList>
<asp:RequiredFieldValidator InitialValue="-1" ID="rfvDDLCapacitador" ControlToValidate="DDLCapacitador" Display="None" ValidationGroup="GrpCurso" runat="server" Text="*" ErrorMessage="Seleccione una de las opciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="rfvcDDLCapacitador" runat="server" TargetControlID="rfvDDLCapacitador" HighlightCssClass="validatorCalloutHighlight"></ajax:ValidatorCalloutExtender>
<label for="<%= DDLCapacitador.ClientID.ToString()%>">Capacitador:</label>
<i></i>
</div>
<div class="row">
<div class="col-md-7">
<label for="<%= txtInicio.ClientID.ToString()%>">Fecha:</label>
<div class="input-group input-sm date date-picker " data-date-format="dd/mm/yyyy" style="display: inline-block;">
<asp:TextBox ID="txtInicio" runat="server" CssClass="form-control input-sm" CausesValidation="true" MaxLength="10" Width="82px "></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="ImgFechaInicio" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
</div>
<ajax:MaskedEditExtender ID="MEEFecha" runat="server" TargetControlID="txtInicio" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CEFecha" TargetControlID="txtInicio" PopupButtonID="ImgFechaInicio" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="RFVFecha" runat="server" ControlToValidate="txtInicio" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha''</b> es necesario, por favor ingréselo." ValidationGroup="GrpCurso"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CVFecha" runat="server" ControlToValidate="txtInicio" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" GrpCurso="GrpEmitirImprimir"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCOFecha1" runat="server" HighlightCssClass="vco" TargetControlID="RFVFecha" Width="350px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="VCOFecha2" runat="server" HighlightCssClass="vco" TargetControlID="CVFecha" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
<div class="col-md-5" style="text-align:left!important">
<div class="form-group form-md-line-input input-iconright">
<label for="<%= TxtHoraEntrada.ClientID.ToString()%>">Hora:</label>
<asp:TextBox ID="TxtHoraEntrada" runat="server" CausesValidation="true" MaxLength="10" Width="70px" ></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtHoraEntrada" runat="server" ControlToValidate="TxtHoraEntrada" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpCurso"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEETxtHoraEntrada" runat="server" TargetControlID="TxtHoraEntrada" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator InvalidValueMessage="Valores incorrectos(23:11:59 valor maximo)" ID="MEVTxtHoraEntrada" runat="server" ControlExtender="MEETxtHoraEntrada" ControlToValidate="TxtHoraEntrada" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpCurso"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="rfvcTxtHoraEntrada" runat="server" HighlightCssClass="vco" TargetControlID="rfvTxtHoraEntrada" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="MEVCTxtHoraEntrada" runat="server" HighlightCssClass="vco" TargetControlID="MEVTxtHoraEntrada"></ajax:ValidatorCalloutExtender>
</div>
</div>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtUbicacion" CssClass="form-control " runat="server" MaxLength="300" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtUbicacion" runat="server" ControlToValidate="TxtUbicacion" CssClass="help-block errorimput"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Ubicación''</b> es necesario, por favor ingréselo." ValidationGroup="GrpCurso"></asp:RequiredFieldValidator>
<label for="<%= TxtUbicacion.ClientID.ToString()%>">Ubicación:</label>
<i></i>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtDuracion" CssClass="form-control " runat="server" MaxLength="3" TextMode="Number" CausesValidation="true"></asp:TextBox>
<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" ControlToValidate="TxtDuracion" ValidationExpression="^\d{1,3}$" ValidationGroup="GrpCurso" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br /> <b>''El maximo de Horas permitido es de 999''</b> , por favor ingréselo nuevamente."></asp:RegularExpressionValidator>
<asp:RequiredFieldValidator ID="RequiredFieldValidator5" runat="server" ControlToValidate="TxtDuracion" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Duracion''</b> es necesario, por favor ingréselo." ValidationGroup="GrpCurso"></asp:RequiredFieldValidator>
<label for="<%= TxtDuracion.ClientID.ToString()%>">Duración(Horas):</label>
<i></i>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:CheckBox Text="Activo" runat="server" ID="ChkEstatus" Checked="true" Visible="true" />
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:CheckBox Text="Contancias DC-3" runat="server" ID="ChkConstancias" Checked="true" Visible="true" />
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtObservaciones" CssClass="form-control " runat="server" TextMode="MultiLine" MaxLength="300" CausesValidation="true"></asp:TextBox>
<%--<asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" ControlToValidate="TxtObservaciones" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Capacitador''</b> es necesario, por favor ingréselo." ValidationGroup="GrpCurso"></asp:RequiredFieldValidator>--%>
<label for="<%= TxtObservaciones.ClientID.ToString()%>">Observaciones:</label>
<i></i>
</div>
</div>
<div id="DVGvGrupos" runat="server" class="col-md-6" >
<div class="row col-md-12" style="text-align: right!important; margin-top: 20px!important; margin-bottom: 2px!important">
<div class="row" style="height: 300px!important;" >
<div class="portlet light xspadding bordered" style="height:430px!important">
<div class="portlet-title">
<div class="caption font-green">
<i class="icon-pin font-green"></i>
<span class="caption-subject bold uppercase">Participantes</span>
</div>
<div class="actions">
<div class="btn-group">
</div>
</div>
<div class="tools">
<a href="javascript:;" class="collapse"></a>
</div>
</div>
<div class="portlet-body">
<input type="text" id="TxtBusqueda2" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda2','{0}')", GvParticipantes.ClientID) %>" style="display: inline-block; margin-right: -1px; width: 150px; margin-top: 5px!important" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda2','{0}')", GvParticipantes.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
<div style="overflow: auto!important;height:350px!important" >
<asp:GridView ShowHeader="false" ID="GvParticipantes" runat="server" AutoGenerateColumns="False"
DataKeyNames="CveCursoPersonal,CvePersonal,CveCurso,Correo,Nombres,APaterno,AMaterno,Curso,Capacitador,Tema,Subtema"
EmptyDataText="No se encontraron datos" ToolTip="" CssClass="table table-advance table-hover Widthall" GridLines="None">
<Columns>
<asp:TemplateField HeaderText="En Grupo">
<ItemTemplate>
&nbsp;<asp:CheckBox ID="chkGrupo" runat="server"></asp:CheckBox>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Personal" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
&nbsp;<asp:Literal ID="ltlNombre" runat="server" Text='<%# Eval("Nombre")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="modal-footer">
<asp:Button ID="BtnAgregarCursosModal" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpCurso" />
<button id="Button3" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
<%-- divAsistenciasCurso--%>
<div id="divAsistenciasCurso" class="modal ADS fade" role="dialog">
<div id="Div1" runat="server" class="modal-dialog" style="width:750px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpAsistenciasCurso" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlAsistenciaCursoModal" runat="server">Asistencias Cuerso</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="row col-md-12" style="text-align: right!important; margin-top: 20px!important; margin-bottom: 2px!important">
<div class="row col-md-12" style="text-align: right!important; margin-top: 20px!important; margin-bottom: 2px!important">
<input type="text" id="TxtBusquedaAsistencia" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusquedaAsistencia','{0}')", GvAsistenciaCurso.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusquedaAsistencia','{0}')", GvAsistenciaCurso.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<asp:GridView ID="GvAsistenciaCurso" ShowHeader="false" runat="server" AutoGenerateColumns="False" DataKeyNames="CveCursoPersonal,CvePersonal,CveCurso,Correo,Nombres,APaterno,AMaterno,Curso,Capacitador,Asistencia,RFC"
EmptyDataText="No se encontraron datos" ToolTip="Asistencia Curso" CssClass="table table-advance table-hover Widthall" GridLines="None">
<Columns>
<asp:TemplateField HeaderText="En Grupo">
<ItemTemplate>
&nbsp;<asp:CheckBox ID="chkAsistencia" runat="server"></asp:CheckBox>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Personal" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
&nbsp;<asp:Literal ID="ltlNombre" runat="server" Text='<%# Eval("Nombre")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="RFC" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
&nbsp;<asp:Literal ID="ltlRFC" runat="server" Text='<%# Eval("RFC")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" ItemStyle-Width="40px">
<ItemTemplate>
<asp:LinkButton ID="lnkCursoConstancia" OnClick="ImprimirConstancia_Click" Visible ="False" runat="server" AlternateText="Imprimir constancia"
CausesValidation="False" CssClass="btn btn-circle btn-sm blue" Text="<i class='fa fa-file-text-o'></i>" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
</div>
<div class="modal-footer">
<asp:Button ID="BtnAsistenciasCursosModal" runat="server" class="btn btn-success" Text="Guardar" />
<button id="Button4" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
<asp:LinkButton ID="LnkDescargaInvitados" style="display:none" CssClass="myLink" Text="Descarga" runat="server" ClientIDMode="Static" OnClick="LnkDescargaInvitados_Click"></asp:LinkButton>
</ContentTemplate>
<Triggers>
<asp:PostBackTrigger ControlID="LnkDescargaInvitados" />
</Triggers>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content9" ContentPlaceHolderID="JS" Runat="Server">
<script src="/Metronic/assets/global/scripts/datatable.js"></script>
<script src="/Metronic/assets/global/plugins/datatables/all.min.js"></script>
<script type="text/javascript">
function OrdenarGVValores() {
var Tam = TamañoVentana();
var Alto = Tam.height - 270;
if (Alto < 100) {
Alto = 100;
}
$('#C_TabCaracteristicasValores_TabValores_GVValores').DataTable({
scrollY: Alto + 'px',
scrollCollapse: true,
paging: false,
searching: false,
info: false
});
$('#C_TabCaracteristicasValores_TabValores_GVValores').parent().parent().children().first().css("position", "static");
}
function descargainvitados() {
$('.myLink')[0].click();
}
</script>
</asp:Content>

865
RH/CatCursos.aspx.vb Normal file
View File

@@ -0,0 +1,865 @@
Option Strict On
Imports System.Data
Imports Extensiones
Imports GemBox.Presentation
Imports GemBox.Presentation.Tables
Imports System.IO
Imports Microsoft.Reporting.WebForms
Partial Class RH_CatCursos
Inherits ClsPaginas
Private Property CveCurso As Integer
Get
If Not ViewState("CveCurso") Is Nothing Then
Return ViewState("CveCurso").ToString.ToEntero
Else
Return 0
End If
End Get
Set(value As Integer)
ViewState("CveCurso") = value
End Set
End Property
Private Property Curso As String
Get
If Not ViewState("Curso") Is Nothing Then
Return ViewState("Curso").ToString
Else
Return ""
End If
End Get
Set(value As String)
ViewState("Curso") = value
End Set
End Property
Private Property ConstanciaDC3 As Boolean
Get
If ViewState("ConstanciaDC3") Is Nothing Then
Return False
Else
Return DirectCast(ViewState("ConstanciaDC3"), Boolean)
End If
End Get
Set(value As Boolean)
ViewState("ConstanciaDC3") = value
End Set
End Property
Private Property Capacitador As String
Get
If Not ViewState("Capacitador") Is Nothing Then
Return ViewState("Capacitador").ToString
Else
Return ""
End If
End Get
Set(value As String)
ViewState("Capacitador") = value
End Set
End Property
Private Property Actualizar As Boolean
Get
If Not ViewState("Actualizar") Is Nothing Then
Return DirectCast(ViewState("Actualizar"), Boolean)
Else
Return False
End If
End Get
Set(value As Boolean)
ViewState("Actualizar") = value
End Set
End Property
Private Sub RH_CatCursos_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
CargadatosCursos()
LoadCombos()
End If
End Sub
Private Sub LoadCombos()
Dim objRH As New ClsRH
If objRH.TemasGet(1, UsuarioActual.Empresa.CveEmpresa) Then
DDlTema.DataSource = objRH.DtResultados
DDlTema.DataBind()
DDlTema.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
Else
DDlTema.DataSource = Nothing
End If
If objRH.CapacitadoresGet(-1, 1, -1, UsuarioActual.Empresa.CveEmpresa) Then
DDLCapacitador.DataSource = objRH.DtResultados
Else
DDLCapacitador.DataSource = Nothing
End If
DDLCapacitador.DataBind()
DDLCapacitador.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
If objRH.CatalogoNacionalOcupacionesCombosGet() Then
DDLAreaTematica.DataSource = objRH.DtResultados
Else
DDLAreaTematica.DataSource = Nothing
End If
DDLAreaTematica.DataBind()
DDLAreaTematica.Items.Insert(0, New ListItem("Seleccione una opción", "-1"))
objRH.Dispose()
End Sub
Protected Sub DDlTema_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DDlTema.SelectedIndexChanged
Dim objRH As New ClsRH
If DDlTema.SelectedIndex > 0 Then
If objRH.SubtemasGet(DDlTema.SelectedValue.ToEntero, 1, UsuarioActual.Empresa.CveEmpresa) Then
DDLSubtema.DataSource = objRH.DtResultados
DDLSubtema.DataBind()
DDLSubtema.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
Else
DDLSubtema.DataSource = Nothing
End If
End If
UpModalCurso.Update()
objRH.Dispose()
End Sub
Private Sub CargadatosCursos()
Dim objRH As New ClsRH
If objRH.CursoGet(-1, -1, -1, -1, -1, -1, UsuarioActual.Empresa.CveEmpresa) Then
GvCurso.DataSource = objRH.DtResultados
Else
GvCurso.DataSource = Nothing
End If
objRH.Dispose()
GvCurso.DataBind()
UpGral.Update()
End Sub
Protected Sub BtnAgregarCurso_Click(sender As Object, e As EventArgs) Handles BtnAgregarCurso.Click
LtlTituloModalCapacitadores.Text = "Agregar Curso"
BtnAgregarCursosModal.Text = "Agregar"
Dim objRH As New ClsRH
If objRH.CursoGrupoGet(-1, UsuarioActual.Empresa.CveEmpresa) Then
GvParticipantes.DataSource = objRH.DtResultados
Else
GvParticipantes.DataSource = Nothing
End If
objRH.Dispose()
GvParticipantes.DataBind()
CveCurso = 0
Actualizar = False
ResetControles()
UpGral.Update()
RegistraScript(String.Format("$('#{0}').modal();", "divAgregarCurso"))
End Sub
Protected Sub BtnAgregarCursoModal_Click(sender As Object, e As EventArgs) Handles BtnAgregarCursosModal.Click
Dim objRH As New ClsRH
Dim Estatus As Integer = 0
Dim Externo As Integer = 0
Dim _ConstanciaDC3 As Integer
If ChkConstancias.Checked Then
_ConstanciaDC3 = 1
Else
_ConstanciaDC3 = 0
End If
If ChkEstatus.Checked Then
Estatus = 1
Else
Estatus = 0
End If
RegistraScript(String.Format("$('#{0}').modal('hide');", "divAgregarCurso"), "jsHideModalCapacitador")
UpGral.Update()
If Not Actualizar Then
If objRH.CursoAdd(TxtCurso.Text, DDlTema.SelectedValue.ToEntero, DDLSubtema.SelectedValue.ToEntero, TxtDuracion.Text.ToEntero, DDLCapacitador.SelectedValue.ToEntero, TxtObservaciones.Text,
Estatus, _ConstanciaDC3, DDLAreaTematica.SelectedValue.ToEntero, UsuarioActual.CveUsuario, UsuarioActual.Empresa.CveEmpresa, txtInicio.Text.ToDate, TxtHoraEntrada.Text, TxtUbicacion.Text) Then
CveCurso = objRH.DtResultados(0)(0).ToString.ToEntero
CargadatosCursos()
ActualizarGrupo(CveCurso)
Alert("Curso Agregado Correctamente", TipoMensaje.MsgInformacion, "descargainvitados();")
Else
Alert("Ocurrio un error al guardar el Curso", TipoMensaje.MsgError)
End If
Else
If objRH.CursoUpdate(CveCurso, TxtCurso.Text, DDlTema.SelectedValue.ToEntero, DDLSubtema.SelectedValue.ToEntero, TxtDuracion.Text.ToEntero, DDLCapacitador.SelectedValue.ToEntero, TxtObservaciones.Text,
Estatus, _ConstanciaDC3, DDLAreaTematica.SelectedValue.ToEntero, UsuarioActual.CveUsuario, UsuarioActual.Empresa.CveEmpresa, txtInicio.Text.ToDate, TxtHoraEntrada.Text, TxtUbicacion.Text) Then
ActualizarGrupo(CveCurso)
CargadatosCursos()
UpModalCurso.Update()
Alert("Curso Actualizado Correctamente", TipoMensaje.MsgInformacion, "descargainvitados();")
Else
Alert("Ocurrio un error al Actualizar el Curso", TipoMensaje.MsgError)
End If
End If
Actualizar = False
objRH.Dispose()
End Sub
Public Sub Edit_ClickCursos(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim objRH As New ClsRH
Dim activo As Boolean = False
Dim constancia As Boolean = False
If objRH.SubtemasGet(-1, 1, UsuarioActual.Empresa.CveEmpresa) Then
DDLSubtema.DataSource = objRH.DtResultados
Else
DDLSubtema.DataSource = Nothing
End If
objRH.Dispose()
DDLSubtema.DataBind()
DDLSubtema.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
LtlTituloModalCapacitadores.Text = "Editar Curso"
Actualizar = True
CveCurso = GvRow.DataKey("CveCurso").ToString.ToEntero
Curso = GvRow.DataKey("Curso")
Capacitador = GvRow.DataKey("Capacitador")
ChkConstancias.Checked = Boolean.Parse(GvRow.DataKey("ConstanciaDC3"))
TxtCurso.Text = GvRow.DataKey("Curso")
TxtDuracion.Text = GvRow.DataKey("Duracion")
TxtObservaciones.Text = GvRow.DataKey("Observaciones")
ChkEstatus.Checked = Boolean.Parse(GvRow.DataKey("Estatus"))
DDlTema.SelectedValueExist(GvRow.DataKey("CveTema"))
DDLSubtema.SelectedValueExist(GvRow.DataKey("CveSubtema"))
DDLCapacitador.SelectedValueExist(GvRow.DataKey("CveCapacitador"))
DDLAreaTematica.SelectedValueExist(GvRow.DataKey("CveAreaTematica"))
txtInicio.Text = GvRow.DataKey("Fecha").ToDate.ToString("dd/MM/yyyy")
TxtHoraEntrada.Text = GvRow.DataKey("Hora").ToString()
TxtUbicacion.Text = GvRow.DataKey("Ubicacion").ToString()
Me.DVGvGrupos.Visible = True
BtnAgregarCursosModal.Text = "Actualizar"
UpModalCurso.Update()
UpGral.Update()
CargaParticiopantesGV(CveCurso)
RegistraScript("$('#divAgregarCurso').modal({ backdrop: 'static', keyboard: false}); ")
End Sub
Private Sub DescargaReporte()
Dim RpNombreCurso As String = TxtCurso.Text
Dim RpFechas As String = Now.ToString("dd/MM/yyyy")
Dim RpTema As String = DDlTema.SelectedItem.Text
Dim RpSubTema As String = DDLSubtema.SelectedItem.Text
Dim RpCapacitador As String = DDLCapacitador.SelectedItem.Text
Dim Hora As String = TxtHoraEntrada.Text
Dim Ubicacion As String = TxtUbicacion.Text
Dim RpDuracion As String = $"{TxtDuracion.Text} hrs."
Dim RpDocumento As String = If(ChkConstancias.Checked, "Formato DC-3", "Reconocimiento")
Dim objRH As New ClsRH
Dim DatosAsistencia As New DataTable
If objRH.CursoGrupoGet(CveCurso, UsuarioActual.Empresa.CveEmpresa, 3) Then
DatosAsistencia = objRH.DtResultados
End If
objRH.Dispose()
CveCurso = -1
If DatosAsistencia.Rows.Count > 0 Then
Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta))
Dim params As New List(Of ReportParameter)
Dim Archivo As String = $"Empresas/{UsuarioActual.CveEmpresa}/Formatos/CursosInvitados.rdlc"
If Not File.Exists($"{Server.MapPath("~")}/{Archivo}") Then
Archivo = "Empresas/Grales/Formatos/CursosInvitados.rdlc"
End If
Dim logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa)
If Imagen.Exists Then
params.Add(New ReportParameter("LogoPath", logouri))
Else
params.Add(New ReportParameter("LogoPath", ""))
End If
params.Add(New ReportParameter("Empresa", UsuarioActual.Empresa.Empresa))
params.Add(New ReportParameter("Capacitador", DDLCapacitador.SelectedItem.Text))
params.Add(New ReportParameter("Curso", TxtCurso.Text))
params.Add(New ReportParameter("Fecha", txtInicio.Text))
params.Add(New ReportParameter("Ubicacion", TxtUbicacion.Text))
params.Add(New ReportParameter("Hora", Hora))
params.Add(New ReportParameter("Tema", DDlTema.SelectedItem.Text))
params.Add(New ReportParameter("SubTema", DDLSubtema.SelectedItem.Text))
params.Add(New ReportParameter("Duracion", $"{TxtDuracion.Text} hrs."))
params.Add(New ReportParameter("Documento", If(ChkConstancias.Checked, "Formato DC-3", "Reconocimiento")))
ResetControles()
ImprimirPDF(Archivo, DatosAsistencia, params, "AsistenciasInvitados")
End If
End Sub
Public Sub Asistencias_ClickCursos(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim objRH As New ClsRH
Dim activo As Boolean = False
CveCurso = GvRow.DataKey("CveCurso").ToEntero
Curso = GvRow.DataKey("Curso")
Capacitador = GvRow.DataKey("Capacitador")
ConstanciaDC3 = Boolean.Parse(GvRow.DataKey("ConstanciaDC3"))
If objRH.CursoGrupoGet(CveCurso, UsuarioActual.Empresa.CveEmpresa, 2) Then
GvAsistenciaCurso.DataSource = objRH.DtResultados
Else
GvAsistenciaCurso.DataSource = Nothing
End If
objRH.Dispose()
GvAsistenciaCurso.DataBind()
UpAsistenciasCurso.Update()
LtlAsistenciaCursoModal.Text = "Asistencias Curso - " & Curso
UpModalCurso.Update()
UpGral.Update()
CargaParticiopantesGV(CveCurso)
RegistraScript("$('#divAsistenciasCurso').modal({ backdrop: 'static', keyboard: false});")
End Sub
Public Sub Remove_ClickCursos(sender As Object, e As EventArgs)
Dim objRH As New ClsRH
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim activo As Boolean = False
Dim CveCursoI As Integer = GvRow.DataKey("CveCurso").ToEntero
If objRH.CursoRemove(CveCursoI, UsuarioActual.Empresa.CveEmpresa) Then
CargadatosCursos()
Alert("Curso Elimino Correctamente ", TipoMensaje.MsgInformacion)
Else
Alert("Ocurrio un error al Eliminar el Curso", TipoMensaje.MsgError)
End If
CveCurso = 0
End Sub
Private Sub ResetControles()
TxtCurso.Text = ""
TxtObservaciones.Text = ""
TxtDuracion.Text = ""
DDlTema.SelectedIndex = 0
DDLSubtema.Items.Clear()
DDLSubtema.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
DDLCapacitador.SelectedIndex = 0
ChkEstatus.Checked = True
ChkConstancias.Checked = False
txtInicio.Text = Now.ToString("dd/MM/yyyy")
TxtHoraEntrada.Text = ""
TxtUbicacion.Text = ""
End Sub
Private Sub CargaParticiopantesGV(CveCursoGrupo As Integer)
Dim objRH As New ClsRH
If objRH.CursoGrupoGet(CveCursoGrupo, UsuarioActual.Empresa.CveEmpresa) Then
GvParticipantes.DataSource = objRH.DtResultados
Else
GvParticipantes.DataSource = Nothing
End If
objRH.Dispose()
GvParticipantes.DataBind()
UpGral.Update()
End Sub
Protected Sub GvParticipantes_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvParticipantes.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
Dim chk As CheckBox = e.Row.FCCheckBox("chkGrupo")
If e.Row.DBCampo("CveCurso").ToString.ToEntero > 0 Then
chk.Checked = True
Else
chk.Checked = False
End If
e.Row.Height = 15
End If
End Sub
Private Sub ActualizarGrupo(CveCursoGrupo As Integer)
Dim objRH As New ClsRH
Dim existeError As Boolean = True
For Each row As GridViewRow In GvParticipantes.Rows
Dim CvePersonal As Integer = row.DataKey("CvePersonal").ToEntero
Dim CveCursoPersonal As Integer = row.DataKey("CveCursoPersonal").ToEntero
Dim _Curso As String = row.DataKey("Curso")
Dim _Tema As String = row.DataKey("Tema")
Dim _Subtema As String = row.DataKey("Subtema")
Dim Correo As String = row.DataKey("Correo")
Dim _Nombres As String = row.DataKey("Nombres")
Dim _CvePersonal As Integer = row.DataKey("CvePersonal").ToString.ToEntero
Dim chkGrupo As CheckBox = row.FCCheckBox("chkGrupo")
Dim Contenido As String = "Buen día <br/> Estimado(a) " & _Nombres & " <br/> Por medio de la presente el departamento de recursos de esta empresa le hace la cordial invitación para asistir al curso " & Curso & " Impartido por " & Capacitador & ". Esperamos contar con su asistencia."
If CveCursoPersonal = -1 Then
If chkGrupo.Checked = True Then
If Not objRH.CursoGrupoAdd(CveCursoGrupo, CvePersonal, 0, UsuarioActual.Empresa.CveEmpresa, UsuarioActual.CveUsuario) Then
Exit For
Else
' If Correo.Trim.Length > 0 Then 'Cambiar validacion a true para realizar pruebas(Cambiar para)
'Dim BytesDocumento As Byte() = GenerarImvitacion(Curso, Capacitador, _Nombres, _CvePersonal)
'MandaCorreo("Invitación a Curso " & Curso, "rakcsle.rakcsle@gmail.com", "", Contenido, BytesDocumento) 'Para pruebas
'MandaCorreo("Invitación a Curso " & Curso, Correo, "", Contenido, BytesDocumento)
'End If
End If
End If
Else
If chkGrupo.Checked = False Then
If Not objRH.CursoPersonalRemove(CveCursoPersonal, UsuarioActual.Empresa.CveEmpresa) Then
Exit For
End If
End If
End If
Next
objRH.Dispose()
EnviarcorreoInvitacionCurso(CveCursoGrupo)
End Sub
Protected Sub BtnAsistenciasCursosModal_Click(sender As Object, e As EventArgs) Handles BtnAsistenciasCursosModal.Click
Dim objRH As New ClsRH
Dim existeError As Boolean = True
For Each row As GridViewRow In GvAsistenciaCurso.Rows
Dim CvePersonal As Integer = row.DataKey("CvePersonal").ToEntero
Dim CveCursoPersonal As Integer = row.DataKey("CveCursoPersonal").ToEntero
Dim Correo As String = row.DataKey("Correo")
Dim Nombres As String = row.DataKey("Nombres")
Dim Asistencia As Integer
Dim chkAsistencia As CheckBox = row.FCCheckBox("chkAsistencia")
If chkAsistencia.Checked = True Then
Asistencia = 1
Else
Asistencia = 0
End If
If Not objRH.CursoGrupoUpdate(CveCursoPersonal, CveCurso, CvePersonal, Asistencia, UsuarioActual.Empresa.CveEmpresa, UsuarioActual.CveUsuario) Then
End If
Next
RegistraScript("$('#divAsistenciasCurso').modal('hide');")
objRH.Dispose()
End Sub
Protected Sub GvAsistenciaCurso_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvAsistenciaCurso.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
Dim chk As CheckBox = e.Row.FCCheckBox("chkAsistencia")
Dim Asistencia As Boolean = Boolean.Parse(e.Row.DBCampo("Asistencia"))
Dim lnkCursoConstancia As LinkButton = e.Row.FCLinkButton("lnkCursoConstancia")
Dim RFC As String = e.Row.DataKey("RFC")
If Asistencia Then
chk.Checked = True
If ConstanciaDC3 Then
If RFC.Trim.Length > 11 And RFC.Trim.Length < 14 Then
lnkCursoConstancia.Visible = True
ScriptManager.GetCurrent(Me).RegisterPostBackControl(lnkCursoConstancia)
Else
lnkCursoConstancia.Visible = False
End If
Else
ScriptManager.GetCurrent(Me).RegisterPostBackControl(lnkCursoConstancia)
lnkCursoConstancia.Visible = True
End If
Else
chk.Checked = False
lnkCursoConstancia.Visible = False
End If
e.Row.Height = 15
End If
End Sub
Private Sub GvCursosCreaEventoDescarga()
For Each dRow As GridViewRow In GvAsistenciaCurso.Rows
Dim Asistencia As Boolean = Boolean.Parse(dRow.DataKey("Asistencia"))
Dim lnkCursoConstancia As LinkButton = dRow.FCLinkButton("lnkCursoConstancia")
Dim RFC As String = dRow.DataKey("RFC")
If Asistencia Then
If ConstanciaDC3 Then
If RFC.Trim.Length > 11 And RFC.Trim.Length < 14 Then
lnkCursoConstancia.Visible = True
ScriptManager.GetCurrent(Me).RegisterPostBackControl(lnkCursoConstancia)
Else
lnkCursoConstancia.Visible = False
End If
Else
ScriptManager.GetCurrent(Me).RegisterPostBackControl(lnkCursoConstancia)
lnkCursoConstancia.Visible = True
End If
Else
lnkCursoConstancia.Visible = False
End If
Next
End Sub
Public Sub ImprimirConstancia_Click(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim objConstancias As New ClsConstancias
Dim DocumenBitArray As Byte() = Nothing
Dim RutaBase As String = Server.MapPath("~")
Dim CvePersonal As Integer = GvRow.DataKey("CvePersonal").ToEntero
'RutaDocumento = Path.Combine(RutaDocumento, "Empresas\Grales\FormatoDC3.docx")
Dim _CveCurso As Integer = GvRow.DataKey("CveCurso").ToEntero
DocumenBitArray = objConstancias.PersonalConstanciaGenera(CvePersonal, _CveCurso, UsuarioActual.CveEmpresa, RutaBase, UsuarioActual.Empresa)
GvCursosCreaEventoDescarga()
If Not DocumenBitArray Is Nothing Then
Response.Clear()
Response.ContentType = "application/force-download"
Response.AddHeader("content-disposition", "attachment; filename=" & CvePersonal & "_Constancia_Curso_" & _CveCurso & "_" & Now.ToString("yyyyMMddhhmmss") & ".docx")
Response.BinaryWrite(DocumenBitArray)
Response.End()
End If
End Sub
Private Function GenerarImvitacion(_Curso As String, _Capacitador As String, _Nombres As String, _CvePersonal As Integer) As Byte()
Dim RutaArchivo As String = UsuarioActual.Empresa.Ruta & "\Formatos\CursoInvitacion.docx"
Dim RutaLogo As String = Path.Combine(UsuarioActual.Empresa.Ruta, "Logo.png")
If Not File.Exists(RutaArchivo) Then
RutaArchivo = $"{Server.MapPath("~")}\Empresas\Grales\Formatos\CursoInvitacion.docx"
End If
Dim objGemBoxDocument As New clsGemBoxDocument(RutaArchivo)
Dim Tags As New List(Of TagsDocumentos)
Dim Contenido As String = "Buen día. Estimado(a) " & _Nombres & vbLf & " Por medio de la presente el departamento de recursos de esta empresa le hace la cordial invitación para asistir al curso " & _Curso & " impartido por el capacitador " & _Capacitador & ". Esperamos contar con su asistencia."
Tags.Add(New TagsDocumentos("{Curso}", _Curso))
Tags.Add(New TagsDocumentos("{Contenido}", Contenido))
'objGemBoxDocument.AgregarImagen(RutaLogo, 61.0, 53.0)
objGemBoxDocument.SustituirTags(Tags)
objGemBoxDocument.GuardarStream()
Return objGemBoxDocument.GetBytesDocumento
End Function
Private Sub MandaCorreo(Asunto As String, Para As String, ArrayCC As String, body As String, ArchivoBinario As Byte())
Dim a As String = String.Format("{0} -- {1} --- {2}", Asunto, Para, ArrayCC)
a.GuardaLog()
Dim Mail As New ClsSisMail()
Dim LSRutasMail As New List(Of ClsSisMail.ArchivoMail)
Dim itemMail As New ClsSisMail.ArchivoMail
With itemMail
itemMail.ArchivoBinario = ArchivoBinario
itemMail.NombreArchivo = "Invitación.docx"
End With
LSRutasMail.Add(itemMail)
Mail.SendMail(ClsPaginas.EmpresaNotificaciones, Para, Asunto, body, ArrayCC, LSRutasMail)
Mail = Nothing
End Sub
Protected Sub LnkDescargaInvitados_Click(sender As Object, e As EventArgs)
DescargaReporte()
End Sub
Protected Sub ImgSendMails_Click(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim activo As Boolean = False
Dim constancia As Boolean = False
' ChkConstancias.Checked = Boolean.Parse(GvRow.DataKey("ConstanciaDC3"))
Dim _CveCurso As Integer = GvRow.DataKey("CveCurso").ToEntero
EnviarcorreoInvitacionCurso(_CveCurso)
End Sub
Private Sub EnviarcorreoInvitacionCurso(_CveCurso As Integer)
Dim Enviar As Boolean = False
Dim _Curso As String = ""
Dim _Duracion As String = ""
'ChkEstatus.Checked = Boolean.Parse(GvRow.DataKey("Estatus"))
Dim _Tema As String = ""
Dim _SubTema As String = ""
Dim _Capacitador As String = ""
Dim _Fecha As String = ""
Dim _Hora As String = ""
Dim _Ubicacion As String = ""
For Each GvRow As GridViewRow In GvCurso.Rows
If _CveCurso = GvRow.DataKey("CveCurso").ToEntero Then
Enviar = True
_Curso = GvRow.DataKey("Curso")
_Duracion = GvRow.DataKey("Duracion") & " hrs"
'ChkEstatus.Checked = Boolean.Parse(GvRow.DataKey("Estatus"))
_Tema = GvRow.DataKey("Tema").ToString
_SubTema = GvRow.DataKey("Subtema").ToString
_Capacitador = GvRow.DataKey("Capacitador")
_Fecha = GvRow.DataKey("Fecha").ToDate.ToString("dd/MM/yyyy")
_Hora = GvRow.DataKey("Hora").ToString()
_Ubicacion = GvRow.DataKey("Ubicacion").ToString()
End If
Next
Dim Contador As Integer
Dim objRH As New ClsRH
If objRH.CursoGrupoGet(_CveCurso, UsuarioActual.Empresa.CveEmpresa) AndAlso Enviar Then
For Each row As DataRow In objRH.DtResultados.Rows
Dim _Correo As String = row("Correo").ToString
If row("CveCurso").ToString.ToEntero > 0 And _Correo.Trim.Length > 0 Then
Dim CvePersonal As Integer = row("CvePersonal").ToString.ToEntero
Dim CveCursoPersonal As Integer = row("CveCursoPersonal").ToString.ToEntero
Dim _Nombres As String = row("Nombres").ToString
Dim _CvePersonal As Integer = row("CvePersonal").ToString.ToEntero
Dim ContenidoSB As New StringBuilder
ContenidoSB.Append("Buen día. <br/> Estimado(a) " & _Nombres & " <br/> Por medio de la presente el departamento de recursos humanos de la empresa le hace la cordial invitación para asistir al curso " & _Curso & " Impartido por " & _Capacitador & ". Esperamos contar con su asistencia.")
ContenidoSB.Append("<br><br>")
ContenidoSB.AppendLine("<table boder='1'>")
ContenidoSB.AppendLine($"<tr><td>Tema:</td><td>{_Tema}</td></tr>")
ContenidoSB.AppendLine($"<tr><td>Subtema:</td><td>{_SubTema}</td></tr>")
ContenidoSB.AppendLine($"<tr><td>Curso:</td><td>{_Curso}</td></tr>")
ContenidoSB.AppendLine($"<tr><td>Fecha:</td><td>{_Fecha}</td></tr>")
ContenidoSB.AppendLine($"<tr><td>Hora:</td><td>{_Hora}</td></tr>")
ContenidoSB.AppendLine($"<tr><td>Duración:</td><td>{_Duracion}</td></tr>")
ContenidoSB.AppendLine($"<tr><td>Ubicación:</td><td>{_Ubicacion}</td></tr>")
ContenidoSB.AppendLine($"<tr><td>Capacitador:</td><td>{_Capacitador}</td></tr>")
ContenidoSB.AppendLine("")
ContenidoSB.AppendLine("</table>")
Dim BytesDocumento As Byte() = GenerarImvitacion(_Curso, _Capacitador, _Nombres, _CvePersonal)
MandaCorreo("Invitación a Curso " & Curso, _Correo, "", ContenidoSB.ToString, BytesDocumento)
Contador = Contador + 1
Dim valor As Boolean = False
End If
Next
End If
objRH.Dispose()
If Contador > 0 Then
Alert($"Proceso terminado se enviaron {Contador} Invitaciones")
End If
End Sub
Protected Sub ImgReimprimir_Click(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim objRH As New ClsRH
Dim activo As Boolean = False
Dim constancia As Boolean = False
If objRH.SubtemasGet(-1, 1, UsuarioActual.Empresa.CveEmpresa) Then
DDLSubtema.DataSource = objRH.DtResultados
Else
DDLSubtema.DataSource = Nothing
End If
objRH.Dispose()
DDLSubtema.DataBind()
DDLSubtema.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
LtlTituloModalCapacitadores.Text = "Editar Curso"
Actualizar = True
CveCurso = GvRow.DataKey("CveCurso").ToString.ToEntero
Curso = GvRow.DataKey("Curso")
Capacitador = GvRow.DataKey("Capacitador")
ChkConstancias.Checked = Boolean.Parse(GvRow.DataKey("ConstanciaDC3"))
TxtCurso.Text = GvRow.DataKey("Curso")
TxtDuracion.Text = GvRow.DataKey("Duracion")
TxtObservaciones.Text = GvRow.DataKey("Observaciones")
ChkEstatus.Checked = Boolean.Parse(GvRow.DataKey("Estatus"))
DDlTema.SelectedValueExist(GvRow.DataKey("CveTema"))
DDLSubtema.SelectedValueExist(GvRow.DataKey("CveSubtema"))
DDLCapacitador.SelectedValueExist(GvRow.DataKey("CveCapacitador"))
DDLAreaTematica.SelectedValueExist(GvRow.DataKey("CveAreaTematica"))
txtInicio.Text = GvRow.DataKey("Fecha").ToDate.ToString("dd/MM/yyyy")
TxtHoraEntrada.Text = GvRow.DataKey("Hora").ToString()
TxtUbicacion.Text = GvRow.DataKey("Ubicacion").ToString()
Me.DVGvGrupos.Visible = True
BtnAgregarCursosModal.Text = "Actualizar"
UpModalCurso.Update()
UpGral.Update()
CargaParticiopantesGV(CveCurso)
RegistraScript("descargainvitados()")
End Sub
End Class

View File

@@ -0,0 +1,226 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatCursosCapacitadores.aspx.vb" Inherits="RH_CatCursosCapacitadores" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<style>
.Widthall {
width: 100% !important;
}
.dataTables_scrollHeadInner {
width: 100% !important;
background-color: #dddddd;
padding-left: 0px !important;
}
.dataTables_scrollFoot {
display: none;
position: static;
}
.table-scrollable {
margin: 0px !important;
}
.dataTables_scroll {
margin-bottom: 0px;
}
.table.dataTable {
margin-top: 0px !important;
}
.dataTables_scrollBody table th {
padding: 0px !important;
padding-right: 4px !important;
padding-left: 4px !important;
}
.sinlink td a {
pointer-events: none;
cursor: default;
color: black;
font-size: small;
}
.white a {
color: white !important;
}
</style>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" Runat="Server">
Catalogo Capacitadores
</asp:Content>
<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 runat="server" ID="BtnAgregarCapacitador" data-toggle="tooltip" data-placement="left" title="Agregar un Capacitadpor" Text="<i class='fa fa-plus'></i> Agregar Capacitador"></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="UpGral" runat="server" UpdateMode="Conditional" ><ContentTemplate>
<ajax:TabContainer ID="TabCapacitadores" runat="server" ActiveTabIndex="0" Width="100%">
<ajax:TabPanel ID="TabCapacitadoresSub" runat="server" HeaderText="Capacitadores">
<ContentTemplate>
<div class="Widthall" style="text-align:right!important;margin-top:20px!important;margin-bottom:2px!important">
<input type="text" id="TxtBusqueda" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvCapacitadores.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvCapacitadores.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<br />
<asp:UpdatePanel ID="UPGvCapacitadores" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvCapacitadores" runat="server" AutoGenerateColumns="False" DataKeyNames="CveCapacitador,Capacitador,Estatus,Externo,Especialidades,Cedula"
EmptyDataText="No se encontraron Capacitadores" ToolTip="Listado de Temas"
CssClass="table table-striped table-advance table-hover Widthall ScrollAD"
data-sort="true"
data-freezerows="1"
GridLines="None">
<Columns>
<asp:TemplateField HeaderText="Capacitador">
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlCapacitador" runat="server" Text='<%# Eval("Capacitador") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Externo" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="50px">
<ItemTemplate>
&nbsp;<asp:Literal ID="lblExterno" runat="server" Text='<%# Eval("SExterno")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estatus" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:Label ID="LtlEstatus" runat="server" Text='<%# Eval("Activo") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Cedula" ItemStyle-HorizontalAlign="Left" >
<ItemTemplate>
&nbsp;<asp:Literal ID="lblCedula" runat="server" Text='<%# Eval("Cedula")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Especialidades" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
&nbsp;<asp:Literal ID="lblEspecialidades" runat="server" Text='<%# Eval("Especialidades")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="100px">
<ItemTemplate>
&nbsp;<asp:Literal ID="lblFecha" runat="server" Text='<%# Eval("Fecha", "{0:d}")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="300px" HeaderText="Usuario">
<ItemTemplate>
<asp:Literal ID="lblUsuario" runat="server" Text='<%# Eval("Usuario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Right" ItemStyle-Width="80px">
<ItemTemplate>
<asp:LinkButton ID="ImgE" OnClick="Edit_ClickCapacitador" runat="server" AlternateText="Editar" CausesValidation="False"
CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Left" ItemStyle-Width="40px">
<ItemTemplate>
<asp:LinkButton ID="imgD" OnClick="Remove_ClickCapacitador" runat="server" AlternateText="Eliminar" CausesValidation="False" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</ContentTemplate>
</ajax:TabPanel>
</ajax:TabContainer>
<div id="divAgregarCapacitador" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModaCapacitador" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloModalCapacitadores" runat="server">Agregar Capacitador</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtCapacitador" CssClass="form-control " runat="server" MaxLength="100" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="TxtCapacitador" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Capacitador''</b> es necesario, por favor ingréselo." ValidationGroup="GrpCapacitador"></asp:RequiredFieldValidator>
<label for="<%= TxtCapacitador.ClientID.ToString()%>">Capacitador:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:CheckBox Text="Activo" runat="server" ID="ChkEstatus" Checked="true" Visible="true" />
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:CheckBox Text="Externo" runat="server" ID="chkExterno" Checked="true" Visible="true" />
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtCedula" CssClass="form-control " runat="server" MaxLength="50" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ControlToValidate="TxtCedula" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Cedula''</b> es necesario, por favor ingréselo." ValidationGroup="GrpCapacitador"></asp:RequiredFieldValidator>
<label for="<%= TxtCedula.ClientID.ToString()%>">Cedula:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtEspecialidades" CssClass="form-control " runat="server" TextMode="MultiLine" MaxLength="500" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" ControlToValidate="TxtEspecialidades" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Especialidades''</b> es necesario, por favor ingréselo." ValidationGroup="GrpCapacitador"></asp:RequiredFieldValidator>
<label for="<%= TxtEspecialidades.ClientID.ToString()%>">Especialidades:</label>
</div>
</div>
<div class="modal-footer">
<asp:Button ID="BtnAgregarCapacitadorModal" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpCapacitador" />
<button id="Button3" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content9" ContentPlaceHolderID="JS" Runat="Server">
<script src="/Metronic/assets/global/scripts/datatable.js"></script>
<script src="/Metronic/assets/global/plugins/datatables/all.min.js"></script>
<script type="text/javascript">
function OrdenarGVValores() {
var Tam = TamañoVentana();
var Alto = Tam.height - 270;
if (Alto < 100) {
Alto = 100;
}
$('#<%= GvCapacitadores.ClientID %>').DataTable({
scrollY: Alto + 'px',
scrollCollapse: true,
paging: false,
searching: false,
info: false
});
$('<%= GvCapacitadores.ClientID %>').parent().parent().children().first().css("position", "static");
}
</script>
</asp:Content>

View File

@@ -0,0 +1,192 @@
Imports System.Data
Imports Extensiones
Partial Class RH_CatCursosCapacitadores
Inherits ClsPaginas
Private Property CveCapaciatador As Integer
Get
If Not ViewState("CveCapaciatador") Is Nothing Then
Return ViewState("CveCapaciatador").ToString.ToEntero
Else
Return 0
End If
End Get
Set(value As Integer)
ViewState("CveCapaciatador") = value
End Set
End Property
Private Property Actualizar As Boolean
Get
If Not ViewState("Actualizar") Is Nothing Then
Return DirectCast(ViewState("Actualizar"), Boolean)
Else
Return False
End If
End Get
Set(value As Boolean)
ViewState("Actualizar") = value
End Set
End Property
Private Sub RH_CatCapacitadores_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
CargadatosGvCapacitador()
End If
End Sub
#Region "Capcitador"
Private Sub CargadatosGvCapacitador()
Dim objRH As New ClsRH
If objRH.CapacitadoresGet(-1, -1, -1, UsuarioActual.Empresa.CveEmpresa) Then
GvCapacitadores.DataSource = objRH.DtResultados
Else
GvCapacitadores.DataSource = Nothing
End If
objRH.Dispose()
GvCapacitadores.DataBind()
UpGral.Update()
End Sub
Protected Sub BtnAgregarCapacitador_Click(sender As Object, e As EventArgs) Handles BtnAgregarCapacitador.Click
LtlTituloModalCapacitadores.Text = "Agregar Capacitador"
BtnAgregarCapacitadorModal.Text = "Agregar"
Actualizar = False
TxtCapacitador.Text = ""
TxtCedula.Text = ""
TxtEspecialidades.Text = ""
ChkEstatus.Checked = True
Actualizar = False
UpGral.Update()
RegistraScript(String.Format("$('#{0}').modal();", "divAgregarCapacitador"))
End Sub
Protected Sub BtnAgregarCapacitadorModal_Click(sender As Object, e As EventArgs) Handles BtnAgregarCapacitadorModal.Click
Dim objRH As New ClsRH
Dim Estatus As Integer = 0
Dim Externo As Integer = 0
If ChkEstatus.Checked Then
Estatus = 1
Else
Estatus = 0
End If
If chkExterno.Checked Then
Externo = 1
Else
Externo = 0
End If
RegistraScript(String.Format("$('#{0}').modal('hide');", "divAgregarCapacitador"), "jsHideModalCapacitador")
UpGral.Update()
If Not Actualizar Then
If objRH.CapacitadorAdd(TxtCapacitador.Text, Estatus, Externo, TxtCedula.Text, TxtEspecialidades.Text, UsuarioActual.Empresa.CveEmpresa, UsuarioActual.CveUsuario) Then
CveCapaciatador = 0
TxtCapacitador.Text = ""
TxtEspecialidades.Text = ""
TxtCedula.Text = ""
ChkEstatus.Checked = True
chkExterno.Checked = True
CargadatosGvCapacitador()
UpGral.Update()
Alert("Capacitador Agregado Correctamente", TipoMensaje.MsgInformacion)
Else
Alert("Ocurrio un error al guardar el Capacitador", TipoMensaje.MsgError)
End If
Else
If objRH.CapacitadorUpdate(CveCapaciatador, TxtCapacitador.Text, Estatus, Externo, TxtCedula.Text, TxtEspecialidades.Text, UsuarioActual.Empresa.CveEmpresa, UsuarioActual.CveUsuario) Then
CveCapaciatador = 0
TxtCapacitador.Text = ""
TxtEspecialidades.Text = ""
TxtCedula.Text = ""
ChkEstatus.Checked = True
chkExterno.Checked = True
CargadatosGvCapacitador()
UpModaCapacitador.Update()
Alert("Capacitador Actualizado Correctamente", TipoMensaje.MsgInformacion)
Else
Alert("Ocurrio un error al Actualizar el Capacitador", TipoMensaje.MsgError)
End If
End If
CveCapaciatador = 0
Actualizar = False
objRH.Dispose()
End Sub
Public Sub Remove_ClickCapacitador(sender As Object, e As EventArgs)
Dim objRH As New ClsRH
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim activo As Boolean = 0
Dim CveCapacitador As Integer = GvRow.DataKey("CveCapacitador")
If objRH.CapacitadorRemove(CveCapacitador) Then
CargadatosGvCapacitador()
Alert("Capacitador Elimino Correctamente ", TipoMensaje.MsgInformacion)
Else
Alert("Ocurrio un error al Eliminar el Capacitador", TipoMensaje.MsgError)
End If
CveCapaciatador = 0
End Sub
Public Sub Edit_ClickCapacitador(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim activo As Boolean = 0
LtlTituloModalCapacitadores.Text = "Editar Capacitador"
Actualizar = True
CveCapaciatador = GvRow.DataKey("CveCapacitador")
TxtCapacitador.Text = GvRow.DataKey("Capacitador")
TxtEspecialidades.Text = GvRow.DataKey("Especialidades")
TxtCedula.Text = GvRow.DataKey("Cedula")
ChkEstatus.Checked = GvRow.DataKey("Estatus")
chkExterno.Checked = GvRow.DataKey("Externo")
BtnAgregarCapacitadorModal.Text = "Actualizar"
UpModaCapacitador.Update()
RegistraScript(String.Format("$('#{0}').modal();", "divAgregarCapacitador"))
End Sub
#End Region
End Class

304
RH/CatCursosTemas.aspx Normal file
View File

@@ -0,0 +1,304 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatCursosTemas.aspx.vb" Inherits="RH_CatCursosTemas" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<style>
.Widthall {
width: 100% !important;
}
.dataTables_scrollHeadInner {
width: 100% !important;
background-color: #dddddd;
padding-left: 0px !important;
}
.dataTables_scrollFoot {
display: none;
position: static;
}
.table-scrollable {
margin: 0px !important;
}
.dataTables_scroll {
margin-bottom: 0px;
}
.table.dataTable {
margin-top: 0px !important;
}
.dataTables_scrollBody table th {
padding: 0px !important;
padding-right: 4px !important;
padding-left: 4px !important;
}
.sinlink td a {
pointer-events: none;
cursor: default;
color: black;
font-size: small;
}
.white a {
color: white !important;
}
</style>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" Runat="Server">
Temas y Subtemas
</asp:Content>
<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 runat="server" ID="BtnAgregarTema" data-toggle="tooltip" data-placement="left" title="Agregar un Tema" Text="<i class='fa fa-plus'></i> Agregar Tema"></asp:LinkButton>
</li>
<li>
<asp:LinkButton runat="server" ID="BtnAgregarSubtema" data-toggle="tooltip" data-placement="left" title="Agregar un Subtema." Text="<i class='fa fa-plus'></i> Agregar Subtema"></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="UpGral" runat="server" UpdateMode="Conditional" ><ContentTemplate>
<ajax:TabContainer ID="TabTemasSubtemas" runat="server" ActiveTabIndex="0" Width="100%">
<ajax:TabPanel ID="TabTemas" runat="server" HeaderText="Temas">
<ContentTemplate>
<div class="Widthall" style="text-align:right!important;margin-top:20px!important;margin-bottom:2px!important">
<input type="text" id="TxtBusqueda" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvTemas.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvTemas.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<br />
<asp:UpdatePanel ID="UpGvTemas" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvTemas" runat="server" AutoGenerateColumns="False" DataKeyNames="CveTema,Tema,Estatus" EmptyDataText="No se encontraron Temas" ToolTip="Listado de Temas"
CssClass="table table-striped table-advance table-hover Widthall ScrollAD"
data-sort="true"
data-freezerows="1"
GridLines="None">
<Columns>
<asp:TemplateField HeaderText="Tema">
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlConcepto" runat="server" Text='<%# Eval("Tema") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="100px">
<ItemTemplate>
&nbsp;<asp:Literal ID="lblFecha" runat="server" Text='<%# Eval("Fecha", "{0:d}")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estatus" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:Label ID="LtlEstatus" runat="server" Text='<%# Eval("Activo") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:CheckBox runat="server" ID="chkEstatusEdit" />
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="300px" HeaderText="Usuario">
<ItemTemplate>
<asp:Literal ID="lblUsuario" runat="server" Text='<%# Eval("Usuario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Right" ItemStyle-Width="80px">
<ItemTemplate>
<asp:LinkButton ID="ImgE" OnClick="Edit_ClickTema" runat="server" AlternateText="Editar" CausesValidation="False"
CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Left" ItemStyle-Width="40px">
<ItemTemplate>
<asp:LinkButton ID="imgD" OnClick="Remove_ClickTema" runat="server" AlternateText="Eliminar" CausesValidation="False" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</ContentTemplate>
</ajax:TabPanel>
<ajax:TabPanel ID="TabSubtemas" runat="server" HeaderText="Subtemas">
<ContentTemplate>
<div class="Widthall" style="text-align:right!important;margin-top:20px!important;margin-bottom:2px!important">
<input type="text" id="TxtBusqueda2" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda2','{0}')", GvSubtemas.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda2','{0}')", GvSubtemas.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<br />
<asp:UpdatePanel ID="UpGvSubtemas" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvSubtemas" runat="server" AutoGenerateColumns="False" DataKeyNames="CveSubtema,Subtema,Estatus,CveTema" EmptyDataText="No se encontraron Subtemas" ToolTip="Listado de Subtemas" CssClass="table table-striped table-advance table-hover Widthall ScrollAD"
data-sort="true"
data-freezerows="1"
GridLines="None">
<Columns>
<asp:TemplateField HeaderText="Subtema">
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlSubtema" runat="server" Text='<%# Eval("Subtema") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Tema">
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlTema" runat="server" Text='<%# Eval("Tema")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Left" HeaderText="Estatus">
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlActivo" runat="server" Text='<%# Eval("Activo") %>'>></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="100px" HeaderText="Fecha" ItemStyle-HorizontalAlign ="Center" >
<ItemTemplate>
<asp:Literal ID="LtlFecha" runat="server" Text='<%# Eval("Fecha", "{0:d}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="300px" HeaderText="Usuario">
<ItemTemplate>
<asp:Literal ID="LtlUsuario" runat="server" Text='<%# Eval("Usuario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Right" ItemStyle-Width="80px">
<ItemTemplate>
<asp:LinkButton ID="ImgE" OnClick="Edit_ClickSubtema" runat="server" AlternateText="Editar" CausesValidation="False"
CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Left" ItemStyle-Width="40px">
<ItemTemplate>
<asp:LinkButton ID="imgD" OnClick="Remove_ClickSubtema" runat="server" AlternateText="Eliminar" CausesValidation="False" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</ContentTemplate>
</ajax:TabPanel>
</ajax:TabContainer>
<div id="divAgregarTema" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalTema" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title"> <asp:Literal ID="LtlTituloModalTema" runat="server">Agregar Tema</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtTema" CssClass="form-control" MaxLength="50" runat="server" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RTema" runat="server" ControlToValidate="TxtTema" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tema''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTema"></asp:RequiredFieldValidator>
<label for="<%= TxtTema.ClientID.ToString()%>">Tema:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:CheckBox Text="Activo" runat="server" ID="ChkEstatusTema" Checked="true" Visible="true"/>
</div>
</div>
<div class="modal-footer">
<asp:Button ID="BtnAgregarTemaModal" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpTema" />
<button id="BtnCancelarSucursal" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
<asp:HiddenField ID="HdModalTemaModalidad" runat="server" Value="I" ClientIDMode="Static" />
<asp:HiddenField ID="HdCveTema" runat="server" Value="-1" ClientIDMode="Static" />
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
<div id="divAgregarSubtema" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalSubtema" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title"> <asp:Literal ID="LtlTituloModalSubtema" runat="server">Agregar Subtema</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DDlTema" runat="server" Width="130" CssClass="form-control input-sm select2me js-referencia-programmatic" DataTextField="Tema" DataValueField="CveTema"></asp:DropDownList>
<asp:RequiredFieldValidator InitialValue="-1" ID="rfvDDlTema" ControlToValidate="DDlTema" Display="None" ValidationGroup="GrpSubtema" runat="server" Text="*" ErrorMessage="Seleccione una de las opciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="rfvcDDLTema" runat="server" TargetControlID="rfvDDlTema" HighlightCssClass="validatorCalloutHighlight"></ajax:ValidatorCalloutExtender>
<label for="<%= DDlTema.ClientID.ToString()%>">Tema:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtSubtema" CssClass="form-control " runat="server" MaxLength="50" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="TxtSubtema" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tema''</b> es necesario, por favor ingréselo." ValidationGroup="GrpSubtema"></asp:RequiredFieldValidator>
<label for="<%= TxtSubtema.ClientID.ToString()%>">Subtema:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:CheckBox Text="Activo" runat="server" ID="ChkEstatusSubtema" Checked="true" Visible="true"/>
</div>
</div>
<div class="modal-footer">
<asp:Button ID="BtnAgregarSubtemaModal" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpSubtema" />
<button id="Button3" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
<asp:HiddenField ID="HdModalSubtemaModalidad" runat="server" Value="I" ClientIDMode="Static" />
<asp:HiddenField ID="HdCveSubtema" runat="server" Value="-1" ClientIDMode="Static" />
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" Runat="Server">
<script src="/Metronic/assets/global/scripts/datatable.js"></script>
<script src="/Metronic/assets/global/plugins/datatables/all.min.js"></script>
<script type="text/javascript">
function OrdenarGVValores() {
var Tam = TamañoVentana();
var Alto = Tam.height - 270;
if (Alto < 100) {
Alto = 100;
}
$('#C_TabCaracteristicasValores_TabValores_GVValores').DataTable({
scrollY: Alto + 'px',
scrollCollapse: true,
paging: false,
searching: false,
info: false
});
$('#C_TabCaracteristicasValores_TabValores_GVValores').parent().parent().children().first().css("position", "static");
}
</script>
</asp:Content>

264
RH/CatCursosTemas.aspx.vb Normal file
View File

@@ -0,0 +1,264 @@
Imports System.Data
Imports Extensiones
Partial Class RH_CatCursosTemas
Inherits ClsPaginas
Private Sub RH_CatTemas_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
CargaDatos()
End If
End Sub
Private Sub CargaDatos()
CargadatosGvTemas()
CargadatosGvSubtemas()
LoadComboTemas()
End Sub
#Region "Temas"
Private Sub CargadatosGvTemas()
Dim objRH As New ClsRH
If objRH.TemasGet(-1, UsuarioActual.Empresa.CveEmpresa) Then
GvTemas.DataSource = objRH.DtResultados
Else
GvTemas.DataSource = Nothing
End If
objRH.Dispose()
GvTemas.DataBind()
UpGvTemas.Update()
End Sub
Protected Sub BtnAgregarTema_Click(sender As Object, e As EventArgs) Handles BtnAgregarTema.Click
LtlTituloModalTema.Text = "Agregar Tema"
TxtTema.Text = ""
ChkEstatusTema.Checked = True
HdModalTemaModalidad.Value = "I"
UpModalTema.Update()
RegistraScript(String.Format("$('#{0}').modal();", "divAgregarTema"))
End Sub
Protected Sub BtnAgregarTemaModal_Click(sender As Object, e As EventArgs) Handles BtnAgregarTemaModal.Click
Dim objRH As New ClsRH
Dim estatus As Integer
Dim CveTema As Integer = HdCveTema.Value.ToEntero
If ChkEstatusTema.Checked Then
estatus = 1
Else
estatus = 0
End If
RegistraScript(String.Format("$('#{0}').modal('hide');", "divAgregarTema"), "jsHideModalTema")
TabTemasSubtemas.ActiveTabIndex = 0
UpGral.Update()
If Not HdModalTemaModalidad.Value = "U" Then
If objRH.TemaAdd(TxtTema.Text, estatus, UsuarioActual.CveUsuario, UsuarioActual.Empresa.CveEmpresa) Then
TxtTema.Text = ""
ChkEstatusTema.Checked = True
CargadatosGvTemas()
UpGvTemas.Update()
UpModalTema.Update()
Alert("Tema agregado correctamente.", TipoMensaje.MsgInformacion)
Else
Alert("Ocurrio un error al guardar el tema.", TipoMensaje.MsgError)
End If
Else
If objRH.TemaUpdate(HdCveTema.Value.ToString.ToEntero, TxtTema.Text, UsuarioActual.CveUsuario, UsuarioActual.Empresa.CveEmpresa, estatus) Then
TxtTema.Text = ""
ChkEstatusTema.Checked = True
CargadatosGvTemas()
UpGvTemas.Update()
UpModalTema.Update()
Alert("Tema actualizado correctamente.", TipoMensaje.MsgInformacion)
Else
Alert("Ocurrio un error al actualizar el tema.", TipoMensaje.MsgError)
End If
End If
LoadComboTemas()
HdModalTemaModalidad.Value = "I"
objRH.Dispose()
End Sub
Public Sub Remove_ClickTema(sender As Object, e As EventArgs)
Dim objRH As New ClsRH
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim activo As Boolean = 0
Dim CveTema As Integer = GvRow.DataKey("CveTema")
If objRH.TemasRemove(CveTema) Then
CargadatosGvTemas()
LoadComboTemas()
Alert("Tema elimino correctamente ", TipoMensaje.MsgInformacion)
Else
Alert("Ocurrio un error al eliminar el tema", TipoMensaje.MsgError)
End If
End Sub
Public Sub Edit_ClickTema(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim activo As Boolean = 0
LtlTituloModalTema.Text = "Editar Tema"
HdModalTemaModalidad.Value = "U"
HdCveTema.Value = GvRow.DataKey("CveTema")
TxtTema.Text = GvRow.DataKey("Tema")
ChkEstatusTema.Checked = GvRow.DataKey("Estatus")
BtnAgregarTemaModal.Text = "Actualizar"
LoadComboTemas()
UpModalTema.Update()
RegistraScript(String.Format("$('#{0}').modal();", "divAgregarTema"))
End Sub
#End Region
#Region "Subtemas"
Private Sub LoadComboTemas()
Dim objRH As New ClsRH
If objRH.TemasGet(1, UsuarioActual.Empresa.CveEmpresa) Then
DDlTema.DataSource = objRH.DtResultados
DDlTema.DataBind()
DDlTema.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
Else
DDlTema.DataSource = Nothing
End If
UpModalSubtema.Update()
objRH.Dispose()
End Sub
Private Sub CargadatosGvSubtemas()
Dim objRH As New ClsRH
If objRH.SubtemasGet(-1, -1, UsuarioActual.Empresa.CveEmpresa) Then
GvSubtemas.DataSource = objRH.DtResultados
Else
GvSubtemas.DataSource = Nothing
End If
objRH.Dispose()
GvSubtemas.DataBind()
UpGvSubtemas.Update()
End Sub
Protected Sub BtnAgregarSubtema_Click(sender As Object, e As EventArgs) Handles BtnAgregarSubtema.Click
LtlTituloModalSubtema.Text = "Agregar Subtema"
TxtSubtema.Text = ""
ChkEstatusSubtema.Checked = True
HdModalSubtemaModalidad.Value = "I"
LoadComboTemas()
UpModalSubtema.Update()
RegistraScript(String.Format("$('#{0}').modal();", "divAgregarSubtema"))
End Sub
Public Sub Remove_ClickSubtema(sender As Object, e As EventArgs)
Dim objRH As New ClsRH
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim activo As Boolean = 0
Dim CveTema As Integer = GvRow.DataKey("CveSubtema")
If objRH.SubtemaRemove(CveTema) Then
CargadatosGvTemas()
Alert("Subtema Elimino Correctamente.", TipoMensaje.MsgInformacion)
Else
Alert("Ocurrio un error al Eliminar el Subtema.", TipoMensaje.MsgError)
End If
LoadComboTemas()
CargadatosGvSubtemas()
End Sub
Protected Sub BtnAgregarSubtemaModal_Click(sender As Object, e As EventArgs) Handles BtnAgregarSubtemaModal.Click
Dim objRH As New ClsRH
Dim estatus As Integer = 0
If ChkEstatusSubtema.Checked Then
estatus = 1
Else
estatus = 0
End If
RegistraScript(String.Format("$('#{0}').modal('hide');", "divAgregarSubtema"), "jsHideModalSubtema")
TabTemasSubtemas.ActiveTabIndex = 1
UpGral.Update()
If Not HdModalSubtemaModalidad.Value = "U" Then
If objRH.SubtemaAdd(TxtSubtema.Text, DDlTema.SelectedValue.ToEntero, estatus, UsuarioActual.CveUsuario, UsuarioActual.Empresa.CveEmpresa) Then
TxtSubtema.Text = ""
ChkEstatusSubtema.Checked = True
DDlTema.SelectedIndex = 0
CargadatosGvSubtemas()
UpGvSubtemas.Update()
UpModalSubtema.Update()
Alert("Subtema Agregado Correctamente", TipoMensaje.MsgInformacion)
Else
Alert("Ocurrio un error al guardar el Subtema", TipoMensaje.MsgError)
End If
Else
If objRH.SubtemaUpdate(HdCveSubtema.Value.ToString.ToEntero, TxtSubtema.Text, DDlTema.SelectedValue.ToEntero, estatus, UsuarioActual.CveUsuario, UsuarioActual.Empresa.CveEmpresa) Then
TxtSubtema.Text = ""
ChkEstatusSubtema.Checked = True
DDlTema.SelectedIndex = 0
CargadatosGvSubtemas()
UpGvSubtemas.Update()
UpModalSubtema.Update()
Alert("Subtema Actualizado Correctamente", TipoMensaje.MsgInformacion)
Else
Alert("Ocurrio un error al Actualizar el Subtema", TipoMensaje.MsgError)
End If
End If
HdModalSubtemaModalidad.Value = "I"
objRH.Dispose()
End Sub
Public Sub Edit_ClickSubtema(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
HdModalSubtemaModalidad.Value = "U"
HdCveSubtema.Value = GvRow.DataKey("CveSubtema")
DDlTema.SelectedValueExist(GvRow.DataKey("CveTema"))
TxtSubtema.Text = GvRow.DataKey("Subtema")
ChkEstatusSubtema.Checked = GvRow.DataKey("Estatus")
LtlTituloModalSubtema.Text = "Editar Subtema"
BtnAgregarSubtemaModal.Text = "Actualizar"
UpModalSubtema.Update()
RegistraScript(String.Format("$('#{0}').modal();", "divAgregarSubtema"))
End Sub
#End Region
End Class

164
RH/CatDepartamentos.aspx Normal file
View File

@@ -0,0 +1,164 @@
<%@ Page Title="RH - Catálogo de Departamentos" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatDepartamentos.aspx.vb" Inherits="RH_CatDepartamentos" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<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 Departamentos
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel runat="server" ID="UpAgregar">
<ContentTemplate>
<li>
<asp:LinkButton runat="server" ID="BtnAgregarDepartamento" data-toggle="tooltip" data-placement="left" title="Agregar un Defecto" Text="<i class='fa fa-plus'></i>Agregar Departamento"></asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpTitulos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<%--<table class="table table-striped table-advance table-hover">
<thead>
<tr class="Titulos">
<th width="250px">
<asp:LinkButton ID="LbDepartamento" runat="server" CausesValidation="false" Text="" CommandArgument="Departamento" OnClick="LbOrden_Click">
Departamento
<asp:Literal ID="ImgDepartamento" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
<th width="100px">
<asp:LinkButton ID="LbEstatus" runat="server" CausesValidation="false" Text="" CommandArgument="Estatus" OnClick="LbOrden_Click">
Estatus
<asp:Literal ID="ImgEstatus" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
<th width="100px">
<asp:LinkButton ID="LbFechaIng" runat="server" CausesValidation="false" Text="" CommandArgument="FechaIng" OnClick="LbOrden_Click">
Fecha Ing.
<asp:Literal ID="ImgFechaIng" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
<th width="100px">
<asp:LinkButton ID="LbUsuario" runat="server" CausesValidation="false" Text="" CommandArgument="Usuario" OnClick="LbOrden_Click">
Usuario
<asp:Literal ID="ImgUsuario" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
<th width="161px">Comandos</th>
</tr>
</thead>
<tr>
<td style="text-align: center">
<asp:TextBox ID="TxtDepartamento" runat="server" CausesValidation="true" MaxLength="50" ValidationGroup="GrpGuardar" Width="234px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVDepartamento" runat="server" ControlToValidate="TxtDepartamento" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Departamento''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCDepartamento" runat="server" HighlightCssClass="vco" TargetControlID="RFVDepartamento" Width="300px"></ajax:ValidatorCalloutExtender>
</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td style="text-align: center">
<asp:LinkButton ID="LbAgregar" runat="server" CausesValidation="true" CssClass="Texto" Text="Agregar" ValidationGroup="GrpGuardar"></asp:LinkButton></td>
</tr>
</table>--%>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" DataKeyNames="CveDepartamento,Departamento,Estatus" EmptyDataText="No se encontraron Departamentos Registrados" ToolTip="Listado de Departamentos" CssClass="table table-striped table-advance table-hover" Style="margin-top: -10px; text-align: center;width:100%" GridLines="None">
<Columns>
<asp:TemplateField HeaderText="Departamento">
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlDepartamento" runat="server" Text='<%# Eval("Departamento", "{0}") %>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="TxtDepartamento" runat="server" CausesValidation="true" MaxLength="50" Text='<%# Eval("Departamento") %>' ValidationGroup="GrpGV" Width="234px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVDepartamento" runat="server" ControlToValidate="TxtDepartamento" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Departamento''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGV"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCDepartamento" runat="server" HighlightCssClass="vco" TargetControlID="RFVDepartamento" Width="300px"></ajax:ValidatorCalloutExtender>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estatus">
<ItemTemplate>
<asp:Literal ID="LtlEstatus" runat="server" Text='<%# Eval("Estatus") %>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:CheckBox ID="ChkEstatus" runat="server" Checked='<%# If (Eval("Estatus").ToString = "Activo", True, False) %>' />
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha">
<ItemTemplate>
<asp:Literal ID="LtlFecha" runat="server" Text='<%# Eval("FechaIng", "{0:d}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Usuario">
<ItemTemplate>
<asp:Literal ID="LtlUsuario" runat="server" Text='<%# Eval("Usuario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Editar">
<EditItemTemplate>
<center>
<asp:LinkButton ID="imgU" runat="server" AlternateText="Actualizar" CausesValidation="True" CommandName="Update" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-check'></i>" ValidationGroup="GrpGV" />
&nbsp;<asp:LinkButton ID="imgC" runat="server" AlternateText="Cancelar" CausesValidation="False" CommandName="Cancel" CssClass="btn btn-circle btn-sm red" Text="<i class='fa fa-times'></i>" />
</center>
</EditItemTemplate>
<ItemTemplate>
<asp:LinkButton OnClick="GvDatos_RowEditing" ID="imgE" runat="server" AlternateText="Editar" CausesValidation="False" CommandName="Edit" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Eliminar">
<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="Confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" />
<AlternatingRowStyle CssClass="TextoAlterno" />
</asp:GridView>
<!-- Aquí esta la ventana modal en la que estas trabajando antonio#############################################################################################-->
<div id="DivAgregarDepartamento" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalTiposD" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloModalTiposD" runat="server">Agregar Departamento</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="DepartamentoNewTxt" CssClass="form-control " runat="server" MaxLength="70" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvTxtTiposD" runat="server" ControlToValidate="DepartamentoNewTxt" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTiposD"></asp:RequiredFieldValidator>
<label for="DepartamentoNewTxt">Nombre de Departamento:</label>
<i></i>
</div>
<br ID="saltoDeLinea" runat="server"/>
<div ID="CheckActiveSection" runat="server" class="form-group form-md-line-input input-iconright">
<label for="ChkEstatus">Activo:</label>&nbsp;
<asp:CheckBox ID="ChkEstatus" runat="server" CssClass="make-switchsd" data-size="small" Text=" " Checked="true" />
<i></i>
</div>
<br />
</div>
<div class="modal-footer">
<asp:Button ID="BtnAgregarTiposDModal" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpTiposD" />
<asp:Button ID="BtnEditarTiposDModal" runat="server" class="btn btn-success" Text="Confirmar" ValidationGroup="GrpTiposD" />
<button id="Button3" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

207
RH/CatDepartamentos.aspx.vb Normal file
View File

@@ -0,0 +1,207 @@
Option Explicit On
Option Strict On
Imports System.Data
Imports System.Linq
Imports Extensiones
Partial Class RH_CatDepartamentos
Inherits ClsPaginas
Private Property CveDepartamentoAEditar() As Integer 'Guardamos el ID de registro para saber cual registro Editar
Get
Return If(IsNothing(ViewState("CveDepartamentoAEditar")), -1, CInt(ViewState("CveDepartamentoAEditar")))
End Get
Set
ViewState("CveDepartamentoAEditar") = Value
End Set
End Property
Public Property PuedeEditar As Boolean
Get
Return CBool(ViewState("PuedeEditar"))
End Get
Set(value As Boolean)
ViewState("PuedeEditar") = value
End Set
End Property
Public Property PuedeEliminar As Boolean
Get
Return CBool(ViewState("PuedeEditar"))
End Get
Set(value As Boolean)
ViewState("PuedeEditar") = value
End Set
End Property
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
ViewState("Orden") = ""
CargaDatos()
End If
End Sub
Public Sub CargaDatos()
Dim ObjDepartamentos As New ClsRH
If ObjDepartamentos.GetDepartamentos() Then
ViewState("DTDepartamentos") = ObjDepartamentos.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GlobalDTDepartamentos = ObjDepartamentos.DtResultados
Else
Me.GvDatos.DataSource = Nothing
End If
ObjDepartamentos.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub BtnAgregarMotivo_Click(sender As Object, e As EventArgs) Handles BtnAgregarDepartamento.Click 'Hacemos aparecer la ventana modal con los campos limpios
DepartamentoNewTxt.Text = ""
ChkEstatus.Checked = True
BtnEditarTiposDModal.Visible = False
saltoDeLinea.Visible = False
CheckActiveSection.Visible = False
UpModalTiposD.Update()
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarDepartamento"))
End Sub
Protected Sub LbAgregar_Click(sender As Object, e As System.EventArgs) Handles BtnAgregarTiposDModal.Click 'esta funcion es la que agrega un nuevo motivo de baja se activa con el boton "Agregar de la ventana modal"
Dim ObjDepartamentos As New ClsRH
If ObjDepartamentos.AddDepartamento(DepartamentoNewTxt.Text.Trim, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
DepartamentoNewTxt.Text = ""
Alert("El nuevo Departamento se guardó correctamente.", TipoMensaje.MsgInformacion)
UpTitulos.Update()
ViewState("DTDepartamentos") = ObjDepartamentos.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GlobalDTDepartamentos = ObjDepartamentos.DtResultados
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End If
ObjDepartamentos.Dispose()
End Sub
#Region "G V D A T O S"
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.RowIndex = 0 Then
e.Row.Cells(0).Width = Unit.Pixel(250)
e.Row.Cells(1).Width = Unit.Pixel(100)
e.Row.Cells(2).Width = Unit.Pixel(100)
e.Row.Cells(3).Width = Unit.Pixel(100)
e.Row.Cells(4).Width = Unit.Pixel(100)
e.Row.Cells(5).Width = Unit.Pixel(61)
End If
e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left
End If
End Sub
Protected Sub GvDatos_RowDeleting(sender As Object, e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles GvDatos.RowDeleting
Dim ObjDepartamentos As New ClsRH
If ObjDepartamentos.RemoveDepartamento(GvDatos.DataKeys(e.RowIndex).Value.ToString.ToEntero) Then
GvDatos.EditIndex = -1
ViewState("DTDepartamentos") = ObjDepartamentos.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GlobalDTDepartamentos = ObjDepartamentos.DtResultados
Alert("El Departamento se eliminó correctamente.", TipoMensaje.MsgInformacion)
End If
ObjDepartamentos.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowCancelingEdit(sender As Object, e As System.Web.UI.WebControls.GridViewCancelEditEventArgs) Handles GvDatos.RowCancelingEdit
GvDatos.EditIndex = -1
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowUpdating(sender As Object, e As EventArgs) Handles BtnEditarTiposDModal.Click '(Leer primero "GvDatos_RowEditing")Se manda la informacion a un procedmiento que hace la actualizacion
Dim ObjDepartamentos As New ClsRH
Dim Departamento As String = DepartamentoNewTxt.Text
Dim Estatus As Boolean = ChkEstatus.Checked
Dim CveDepartamento As Integer = CveDepartamentoAEditar 'aquí obtenemos el valor de la propiedad que utilizamos en el metodo "GvDatos_RowEditing"
If ObjDepartamentos.UpdateDepartamento(Departamento, Estatus, CveDepartamento) Then
GvDatos.EditIndex = -1
ViewState("DTDepartamentos") = ObjDepartamentos.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GlobalDTDepartamentos = ObjDepartamentos.DtResultados
Alert("Los cambios se guardaron correctamente.", TipoMensaje.MsgInformacion)
End If
ObjDepartamentos.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Public Sub GvDatos_RowEditing(sender As Object, e As EventArgs) 'Este metodo muestra la pantalla modal con la información del renglon ya puesta en los campos del formulario
BtnAgregarTiposDModal.Visible = False
BtnEditarTiposDModal.Visible = True
saltoDeLinea.Visible = True
CheckActiveSection.Visible = True
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) 'obtenemos el renglon que acabamos de seleccionar
ChkEstatus.Checked = If(GvRow.DataKey("Estatus") = "Activo", True, False)
DepartamentoNewTxt.Text = GvRow.DataKey("Departamento")
CveDepartamentoAEditar = Convert.ToInt32(GvRow.DataKey("CveDepartamento"))
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarDepartamento"))
End Sub
#End Region
#Region "O R D E N A M I E N T O"
Protected Sub LbOrden_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim Orden As String = ""
Dim Campo As String = ""
Dim Literal As Literal = Nothing
Const OrdenInicial As String = ""
Dim Arg(2) As String
Arg = CType(sender, LinkButton).CommandArgument().ToString.Split(";"c)
Campo = Arg(0)
Literal = CType(CType(sender, LinkButton).NamingContainer.FindControl("Img" & Campo.Replace(",", "_")), Literal)
If ViewState(String.Format("O{0}", Campo)) IsNot Nothing AndAlso ViewState(String.Format("O{0}", Campo)).ToString = String.Format("{0} DESC", Campo) Then
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} ASC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-asc' style='color:#999' ></i>")
Else
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} DESC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-desc' style='color:#999' ></i>")
End If
Orden = OrdenInicial & ViewState(String.Format("O{0}", Campo)).ToString
ViewState("Orden") = Orden
CargaGrid(Orden)
End Sub
Private Sub CargaGrid(Orden As String)
If Orden <> String.Empty Then
Dim DV As New DataView(CType(ViewState("DTDepartamentos"), DataTable), "", Orden, DataViewRowState.CurrentRows)
GvDatos.DataSource = DV.ToTable()
DV.Dispose()
Else
GvDatos.DataSource = CType(ViewState("DTDepartamentos"), DataTable)
End If
GvDatos.DataBind()
UpDatos.Update()
End Sub
#End Region
End Class

339
RH/CatDocumentos.aspx Normal file
View File

@@ -0,0 +1,339 @@
<%@ Page Title="RH - Catálogo de Documentos" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatDocumentos.aspx.vb" Inherits="RH_CatDocumentos" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<style>
#C_GvDocumentos > tbody > tr:nth-child(2) > td:nth-child(1){
min-width:275px!important;
}
</style>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="E" runat="Server">
Catálogo de Documentos
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel runat="server" ID="UpAgregar">
<ContentTemplate>
<li>
<asp:LinkButton runat="server" ID="BtnAgregarDocumento" CssClass="" data-toggle="tooltip"
data-placement="left" title="Agregar Documento." Text="<i class='fa fa-plus'></i> Agregar Documento"></asp:LinkButton>
</li>
<li>
<a data-toggle="modal" data-target="#DvTags" ><i class="fa fa-tags" ></i> Etiquetas</a>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpDatosGral" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:UpdatePanel ID="UPBtnDocumentacionNext4" runat="server">
<ContentTemplate>
<div class="portlet smmallpadding light bordered" id="DIVDocumentacion" runat="server">
<div class="portlet-title">
<div class="caption font-green">
<i class="icon-pin font-green"></i>
<span class="caption-subject bold uppercase">Documentación</span>
</div>
</div>
<div class="portlet-body form">
<asp:UpdatePanel ID="UPGvDocumentos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDocumentos" runat="server" AutoGenerateColumns="False"
DataKeyNames="CveDocumentacion,Documentacion,DocumentacionFormato,Orden,Estatus,CveDocumentacionTipo,DocumentacionTipo,Requerido,DiasLimite,AplicaDiasLimite,AplicaFechaVencimiento" EmptyDataText="No se encontraron registros de documentos" CssClass="table table-hover table-advance Widthall" GridLines="None">
<Columns>
<asp:TemplateField ItemStyle-HorizontalAlign="Left" ItemStyle-Width="60px" HeaderText="Documento">
<ItemTemplate>
<asp:Literal ID="LtlDocumentacion" runat="server" Text='<%# Eval("Documentacion") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ControlStyle-CssClass="template" ItemStyle-HorizontalAlign="Left" ItemStyle-Width="275" HeaderText="Formato">
<ItemTemplate>
<asp:Literal ID="LtlDocumentacionFormato" runat="server" Text='<%# Eval("DocumentacionFormato") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Left" HeaderText="Documentacion Tipo">
<ItemTemplate>
<asp:Literal ID="LtlDocumentacionTipo" runat="server" Text='<%# Eval("DocumentacionTipo") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Left" HeaderText="Dias Limite">
<ItemTemplate>
<asp:Literal ID="LtlDocumentacionDiasLimite" runat="server" Text='<%# If(Eval("DiasLimite").ToString() = "" Or Eval("DiasLimite").ToString() = "0", "-", Eval("DiasLimite").ToString()) %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Left" HeaderText="Aplica Limite">
<ItemTemplate>
<asp:Literal ID="LtlAplicaDiasLimite" runat="server" Text='<%# If(Eval("AplicaDiasLimite").ToString() = "1", "Si", "No") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Left" HeaderText="Aplica Vencimiento">
<ItemTemplate>
<asp:Literal ID="LtlDocumentacionAplicaFechaVencimiento" runat="server" Text='<%# If(Eval("AplicaFechaVencimiento").ToString() = "1", "Si", "No") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Left" HeaderText="Estatus">
<ItemTemplate>
<asp:Literal ID="LtlDocumentacionEstatus" runat="server" Text='<%# If(Eval("Estatus").ToString() = "True", "Activo", "Inactivo") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Left" HeaderText="Requerido">
<ItemTemplate>
<asp:Literal ID="LtlRequerido" runat="server" Text='<%# If(Eval("Requerido").ToString() = "True", "Requerido", "No requerido") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Right" HeaderText="Orden" ItemStyle-Width="100">
<ItemTemplate>
<asp:Literal ID="LtlOrden" runat="server" Text='<%# Eval("Orden") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" ItemStyle-Width="50px">
<ItemTemplate>
<asp:Literal ID="ImgDownLoad" runat="server"></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" ItemStyle-Width="50px">
<ItemTemplate>
<asp:LinkButton ID="imgE" runat="server" AlternateText="Editar" ToolTip="Editar documento" CausesValidation="False" OnClick="Edit_ClickDocumentacion"
CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil' Tittle='Editar Documento' ></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" ItemStyle-Width="50px">
<ItemTemplate>
<asp:LinkButton ID="lnkEliminar" OnClick="Remove_ClickDocumentacion" runat="server" AlternateText="Editar" ToolTip="Eliminar" CausesValidation="False"
CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash' title='Eliminar'></i>" Title="Eliminar Documento" data-toggle="confirmation" data-popout="true" data-original-title="¿Desea eliminar el documento?" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
<div class="row col-md-12 ">
<asp:LinkButton runat="server" Visible="false" CommandArgument="4" ID="BtnDocumentacionNext4" CssClass="btn btn-primary" data-toggle="tooltip" data-placement="left" ValidationGroup="GpoDocumentacion" Text="Guardar"></asp:LinkButton>
</div>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="BtnDocumentacionNext4" />
</Triggers>
</asp:UpdatePanel>
</ContentTemplate>
</asp:UpdatePanel>
<div id="divAgregarDocumentacion" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalDocumentacion" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<h4> <asp:Literal ID="LtlTituloModalDocumentacion" runat="server">Agregar Documento</asp:Literal></h4>
</h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="Txtdocumentacion" CssClass="form-control" MaxLength="100" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtdocumentacion" runat="server" ControlToValidate="Txtdocumentacion" ValidationGroup="GrpEscolaridad" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Institución''</b> es necesario, por favor ingréselo."></asp:RequiredFieldValidator>
<label for="<%= Txtdocumentacion.ClientID.ToString()%>">Documento:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlDocumentacionTipo" runat="server" Width="150" CssClass=" select2me form-control " DataValueField="CveDocumentacionTipo" DataTextField="DocumentacionTipo">
</asp:DropDownList>
<asp:RequiredFieldValidator InitialValue="-1" ID="rfvDdlDocumentacionTipo" ControlToValidate="DdlDocumentacionTipo" CssClass="help-block errorimput" ValidationGroup="GrpEscolaridad" runat="server" ErrorMessage="Seleccione una de las opciones"></asp:RequiredFieldValidator>
<label for="<%= DdlDocumentacionTipo.ClientID.ToString()%>">Tipo de documento:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtOrden" CssClass="form-control" onkeypress="validate(event)" MaxLength="3" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtOrden" runat="server" ControlToValidate="TxtOrden" ValidationGroup="GrpEscolaridad" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Institución''</b> es necesario, por favor ingréselo."></asp:RequiredFieldValidator>
<ajax:FilteredTextBoxExtender ID="filTxtOrden" runat="server" TargetControlID="TxtOrden" FilterType="Numbers" ValidChars="" />
<label for="<%= TxtOrden.ClientID.ToString()%>">Orden:</label>
</div>
<%-- <div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtDocumentacionFormato" CssClass="form-control" MaxLength="50" runat="server"></asp:TextBox>
<ajax:FilteredTextBoxExtender ID="filTxtDocumentacionFormato" runat="server" TargetControlID="TxtDocumentacionFormato" FilterType="Numbers, uppercaseLetters,LowercaseLetters,Custom" ValidChars="_" />
<label for="<%= TxtDocumentacionFormato.ClientID.ToString()%>">Nombre de Formato:</label>
</div>--%>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtDiasLimite" CssClass="form-control" onkeypress="validate(event)" MaxLength="2" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtDiasLimite" runat="server" ControlToValidate="TxtDiasLimite" ValidationGroup="GrpEscolaridad" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo."></asp:RequiredFieldValidator>
<ajax:FilteredTextBoxExtender ID="FilTxtDiasLimite" runat="server" TargetControlID="TxtDiasLimite" FilterType="Numbers" ValidChars="" />
<label for="<%= TxtOrden.ClientID.ToString()%>">Dias Limite:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:CheckBox ID="ChkAplicaDiasLimite" runat="server" Text ="Aplica Dias Limite" />
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:CheckBox ID="ChkAplicaFechaVencimiento" runat="server" Text ="Aplica Fecha de Vencimiento" />
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:CheckBox ID="chkRequerido" runat="server" Text ="Requerido" />
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:CheckBox ID="chkEstatus" runat="server" Text ="Activo" />
</div>
<div class="form-group form-md-line-input input-iconright ">
<div class="row ">
<div class="col-md-12">
<asp:TextBox ID="TxtFileDocumentacion" CssClass="ADSdropzone hidden" data-maxFile="1" Text="" runat="server"></asp:TextBox>
</div>
</div>
</div>
</div>
<div class="modal-footer">
<asp:Button ID="BtnAgregarDocumentoModal" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpEscolaridad" />
<button id="BtnCancelarEscolaridadModal4" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
<div id="DvTags" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpEtiquetas" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<h4> <asp:Literal ID="Literal2" runat="server">Etiquetas</asp:Literal></h4>
</h4>
</div>
<div class="modal-body">
<table class="table table-hover">
<thead>
<tr>
<th>Etiqueta</th>
<th>Descripción</th>
</tr>
</thead>
<tbody>
<tr><td>{Nombres}</td><td>Nombre</td></tr>
<tr><td>{APaterno}</td><td>Apellido Paterno</td></tr>
<tr><td>{AMaterno}</td><td>Apellido Materno</td></tr>
<tr><td>{NombreCompleto}</td><td>Nombre Completo</td></tr>
<tr><td>{RFC}</td><td></td></tr>
<tr><td>{Estatura}</td> <td></td></tr>
<tr><td>{Peso}</td><td></td></tr>
<tr><td>{LugarNacimiento}</td><td>Lugar de nacimie</td></tr>
<tr><td>{Edad}</td><td></td></tr>
<tr><td>{NombreTelEmergencia}</td><td>Nombre y telefono al presentarse una emergencia</td></tr>
<tr><td>{TipoSangre}</td><td></td></tr>
<tr><td>{SubProyecto}</td><td>Se refiere a la sucursal o centro de costos</td></tr>
<tr><td>{EstadoCivil}</td><td></td></tr>
<tr><td>{Direccion}</td><td></td></tr>
<tr><td>{Vivienda}</td><td></td></tr>
<tr><td>{ViviendaDueno}</td><td></td></tr>
<tr><td>{CreditoInfonavit}</td><td></td></tr>
<tr><td>{RentaMensual}</td><td></td></tr>
<tr><td>{TransportePublico}</td><td></td></tr>
<tr><td>{TrabajadoAnteriormente}</td><td>La persona a trabajado enteriormente en la empresa</td></tr>
<tr><td>{TrabajadoAnteriormenteObservaciones}</td><td>Detalle de trabajo enterior en empresa</td></tr>
<tr><td>{ParientesEmpresa}</td><td>Se tienen parientes en la empresa</td></tr>
<tr><td>{AcusadoDelito}</td><td></td></tr>
<tr><td>{AcusadoDelitoObservaciones}</td><td></td></tr>
<tr><td>{Calle}</td><td></td></tr>
<tr><td>{Colonia}</td><td></td></tr>
<tr><td>{CP}</td><td></td></tr>
<tr><td>{Telefono}</td><td></td></tr>
<tr><td>{Celular}</td><td></td></tr>
<tr><td>{Correo}</td><td></td></tr>
<tr><td>{NumeroSS}</td><td></td></tr>
<tr><td>{Licencia}</td><td></td></tr>
<tr><td>{CartillaMilitar}</td><td></td></tr>
<tr><td>{CURP}</td><td></td></tr>
<tr><td>{CredencialElector}</td><td></td></tr>
<tr><td>{FechaIngreso}</td><td></td></tr>
<tr><td>{Puesto}</td><td></td></tr>
<tr><td>{FechaActual}</td><td></td></tr>
<tr><td>{FechaActualDF}</td><td></td></tr>
</tbody>
</table>
</div>
<div class="modal-footer">
<button id="btnCerrarEtiquetas" runat="server" type="button" class="btn btn-Default" data-dismiss="modal">Cerrar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</div>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
<script>
function validate(evt) {
var theEvent = evt || window.event;
var key = theEvent.keyCode || theEvent.which;
key = String.fromCharCode(key);
var regex = /[0-9]|\./;
if (!regex.test(key)) {
theEvent.returnValue = false;
if (theEvent.preventDefault) theEvent.preventDefault();
}
}
</script>
</asp:Content>

408
RH/CatDocumentos.aspx.vb Normal file
View File

@@ -0,0 +1,408 @@

Imports System.Data
Imports System.Linq
Imports Extensiones
Imports System.IO
Partial Class RH_CatDocumentos
Inherits ClsPaginas
Private Property DTDocumentacion As DataTable
Get
If ViewState("DTDocumentacion") Is Nothing Then
Return New DataTable
Else
Return DirectCast(ViewState("DTDocumentacion"), DataTable)
End If
End Get
Set(value As DataTable)
ViewState("DTDocumentacion") = value
End Set
End Property
Property Documentacion As String
Get
If ViewState("Documentacion") Is Nothing Then
Return "-1"
Else
Return ViewState("Documentacion").ToString
End If
End Get
Set(value As String)
ViewState("Documentacion") = value
End Set
End Property
Property CveDocumentacion As Integer
Get
If ViewState("CveDocumentacion") Is Nothing Then
Return -1
Else
Return DirectCast(ViewState("CveDocumentacion"), Integer)
End If
End Get
Set(value As Integer)
ViewState("CveDocumentacion") = value
End Set
End Property
Private Property DocumentacionTipo As String
Get
If ViewState("DocumentacionTipo") Is Nothing Then
Return ""
Else
Return ViewState("DocumentacionTipo").ToString
End If
End Get
Set(value As String)
End Set
End Property
Private Property CveDocumentacionTipo As Integer
Get
If ViewState("CveDocumentacionTipo") Is Nothing Then
Return -1
Else
Return DirectCast(ViewState("CveDocumentacionTipo"), Integer)
End If
End Get
Set(value As Integer)
ViewState("CveDocumentacionTipo") = value
End Set
End Property
Property ActualizarDocumentacion As Boolean
Get
If ViewState("ActualizarDocumentacion") Is Nothing Then
Return True
Else
Return DirectCast(ViewState("ActualizarDocumentacion"), Boolean)
End If
End Get
Set(value As Boolean)
ViewState("ActualizarDocumentacion") = value
End Set
End Property
Property Estatus As Boolean
Get
If ViewState("Estatus") Is Nothing Then
Return 0
Else
Return DirectCast(ViewState("Estatus"), Boolean)
End If
End Get
Set(value As Boolean)
ViewState("Estatus") = value
End Set
End Property
Property DocumentacionFormato As String
Get
If ViewState("DocumentacionFormato") Is Nothing Then
Return ""
Else
Return ViewState("DocumentacionFormato").ToString
End If
End Get
Set(value As String)
ViewState("DocumentacionFormato") = value
End Set
End Property
Property Requerido As Boolean
Get
If ViewState("Requerido") Is Nothing Then
Return True
Else
Return DirectCast(ViewState("Requerido"), Boolean)
End If
End Get
Set(value As Boolean)
ViewState("Requerido") = value
End Set
End Property
Property Orden As Integer
Get
If ViewState("Orden") Is Nothing Then
Return -1
Else
Return DirectCast(ViewState("Orden"), Integer)
End If
End Get
Set(value As Integer)
ViewState("Orden") = value
End Set
End Property
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
cargaDocumentacion()
cargaComboDocumentacion()
End If
End Sub
#Region "D O C U M E N T A C I O N"
Protected Sub BtnAgregarDocumento_Click(sender As Object, e As EventArgs) Handles BtnAgregarDocumento.Click
resetFormDocumentacion()
RegistraScript("$('#divAgregarDocumentacion').modal({ backdrop: 'static', keyboard: false});")
End Sub
Private Sub ResetFormDocumentacion()
Txtdocumentacion.Text = ""
TxtOrden.Text = ""
BtnAgregarDocumentoModal.Text = "Agregar"
LtlTituloModalDocumentacion.Text = "Agregar documentación"
'TxtDocumentacionFormato.Text = ""
DdlDocumentacionTipo.SelectedIndex = 0
chkEstatus.Checked = True
chkRequerido.Checked = True
ActualizarDocumentacion = False
UpModalDocumentacion.Update()
End Sub
Private Sub CargaDocumentacion()
Dim objRH As New ClsEdocumentacion
If objRH.DocumentacionGet(-1, -1, -1, UsuarioActual.Empresa.CveEmpresa) Then
DTDocumentacion = objRH.DtResultados
GvDocumentos.DataSource = objRH.DtResultados
Else
DTDocumentacion = Nothing
GvDocumentos.DataSource = Nothing
End If
objRH.Dispose()
GvDocumentos.DataBind()
UPGvDocumentos.Update()
End Sub
Private Sub CargaComboDocumentacion()
Dim objDocumentacion As New ClsEdocumentacion
If objDocumentacion.DocumentacionTipoGet(UsuarioActual.CveEmpresa) Then
DdlDocumentacionTipo.DataSource = objDocumentacion.DtResultados
End If
objDocumentacion.Dispose()
DdlDocumentacionTipo.DataBind()
DdlDocumentacionTipo.Items.Insert(0, New ListItem("Seleccione un tipo", "-1"))
End Sub
Public Sub Edit_ClickDocumentacion(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
CveDocumentacion = GvRow.DataKey("CveDocumentacion")
Documentacion = GvRow.DataKey("Documentacion")
DocumentacionFormato = GvRow.DataKey("DocumentacionFormato")
CveDocumentacionTipo = GvRow.DataKey("CveDocumentacionTipo")
DocumentacionTipo = GvRow.DataKey("DocumentacionTipo")
Orden = GvRow.DataKey("Orden")
Estatus = GvRow.DataKey("Estatus")
Requerido = GvRow.DataKey("Requerido")
Txtdocumentacion.Text = Documentacion
TxtOrden.Text = Orden
TxtDiasLimite.Text = GvRow.DataKey("DiasLimite")
ChkAplicaDiasLimite.Checked = GvRow.DataKey("AplicaDiasLimite")
ChkAplicaFechaVencimiento.Checked = GvRow.DataKey("AplicaFechaVencimiento")
DdlDocumentacionTipo.SelectedValueExist(CveDocumentacionTipo)
chkEstatus.Checked = Estatus
chkRequerido.Checked = Requerido
LtlTituloModalDocumentacion.Text = "Actualizar Documento: " & Documentacion
BtnAgregarDocumentoModal.Text = "Actualizar"
UpModalDocumentacion.Update()
ActualizarDocumentacion = True
RegistraScript("$('#divAgregarDocumentacion').modal({ backdrop: 'static', keyboard: false});")
End Sub
Private Function GuardarArchivo(_CveDocumentacion As Integer) As String
Dim respuesta As String = ""
Dim FileExtension As String = "-1"
Dim Filesgral As List(Of Archivo) = TxtFileDocumentacion.getfiles().Archivos
Dim Filename As String = ""
For Each fileItem As Archivo In Filesgral
Try
respuesta = fileItem.filenameO
FileExtension = IO.Path.GetExtension(String.Format("{0}Temp\{1}", AppDomain.CurrentDomain.BaseDirectory, fileItem.filename)).Replace(".", "")
Dim tempArray() As String
tempArray = fileItem.filename.ToString().Split("-".ToCharArray())
Dim rutaDestino As String = UsuarioActual.Empresa.Ruta & "Formatos\" & _CveDocumentacion & "_" & fileItem.filenameO
Dim docAnterior As String = UsuarioActual.Empresa.Ruta & "Formatos\" & _CveDocumentacion & "_" & DocumentacionFormato
If DocumentacionFormato.Trim.Length > 0 Then
If File.Exists(docAnterior) Then
File.Delete(docAnterior)
End If
End If
If Not Directory.Exists(UsuarioActual.Empresa.Ruta & "\Formatos") Then
Directory.CreateDirectory(UsuarioActual.Empresa.Ruta & "\Formatos")
End If
If System.IO.File.Exists(rutaDestino) Then
System.IO.File.Delete(rutaDestino)
End If
System.IO.File.Move(fileItem.FileUrl, rutaDestino)
Catch ex As Exception
OnError("Error al cargar archivo", ex)
End Try
TxtFileDocumentacion.Text = ""
UpModalDocumentacion.Update()
Next
Return respuesta
End Function
Public Sub Remove_ClickDocumentacion(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim _CveDocumentacion As Integer = GvRow.DataKey("CveDocumentacion")
Dim _documetacionFormato As String = GvRow.DataKey("DocumentacionFormato")
Dim objEdoc As New ClsEdocumentacion
If objEdoc.DocumentacionRemove(_CveDocumentacion, UsuarioActual.Empresa.CveEmpresa) Then
EliminarDocumentoDisco(_documetacionFormato)
Alert("Documento eliminado correctamente", TipoMensaje.MsgInformacion)
cargaDocumentacion()
End If
End Sub
Private Sub EliminarDocumentoDisco(documento As String)
Dim archivo As String = UsuarioActual.Empresa.Ruta & "Formatos\" & documento
If File.Exists(archivo) Then
File.Delete(archivo)
End If
End Sub
Protected Sub BtnAgregarDocumentoModal_Click(sender As Object, e As EventArgs) Handles BtnAgregarDocumentoModal.Click
Dim objRH As New ClsEdocumentacion
Dim intCompleto As Integer = 0
Dim _estatus As Integer = 0
Dim _requerido As Integer = 0
Dim _formato As String = ""
If chkEstatus.Checked Then
_estatus = 1
End If
If chkRequerido.Checked Then
_requerido = 1
End If
If ActualizarDocumentacion Then
_formato = GuardarArchivo(CveDocumentacion)
If objRH.DocumentacionUpdate(CveDocumentacion, Txtdocumentacion.Text.Trim, _formato, DdlDocumentacionTipo.SelectedValue.ToEntero, _estatus, TxtOrden.Text.ToEntero, _requerido, TxtDiasLimite.Text.ToEntero, ChkAplicaDiasLimite.Checked, ChkAplicaFechaVencimiento.Checked, UsuarioActual.Empresa.CveEmpresa) Then
RegistraScript(String.Format("$('#{0}').modal('hide');", "divAgregarDocumentacion"))
Alert("Documento Actualizado correctamente.", TipoMensaje.MsgInformacion)
CargaDocumentacion()
End If
Else
If objRH.DocumentacionAdd(Txtdocumentacion.Text.Trim, _formato, DdlDocumentacionTipo.SelectedValue.ToEntero, _estatus, TxtOrden.Text.ToEntero, _requerido, TxtDiasLimite.Text.ToEntero, ChkAplicaDiasLimite.Checked, ChkAplicaFechaVencimiento.Checked, UsuarioActual.Empresa.CveEmpresa) Then
CveDocumentacion = objRH.DtResultados(0)(0).ToString.ToEntero
_formato = GuardarArchivo(CveDocumentacion)
If objRH.DocumentacionUpdate(CveDocumentacion, Txtdocumentacion.Text.Trim, _formato, DdlDocumentacionTipo.SelectedValue.ToEntero, _estatus, TxtOrden.Text.ToEntero, _requerido, TxtDiasLimite.Text.ToEntero, ChkAplicaDiasLimite.Checked, ChkAplicaFechaVencimiento.Checked, UsuarioActual.Empresa.CveEmpresa) Then
End If
RegistraScript(String.Format("$('#{0}').modal('hide');", "divAgregarDocumentacion"))
Alert("Documento agregado correctamente.", TipoMensaje.MsgInformacion)
CargaDocumentacion()
End If
End If
ActualizarDocumentacion = False
End Sub
Protected Sub GvDocumentos_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvDocumentos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
Dim _CveDocumentacion As Integer = e.Row.DBCampo("CveDocumentacion").ToString.ToEntero
Dim DocumetacionFormato As String = e.Row.DBCampo("DocumentacionFormato").ToString
Dim ImgDownLoad As Literal = e.Row.FCLiteral("ImgDownLoad")
Dim separado As Char() = {"."}
Dim array() As String = DocumetacionFormato.Split(separado)
Dim extencion As String = ""
If array.Length > 0 Then
extencion = array(array.Length - 1)
End If
If DocumetacionFormato.Trim.Length > 0 Then
Dim linkDescarga = "/Empresas/" & UsuarioActual.Empresa.CveEmpresa & "/Formatos/" & _CveDocumentacion & "_" & DocumetacionFormato
Dim linkDescargaArchivo = UsuarioActual.Empresa.Ruta & "\Formatos\" & _CveDocumentacion & "_" & DocumetacionFormato
If File.Exists(linkDescargaArchivo) Then
ImgDownLoad.Visible = True
If extencion.Length > 0 Then
ImgDownLoad.Text = String.Format(" <a class='btn btn-circle btn-sm blue' href='{0}' target='_black' download='{1}'><i class='fa fa-download' title='Descargar Formato'></i></a>", linkDescarga, DocumetacionFormato)
Else
ImgDownLoad.Text = String.Format(" <a class='btn btn-circle btn-sm blue' href='{0}' target='_black' download='{1}'><i class='fa fa-download' title='Descargar Formato'></i></a>", linkDescarga, DocumetacionFormato)
End If
Else
ImgDownLoad.Visible = False
End If
Else
ImgDownLoad.Visible = False
End If
End If
End Sub
#End Region
End Class

121
RH/CatEscolaridad.aspx Normal file
View File

@@ -0,0 +1,121 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatEscolaridad.aspx.vb" Inherits="RH_CatEscolaridad" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<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 Escolaridades
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel runat="server" ID="UpAgregar">
<ContentTemplate>
<li>
<asp:LinkButton runat="server" ID="BtnAgregarEscolaridad" data-toggle="tooltip" data-placement="left" title="Agregar un Defecto" Text="<i class='fa fa-plus'></i> Agregar Escolaridad"></asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpTitulos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" DataKeyNames="CveEscolaridad,Escolaridad,Estatus" EmptyDataText="No se encontraron Escolaridades Registradas" ToolTip="Listado de Escolaridades" CssClass="table table-striped table-advance table-hover" Style="margin-top: -10px; text-align: center;width:100%" GridLines="None">
<Columns>
<asp:TemplateField HeaderText="Escolaridad">
<ItemTemplate>
<asp:Literal ID="LtlEscolaridad" runat="server" Text='<%# Eval("Escolaridad", "&nbsp;{0}") %>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="TxtEscolaridad" runat="server" CausesValidation="true" MaxLength="50" Text='<%# Eval("Escolaridad") %>' ValidationGroup="GrpGV" Width="234px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVEscolaridad" runat="server" ControlToValidate="TxtEscolaridad" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Escolaridad''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGV"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEscolaridad" runat="server" HighlightCssClass="vco" TargetControlID="RFVEscolaridad" Width="300px"></ajax:ValidatorCalloutExtender>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText ="Estatus">
<ItemTemplate>
<asp:Literal ID="LtlEstado" runat="server" Text='<%# Eval("Estatus") %>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:CheckBox ID="ChkEstado" runat="server" Checked='<%# If (Eval("Estatus").ToString = "Activo", True, False) %>' />
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha">
<ItemTemplate>
<asp:Literal ID="LtlFecha" runat="server" Text='<%# Eval("FechaIng", "{0:d}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Usuario">
<ItemTemplate>
<asp:Literal ID="LtlUsuario" runat="server" Text='<%# Eval("Usuario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Editar">
<EditItemTemplate>
<center>
<asp:LinkButton ID="imgU" runat="server" AlternateText="Actualizar" CausesValidation="True" CommandName="Update" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-check'></i>" ValidationGroup="GrpGV" />
&nbsp;<asp:LinkButton ID="imgC" runat="server" AlternateText="Cancelar" CausesValidation="False" CommandName="Cancel" CssClass="btn btn-circle btn-sm red" Text="<i class='fa fa-times'></i>" />
</center>
</EditItemTemplate>
<ItemTemplate>
<asp:LinkButton OnClick="GvDatos_RowEditing" ID="imgE" runat="server" AlternateText="Editar" CausesValidation="False" CommandName="Edit" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Eliminar">
<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="Confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" />
<AlternatingRowStyle CssClass="TextoAlterno" />
</asp:GridView>
<!-- Aquí esta la ventana modal##########################################################################################################################-->
<div id="DivAgregarTiposD" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalTiposD" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloModalTiposD" runat="server">Escolaridad</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="EscolaridadTxt" CssClass="form-control " runat="server" MaxLength="70" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvTxtTiposD" runat="server" ControlToValidate="EscolaridadTxt" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTiposD"></asp:RequiredFieldValidator>
<label for="MotivoTxt">Escolaridad:</label>
<i></i>
</div>
<br ID="saltoDeLinea" runat="server" />
<div ID="CheckActiveSection" runat="server" class="form-group form-md-line-input input-iconright">
<label for="ChkEstatus">Activo:</label>&nbsp;
<asp:CheckBox ID="ChkEstatus" runat="server" CssClass="make-switchsd" data-size="small" Text=" " Checked="true" />
<i></i>
</div>
</div>
<br />
<div class="modal-footer">
<asp:Button ID="BtnAgregarTiposDModal" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpTiposD" />
<asp:Button ID="BtnEditarTiposDModal" runat="server" class="btn btn-success" Text="Confirmar" ValidationGroup="GrpTiposD" />
<button id="Button3" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

216
RH/CatEscolaridad.aspx.vb Normal file
View File

@@ -0,0 +1,216 @@
Option Explicit On
Option Strict On
Imports System.Data
Imports System.Linq
Imports Extensiones
Partial Class RH_CatEscolaridad
Inherits ClsPaginas
Private Property CveEscolaridadAEditar() As Integer 'Guardamos el ID de registro para saber cual registro Editar
Get
Return If(IsNothing(ViewState("CveEscolaridadAEditar")), -1, CInt(ViewState("CveEscolaridadAEditar")))
End Get
Set
ViewState("CveEscolaridadAEditar") = Value
End Set
End Property
Public Property PuedeEditar As Boolean
Get
Return CBool(ViewState("PuedeEditar"))
End Get
Set(value As Boolean)
ViewState("PuedeEditar") = value
End Set
End Property
Public Property PuedeEliminar As Boolean
Get
Return CBool(ViewState("PuedeEditar"))
End Get
Set(value As Boolean)
ViewState("PuedeEditar") = value
End Set
End Property
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
ViewState("Orden") = ""
CargaDatos()
''Permiso Registro
'If PermisoRegistro Then
' LbAgregar.Enabled = True
'Else
' LbAgregar.Enabled = False
'End If
End If
End Sub
Public Sub CargaDatos()
Dim ObjEscolaridades As New ClsRH
If ObjEscolaridades.GetEscolaridades() Then
ViewState("DTEscolaridades") = ObjEscolaridades.DtResultados
GlobalDTEscolaridad = ObjEscolaridades.DtResultados
Else
Me.GvDatos.DataSource = Nothing
End If
ObjEscolaridades.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub BtnAgregarMotivo_Click(sender As Object, e As EventArgs) Handles BtnAgregarEscolaridad.Click 'Hacemos aparecer la ventana modal con los campos limpios
BtnEditarTiposDModal.Visible = False
BtnAgregarTiposDModal.Visible = True
CheckActiveSection.Visible = False
saltoDeLinea.Visible = False
EscolaridadTxt.Text = ""
UpModalTiposD.Update()
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarTiposD"))
End Sub
Protected Sub LbAgregar_Click(sender As Object, e As System.EventArgs) Handles BtnAgregarTiposDModal.Click 'esta funcion es la que agrega un nuevo motivo de baja se activa con el boton "Agregar" de la ventana modal"
Dim ObjEscolaridades As New ClsRH
If ObjEscolaridades.AddEscolaridad(EscolaridadTxt.Text.Trim, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
EscolaridadTxt.Text = ""
Alert("La nueva Escolaridad se guardó correctamente.", TipoMensaje.MsgInformacion)
UpTitulos.Update()
ViewState("DTEscolaridades") = ObjEscolaridades.DtResultados
GlobalDTEscolaridad = ObjEscolaridades.DtResultados
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End If
ObjEscolaridades.Dispose()
End Sub
#Region "G V D A T O S"
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.RowIndex = 0 Then
e.Row.Cells(0).Width = Unit.Pixel(250)
e.Row.Cells(1).Width = Unit.Pixel(100)
e.Row.Cells(2).Width = Unit.Pixel(100)
e.Row.Cells(3).Width = Unit.Pixel(100)
e.Row.Cells(4).Width = Unit.Pixel(100)
e.Row.Cells(5).Width = Unit.Pixel(61)
End If
e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left
End If
End Sub
Protected Sub GvDatos_RowDeleting(sender As Object, e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles GvDatos.RowDeleting
Dim ObjEscolaridades As New ClsRH
If ObjEscolaridades.RemoveEscolaridad(GvDatos.DataKeys(e.RowIndex).Value.ToString.ToEntero) Then
GvDatos.EditIndex = -1
ViewState("DTEscolaridades") = ObjEscolaridades.DtResultados
GlobalDTEscolaridad = ObjEscolaridades.DtResultados
Alert("La Escolaridad se eliminó correctamente.", TipoMensaje.MsgInformacion)
End If
ObjEscolaridades.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowCancelingEdit(sender As Object, e As System.Web.UI.WebControls.GridViewCancelEditEventArgs) Handles GvDatos.RowCancelingEdit
GvDatos.EditIndex = -1
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Public Sub GvDatos_RowUpdating(sender As Object, e As EventArgs) Handles BtnEditarTiposDModal.Click '(Leer primero "GvDatos_RowEditing")Se manda la informacion a un procedmiento que hace la actualizacion
Dim ObjEscolaridades As New ClsRH
Dim Escolaridad As String = EscolaridadTxt.Text.Trim
Dim Estatus As Boolean = ChkEstatus.Checked
Dim CveEscolaridad As Integer = CveEscolaridadAEditar
If ObjEscolaridades.UpdateEscolaridad(Escolaridad, Estatus, CveEscolaridad) Then
GvDatos.EditIndex = -1
ViewState("DTEscolaridades") = ObjEscolaridades.DtResultados
GlobalDTEscolaridad = ObjEscolaridades.DtResultados
Alert("Los cambios se guardaron correctamente.", TipoMensaje.MsgInformacion)
End If
ObjEscolaridades.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Public Sub GvDatos_RowEditing(sender As Object, e As EventArgs) 'Este metodo muestra la pantalla modal con la información del renglon ya puesta en los campos del formulario
BtnAgregarTiposDModal.Visible = False
BtnEditarTiposDModal.Visible = True
CheckActiveSection.Visible = True
saltoDeLinea.Visible = True
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) 'obtenemos el renglon que acabamos de seleccionar
EscolaridadTxt.Text = GvRow.DataKey("Escolaridad")
ChkEstatus.Checked = If(GvRow.DataKey("Estatus") = "Activo", True, False)
CveEscolaridadAEditar = Convert.ToInt32(GvRow.DataKey("CveEscolaridad")) 'Guardamos en una propiedad el id del registro del cual haremos cambios, se guarda y se utiliza en el metodo "GvDatos_RowUpdating"
UpDatos.Update()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarTiposD"))
End Sub
#End Region
#Region "O R D E N A M I E N T O"
Protected Sub LbOrden_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim Orden As String = ""
Dim Campo As String = ""
Dim Literal As Literal = Nothing
Const OrdenInicial As String = ""
Dim Arg(2) As String
Arg = CType(sender, LinkButton).CommandArgument().ToString.Split(";"c)
Campo = Arg(0)
Literal = CType(CType(sender, LinkButton).NamingContainer.FindControl("Img" & Campo.Replace(",", "_")), Literal)
If ViewState(String.Format("O{0}", Campo)) IsNot Nothing AndAlso ViewState(String.Format("O{0}", Campo)).ToString = String.Format("{0} DESC", Campo) Then
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} ASC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-asc' style='color:#999' ></i>")
Else
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} DESC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-desc' style='color:#999' ></i>")
End If
Orden = OrdenInicial & ViewState(String.Format("O{0}", Campo)).ToString
ViewState("Orden") = Orden
CargaGrid(Orden)
End Sub
Private Sub CargaGrid(Orden As String)
If Orden <> String.Empty Then
Dim DV As New DataView(CType(ViewState("DTEscolaridades"), DataTable), "", Orden, DataViewRowState.CurrentRows)
GvDatos.DataSource = DV.ToTable()
DV.Dispose()
Else
GvDatos.DataSource = CType(ViewState("DTEscolaridades"), DataTable)
End If
GvDatos.DataBind()
UpDatos.Update()
End Sub
#End Region
End Class

122
RH/CatEstadoCivil.aspx Normal file
View File

@@ -0,0 +1,122 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatEstadoCivil.aspx.vb" Inherits="RH_CatEstadoCivil" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<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 Estado Civil
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel runat="server" ID="UpAgregar">
<ContentTemplate>
<li>
<asp:LinkButton runat="server" ID="BtnAgregarOpenModal" data-toggle="tooltip" data-placement="left" title="Agregar un Defecto" Text="<i class='fa fa-plus'></i> Agregar Estado Civil"></asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpTitulos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" DataKeyNames="CveEstadoCivil,EstadoCivil,Estatus" EmptyDataText="No se encontraron Estado Civil Registrados" ToolTip="Listado de Estado Civil" CssClass="table table-striped table-advance table-hover" Style="margin-top: -10px; text-align: center;width:100%" GridLines="None">
<Columns>
<asp:TemplateField HeaderText="Estado Civil">
<ItemTemplate>
<asp:Literal ID="LtlEstadoCivil" runat="server" Text='<%# Eval("EstadoCivil", "&nbsp;{0}") %>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="TxtEstadoCivil" runat="server" CausesValidation="true" MaxLength="50" Text='<%# Eval("EstadoCivil") %>' ValidationGroup="GrpGV" Width="234px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVEstadoCivil" runat="server" ControlToValidate="TxtEstadoCivil" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Estado Civil''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGV"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEstadoCivil" runat="server" HighlightCssClass="vco" TargetControlID="RFVEstadoCivil" Width="300px"></ajax:ValidatorCalloutExtender>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estatus">
<ItemTemplate>
<asp:Literal ID="LtlEstado" runat="server" Text='<%# Eval("Estatus") %>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:CheckBox ID="ChkEstado" runat="server" Checked='<%# If (Eval("Estatus").ToString = "Activo", True, False) %>' />
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha">
<ItemTemplate>
<asp:Literal ID="LtlFecha" runat="server" Text='<%# Eval("FechaIng", "{0:d}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Usuario">
<ItemTemplate>
<asp:Literal ID="LtlUsuario" runat="server" Text='<%# Eval("Usuario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Editar">
<EditItemTemplate>
<center>
<asp:LinkButton ID="imgU" runat="server" AlternateText="Actualizar" CausesValidation="True" CommandName="Update" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-check'></i>" ValidationGroup="GrpGV" />
&nbsp;<asp:LinkButton ID="imgC" runat="server" AlternateText="Cancelar" CausesValidation="False" CommandName="Cancel" CssClass="btn btn-circle btn-sm red" Text="<i class='fa fa-times'></i>" />
</center>
</EditItemTemplate>
<ItemTemplate>
<asp:LinkButton OnClick="GvDatos_RowEditing" ID="imgE" runat="server" AlternateText="Editar" CausesValidation="False" CommandName="Edit" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Eliminar">
<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="Confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" />
<AlternatingRowStyle CssClass="TextoAlterno" />
</asp:GridView>
<div id="DivAgregarTiposD" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalTiposD" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloModalTiposD" runat="server">Estado Civil</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="EstadoCivilTxt" CssClass="form-control " runat="server" MaxLength="70" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvTxtTiposD" runat="server" ControlToValidate="EstadoCivilTxt" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTiposD"></asp:RequiredFieldValidator>
<label for="EstadoCivilTxt">Estado Civil:</label>
<i></i>
</div>
<br ID="saltoDeLinea" runat="server" />
<div ID="CheckActiveSection" runat="server" class="form-group form-md-line-input input-iconright">
<label for="ChkEstatus">Activo:</label>&nbsp;
<asp:CheckBox ID="ChkEstatus" runat="server" CssClass="make-switchsd" data-size="small" Text=" " Checked="true" />
<i></i>
</div>
</div>
<br />
<div class="modal-footer">
<asp:Button ID="BtnAgregarTiposDModal" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpTiposD" />
<asp:Button ID="BtnEditarTiposDModal" runat="server" class="btn btn-success" Text="Confirmar" ValidationGroup="GrpTiposD" />
<button id="Button3" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

210
RH/CatEstadoCivil.aspx.vb Normal file
View File

@@ -0,0 +1,210 @@
Imports System.Data
Imports System.Linq
Imports Extensiones
Partial Class RH_CatEstadoCivil
Inherits ClsPaginas
Private Property CveEstadoCivilAEditar() As Integer 'Guardamos el ID de registro para saber cual registro Editar
Get
Return If(IsNothing(ViewState("CveEstadoCivilAEditar")), -1, CInt(ViewState("CveEstadoCivilAEditar")))
End Get
Set
ViewState("CveEstadoCivilAEditar") = Value
End Set
End Property
Public Property PuedeEditar As Boolean
Get
Return CBool(ViewState("PuedeEditar"))
End Get
Set(value As Boolean)
ViewState("PuedeEditar") = value
End Set
End Property
Public Property PuedeEliminar As Boolean
Get
Return CBool(ViewState("PuedeEditar"))
End Get
Set(value As Boolean)
ViewState("PuedeEditar") = value
End Set
End Property
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
ViewState("Orden") = ""
CargaDatos()
''Permiso Registro
'If PermisoRegistro Then
' LbAgregar.Enabled = True
'Else
' LbAgregar.Enabled = False
'End If
End If
End Sub
Public Sub CargaDatos()
Dim ObjEstadoCivil As New ClsRH
If ObjEstadoCivil.GetEstadoCivil() Then
ViewState("DTEstadoCivil") = ObjEstadoCivil.DtResultados
GlobalDTEstadoCivil = ObjEstadoCivil.DtResultados
Else
Me.GvDatos.DataSource = Nothing
End If
ObjEstadoCivil.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Public Sub BtnAgregarMotivo_Click(sender As Object, e As EventArgs) Handles BtnAgregarOpenModal.Click 'Hacemos aparecer la ventana modal con los campos limpios
BtnEditarTiposDModal.Visible = False
BtnAgregarTiposDModal.Visible = True
CheckActiveSection.Visible = False
saltoDeLinea.Visible = False
EstadoCivilTxt.Text = ""
UpModalTiposD.Update()
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarTiposD"))
End Sub
Protected Sub LbAgregar_Click(sender As Object, e As System.EventArgs) Handles BtnAgregarTiposDModal.Click 'esta funcion es la que agrega un nuevo motivo de baja se activa con el boton "Agregar" de la ventana modal"
Dim ObjEstadoCivil As New ClsRH
If ObjEstadoCivil.AddEstadoCivil(EstadoCivilTxt.Text.Trim, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
EstadoCivilTxt.Text = ""
Alert("El nuevo EstadoCivil se guardó correctamente.", TipoMensaje.MsgInformacion)
UpTitulos.Update()
ViewState("DTEstadoCivil") = ObjEstadoCivil.DtResultados
GlobalDTEstadoCivil = ObjEstadoCivil.DtResultados
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End If
ObjEstadoCivil.Dispose()
End Sub
#Region "G V D A T O S"
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.RowIndex = 0 Then
e.Row.Cells(0).Width = Unit.Pixel(250)
e.Row.Cells(1).Width = Unit.Pixel(100)
e.Row.Cells(2).Width = Unit.Pixel(100)
e.Row.Cells(3).Width = Unit.Pixel(100)
e.Row.Cells(4).Width = Unit.Pixel(100)
e.Row.Cells(5).Width = Unit.Pixel(61)
End If
e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left
End If
End Sub
Protected Sub GvDatos_RowDeleting(sender As Object, e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles GvDatos.RowDeleting
Dim ObjEstadoCivil As New ClsRH
If ObjEstadoCivil.RemoveEstadoCivil(GvDatos.DataKeys(e.RowIndex).Value.ToString.ToEntero) Then
GvDatos.EditIndex = -1
ViewState("DTEstadoCivil") = ObjEstadoCivil.DtResultados
GlobalDTEstadoCivil = ObjEstadoCivil.DtResultados
Alert("El EstadoCivil se eliminó correctamente.", TipoMensaje.MsgInformacion)
End If
ObjEstadoCivil.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowCancelingEdit(sender As Object, e As System.Web.UI.WebControls.GridViewCancelEditEventArgs) Handles GvDatos.RowCancelingEdit
GvDatos.EditIndex = -1
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowUpdating(sender As Object, e As EventArgs) Handles BtnEditarTiposDModal.Click '(Leer primero "GvDatos_RowEditing")Se manda la informacion a un procedmiento que hace la actualizacion
Dim ObjEstadoCivil As New ClsRH
Dim EstadoCivil As String = EstadoCivilTxt.Text
Dim Estatus As Boolean = ChkEstatus.Checked
Dim CveEstadoCivil As Integer = CveEstadoCivilAEditar 'aquí obtenemos el valor de la propiedad que utilizamos en el metodo "GvDatos_RowEditing"
If ObjEstadoCivil.UpdateEstadoCivil(EstadoCivil, Estatus, CveEstadoCivil) Then
GvDatos.EditIndex = -1
ViewState("DTEstadoCivil") = ObjEstadoCivil.DtResultados
GlobalDTEstadoCivil = ObjEstadoCivil.DtResultados
Alert("Los cambios se guardaron correctamente.", TipoMensaje.MsgInformacion)
End If
ObjEstadoCivil.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Public Sub GvDatos_RowEditing(sender As Object, e As EventArgs) 'Este metodo muestra la pantalla modal con la información del renglon ya puesta en los campos del formulario
BtnAgregarTiposDModal.Visible = False
BtnEditarTiposDModal.Visible = True
CheckActiveSection.Visible = True
saltoDeLinea.Visible = True
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) 'obtenemos el renglon que acabamos de seleccionar
EstadoCivilTxt.Text = GvRow.DataKey("EstadoCivil")
ChkEstatus.Checked = If(GvRow.DataKey("Estatus") = "Activo", True, False)
CveEstadoCivilAEditar = GvRow.DataKey("CveEstadoCivil") 'Guardamos en una propiedad el id del registro del cual haremos cambios, se guarda y se utiliza en el metodo "GvDatos_RowUpdating"
UpDatos.Update()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarTiposD"))
End Sub
#End Region
#Region "O R D E N A M I E N T O"
Protected Sub LbOrden_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim Orden As String = ""
Dim Campo As String = ""
Dim Literal As Literal = Nothing
Const OrdenInicial As String = ""
Dim Arg(2) As String
Arg = CType(sender, LinkButton).CommandArgument().ToString.Split(";"c)
Campo = Arg(0)
Literal = CType(CType(sender, LinkButton).NamingContainer.FindControl("Img" & Campo.Replace(",", "_")), Literal)
If ViewState(String.Format("O{0}", Campo)) IsNot Nothing AndAlso ViewState(String.Format("O{0}", Campo)).ToString = String.Format("{0} DESC", Campo) Then
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} ASC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-asc' style='color:#999' ></i>")
Else
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} DESC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-desc' style='color:#999' ></i>")
End If
Orden = OrdenInicial & ViewState(String.Format("O{0}", Campo)).ToString
ViewState("Orden") = Orden
CargaGrid(Orden)
End Sub
Private Sub CargaGrid(Orden As String)
If Orden <> String.Empty Then
Dim DV As New DataView(CType(ViewState("DTEstadoCivil"), DataTable), "", Orden, DataViewRowState.CurrentRows)
GvDatos.DataSource = DV.ToTable()
DV.Dispose()
Else
GvDatos.DataSource = CType(ViewState("DTEstadoCivil"), DataTable)
End If
GvDatos.DataBind()
UpDatos.Update()
End Sub
#End Region
End Class

120
RH/CatEstatusPersonal.aspx Normal file
View File

@@ -0,0 +1,120 @@
<%@ Page Title="RH - Catálogo de Estatus de Personal" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatEstatusPersonal.aspx.vb" Inherits="RH_CatEstatusPersonal" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<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 Estatus de Personal
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel runat="server" ID="UpAgregar">
<ContentTemplate>
<li>
<asp:LinkButton runat="server" ID="BtnAgregarMotivoD" data-toggle="tooltip" data-placement="left" title="Agregar un Defecto" Text="<i class='fa fa-plus'></i> Agregar Estatus Personal"></asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpTitulos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" DataKeyNames="CveEstatusPersonal,EstatusPersonal,Estatus" EmptyDataText="No se encontraron Estatus Personal Registrados" ToolTip="Listado de Estatus Personal" CssClass="table table-striped table-advance table-hover" Style="margin-top: -10px; text-align: center;width:100%" GridLines="None">
<Columns>
<asp:TemplateField HeaderText="Estatus de Personal">
<ItemTemplate>
<asp:Literal ID="LtlEstatusPersonal" runat="server" Text='<%# Eval("EstatusPersonal", "&nbsp;{0}") %>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="TxtEstatusPersonal" runat="server" CausesValidation="true" MaxLength="50" Text='<%# Eval("EstatusPersonal") %>' ValidationGroup="GrpGV" Width="234px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVEstatusPersonal" runat="server" ControlToValidate="TxtEstatusPersonal" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Estatus de Personal''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGV"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEstatusPersonal" runat="server" HighlightCssClass="vco" TargetControlID="RFVEstatusPersonal" Width="300px"></ajax:ValidatorCalloutExtender>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estado">
<ItemTemplate>
<asp:Literal ID="LtlEstado" runat="server" Text='<%# Eval("Estatus") %>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:CheckBox ID="ChkEstado" runat="server" Checked='<%# If (Eval("Estatus").ToString = "Activo", True, False) %>' />
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha">
<ItemTemplate>
<asp:Literal ID="LtlFecha" runat="server" Text='<%# Eval("FechaIng", "{0:d}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Usuario">
<ItemTemplate>
<asp:Literal ID="LtlUsuario" runat="server" Text='<%# Eval("Usuario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Editar">
<EditItemTemplate>
<center>
<asp:LinkButton ID="imgU" runat="server" AlternateText="Actualizar" CausesValidation="True" CommandName="Update" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-check'></i>" ValidationGroup="GrpGV" />
&nbsp;<asp:LinkButton ID="imgC" runat="server" AlternateText="Cancelar" CausesValidation="False" CommandName="Cancel" CssClass="btn btn-circle btn-sm red" Text="<i class='fa fa-times'></i>" />
</center>
</EditItemTemplate>
<ItemTemplate>
<asp:LinkButton OnClick="GvDatos_RowEditing" ID="imgE" runat="server" AlternateText="Editar" CausesValidation="False" CommandName="Edit" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Eliminar">
<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="Confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" />
<AlternatingRowStyle CssClass="TextoAlterno" />
</asp:GridView>
<div id="DivAgregarTiposD" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalTiposD" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloModalTiposD" runat="server">Estatus de Personal</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="PersonalEstatTxt" CssClass="form-control " runat="server" MaxLength="70" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvTxtTiposD" runat="server" ControlToValidate="PersonalEstatTxt" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTiposD"></asp:RequiredFieldValidator>
<label for="PersonalEstatTxt">Estatus:</label>
<i></i>
</div>
<br ID="saltoDeLinea" runat="server" />
<div ID="CheckActiveSection" runat="server" class="form-group form-md-line-input input-iconright">
<label for="ChkEstatus">Activo:</label>&nbsp;
<asp:CheckBox ID="ChkEstatus" runat="server" CssClass="make-switchsd" data-size="small" Text=" " Checked="true" />
<i></i>
</div>
</div>
<br />
<div class="modal-footer">
<asp:Button ID="BtnAgregarTiposDModal" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpTiposD" />
<asp:Button ID="BtnEditarTiposDModal" runat="server" class="btn btn-success" Text="Confirmar" ValidationGroup="GrpTiposD" />
<button id="Button3" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

View File

@@ -0,0 +1,216 @@

Imports System.Data
Imports System.Linq
Imports Extensiones
Partial Class RH_CatEstatusPersonal
Inherits ClsPaginas
Private Property CveEstatusPerAEditar() As Integer 'Guardamos el ID de registro para saber cual registro Editar
Get
Return If(IsNothing(ViewState("CveEstatusPerAEditar")), -1, CInt(ViewState("CveEstatusPerAEditar")))
End Get
Set
ViewState("CveEstatusPerAEditar") = Value
End Set
End Property
Public Property PuedeEditar As Boolean
Get
Return CBool(ViewState("PuedeEditar"))
End Get
Set(value As Boolean)
ViewState("PuedeEditar") = value
End Set
End Property
Public Property PuedeEliminar As Boolean
Get
Return CBool(ViewState("PuedeEditar"))
End Get
Set(value As Boolean)
ViewState("PuedeEditar") = value
End Set
End Property
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
ViewState("Orden") = ""
CargaDatos()
''Permiso Registro
'If PermisoRegistro Then
' LbAgregar.Enabled = True
'Else
' LbAgregar.Enabled = False
'End If
End If
End Sub
Public Sub CargaDatos()
Dim ObjEstatusPersonal As New ClsRH
If ObjEstatusPersonal.GetEstatusPersonal() Then
ViewState("DTEstatusPersonal") = ObjEstatusPersonal.DtResultados
GlobalDTEstatusPersonal = ObjEstatusPersonal.DtResultados
Else
Me.GvDatos.DataSource = Nothing
End If
ObjEstatusPersonal.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub BtnAgregarMotivo_Click(sender As Object, e As EventArgs) Handles BtnAgregarMotivoD.Click 'Hacemos aparecer la ventana modal con los campos limpios
BtnEditarTiposDModal.Visible = False
BtnAgregarTiposDModal.Visible = True
CheckActiveSection.Visible = False
saltoDeLinea.Visible = False
PersonalEstatTxt.Text = ""
UpModalTiposD.Update()
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarTiposD"))
End Sub
Protected Sub LbAgregar_Click(sender As Object, e As System.EventArgs) Handles BtnAgregarTiposDModal.Click 'esta funcion es la que agrega un nuevo motivo de baja se activa con el boton "Agregar" de la ventana modal"
Dim ObjEstatusPersonal As New ClsRH
If ObjEstatusPersonal.AddEstatusPersonal(PersonalEstatTxt.Text.Trim, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
PersonalEstatTxt.Text = ""
Alert("El nuevo Estatus de Personal se guardó correctamente.", TipoMensaje.MsgInformacion)
UpTitulos.Update()
ViewState("DTEstatusPersonal") = ObjEstatusPersonal.DtResultados
GlobalDTEstatusPersonal = ObjEstatusPersonal.DtResultados
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End If
ObjEstatusPersonal.Dispose()
End Sub
#Region "G V D A T O S"
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.RowIndex = 0 Then
e.Row.Cells(0).Width = Unit.Pixel(250)
e.Row.Cells(1).Width = Unit.Pixel(100)
e.Row.Cells(2).Width = Unit.Pixel(100)
e.Row.Cells(3).Width = Unit.Pixel(100)
e.Row.Cells(4).Width = Unit.Pixel(100)
e.Row.Cells(5).Width = Unit.Pixel(61)
End If
e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left
End If
End Sub
Protected Sub GvDatos_RowDeleting(sender As Object, e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles GvDatos.RowDeleting
Dim ObjEstatusPersonal As New ClsRH
If ObjEstatusPersonal.RemoveEstatusPersonal(GvDatos.DataKeys(e.RowIndex).Value.ToString.ToEntero) Then
GvDatos.EditIndex = -1
ViewState("DTEstatusPersonal") = ObjEstatusPersonal.DtResultados
GlobalDTEstatusPersonal = ObjEstatusPersonal.DtResultados
Alert("El Estatus de Personal se eliminó correctamente.", TipoMensaje.MsgInformacion)
End If
ObjEstatusPersonal.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowCancelingEdit(sender As Object, e As System.Web.UI.WebControls.GridViewCancelEditEventArgs) Handles GvDatos.RowCancelingEdit
GvDatos.EditIndex = -1
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowUpdating(sender As Object, e As EventArgs) Handles BtnEditarTiposDModal.Click '(Leer primero "GvDatos_RowEditing")Se manda la informacion a un procedmiento que hace la actualizacion
Dim ObjEstatusPersonal As New ClsRH
Dim EstatusPersonal As String = PersonalEstatTxt.Text
Dim Estatus As Boolean = ChkEstatus.Checked
Dim CveEstatusPersonal As Integer = CveEstatusPerAEditar 'aquí obtenemos el valor de la propiedad que utilizamos en el metodo "GvDatos_RowEditing"
If ObjEstatusPersonal.UpdateEstatusPersonal(EstatusPersonal, Estatus, CveEstatusPersonal) Then
GvDatos.EditIndex = -1
ViewState("DTEstatusPersonal") = ObjEstatusPersonal.DtResultados
GlobalDTEstatusPersonal = ObjEstatusPersonal.DtResultados
Alert("Los cambios se guardaron correctamente.", TipoMensaje.MsgInformacion)
End If
ObjEstatusPersonal.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Public Sub GvDatos_RowEditing(sender As Object, e As EventArgs) 'Este metodo muestra la pantalla modal con la información del renglon ya puesta en los campos del formulario
BtnAgregarTiposDModal.Visible = False
BtnEditarTiposDModal.Visible = True
CheckActiveSection.Visible = True
saltoDeLinea.Visible = True
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) 'obtenemos el renglon que acabamos de seleccionar
PersonalEstatTxt.Text = GvRow.DataKey("EstatusPersonal")
ChkEstatus.Checked = If(GvRow.DataKey("Estatus") = "Activo", True, False)
CveEstatusPerAEditar = GvRow.DataKey("CveEstatusPersonal") 'Guardamos en una propiedad el id del registro del cual haremos cambios, se guarda y se utiliza en el metodo "GvDatos_RowUpdating"
UpDatos.Update()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarTiposD"))
End Sub
#End Region
#Region "O R D E N A M I E N T O"
Protected Sub LbOrden_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim Orden As String = ""
Dim Campo As String = ""
Dim Literal As Literal = Nothing
Const OrdenInicial As String = ""
Dim Arg(2) As String
Arg = CType(sender, LinkButton).CommandArgument().ToString.Split(";"c)
Campo = Arg(0)
Literal = CType(CType(sender, LinkButton).NamingContainer.FindControl("Img" & Campo.Replace(",", "_")), Literal)
If ViewState(String.Format("O{0}", Campo)) IsNot Nothing AndAlso ViewState(String.Format("O{0}", Campo)).ToString = String.Format("{0} DESC", Campo) Then
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} ASC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-asc' style='color:#999' ></i>")
Else
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} DESC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-desc' style='color:#999' ></i>")
End If
Orden = OrdenInicial & ViewState(String.Format("O{0}", Campo)).ToString
ViewState("Orden") = Orden
CargaGrid(Orden)
End Sub
Private Sub CargaGrid(Orden As String)
If Orden <> String.Empty Then
Dim DV As New DataView(CType(ViewState("DTEstatusPersonal"), DataTable), "", Orden, DataViewRowState.CurrentRows)
GvDatos.DataSource = DV.ToTable()
DV.Dispose()
Else
GvDatos.DataSource = CType(ViewState("DTEstatusPersonal"), DataTable)
End If
GvDatos.DataBind()
UpDatos.Update()
End Sub
#End Region
End Class

121
RH/CatGenero.aspx Normal file
View File

@@ -0,0 +1,121 @@
<%@ Page Title="RH - Catálogo de Géneros" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatGenero.aspx.vb" Inherits="RH_CatGenero" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<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 Género
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel runat="server" ID="UpAgregar">
<ContentTemplate>
<li>
<asp:LinkButton runat="server" ID="BtnAgregarMotivoD" data-toggle="tooltip" data-placement="left" title="Agregar un Defecto" Text="<i class='fa fa-plus'></i> Género"></asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpTitulos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" DataKeyNames="CveGenero,Genero,Estatus" EmptyDataText="No se encontraron Géneros Registrados" ToolTip="Listado de Genero" CssClass="table table-striped table-advance table-hover" style="margin-top:-10px; text-align:center;width:100%;" GridLines="None" >
<Columns>
<asp:TemplateField HeaderText="Género">
<ItemTemplate>
<asp:Literal ID="LtlGenero" runat="server" Text='<%# Eval("Genero", "&nbsp;{0}") %>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="TxtGenero" runat="server" CausesValidation="true" MaxLength="50" Text='<%# Eval("Genero") %>' ValidationGroup="GrpGV" Width="234px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVGenero" runat="server" ControlToValidate="TxtGenero" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Genero''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGV"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCGenero" runat="server" HighlightCssClass="vco" TargetControlID="RFVGenero" Width="300px"></ajax:ValidatorCalloutExtender>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estado">
<ItemTemplate>
<asp:Literal ID="LtlEstado" runat="server" Text='<%# Eval("Estatus") %>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:CheckBox ID="ChkEstado" runat="server" Checked='<%# If (Eval("Estatus").ToString = "Activo", True, False) %>' />
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha">
<ItemTemplate>
<asp:Literal ID="LtlFecha" runat="server" Text='<%# Eval("FechaIng", "{0:d}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Usuario">
<ItemTemplate>
<asp:Literal ID="LtlUsuario" runat="server" Text='<%# Eval("Usuario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Editar">
<EditItemTemplate>
<center>
<asp:LinkButton ID="imgU" runat="server" AlternateText="Actualizar" CausesValidation="True" CommandName="Update" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-check'></i>" ValidationGroup="GrpGV" />
&nbsp;<asp:LinkButton ID="imgC" runat="server" AlternateText="Cancelar" CausesValidation="False" CommandName="Cancel" CssClass="btn btn-circle btn-sm red" Text="<i class='fa fa-times'></i>" />
</center>
</EditItemTemplate>
<ItemTemplate>
<asp:LinkButton OnClick="GvDatos_RowEditing" ID="imgE" runat="server" AlternateText="Editar" CausesValidation="False" CommandName="Edit" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Eliminar">
<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="Confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" />
<AlternatingRowStyle CssClass="TextoAlterno" />
</asp:GridView>
<div id="DivAgregarTiposD" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalTiposD" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloModalTiposD" runat="server">Motivos de baja</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="GeneroTxt" CssClass="form-control " runat="server" MaxLength="70" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvTxtTiposD" runat="server" ControlToValidate="GeneroTxt" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTiposD"></asp:RequiredFieldValidator>
<label for="GeneroTxt">Género:</label>
<i></i>
</div>
<br ID="saltoDeLinea" runat="server" />
<div ID="CheckActiveSection" runat="server" class="form-group form-md-line-input input-iconright">
<label for="ChkEstatus">Activo:</label>&nbsp;
<asp:CheckBox ID="ChkEstatus" runat="server" CssClass="make-switchsd" data-size="small" Text=" " Checked="true" />
<i></i>
</div>
</div>
<br />
<div class="modal-footer">
<asp:Button ID="BtnAgregarTiposDModal" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpTiposD" />
<asp:Button ID="BtnEditarTiposDModal" runat="server" class="btn btn-success" Text="Confirmar" ValidationGroup="GrpTiposD" />
<button id="Button3" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

219
RH/CatGenero.aspx.vb Normal file
View File

@@ -0,0 +1,219 @@
Option Strict On
Imports System.Data
Imports System.Linq
Imports Extensiones
Partial Class RH_CatGenero
Inherits ClsPaginas
Public Property PuedeEditar As Boolean
Get
Return CBool(ViewState("PuedeEditar"))
End Get
Set(value As Boolean)
ViewState("PuedeEditar") = value
End Set
End Property
Public Property PuedeEliminar As Boolean
Get
Return CBool(ViewState("PuedeEditar"))
End Get
Set(value As Boolean)
ViewState("PuedeEditar") = value
End Set
End Property
Private Property CveGeneroAEditar() As Integer
Get
Return If(IsNothing(ViewState("CveMotivoBajaAEditar")), -1, CInt(ViewState("CveMotivoBajaAEditar")))
End Get
Set
ViewState("CveMotivoBajaAEditar") = Value
End Set
End Property
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
ViewState("Orden") = ""
CargaDatos()
''Permiso Registro
'If PermisoRegistro Then
' LbAgregar.Enabled = True
'Else
' LbAgregar.Enabled = False
'End If
End If
End Sub
Public Sub CargaDatos()
Dim ObjGenero As New ClsRH
If ObjGenero.GetGeneros() Then
ViewState("DTGenero") = ObjGenero.DtResultados
GlobalDTGenero = ObjGenero.DtResultados
Else
Me.GvDatos.DataSource = Nothing
End If
ObjGenero.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub BtnAgregarMotivo_Click(sender As Object, e As EventArgs) Handles BtnAgregarMotivoD.Click
BtnEditarTiposDModal.Visible = False
BtnAgregarTiposDModal.Visible = True
CheckActiveSection.Visible = False
saltoDeLinea.Visible = False
GeneroTxt.Text = ""
UpModalTiposD.Update()
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarTiposD"))
End Sub
Protected Sub LbAgregar_Click(sender As Object, e As System.EventArgs) Handles BtnAgregarTiposDModal.Click
Dim ObjGenero As New ClsRH
If ObjGenero.AddGenero(GeneroTxt.Text.Trim, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
GeneroTxt.Text = ""
Alert("El nuevo Género se guardó correctamente.", TipoMensaje.MsgInformacion)
UpTitulos.Update()
ViewState("DTGenero") = ObjGenero.DtResultados
GlobalDTGenero = ObjGenero.DtResultados
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End If
ObjGenero.Dispose()
End Sub
#Region "G V D A T O S"
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.RowIndex = 0 Then
e.Row.Cells(0).Width = Unit.Pixel(250)
e.Row.Cells(1).Width = Unit.Pixel(100)
e.Row.Cells(2).Width = Unit.Pixel(100)
e.Row.Cells(3).Width = Unit.Pixel(100)
e.Row.Cells(4).Width = Unit.Pixel(100)
e.Row.Cells(5).Width = Unit.Pixel(61)
End If
e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left
End If
End Sub
Protected Sub GvDatos_RowDeleting(sender As Object, e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles GvDatos.RowDeleting
Dim ObjGenero As New ClsRH
If ObjGenero.RemoveGenero(GvDatos.DataKeys(e.RowIndex).Value.ToString.ToEntero) Then
GvDatos.EditIndex = -1
ViewState("DTGenero") = ObjGenero.DtResultados
GlobalDTGenero = ObjGenero.DtResultados
Alert("El Género se eliminó correctamente.", TipoMensaje.MsgInformacion)
End If
ObjGenero.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowCancelingEdit(sender As Object, e As System.Web.UI.WebControls.GridViewCancelEditEventArgs) Handles GvDatos.RowCancelingEdit
GvDatos.EditIndex = -1
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowUpdating(sender As Object, e As EventArgs) Handles BtnEditarTiposDModal.Click
Dim ObjGenero As New ClsRH
Dim Genero As String = GeneroTxt.Text.Trim
Dim Estatus As Boolean = ChkEstatus.Checked
Dim CveGenero As Integer = CveGeneroAEditar
If ObjGenero.UpdateGenero(Genero, Estatus, CveGenero) Then
GvDatos.EditIndex = -1
ViewState("DTGenero") = ObjGenero.DtResultados
GlobalDTGenero = ObjGenero.DtResultados
Alert("Los cambios se guardaron correctamente.", TipoMensaje.MsgInformacion)
End If
ObjGenero.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Public Sub GvDatos_RowEditing(sender As Object, e As EventArgs)
BtnAgregarTiposDModal.Visible = False
BtnEditarTiposDModal.Visible = True
CheckActiveSection.Visible = True
saltoDeLinea.Visible = True
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) 'obtenemos el renglon que acabamos de seleccionar
GeneroTxt.Text = GvRow.DataKey("Genero")
ChkEstatus.Checked = If(GvRow.DataKey("Estatus") = "Activo", True, False)
CveGeneroAEditar = Convert.ToInt32(GvRow.DataKey("CveGenero")) 'Guardamos en una propiedad el id del registro del cual haremos cambios, se guarda y se utiliza en el metodo "GvDatos_RowUpdating"
UpDatos.Update()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarTiposD"))
End Sub
#End Region
#Region "O R D E N A M I E N T O"
Protected Sub LbOrden_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim Orden As String = ""
Dim Campo As String = ""
Dim Literal As Literal = Nothing
Const OrdenInicial As String = ""
Dim Arg(2) As String
Arg = CType(sender, LinkButton).CommandArgument().ToString.Split(";"c)
Campo = Arg(0)
Literal = CType(CType(sender, LinkButton).NamingContainer.FindControl("Img" & Campo.Replace(",", "_")), Literal)
If ViewState(String.Format("O{0}", Campo)) IsNot Nothing AndAlso ViewState(String.Format("O{0}", Campo)).ToString = String.Format("{0} DESC", Campo) Then
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} ASC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-asc' style='color:#999' ></i>")
Else
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} DESC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-desc' style='color:#999' ></i>")
End If
Orden = OrdenInicial & ViewState(String.Format("O{0}", Campo)).ToString
ViewState("Orden") = Orden
CargaGrid(Orden)
End Sub
Private Sub CargaGrid(Orden As String)
If Orden <> String.Empty Then
Dim DV As New DataView(CType(ViewState("DTGenero"), DataTable), "", Orden, DataViewRowState.CurrentRows)
GvDatos.DataSource = DV.ToTable()
DV.Dispose()
Else
GvDatos.DataSource = CType(ViewState("DTGenero"), DataTable)
End If
GvDatos.DataBind()
UpDatos.Update()
End Sub
#End Region
End Class

187
RH/CatJornadas.aspx Normal file
View File

@@ -0,0 +1,187 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatJornadas.aspx.vb" Inherits="RH_CatJornadas" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<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 Jornadas
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel runat="server" ID="UpAgregar">
<ContentTemplate>
<li>
<asp:LinkButton runat="server" ID="BtnAgregarMotivoD" data-toggle="tooltip" data-placement="left" title="Agregar un Defecto" Text="<i class='fa fa-plus'></i> Agregar Jornada"></asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpTitulos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<%--<table class="table table-striped table-advance table-hover">
<thead>
<tr class="Titulos">
<th width="100px">
<asp:LinkButton ID="LbCveJornada" runat="server" CausesValidation="false" Text="" CommandArgument="CveJornada" OnClick="LbOrden_Click">
Clave Jornada
<asp:Literal ID="ImgCveJornada" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
<th width="250px">
<asp:LinkButton ID="LbJornada" runat="server" CausesValidation="false" Text="" CommandArgument="Jornada" OnClick="LbOrden_Click">
Jornada
<asp:Literal ID="ImgJornada" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
<th width="100px">
<asp:LinkButton ID="LbEstatus" runat="server" CausesValidation="false" Text="" CommandArgument="Estatus" OnClick="LbOrden_Click">
Estatus
<asp:Literal ID="ImgEstatus" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
<th width="100px">
<asp:LinkButton ID="LbFechaIng" runat="server" CausesValidation="false" Text="" CommandArgument="FechaIng" OnClick="LbOrden_Click">
Fecha
<asp:Literal ID="ImgFechaIng" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
<th width="100px">
<asp:LinkButton ID="LbUsuario" runat="server" CausesValidation="false" Text="" CommandArgument="Usuario" OnClick="LbOrden_Click">
Usuario
<asp:Literal ID="ImgUsuario" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</th>
<th width="161px">Comandos</th>
</tr>
</thead>
<tr>
<td style="text-align: center">
<asp:TextBox ID="TxtCveJornada" runat="server" CausesValidation="true" MaxLength="50" ValidationGroup="GrpGuardar" Width="84px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="TxtJornada" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Clave Jornada''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" runat="server" HighlightCssClass="vco" TargetControlID="RFVJornada" Width="300px"></ajax:ValidatorCalloutExtender>
</td>
<td style="text-align: center">
<asp:TextBox ID="TxtJornada" runat="server" CausesValidation="true" MaxLength="50" ValidationGroup="GrpGuardar" Width="234px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVJornada" runat="server" ControlToValidate="TxtJornada" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Jornada''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCJornada" runat="server" HighlightCssClass="vco" TargetControlID="RFVJornada" Width="300px"></ajax:ValidatorCalloutExtender>
</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td style="text-align: center">
<asp:LinkButton ID="LbAgregar" runat="server" CausesValidation="true" CssClass="Texto" Text="Agregar" ValidationGroup="GrpGuardar"></asp:LinkButton></td>
</tr>
</table>--%>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" DataKeyNames="CveJornada,Jornada,Estatus" EmptyDataText="No se encontraron Jornadas Registradas" ToolTip="Listado de Jornadas" CssClass="table table-striped table-advance table-hover" Style="margin-top: -10px; text-align: center;width:100%" GridLines="None">
<Columns>
<asp:TemplateField HeaderText="Clave">
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlCveJornada" runat="server" Text='<%# Eval("CveJornada", "{0}")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Jornada">
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlJornada" runat="server" Text='<%# Eval("Jornada", "{0}")%>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="TxtJornada" runat="server" CausesValidation="true" MaxLength="50" Text='<%# Eval("Jornada")%>' ValidationGroup="GrpGV" Width="234px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVJornada" runat="server" ControlToValidate="TxtJornada" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Jornada''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGV"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCJornada" runat="server" HighlightCssClass="vco" TargetControlID="RFVJornada" Width="300px"></ajax:ValidatorCalloutExtender>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estatus">
<ItemTemplate>
<asp:Literal ID="LtlEstatus" runat="server" Text='<%# Eval("Estatus")%>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:CheckBox ID="ChkEstatus" runat="server" Checked='<%# If(Eval("Estatus").ToString = "Activo", True, False)%>' />
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha">
<ItemTemplate>
<asp:Literal ID="LtlFecha" runat="server" Text='<%# Eval("FechaIng", "{0:d}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Usuario">
<ItemTemplate>
<asp:Literal ID="LtlUsuario" runat="server" Text='<%# Eval("Usuario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Editar">
<EditItemTemplate>
<center>
<asp:LinkButton ID="imgU" runat="server" AlternateText="Actualizar" CausesValidation="True" CommandName="Update" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-check'></i>" ValidationGroup="GrpGV" />
&nbsp;<asp:LinkButton ID="imgC" runat="server" AlternateText="Cancelar" CausesValidation="False" CommandName="Cancel" CssClass="btn btn-circle btn-sm red" Text="<i class='fa fa-times'></i>" />
</center>
</EditItemTemplate>
<ItemTemplate>
<asp:LinkButton OnClick="GvDatos_RowEditing" ID="imgE" runat="server" AlternateText="Editar" CausesValidation="False" CommandName="Edit" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Eliminar">
<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="Confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" />
<AlternatingRowStyle CssClass="TextoAlterno" />
</asp:GridView>
<!--aquí empieza la modal################################################################################################-->
<div id="DivAgregarTiposD" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalTiposD" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloModalTiposD" runat="server">Jornada</asp:Literal></h4>
</div>
<div class="modal-body">
<div ID="ClaveSection" runat="server" class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="ClaveTxt" CssClass="form-control " runat="server" MaxLength="70" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ControlToValidate="ClaveTxt" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTiposD"></asp:RequiredFieldValidator>
<label for="ClaveTxt">Clave Jornada:</label>
<i></i>
</div>
<br />
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="JornadaTxt" CssClass="form-control " runat="server" MaxLength="70" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvTxtTiposD" runat="server" ControlToValidate="JornadaTxt" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTiposD"></asp:RequiredFieldValidator>
<label for="JornadaTxt">Jornada:</label>
<i></i>
</div>
<br ID="saltoDeLinea" runat="server" />
<div ID="CheckActiveSection" runat="server" class="form-group form-md-line-input input-iconright">
<label for="ChkEstatus">Activo:</label>&nbsp;
<asp:CheckBox ID="ChkEstatus" runat="server" CssClass="make-switchsd" data-size="small" Text=" " Checked="true" />
<i></i>
</div>
</div>
<br />
<div class="modal-footer">
<asp:Button ID="BtnAgregarTiposDModal" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpTiposD" />
<asp:Button ID="BtnEditarTiposDModal" runat="server" class="btn btn-success" Text="Confirmar" ValidationGroup="GrpTiposD" />
<button id="Button3" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

200
RH/CatJornadas.aspx.vb Normal file
View File

@@ -0,0 +1,200 @@
Option Explicit On
Option Strict On
Imports System.Data
Imports System.Linq
Imports Extensiones
Partial Class RH_CatJornadas
Inherits ClsPaginas
Private Property CveJornadaAEditar() As Integer 'Guardamos el ID de registro para saber cual registro Editar
Get
Return If(IsNothing(ViewState("CveJornadaAEditar")), -1, CInt(ViewState("CveJornadaAEditar")))
End Get
Set
ViewState("CveJornadaAEditar") = Value
End Set
End Property
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
ViewState("Orden") = ""
CargaDatos()
End If
End Sub
Public Sub CargaDatos()
Dim ObjJornadas As New ClsRH
If ObjJornadas.GetJornadas() Then
ViewState("DTJornadas") = ObjJornadas.DtResultados
GlobalDTJornadas = ObjJornadas.DtResultados
Else
Me.GvDatos.DataSource = Nothing
End If
ObjJornadas.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub BtnAgregarMotivo_Click(sender As Object, e As EventArgs) Handles BtnAgregarMotivoD.Click 'Hacemos aparecer la ventana modal con los campos limpios
BtnEditarTiposDModal.Visible = False
BtnAgregarTiposDModal.Visible = True
CheckActiveSection.Visible = False
saltoDeLinea.Visible = False
JornadaTxt.Text = ""
ClaveSection.Visible = True
UpModalTiposD.Update()
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarTiposD"))
End Sub
Protected Sub LbAgregar_Click(sender As Object, e As System.EventArgs) Handles BtnAgregarTiposDModal.Click 'esta funcion es la que agrega un nuevo motivo de baja se activa con el boton "Agregar" de la ventana modal"
Dim ObjJornadas As New ClsRH
If ObjJornadas.AddJornadas(JornadaTxt.Text.Trim, UsuarioActual.CveUsuario, ClaveTxt.Text.Trim.ToEntero) Then
JornadaTxt.Text = ""
ClaveTxt.Text = ""
Alert("La nueva Jornada se guardó correctamente.", TipoMensaje.MsgInformacion)
UpTitulos.Update()
ViewState("DTJornadas") = ObjJornadas.DtResultados
GlobalDTJornadas = ObjJornadas.DtResultados
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End If
ObjJornadas.Dispose()
End Sub
#Region "G V D A T O S"
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.RowIndex = 0 Then
e.Row.Cells(0).Width = Unit.Pixel(100)
e.Row.Cells(1).Width = Unit.Pixel(250)
e.Row.Cells(2).Width = Unit.Pixel(100)
e.Row.Cells(3).Width = Unit.Pixel(100)
e.Row.Cells(4).Width = Unit.Pixel(100)
e.Row.Cells(5).Width = Unit.Pixel(100)
e.Row.Cells(6).Width = Unit.Pixel(61)
End If
e.Row.Cells(1).HorizontalAlign = HorizontalAlign.Left
End If
End Sub
Protected Sub GvDatos_RowDeleting(sender As Object, e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles GvDatos.RowDeleting
Dim ObjJornadas As New ClsRH
If ObjJornadas.RemoveJornadas(GvDatos.DataKeys(e.RowIndex).Value.ToString.ToEntero) Then
GvDatos.EditIndex = -1
ViewState("DTJornadas") = ObjJornadas.DtResultados
GlobalDTJornadas = ObjJornadas.DtResultados
Alert("La Jornada se eliminó correctamente.", TipoMensaje.MsgInformacion)
End If
ObjJornadas.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowCancelingEdit(sender As Object, e As System.Web.UI.WebControls.GridViewCancelEditEventArgs) Handles GvDatos.RowCancelingEdit
GvDatos.EditIndex = -1
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowUpdating(sender As Object, e As EventArgs) Handles BtnEditarTiposDModal.Click '(Leer primero "GvDatos_RowEditing")Se manda la informacion a un procedmiento que hace la actualizacion
Dim ObjJornadas As New ClsRH
Dim Jornada As String = JornadaTxt.Text.Trim
Dim Estatus As Boolean = ChkEstatus.Checked
Dim CveJornada As Integer = CveJornadaAEditar 'aquí obtenemos el valor de la propiedad que utilizamos en el metodo "GvDatos_RowEditing"
If ObjJornadas.UpdateJornadas(CveJornada, Jornada, Estatus) Then
GvDatos.EditIndex = -1
ViewState("DTJornadas") = ObjJornadas.DtResultados
GlobalDTJornadas = ObjJornadas.DtResultados
Alert("Los cambios se guardaron correctamente.", TipoMensaje.MsgInformacion)
End If
ObjJornadas.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Public Sub GvDatos_RowEditing(sender As Object, e As EventArgs) 'Este metodo muestra la pantalla modal con la información del renglon ya puesta en los campos del formulario
BtnAgregarTiposDModal.Visible = False
BtnEditarTiposDModal.Visible = True
CheckActiveSection.Visible = True
saltoDeLinea.Visible = True
ClaveSection.Visible = False
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) 'obtenemos el renglon que acabamos de seleccionar
JornadaTxt.Text = GvRow.DataKey("Jornada")
ChkEstatus.Checked = If(GvRow.DataKey("Estatus") = "Activo", True, False)
CveJornadaAEditar = Convert.ToInt32(GvRow.DataKey("CveJornada")) 'Guardamos en una propiedad el id del registro del cual haremos cambios, se guarda y se utiliza en el metodo "GvDatos_RowUpdating"
UpDatos.Update()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarTiposD"))
End Sub
#End Region
#Region "O R D E N A M I E N T O"
Protected Sub LbOrden_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim Orden As String = ""
Dim Campo As String = ""
Dim Literal As Literal = Nothing
Const OrdenInicial As String = ""
Dim Arg(2) As String
Arg = CType(sender, LinkButton).CommandArgument().ToString.Split(";"c)
Campo = Arg(0)
Literal = CType(CType(sender, LinkButton).NamingContainer.FindControl("Img" & Campo.Replace(",", "_")), Literal)
If ViewState(String.Format("O{0}", Campo)) IsNot Nothing AndAlso ViewState(String.Format("O{0}", Campo)).ToString = String.Format("{0} DESC", Campo) Then
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} ASC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-asc' style='color:#999' ></i>")
Else
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} DESC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-desc' style='color:#999' ></i>")
End If
Orden = OrdenInicial & ViewState(String.Format("O{0}", Campo)).ToString
ViewState("Orden") = Orden
CargaGrid(Orden)
End Sub
Private Sub CargaGrid(Orden As String)
If Orden <> String.Empty Then
Dim DV As New DataView(CType(ViewState("DTJornadas"), DataTable), "", Orden, DataViewRowState.CurrentRows)
GvDatos.DataSource = DV.ToTable()
DV.Dispose()
Else
GvDatos.DataSource = CType(ViewState("DTJornadas"), DataTable)
End If
GvDatos.DataBind()
UpDatos.Update()
End Sub
#End Region
End Class

118
RH/CatMotivoBaja.aspx Normal file
View File

@@ -0,0 +1,118 @@
<%@ Page Title="RH - Catálogo de Motivos de Baja" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatMotivoBaja.aspx.vb" Inherits="RH_CatMotivoBaja" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<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 Motivos de Baja
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel runat="server" ID="UpAgregar">
<ContentTemplate>
<li>
<asp:LinkButton runat="server" ID="BtnAgregarMotivoD" data-toggle="tooltip" data-placement="left" title="Agregar un Defecto" Text="<i class='fa fa-plus'></i>Agregar Motivo Baja"></asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" DataKeyNames="CveMotivoBaja,MotivoBaja,Estatus,FechaIng" EmptyDataText="No se encontraron Motivo de Baja Registrados" ToolTip="Listado de Motivo de Baja" CssClass="table table-striped table-advance table-hover" Style="margin-top: -10px; text-align: center;width:100%" GridLines="None">
<Columns>
<asp:TemplateField HeaderText ="Motivo de baja">
<ItemTemplate>
<asp:Literal ID="LtlMotivoBaja" runat="server" Text='<%# Eval("MotivoBaja", "&nbsp;{0}") %>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="TxtMotivoBaja" runat="server" CausesValidation="true" MaxLength="50" Text='<%# Eval("MotivoBaja") %>' ValidationGroup="GrpGV" Width="234px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVMotivoBaja" runat="server" ControlToValidate="TxtMotivoBaja" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Motivo de Baja''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGV"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCMotivoBaja" runat="server" HighlightCssClass="vco" TargetControlID="RFVMotivoBaja" Width="300px"></ajax:ValidatorCalloutExtender>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText ="Estatus">
<ItemTemplate>
<asp:Literal ID="LtlEstado" runat="server" Text='<%# Eval("Estatus") %>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:CheckBox ID="ChkEstado" runat="server" Checked='<%# If (Eval("Estatus").ToString = "Activo", True, False) %>' />
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha">
<ItemTemplate>
<asp:Literal ID="LtlFecha" runat="server" Text='<%# Eval("FechaIng", "{0:d}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Usuario">
<ItemTemplate>
<asp:Literal ID="LtlUsuario" runat="server" Text='<%# Eval("Usuario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Editar">
<EditItemTemplate>
<center>
<asp:LinkButton ID="imgU" runat="server" AlternateText="Actualizar" CausesValidation="True" CommandName="Update" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-check'></i>" ValidationGroup="GrpGV" />
&nbsp;<asp:LinkButton ID="imgC" runat="server" AlternateText="Cancelar" CausesValidation="False" CommandName="Cancel" CssClass="btn btn-circle btn-sm red" Text="<i class='fa fa-times'></i>" />
</center>
</EditItemTemplate>
<ItemTemplate>
<asp:LinkButton ID="imgE" OnClick="GvDatos_RowEditing" runat="server" AlternateText="Editar" CausesValidation="False" CommandName="Edit" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Eliminar">
<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="Confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" />
<AlternatingRowStyle CssClass="TextoAlterno" />
</asp:GridView>
<div id="DivAgregarTiposD" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalTiposD" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloModalTiposD" runat="server">Motivos de baja</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="MotivoTxt" CssClass="form-control " runat="server" MaxLength="70" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvTxtTiposD" runat="server" ControlToValidate="MotivoTxt" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTiposD"></asp:RequiredFieldValidator>
<label for="MotivoTxt">Motivo:</label>
<i></i>
</div>
<br ID="saltoDeLinea" runat="server" />
<div ID="CheckActiveSection" runat="server" class="form-group form-md-line-input input-iconright">
<label for="ChkEstatus">Activo:</label>&nbsp;
<asp:CheckBox ID="ChkEstatus" runat="server" CssClass="make-switchsd" data-size="small" Text=" " Checked="true" />
<i></i>
</div>
</div>
<br />
<div class="modal-footer">
<asp:Button ID="BtnAgregarTiposDModal" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpTiposD" />
<asp:Button ID="BtnEditarTiposDModal" runat="server" class="btn btn-success" Text="Confirmar" ValidationGroup="GrpTiposD" />
<button id="Button3" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

218
RH/CatMotivoBaja.aspx.vb Normal file
View File

@@ -0,0 +1,218 @@
Imports System.Data
Imports System.Linq
Imports Extensiones
Partial Class RH_CatMotivoBaja
Inherits ClsPaginas
Private Property CveMotivoBajaAEditar() As Integer 'Guardamos el ID de registro para saber cual registro Editar
Get
Return If(IsNothing(ViewState("CveMotivoBajaAEditar")), -1, CInt(ViewState("CveMotivoBajaAEditar")))
End Get
Set
ViewState("CveMotivoBajaAEditar") = Value
End Set
End Property
Public Property PuedeEditar As Boolean
Get
Return CBool(ViewState("PuedeEditar"))
End Get
Set(value As Boolean)
ViewState("PuedeEditar") = value
End Set
End Property
Public Property PuedeEliminar As Boolean
Get
Return CBool(ViewState("PuedeEditar"))
End Get
Set(value As Boolean)
ViewState("PuedeEditar") = value
End Set
End Property
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
ViewState("Orden") = ""
CargaDatos()
''Permiso Registro
'If PermisoRegistro Then
' LbAgregar.Enabled = True
'Else
' LbAgregar.Enabled = False
'End If
End If
End Sub
Protected Sub BtnAgregarMotivo_Click(sender As Object, e As EventArgs) Handles BtnAgregarMotivoD.Click 'Hacemos aparecer la ventana modal con los campos limpios
BtnEditarTiposDModal.Visible = False
BtnAgregarTiposDModal.Visible = True
CheckActiveSection.Visible = False
saltoDeLinea.Visible = False
MotivoTxt.Text = ""
UpModalTiposD.Update()
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarTiposD"))
End Sub
Public Sub CargaDatos()
Dim ObjMotivoBaja As New ClsRH
If ObjMotivoBaja.GetMotivoBaja() Then
ViewState("DTMotivoBaja") = ObjMotivoBaja.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GlobalDTMotivoBaja = ObjMotivoBaja.DtResultados
Else
Me.GvDatos.DataSource = Nothing
End If
ObjMotivoBaja.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub LbAgregar_Click(sender As Object, e As System.EventArgs) Handles BtnAgregarTiposDModal.Click 'esta funcion es la que agrega un nuevo motivo de baja se activa con el boton "Agregar" de la ventana modal"
Dim ObjMotivoBaja As New ClsRH
If ObjMotivoBaja.AddMotivoBaja(MotivoTxt.Text.Trim, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
MotivoTxt.Text = ""
Alert("El nuevo Motivo de Baja se guardó correctamente.", TipoMensaje.MsgInformacion)
ViewState("DTMotivoBaja") = ObjMotivoBaja.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GlobalDTMotivoBaja = ObjMotivoBaja.DtResultados
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End If
ObjMotivoBaja.Dispose()
End Sub
#Region "G V D A T O S"
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.RowIndex = 0 Then
e.Row.Cells(0).Width = Unit.Pixel(250)
e.Row.Cells(1).Width = Unit.Pixel(100)
e.Row.Cells(2).Width = Unit.Pixel(100)
e.Row.Cells(3).Width = Unit.Pixel(100)
e.Row.Cells(4).Width = Unit.Pixel(100)
e.Row.Cells(5).Width = Unit.Pixel(61)
End If
e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left
End If
End Sub
Protected Sub GvDatos_RowDeleting(sender As Object, e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles GvDatos.RowDeleting
Dim ObjMotivoBaja As New ClsRH
If ObjMotivoBaja.RemoveMotivoBaja(GvDatos.DataKeys(e.RowIndex).Value.ToString.ToEntero) Then
GvDatos.EditIndex = -1
ViewState("DTMotivoBaja") = ObjMotivoBaja.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GlobalDTMotivoBaja = ObjMotivoBaja.DtResultados
Alert("El Motivo de Baja se eliminó correctamente.", TipoMensaje.MsgInformacion)
End If
ObjMotivoBaja.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowCancelingEdit(sender As Object, e As System.Web.UI.WebControls.GridViewCancelEditEventArgs) Handles GvDatos.RowCancelingEdit
GvDatos.EditIndex = -1
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Public Sub GvDatos_RowUpdating(sender As Object, e As EventArgs) Handles BtnEditarTiposDModal.Click '(Leer primero "GvDatos_RowEditing")Se manda la informacion a un procedmiento que hace la actualizacion
Dim ObjMotivoBaja As New ClsRH
Dim MotivoBaja As String = MotivoTxt.Text
Dim Estatus As Boolean = ChkEstatus.Checked
Dim CveMotivoBaja As Integer = CveMotivoBajaAEditar 'aquí obtenemos el valor de la propiedad que utilizamos en el metodo "GvDatos_RowEditing"
MotivoTxt.Text = ""
ChkEstatus.Checked = True
If ObjMotivoBaja.UpdateMotivoBaja(MotivoBaja, Estatus, CveMotivoBaja) Then
GvDatos.EditIndex = -1
ViewState("DTMotivoBaja") = ObjMotivoBaja.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GlobalDTMotivoBaja = ObjMotivoBaja.DtResultados
Alert("Los cambios se guardaron correctamente.", TipoMensaje.MsgInformacion)
End If
ObjMotivoBaja.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Public Sub GvDatos_RowEditing(sender As Object, e As EventArgs) 'Este metodo muestra la pantalla modal con la información del renglon ya puesta en los campos del formulario
BtnAgregarTiposDModal.Visible = False
BtnEditarTiposDModal.Visible = True
CheckActiveSection.Visible = True
saltoDeLinea.Visible = True
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) 'obtenemos el renglon que acabamos de seleccionar
MotivoTxt.Text = GvRow.DataKey("MotivoBaja")
ChkEstatus.Checked = If(GvRow.DataKey("Estatus") = "Activo", True, False)
CveMotivoBajaAEditar = GvRow.DataKey("CveMotivoBaja") 'Guardamos en una propiedad el id del registro del cual haremos cambios, se guarda y se utiliza en el metodo "GvDatos_RowUpdating"
UpDatos.Update()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarTiposD"))
End Sub
#End Region
#Region "O R D E N A M I E N T O"
Protected Sub LbOrden_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim Orden As String = ""
Dim Campo As String = ""
Dim Literal As Literal = Nothing
Const OrdenInicial As String = ""
Dim Arg(2) As String
Arg = CType(sender, LinkButton).CommandArgument().ToString.Split(";"c)
Campo = Arg(0)
Literal = CType(CType(sender, LinkButton).NamingContainer.FindControl("Img" & Campo.Replace(",", "_")), Literal)
If ViewState(String.Format("O{0}", Campo)) IsNot Nothing AndAlso ViewState(String.Format("O{0}", Campo)).ToString = String.Format("{0} DESC", Campo) Then
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} ASC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-asc' style='color:#999' ></i>")
Else
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} DESC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-desc' style='color:#999' ></i>")
End If
Orden = OrdenInicial & ViewState(String.Format("O{0}", Campo)).ToString
ViewState("Orden") = Orden
CargaGrid(Orden)
End Sub
Private Sub CargaGrid(Orden As String)
If Orden <> String.Empty Then
Dim DV As New DataView(CType(ViewState("DTMotivoBaja"), DataTable), "", Orden, DataViewRowState.CurrentRows)
GvDatos.DataSource = DV.ToTable()
DV.Dispose()
Else
GvDatos.DataSource = CType(ViewState("DTMotivoBaja"), DataTable)
End If
GvDatos.DataBind()
UpDatos.Update()
End Sub
#End Region
End Class

View File

@@ -0,0 +1,119 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatMotivosHorasExtras.aspx.vb" Inherits="RH_CatMotivosHorasExtras" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<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 Motivos de Horas Extras
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel runat="server" ID="UpAgregar">
<ContentTemplate>
<li>
<asp:LinkButton runat="server" ID="BtnAgregarMotivoD" data-toggle="tooltip" data-placement="left" title="Agregar un Defecto" Text="<i class='fa fa-plus'></i>Agregar Motivo de Horas Extra"></asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpTitulos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" DataKeyNames="CveMotivoHoraExtra,MotivoHoraExtra,Estatus" EmptyDataText="No se encontraron Motivos de Horas Extras Registrados" ToolTip="Listado de Motivos de Horas Extras" CssClass="table table-striped table-advance table-hover" Style="margin-top: -10px; text-align: center;width:100%" GridLines="None">
<Columns>
<asp:TemplateField HeaderText="Motivo de Hora Extra">
<ItemTemplate>
<asp:Literal ID="LtlMotivoHoraExtra" runat="server" Text='<%# Eval("MotivoHoraExtra", "&nbsp;{0}") %>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="TxtMotivoHoraExtra" runat="server" CausesValidation="true" MaxLength="50" Text='<%# Eval("MotivoHoraExtra") %>' ValidationGroup="GrpGV" Width="234px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVMotivoHoraExtra" runat="server" ControlToValidate="TxtMotivoHoraExtra" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''MotivoHoraExtra''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGV"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCMotivoHoraExtra" runat="server" HighlightCssClass="vco" TargetControlID="RFVMotivoHoraExtra" Width="300px"></ajax:ValidatorCalloutExtender>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estatus">
<ItemTemplate>
<asp:Literal ID="LtlEstatus" runat="server" Text='<%# Eval("Estatus") %>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:CheckBox ID="ChkEstatus" runat="server" Checked='<%# If (Eval("Estatus").ToString = "Activo", True, False) %>' />
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha">
<ItemTemplate>
<asp:Literal ID="LtlFechaIng" runat="server" Text='<%# Eval("FechaIng", "{0:d}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Usuario">
<ItemTemplate>
<asp:Literal ID="LtlUsuario" runat="server" Text='<%# Eval("Usuario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Editar">
<EditItemTemplate>
<center>
<asp:LinkButton ID="imgU" runat="server" AlternateText="Actualizar" CausesValidation="True" CommandName="Update" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-check'></i>" ValidationGroup="GrpGV" />&nbsp;
<asp:LinkButton ID="imgC" runat="server" AlternateText="Cancelar" CausesValidation="False" CommandName="Cancel" CssClass="btn btn-circle btn-sm red" Text="<i class='fa fa-times'></i>" />
</center>
</EditItemTemplate>
<ItemTemplate>
<asp:LinkButton ID="imgE" OnClick="GvDatos_RowEditing" runat="server" AlternateText="Editar" CausesValidation="False" CommandName="Edit" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Eliminar">
<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="Confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" />
<AlternatingRowStyle CssClass="TextoAlterno" />
</asp:GridView>
<div id="DivAgregarTiposD" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalTiposD" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloModalTiposD" runat="server">Motivos de Horas Extras</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="MotivoTxt" CssClass="form-control " runat="server" MaxLength="70" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvTxtTiposD" runat="server" ControlToValidate="MotivoTxt" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTiposD"></asp:RequiredFieldValidator>
<label for="MotivoTxt">Motivo:</label>
<i></i>
</div>
<br ID="saltoDeLinea" runat="server" />
<div ID="CheckActiveSection" runat="server" class="form-group form-md-line-input input-iconright">
<label for="ChkEstatus">Activo:</label>&nbsp;
<asp:CheckBox ID="ChkEstatus" runat="server" CssClass="make-switchsd" data-size="small" Text=" " Checked="true" />
<i></i>
</div>
</div>
<br />
<div class="modal-footer">
<asp:Button ID="BtnAgregarTiposDModal" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpTiposD" />
<asp:Button ID="BtnEditarTiposDModal" runat="server" class="btn btn-success" Text="Confirmar" ValidationGroup="GrpTiposD" />
<button id="Button3" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

View File

@@ -0,0 +1,212 @@
Option Explicit On
Option Strict On
Imports System.Data
Imports System.Linq
Imports Extensiones
Partial Class RH_CatMotivosHorasExtras
Inherits ClsPaginas
Public Property PuedeEditar As Boolean
Get
Return CBool(ViewState("PuedeEditar"))
End Get
Set(value As Boolean)
ViewState("PuedeEditar") = value
End Set
End Property
Public Property PuedeEliminar As Boolean
Get
Return CBool(ViewState("PuedeEditar"))
End Get
Set(value As Boolean)
ViewState("PuedeEditar") = value
End Set
End Property
Private Property CveMotivoHoraExtraAEditar() As Integer 'Guardamos el ID de registro para saber cual registro Editar
Get
Return If(IsNothing(ViewState("CveMotivoHoraExtraAEditar")), -1, CInt(ViewState("CveMotivoHoraExtraAEditar")))
End Get
Set
ViewState("CveMotivoHoraExtraAEditar") = Value
End Set
End Property
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
ViewState("Orden") = ""
CargaDatos()
End If
End Sub
Public Sub CargaDatos()
Dim ObjMotivosHorasExtras As New ClsRH
If ObjMotivosHorasExtras.GetMotivoHorasExtras() Then
ViewState("DTMotivosHorasExtras") = ObjMotivosHorasExtras.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GlobalDTMotivosHorasExtras = ObjMotivosHorasExtras.DtResultados
Else
Me.GvDatos.DataSource = Nothing
End If
ObjMotivosHorasExtras.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub BtnAgregarMotivo_Click(sender As Object, e As EventArgs) Handles BtnAgregarMotivoD.Click 'Hacemos aparecer la ventana modal con los campos limpios
BtnEditarTiposDModal.Visible = False
BtnAgregarTiposDModal.Visible = True
CheckActiveSection.Visible = False
saltoDeLinea.Visible = False
MotivoTxt.Text = ""
UpModalTiposD.Update()
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarTiposD"))
End Sub
Protected Sub LbAgregar_Click(sender As Object, e As System.EventArgs) Handles BtnAgregarTiposDModal.Click 'esta funcion es la que agrega un nuevo motivo de baja se activa con el boton "Agregar" de la ventana modal"
Dim ObjMotivosHorasExtras As New ClsRH
If ObjMotivosHorasExtras.AddMotivoHoraExtra(MotivoTxt.Text.Trim, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
MotivoTxt.Text = ""
Alert("El nuevo Motivo de Horas Extras se guardó correctamente.", TipoMensaje.MsgInformacion)
UpTitulos.Update()
ViewState("DTMotivosHorasExtras") = ObjMotivosHorasExtras.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GlobalDTMotivosHorasExtras = ObjMotivosHorasExtras.DtResultados
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End If
ObjMotivosHorasExtras.Dispose()
End Sub
#Region "G V D A T O S"
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.RowIndex = 0 Then
e.Row.Cells(0).Width = Unit.Pixel(250)
e.Row.Cells(1).Width = Unit.Pixel(100)
e.Row.Cells(2).Width = Unit.Pixel(100)
e.Row.Cells(3).Width = Unit.Pixel(100)
e.Row.Cells(4).Width = Unit.Pixel(100)
e.Row.Cells(5).Width = Unit.Pixel(61)
End If
e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left
End If
End Sub
Protected Sub GvDatos_RowDeleting(sender As Object, e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles GvDatos.RowDeleting
Dim ObjMotivosHorasExtras As New ClsRH
If ObjMotivosHorasExtras.RemoveMotivoHoraExtra(GvDatos.DataKeys(e.RowIndex).Value.ToString.ToEntero) Then
GvDatos.EditIndex = -1
ViewState("DTMotivosHorasExtras") = ObjMotivosHorasExtras.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GlobalDTMotivosHorasExtras = ObjMotivosHorasExtras.DtResultados
Alert("El MotivoHoraExtra se eliminó correctamente.", TipoMensaje.MsgInformacion)
End If
ObjMotivosHorasExtras.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowCancelingEdit(sender As Object, e As System.Web.UI.WebControls.GridViewCancelEditEventArgs) Handles GvDatos.RowCancelingEdit
GvDatos.EditIndex = -1
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowUpdating(sender As Object, e As EventArgs) Handles BtnEditarTiposDModal.Click '(Leer primero "GvDatos_RowEditing")Se manda la informacion a un procedmiento que hace la actualizacion
Dim ObjMotivosHorasExtras As New ClsRH
Dim MotivoHoraExtra As String = MotivoTxt.Text.Trim
Dim Estatus As Boolean = ChkEstatus.Checked
Dim CveMotivoHoraExtra As Integer = CveMotivoHoraExtraAEditar 'aquí obtenemos el valor de la propiedad que utilizamos en el metodo "GvDatos_RowEditing"
If ObjMotivosHorasExtras.UpdateMotivoHoraExtra(MotivoHoraExtra, Estatus, CveMotivoHoraExtra) Then
GvDatos.EditIndex = -1
ViewState("DTMotivosHorasExtras") = ObjMotivosHorasExtras.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GlobalDTMotivosHorasExtras = ObjMotivosHorasExtras.DtResultados
Alert("Los cambios se guardaron correctamente.", TipoMensaje.MsgInformacion)
End If
ObjMotivosHorasExtras.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Public Sub GvDatos_RowEditing(sender As Object, e As EventArgs) 'Este metodo muestra la pantalla modal con la información del renglon ya puesta en los campos del formulario
BtnAgregarTiposDModal.Visible = False
BtnEditarTiposDModal.Visible = True
CheckActiveSection.Visible = True
saltoDeLinea.Visible = True
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) 'obtenemos el renglon que acabamos de seleccionar
MotivoTxt.Text = GvRow.DataKey("MotivoHoraExtra")
ChkEstatus.Checked = If(GvRow.DataKey("Estatus") = "Activo", True, False)
CveMotivoHoraExtraAEditar = Convert.ToInt32(GvRow.DataKey("CveMotivoHoraExtra")) 'Guardamos en una propiedad el id del registro del cual haremos cambios, se guarda y se utiliza en el metodo "GvDatos_RowUpdating"
UpDatos.Update()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarTiposD"))
End Sub
#End Region
#Region "O R D E N A M I E N T O"
Protected Sub LbOrden_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim Orden As String = ""
Dim Campo As String = ""
Dim Literal As Literal = Nothing
Const OrdenInicial As String = ""
Dim Arg(2) As String
Arg = CType(sender, LinkButton).CommandArgument().ToString.Split(";"c)
Campo = Arg(0)
Literal = CType(CType(sender, LinkButton).NamingContainer.FindControl("Img" & Campo.Replace(",", "_")), Literal)
If ViewState(String.Format("O{0}", Campo)) IsNot Nothing AndAlso ViewState(String.Format("O{0}", Campo)).ToString = String.Format("{0} DESC", Campo) Then
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} ASC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-asc' style='color:#999' ></i>")
Else
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} DESC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-desc' style='color:#999' ></i>")
End If
Orden = OrdenInicial & ViewState(String.Format("O{0}", Campo)).ToString
ViewState("Orden") = Orden
CargaGrid(Orden)
End Sub
Private Sub CargaGrid(Orden As String)
If Orden <> String.Empty Then
Dim DV As New DataView(CType(ViewState("DTMotivosHorasExtras"), DataTable), "", Orden, DataViewRowState.CurrentRows)
GvDatos.DataSource = DV.ToTable()
DV.Dispose()
Else
GvDatos.DataSource = CType(ViewState("DTMotivosHorasExtras"), DataTable)
End If
GvDatos.DataBind()
UpDatos.Update()
End Sub
#End Region
End Class

831
RH/CatPersonal.aspx Normal file
View File

@@ -0,0 +1,831 @@
<%@ Page Title="RH - Catálogo de Personal" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatPersonal.aspx.vb" ValidateRequest="false" Inherits="RH_CatPersonal" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
<link href="/Metronic/assets/global/plugins/datatables/plugins/bootstrap/dataTables.bootstrap.css" rel="stylesheet" />
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<style>
.portlet-filter select {
width: 100%;
}
.Widthall {
width: 100% !important;
}
.dataTables_scrollHeadInner {
width: 100% !important;
background-color: #dddddd;
padding-left: 0px !important;
}
.dataTables_scrollFoot {
display: none;
position: static;
}
.table-scrollable {
margin: 0px !important;
}
.dataTables_scroll {
margin-bottom: 0px;
}
.table.dataTable {
margin-top: 0px !important;
}
.dataTables_scrollBody table th {
padding: 0px !important;
padding-right: 4px !important;
padding-left: 4px !important;
}
.sinlink td a {
pointer-events: none;
cursor: default;
color: black;
font-size: small;
}
</style>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="HB" runat="Server">
<li>
<asp:HyperLink runat="server" NavigateUrl="/RH/Personal.aspx" ID="HplAddVenta" style="color:#686868;"><i class="fa fa-plus" style="color:#686868;margin-left:2px;margin-right:2px;"></i>Nuevo Personal</asp:HyperLink>
</li>
<li>
<asp:LinkButton ID="LinkPDF" runat="server" style="color:#686868;"> <i class="fa fa-ad-pdf" style="margin-right:5px;"></i>Imprimir</asp:LinkButton>
</li>
<li>
<asp:LinkButton ID="LnkExportar" runat="server" style="color:#686868;"><i class="fa fa-ad-excel" style="margin-right:5px"></i>Excel</asp:LinkButton>
</li>
<li>
<asp:HyperLink NavigateUrl="#" data-toggle="modal" data-target="#DivPersonalizar" ID="HyperLink1" runat="server" style="color:#686868;"><i class="fa fa-pencil" style="color:#686868;margin-left:3px;margin-right:2px"></i>Personalizar</asp:HyperLink>
</li>
<asp:UpdatePanel runat="server" ID="UpPersonalizado" UpdateMode="Conditional">
<ContentTemplate>
<li runat="server" id="liLnkDescarPersonalizado" Visible="false">
<asp:LinkButton ID="LnkDescarPersonalizados" runat="server" OnClick="LnkDescarPersonalizados_Click" OnClientClick=" LimpiarTabla(); return true;">
<i class="fa fa-ad-excel" style="margin-right:5px"></i>Excel Personalizado
</asp:LinkButton>
</li>
</ContentTemplate>
<Triggers>
<asp:PostBackTrigger ControlID="LnkDescarPersonalizados" />
</Triggers>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="E" runat="Server">
Catálogo de Personal
</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 class="portlet solid grey-cascade portlet-filter">
<div class="portlet-title portlet-filterT smalltitle" style="min-height: 69px;">
<div class="tools">
<asp:Button ID="BtnConsultar" runat="server" Text="Filtrar" class="btn btn-primary" Width="95px" />
<a href="javascript:;" class="expand" data-original-title="" title=""></a>
</div>
<div class="titlefiltros caption ">
<div class="row" style="padding-top: 10px;">
<asp:UpdatePanel ID="UpSubProyecto" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Label ID="LblSubProyecto" runat="server" class="col-md-1 truncate">SubProyecto:</asp:Label>
<div class="col-md-2">
<asp:DropDownList ID="DdlSubProyectoAsignado" runat="server" CssClass="select2me" AppendDataBoundItems="true" DataTextField="SubProyecto" DataValueField="CveSubProyecto" ValidationGroup="GrpGuardar" Width="100%">
<asp:ListItem Selected="True" Text="Sin SubProyecto asignado" Value="-1"></asp:ListItem>
</asp:DropDownList>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<label class="col-md-1 truncate">Estatus Personal:</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlEstatusPersonal" runat="server" CssClass="select2me" AppendDataBoundItems="true" DataTextField="EstatusPersonal" DataValueField="CveEstatusPersonal" ValidationGroup="GrpGuardar" Width="100%">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</div>
<label class="col-md-1 truncate">Tipo Período:</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlTipoPeriodo" runat="server" CssClass="select2me" AppendDataBoundItems="true" DataTextField="TipoPeriodo" DataValueField="CveTipoPeriodo" ValidationGroup="GrpGuardar" Width="100%">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</div>
<%--<label class="col-md-1 truncate">Tipo Período:</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlTipoPeriodo" runat="server" CssClass="select2me" AppendDataBoundItems="true" DataTextField="TipoPeriodo" DataValueField="CveTipoPeriodo" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</div>--%>
</div>
</div>
</div>
<div class="portlet-body portlet-filterT" style="display: none;">
<div class="row">
<label class="col-md-1 truncate">Método de Pago:</label>
<div class="col-md-2 ">
<asp:DropDownList ID="DdlMetodoPago" runat="server" Width="100%" CssClass="select2me" AppendDataBoundItems="true" CausesValidation="true" DataTextField="MetodoPago" DataValueField="CveMetodoPago" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVMetodoPago" runat="server" ControlToValidate="DdlMetodoPago" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Método de Pago''</b> es necesario, por favor seleccione uno." InitialValue="-1" ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOMetodoPago" runat="server" HighlightCssClass="VCO" TargetControlID="RFVMetodoPago" Width="300px"></ajax:ValidatorCalloutExtender>
</div>
<label class="col-md-1 truncate">Tipo Contrato:</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlTipoContrato" runat="server" Width="100%" CssClass="select2me" AppendDataBoundItems="true" DataTextField="TipoContrato" DataValueField="CveTipoContrato" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</div>
<label class="col-md-1 truncate">Puesto:</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlPuesto" runat="server" Width="100%" CssClass="select2me" AppendDataBoundItems="true" DataTextField="Puesto" DataValueField="CvePuesto" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</div>
<label class="col-md-1 truncate">Departamento:</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlDepartamento" runat="server" Width="100%" CssClass="select2me" AppendDataBoundItems="true" DataTextField="Departamento" DataValueField="CveDepartamento" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</div>
</div>
<div class="row">
<label class="col-md-1 truncate">Ruta:</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlRuta" runat="server" CssClass="select2me" Width="100%" AppendDataBoundItems="true" DataTextField="Ruta" DataValueField="CveRuta" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Sin asignar Ruta" Value="-1"></asp:ListItem>
</asp:DropDownList>
</div>
<label class="col-md-1 truncate">Escolaridad:</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlEscolaridad" CssClass="select2me" Width="100%" runat="server" AppendDataBoundItems="true" DataTextField="Escolaridad" DataValueField="CveEscolaridad" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</div>
<label class="col-md-1 truncate">Estado Civil:</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlEstadoCivil" runat="server" Width="100%" CssClass="select2me" AppendDataBoundItems="true" DataTextField="EstadoCivil" DataValueField="CveEstadoCivil" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</div>
<label class="col-md-1 truncate">Género:</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlGenero" runat="server" Width="100%" CssClass="select2me" AppendDataBoundItems="true" DataTextField="Genero" DataValueField="CveGenero" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</div>
<%--<label class="col-md-1 truncate">Estatus Personal:</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlEstatusPersonal" runat="server" CssClass="select2me" AppendDataBoundItems="true" DataTextField="EstatusPersonal" DataValueField="CveEstatusPersonal" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</div>--%>
</div>
<div class="row">
<label class="col-md-1 truncate">Motivo Baja:</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlMotivoBaja" runat="server" Width="100%" CssClass="select2me" AppendDataBoundItems="true" DataTextField="MotivoBaja" DataValueField="CveMotivoBaja" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Sin asignar Motivo de Baja" Value="-1"></asp:ListItem>
</asp:DropDownList>
</div>
<asp:UpdatePanel ID="UpProyecto" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Label ID="LblProyecto" runat="server" class="col-md-1 truncate">Proyecto:</asp:Label>
<div class="col-md-2" id="DivProyecto" runat="server">
<asp:DropDownList ID="DdlProyectoAsignado" Width="100%" OnSelectedIndexChanged="DdlProyectoAsignado_SelectedIndexChanged" runat="server" CssClass="select2me" AppendDataBoundItems="true" AutoPostBack="true" DataTextField="Proyecto" DataValueField="CveProyecto" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Sin Proyecto asignado" Value="-1"></asp:ListItem>
</asp:DropDownList>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<%--<label class="col-md-1 truncate">SubProyecto:</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlSubProyectoAsignado" runat="server" CssClass="select2me" AppendDataBoundItems="true" DataTextField="SubProyecto" DataValueField="CveSubProyecto" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Sin SubProyecto asignado" Value="-1"></asp:ListItem>
</asp:DropDownList>
</div>--%>
<label class="col-md-1 truncate">Supervisor:</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlSupervisor" runat="server" Width="100%" CssClass="select2me" AppendDataBoundItems="true" DataTextField="Nombre" DataValueField="CveUsuario" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Sin Supervisor Asignado" Value="-1"></asp:ListItem>
</asp:DropDownList>
</div>
<div class="row">
<label class="col-md-1 truncate">Turno:</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlTurno" runat="server" Width="100%" CssClass="select2me" AppendDataBoundItems="true" DataTextField="Turno" DataValueField="CveTurno" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</div>
</div>
</div>
<div class="row">
<label class="col-md-1 truncate">Fecha IFin Contrato:</label>
<div class="col-md-2">
<div style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 120px !important; padding: 0px;">
<asp:TextBox ID="TxtFechaIFinContrato" runat="server" CssClass="form-control" CausesValidation="true" Style="width: 118px" MaxLength="10"></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="ImgFechaFinContrato" class="btn default" Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
<ajax:MaskedEditExtender ID="MEEFechaFinContrato" runat="server" TargetControlID="TxtFechaIFinContrato" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CEFechaFinContrato" TargetControlID="TxtFechaIFinContrato" PopupButtonID="ImgFechaFinContrato" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:CompareValidator ID="CVFechaFinContrato" runat="server" ControlToValidate="TxtFechaIFinContrato" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Fin Contrato''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpGuardar"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCOFechaFinContrato2" runat="server" HighlightCssClass="vco" TargetControlID="CVFechaFinContrato" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</div>
<label class="col-md-1 truncate">Fecha FFin Contrato:</label>
<div class="col-md-2">
<div style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 120px !important; padding: 0px;">
<asp:TextBox ID="TxtFechaFFinContrato" runat="server" CssClass="form-control" CausesValidation="true" Style="width: 118px" MaxLength="10"></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="ImgFechaFFinContrato" class="btn default" Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
<ajax:MaskedEditExtender ID="MEEFechaFFinContrato" runat="server" TargetControlID="TxtFechaFFinContrato" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CEFechaFFinContrato" TargetControlID="TxtFechaFFinContrato" PopupButtonID="ImgFechaFinContrato" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:CompareValidator ID="CVFechaFFinContrato" runat="server" ControlToValidate="TxtFechaFFinContrato" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Fin Contrato''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpGuardar"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCOFechaFFinContrato2" runat="server" HighlightCssClass="vco" TargetControlID="CVFechaFinContrato" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</div>
<label class="col-md-1 truncate">Fecha de IIngreso:</label>
<div class="col-md-2">
<div style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 120px !important; padding: 0px;">
<asp:TextBox ID="TxtFechaIIngreso" runat="server" CssClass="form-control" CausesValidation="true" Style="width: 118px" MaxLength="10"></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="ImgFechaIIngreso" class="btn default" Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
<ajax:MaskedEditExtender ID="MEEFechaIIngreso" runat="server" TargetControlID="TxtFechaIIngreso" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CEFechaIIngreso" TargetControlID="TxtFechaIIngreso" PopupButtonID="ImgFechaIIngreso" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="RFVFechaIIngreso" runat="server" ControlToValidate="TxtFechaIIngreso" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha de Ingreso''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CVFechaIIngreso" runat="server" ControlToValidate="TxtFechaIIngreso" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha de Ingreso''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpGuardar"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCOFechaIIngreso1" runat="server" HighlightCssClass="vco" TargetControlID="RFVFechaIIngreso" Width="350px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="VCOFechaIIngreso2" runat="server" HighlightCssClass="vco" TargetControlID="CVFechaIIngreso" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</div>
<label class="col-md-1 truncate">Fecha de FIngreso:</label>
<div class="col-md-2">
<div style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 120px !important; padding: 0px;">
<asp:TextBox ID="TxtFechaFIngreso" runat="server" CssClass="form-control" CausesValidation="true" Style="width: 118px" MaxLength="10"></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="ImgFechaFIngreso" class="btn default" Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
<ajax:MaskedEditExtender ID="MEEFechaFIngreso" runat="server" TargetControlID="TxtFechaFIngreso" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CEFechaFIngreso" TargetControlID="TxtFechaFIngreso" PopupButtonID="ImgFechaFIngreso" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="RFVFechaFIngreso" runat="server" ControlToValidate="TxtFechaFIngreso" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha de Ingreso''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CVFechaFIngreso" runat="server" ControlToValidate="TxtFechaFIngreso" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha de Ingreso''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpGuardar"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCOFechaFIngreso1" runat="server" HighlightCssClass="vco" TargetControlID="RFVFechaFIngreso" Width="350px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="VCOFechaFIngreso2" runat="server" HighlightCssClass="vco" TargetControlID="CVFechaFIngreso" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</div>
</div>
<%-- <div class="row">
<label class="col-md-1 truncate">Sucursal:</label>
<div class="col-md-2">
<div style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 120px !important; padding: 0px;">
<asp:DropDownList CssClass="table-group-action-input form-control input-inline input-small input-sm select2me" ID="DdlSucursales" DataTextField="Sucursal" DataValueField="CveSucursal" runat="server">
</asp:DropDownList>
</div>
</div>
</div>
</div>--%>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<br />
<div class="portlet light smmallpadding bordered">
<div class="portlet-title">
<div class="caption">
<i class="icon-user"></i><span class="caption-subject bold uppercase" style="font-size: 18px;">Personal</span>
</div>
<div class="tools">
<div style="display: inline-block">
<input type="text" id="TxtBusqueda" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvDatos.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px; height: 25px; border-color: #89C4F4;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvDatos.ClientID) %>" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body">
<asp:UpdatePanel ID="UPDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<%-- Si vas Agregar o eliminar columnas recuerda Modificar la funcion BtnPersonalizar_Click para que ajustes los indices que se mostraran al personalizar ¬¬ --%>
<%-- Si vas Agregar o eliminar columnas recuerda Modificar la funcion BtnPersonalizar_Click para que ajustes los indices que se mostraran al personalizar ¬¬ --%>
<%-- Si vas Agregar o eliminar columnas recuerda Modificar la funcion BtnPersonalizar_Click para que ajustes los indices que se mostraran al personalizar ¬¬ --%>
<%-- Si vas Agregar o eliminar columnas recuerda Modificar la funcion BtnPersonalizar_Click para que ajustes los indices que se mostraran al personalizar ¬¬ --%>
<%-- Si vas Agregar o eliminar columnas recuerda Modificar la funcion BtnPersonalizar_Click para que ajustes los indices que se mostraran al personalizar ¬¬ --%>
<asp:GridView ID="GvDatos" ClientIDMode="Static" runat="server" AutoGenerateColumns="False" Width="100%" EmptyDataText="No se Encontró Personal registrado" ToolTip="Listado de Personal"
CssClass="table table-striped table-advance table-hover Widthall ScrollAD" data-sort="true" data-freezerows="1" GridLines="None">
<Columns>
<asp:TemplateField ItemStyle-HorizontalAlign="Left">
<HeaderTemplate>Código</HeaderTemplate>
<ItemTemplate>
<asp:HyperLink ID="HplCodigo" runat="server" Text='<%# Eval("Codigo") %>' NavigateUrl='<%# Eval("CvePersonal", If(Eval("CveEstatusPersonal").ToString() = "3", "~/RH/Reclutamiento.aspx?CvePersonal={0}", "~/RH/Personal.aspx?CvePersonal={0}")) %>'></asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Left">
<HeaderTemplate>Nombre</HeaderTemplate>
<ItemTemplate>
<asp:HyperLink ID="HplNom" runat="server" Text='<%# Eval("NombreCompleto") %>' NavigateUrl='<%# Eval("CvePersonal", If(Eval("CveEstatusPersonal").ToString() = "3", "~/RH/Reclutamiento.aspx?CvePersonal={0}", "~/RH/Personal.aspx?CvePersonal={0}")) %>'></asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>NSS</HeaderTemplate>
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlNSS" runat="server" Text='<%# Eval("NSS", "{0}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>RFC</HeaderTemplate>
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlRFC" runat="server" Text='<%# Eval("RFC", "{0}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Turno</HeaderTemplate>
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlTurno" runat="server" Text='<%# Eval("Turno", "{0}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Puesto</HeaderTemplate>
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlPuesto" runat="server" Text='<%# Eval("Puesto", "{0}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>Departamento</HeaderTemplate>
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlDepartamento" runat="server" Text='<%# Eval("Departamento", "{0}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>Ruta</HeaderTemplate>
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlRuta" runat="server" Text='<%# Eval("Ruta", "{0}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>Escolaridad</HeaderTemplate>
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlEscolaridad" runat="server" Text='<%# Eval("Escolaridad", "{0}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>EstadoCivil</HeaderTemplate>
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlEstadoCivil" runat="server" Text='<%# Eval("EstadoCivil", "{0}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Género</HeaderTemplate>
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlGenero" runat="server" Text='<%# Eval("Genero", "{0}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Estatus</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlEstatusPersonal" runat="server" Text='<%# Eval("EstatusPersonal") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>SubProyecto</HeaderTemplate>
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlSubProyecto" runat="server" Text='<%# Eval("SubProyecto", "{0}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>Supervisor</HeaderTemplate>
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlSupervisor" runat="server" Text='<%# Eval("Supervisor", "{0}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Tipo Período</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlTipoPeriodo" runat="server" Text='<%# Eval("TipoPeriodo") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>MetodoPago</HeaderTemplate>
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlMetodoPago" runat="server" Text='<%# Eval("MetodoPago", "{0}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>TipoContrato</HeaderTemplate>
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlTipoContrato" runat="server" Text='<%# Eval("TipoContrato", "{0}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>MotivoBaja</HeaderTemplate>
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlMotivoBaja" runat="server" Text='<%# Eval("MotivoBaja", "{0}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>Proyecto</HeaderTemplate>
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlProyecto" runat="server" Text='<%# Eval("Proyecto", "{0}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>FechaIngreso</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlFechaIngreso" runat="server" Text='<%# Eval("FechaIngreso") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>SeInscribioSS</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlSeinscribioSS" runat="server" Text='<%# If(Eval("SeInscribioSS").ToString = "True", "Si", "No")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>SalarioDiarioPago</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlSalarioDiarioPago" runat="server" Text='<%# Eval("SalarioDiarioPago") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>SalarioDiario</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlSalarioDiario" runat="server" Text='<%# Eval("SalarioDiario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>SDI</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlSDI" runat="server" Text='<%# Eval("SDI") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>SalarioDiarioSS</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlSalarioDiarioSS" runat="server" Text='<%# Eval("SalarioDiarioSS") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>Bono</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlBono" runat="server" Text='<%# Eval("Bono") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>NumDiasAguinaldo</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlNumDiasAguinaldo" runat="server" Text='<%# Eval("NumDiasAguinaldo") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>PorPrimaVacacional</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlPorPrimaVacacional" runat="server" Text='<%# Eval("PorPrimaVacacional") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>Ubicacion</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlUbicacion" runat="server" Text='<%# Eval("Ubicacion") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>FechaNacimiento</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlFechaNacimiento" runat="server" Text='<%# Eval("FechaNacimiento") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>LugarNacimiento</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlLugarNacimiento" runat="server" Text='<%# Eval("LugarNacimiento") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>Direccion</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlDireccion" runat="server" Text='<%# Eval("Direccion") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>CP</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlCP" runat="server" Text='<%# Eval("CP") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>Ciudad</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlCiudad" runat="server" Text='<%# Eval("Ciudad") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>Estado</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlEstado" runat="server" Text='<%# Eval("Estado") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>Telefono</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlTelefono" runat="server" Text='<%# Eval("Telefono") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>Celular</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlCelular" runat="server" Text='<%# Eval("Celular") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>CURP</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlCURP" runat="server" Text='<%# Eval("CURP") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>NombrePadre</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlNombrePadre" runat="server" Text='<%# Eval("NombrePadre") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>NombreMadre</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlNombreMadre" runat="server" Text='<%# Eval("NombreMadre") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<HeaderTemplate>ClienteAsignado</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlClienteAsignado" runat="server" Text='<%# Eval("ClienteAsignado") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Fecha Ing</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlFechaIng" runat="server" Text='<%# Eval("FechaIng ", "{0:d}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Left">
<HeaderTemplate>Usuario</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlUsuario" runat="server" Text='<%# Eval("Usuario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" />
<AlternatingRowStyle CssClass="TextoAlterno" />
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel runat="server" ID="UPPersonalizar" UpdateMode="Conditional">
<ContentTemplate>
<div id="DivPersonalizar" class="modal fade" role="dialog">
<div class="modal-dialog">
<!-- Modal content SucursalCobranza-->
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">&times;</button>
<h4 class="modal-title">
<asp:Label ID="Label1" runat="server" ClientIDMode="Static" Text="Personalizar Columnas"></asp:Label></h4>
</div>
<div class="modal-body">
<table class="table table-striped table-advance table-hover">
<tbody>
<tr>
<td style="text-align: left">
<asp:CheckBox ID="ChkCodigo" runat="server" Text="Codigo" Checked="true" /></td>
<td style="text-align: left">
<asp:CheckBox ID="ChkNombre" runat="server" Text="Nombre" Checked="true" /></td>
</tr>
<tr>
<td style="text-align: left">
<asp:CheckBox ID="ChkNSS" runat="server" Text="NSS" /></td>
<td style="text-align: left">
<asp:CheckBox ID="ChlRFC" runat="server" Text="RFC" /></td>
</tr>
<tr>
<td style="text-align: left">
<asp:CheckBox ID="ChkTurno" runat="server" Text="Turno" Checked="true" /></td>
<td style="text-align: left">
<asp:CheckBox ID="ChkPuesto" runat="server" Text="Puesto" Checked="true" /></td>
</tr>
<tr>
<td style="text-align: left">
<asp:CheckBox ID="ChkDepartamento" runat="server" Text="Departamento" /></td>
<td style="text-align: left">
<asp:CheckBox ID="ChkRuta" runat="server" Text="Ruta" /></td>
</tr>
<tr>
<td style="text-align: left">
<asp:CheckBox ID="ChkEscolaridad" runat="server" Text="Escolaridad" /></td>
<td style="text-align: left">
<asp:CheckBox ID="ChkEstadoCivil" runat="server" Text="Estado Civil" /></td>
</tr>
<tr>
<td style="text-align: left">
<asp:CheckBox ID="ChkGenero" runat="server" Text="Genero" Checked="true" /></td>
<td style="text-align: left">
<asp:CheckBox ID="ChkEstatusPersonal" runat="server" Text="Estatus Personal" Checked="true" /></td>
</tr>
<tr>
<td style="text-align: left">
<asp:CheckBox ID="ChkSubProyecto" runat="server" Text="SubProyecto" /></td>
<td style="text-align: left">
<asp:CheckBox ID="ChkSupervisor" runat="server" Text="Suupervisor" /></td>
</tr>
<tr>
<td style="text-align: left">
<asp:CheckBox ID="ChkTipoPeriodo" runat="server" Text="Tipo Periodo" Checked="true" /></td>
<td style="text-align: left">
<asp:CheckBox ID="ChkMetodoPago" runat="server" Text="Método de Pago" /></td>
</tr>
<tr>
<td style="text-align: left">
<asp:CheckBox ID="ChkTipoContrato" runat="server" Text="TipoContrato" /></td>
<td style="text-align: left">
<asp:CheckBox ID="ChkSeTimbro" runat="server" Text="Se Timbró" /></td>
</tr>
<tr>
<td style="text-align: left">
<asp:CheckBox ID="ChkMotivoBaja" runat="server" Text="Motivo de Baja" /></td>
<td style="text-align: left">
<asp:CheckBox ID="ChkProyecto" runat="server" Text="Proyecto" /></td>
</tr>
<tr>
<td style="text-align: left">
<asp:CheckBox ID="ChkFechaIngreso" runat="server" Text="Fecha de Ingreso" /></td>
<td style="text-align: left">
<asp:CheckBox ID="ChkSeInscribioSS" runat="server" Text="SeInscribioSS" /></td>
</tr>
<tr>
<td style="text-align: left">
<asp:CheckBox ID="ChkSalarioDiarioPago" runat="server" Text="SalarioDiarioPago" /></td>
<td style="text-align: left">
<asp:CheckBox ID="ChkSalarioDiario" runat="server" Text="SalarioDiario" /></td>
</tr>
<tr>
<td style="text-align: left">
<asp:CheckBox ID="ChkSDI" runat="server" Text="SDI" /></td>
<td style="text-align: left">
<asp:CheckBox ID="ChkSalarioDiarioSS" runat="server" Text="SalarioDiarioSS" /></td>
</tr>
<tr>
<td style="text-align: left">
<asp:CheckBox ID="ChkBono" runat="server" Text="Bono" /></td>
<td style="text-align: left">
<asp:CheckBox ID="ChkNumDiasAguinaldo" runat="server" Text="NumDiasAguinaldo" /></td>
</tr>
<tr>
<td style="text-align: left">
<asp:CheckBox ID="ChkPorPrimaVacacional" runat="server" Text="PorPrimaVacacional" /></td>
<td style="text-align: left">
<asp:CheckBox ID="ChkUbicacion" runat="server" Text="Ubicacion" /></td>
</tr>
<tr>
<td style="text-align: left">
<asp:CheckBox ID="ChkFechaNacimiento" runat="server" Text="FechaNacimiento" /></td>
<td style="text-align: left">
<asp:CheckBox ID="ChkLugarNacimiento" runat="server" Text="LugarNacimiento" /></td>
</tr>
<tr>
<td style="text-align: left">
<asp:CheckBox ID="ChkDireccion" runat="server" Text="Direccion" /></td>
<td style="text-align: left">
<asp:CheckBox ID="ChkCP" runat="server" Text="CP" /></td>
</tr>
<tr>
<td style="text-align: left">
<asp:CheckBox ID="ChkCiudad" runat="server" Text="Ciudad" /></td>
<td style="text-align: left">
<asp:CheckBox ID="ChkEstado" runat="server" Text="Estado" /></td>
</tr>
<tr>
<td style="text-align: left">
<asp:CheckBox ID="ChkTelefono" runat="server" Text="Telefono" /></td>
<td style="text-align: left">
<asp:CheckBox ID="ChkCelular" runat="server" Text="Celular" /></td>
</tr>
<tr>
<td style="text-align: left">
<asp:CheckBox ID="ChkCURP" runat="server" Text="CURP" /></td>
<td style="text-align: left">
<asp:CheckBox ID="ChkNombrePadre" runat="server" Text="NombrePadre" /></td>
</tr>
<tr>
<td style="text-align: left">
<asp:CheckBox ID="ChkNombreMadre" runat="server" Text="NombreMadre" /></td>
<td style="text-align: left">
<asp:CheckBox ID="ChkClienteAsignado" runat="server" Text="ClienteAsignado" /></td>
</tr>
<tr>
<td style="text-align: left">
<asp:CheckBox ID="ChkUsuario" runat="server" Text="Usuario" Checked="true" /></td>
<td>&nbsp;</td>
</tr>
</tbody>
</table>
</div>
<div class="modal-footer">
<asp:Button ID="BtnPersonalizar" runat="server" Text="Personalizar" class="btn btn-success" />
<button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button>
</div>
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
<asp:TextBox runat="server" ID="txtDatos" ClientIDMode="Static" TextMode="MultiLine" row="10" Columns="60" style="display:none"></asp:TextBox>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
<script src="/Metronic/assets/global/scripts/datatable.js"></script>
<script src="/Metronic/assets/global/plugins/datatables/all.min.js"></script>
<script type="text/javascript">
function Show() {
document.getElementById("ImgS").style.display = "none";
document.getElementById("ImgH").style.display = "";
document.getElementById("Tbl").style.display = "";
}
function Hide() {
document.getElementById("ImgS").style.display = "";
document.getElementById("ImgH").style.display = "none";
document.getElementById("Tbl").style.display = "none";
}
function LimpiarTabla() {
var TablaClonada = $('#<%= UPDatos.ClientID %>').clone();
$('.trnopadding.ADtr.SearchADHeader').remove('.trnopadding.ADtr.SearchADHeader');
$('#txtDatos').val($('#<%= UPDatos.ClientID %>').html());
}
</script>
</asp:Content>

644
RH/CatPersonal.aspx.vb Normal file
View File

@@ -0,0 +1,644 @@
Option Explicit On
Option Strict On
Imports System.Data
Imports Extensiones
Imports Microsoft.Reporting.WebForms
Partial Class RH_CatPersonal
Inherits ClsPaginas
Private Property DTDatos As DataTable
Get
If ViewState("DTDatos") Is Nothing Then
Return New DataTable
Else
Return DirectCast(ViewState("DTDatos"), DataTable)
End If
End Get
Set(value As DataTable)
ViewState("DTDatos") = value
End Set
End Property
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
ViewState("Orden") = ""
CargaEscolaridad()
CargaEstadoCivil()
CargaDepartamento()
CargaPuestos()
CargaEstatusPersonal()
CargaGenero()
CargaMotivoBaja()
CargaRuta()
CargaTiposContrato()
CargaTipoPeriodo()
CargaTurno()
CargaProyecto()
CargaSupervisores()
CargaMetodosPago()
CargaDatos()
End If
End Sub
Public Sub CargaDatos()
Dim ObjPersonal As New ClsRH
'Dim Codigo As String
'Dim Nombre As String
'Dim NSS As String
'Dim RFC As String
Dim CveTurno As Integer = DdlTurno.SelectedValue.ToEntero
Dim CvePuesto As Integer = DdlPuesto.SelectedValue.ToEntero
Dim CveDepartamento As Integer = DdlDepartamento.SelectedValue.ToEntero
Dim CveRuta As Integer = DdlRuta.SelectedValue.ToEntero
Dim CveEscolaridad As Integer = DdlEscolaridad.SelectedValue.ToEntero
Dim CveEstadoCivil As Integer = DdlEstadoCivil.SelectedValue.ToEntero
Dim CveGenero As Integer = DdlGenero.SelectedValue.ToEntero
Dim CveEstatusPersonal As Integer = DdlEstatusPersonal.SelectedValue.ToEntero
Dim CveSubProyecto As Integer = DdlSubProyectoAsignado.SelectedValue.ToEntero
Dim CveClienteAsignado As Integer = -1 '-----
Dim HorarioTrabajo As String = "-1" '-----
Dim CveSupervisor As Integer = DdlSupervisor.SelectedValue.ToEntero
Dim CveTipoPeriodo As Integer = DdlTipoPeriodo.SelectedValue.ToEntero
Dim CveMetodoPago As Integer = DdlMetodoPago.SelectedValue.ToEntero
Dim CveTipoContrato As Integer = DdlTipoContrato.SelectedValue.ToEntero
Dim CveMotivoBaja As Integer = DdlMotivoBaja.SelectedValue.ToEntero
Dim CveProyecto As Integer = DdlProyectoAsignado.SelectedValue.ToEntero
Dim FechaIFinContrato As String = TxtFechaIFinContrato.Text.Trim
Dim FechaFFinContrato As String = TxtFechaFFinContrato.Text.Trim
Dim FechaIIngreso As String = TxtFechaIIngreso.Text.Trim
Dim FechaFIngreso As String = TxtFechaFIngreso.Text.Trim
If FechaIFinContrato = Nothing Then
FechaIFinContrato = "-1"
End If
If FechaFFinContrato = Nothing Then
FechaFFinContrato = "-1"
End If
If FechaIIngreso = Nothing Then
FechaIIngreso = "-1"
End If
If FechaFIngreso = Nothing Then
FechaFIngreso = "-1"
End If
If ObjPersonal.GetPersonal(-1, "-1", "-1", "-1", "-1", CveTurno, CvePuesto, CveDepartamento, CveRuta, CveEscolaridad, CveEstadoCivil, CveGenero, CveEstatusPersonal, CveSubProyecto, CveClienteAsignado, HorarioTrabajo, CveSupervisor, CveTipoPeriodo, CveMetodoPago, CveTipoContrato, CveMotivoBaja, CveProyecto, FechaIFinContrato, FechaFFinContrato, FechaIIngreso, FechaFIngreso, UsuarioActual.CveEmpresa) Then
DTDatos = ObjPersonal.DtResultados
'filtro por usuario subproyecto/sucursal vsh
If UsuarioActual.CveEmpresa = 7 Then
If UsuarioActual.TienePermisoProceso(197) Then
GvDatos.DataSource = ObjPersonal.DtResultados
Else
GvDatos.DataSource = ObjPersonal.DtResultados.FiltraParametros($"CveSubProyecto = { UsuarioActual.CveSubProyecto }")
End If
Else
GvDatos.DataSource = ObjPersonal.DtResultados
End If
Else
DTDatos = Nothing
GvDatos.DataSource = Nothing
End If
ObjPersonal.Dispose()
GvDatos.DataBind()
'If (GvDatos.Rows.Count > 0) Then
' GvDatos.UseAccessibleHeader = True
' GvDatos.HeaderRow.TableSection = TableRowSection.TableHeader
' RegistraScript("OrdenarGV();")
'End If
UPDatos.Update()
'If ViewState("Orden").ToString() <> String.Empty Then
' CargaGrid(ViewState("Orden").ToString())
'Else
' CargaGrid("")
'End If
End Sub
Protected Sub BtnConsultar_Click(sender As Object, e As System.EventArgs) Handles BtnConsultar.Click
CargaDatos()
UPDatos.Update()
End Sub
#Region " C O M B O S "
Private Sub CargaEscolaridad()
DdlEscolaridad.DataSource = GlobalDTEscolaridad
DdlEscolaridad.DataBind()
End Sub
Private Sub CargaGenero()
DdlGenero.DataSource = GlobalDTGenero
DdlGenero.DataBind()
End Sub
Private Sub CargaEstadoCivil()
DdlEstadoCivil.DataSource = GlobalDTEstadoCivil
DdlEstadoCivil.DataBind()
End Sub
Private Sub CargaTipoPeriodo()
DdlTipoPeriodo.DataSource = GlobalDTTipoPeriodo
DdlTipoPeriodo.DataBind()
End Sub
Private Sub CargaTiposContrato()
DdlTipoContrato.DataSource = GlobalDTTiposContrato
DdlTipoContrato.DataBind()
End Sub
Private Sub CargaTurno()
DdlTurno.DataSource = GlobalDTTurno.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
DdlTurno.DataBind()
End Sub
Private Sub CargaDepartamento()
DdlDepartamento.DataSource = GlobalDTDepartamentos.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
DdlDepartamento.DataBind()
End Sub
Private Sub CargaPuestos()
DdlPuesto.DataSource = GlobalDTRHPuestos(UsuarioActual.CveEmpresa)
DdlPuesto.DataBind()
End Sub
Private Sub CargaRuta()
DdlRuta.DataSource = GlobalDTRutas.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
DdlRuta.DataBind()
End Sub
Private Sub CargaMotivoBaja()
DdlMotivoBaja.DataSource = GlobalDTMotivoBaja.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
DdlMotivoBaja.DataBind()
End Sub
Private Sub CargaEstatusPersonal()
DdlEstatusPersonal.DataSource = GlobalDTEstatusPersonal
DdlEstatusPersonal.DataBind()
End Sub
Private Sub CargaProyecto()
DdlProyectoAsignado.DataSource = GlobalDTProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1)
DdlProyectoAsignado.DataBind()
CargaTipoCentroCosto()
If DivProyecto.Visible Then
CargaSubProyectos()
End If
End Sub
Private Sub CargaSubProyectos()
DdlSubProyectoAsignado.Items.Clear()
If DdlProyectoAsignado.SelectedValue <> "-1" Then
DdlSubProyectoAsignado.DataSource = GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, DdlProyectoAsignado.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, -1)
DdlSubProyectoAsignado.DataBind()
End If
DdlSubProyectoAsignado.Items.Insert(0, New ListItem("Todos", "-1"))
'filtro por usuario subproyecto/sucursal vsh
'If UsuarioActual.CveEmpresa = 7 Then
' DdlSubProyectoAsignado.DataSource = GlobalDTSubProyectos(-1, -1, UsuarioActual.CveEmpresa, 1).FiltraParametros($"CveSubProyecto = { UsuarioActual.CveSubProyecto }")
'End If
UpSubProyecto.Update()
End Sub
Private Sub CargaTipoCentroCosto()
If UsuarioActual.Empresa.Tipo_CentroCosto = 1 Then
DdlSubProyectoAsignado.Items.Clear()
DivProyecto.Visible = False
LblProyecto.Visible = False
LblSubProyecto.Text = "Sucursal:"
DdlSubProyectoAsignado.DataSource = GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1, 1)
DdlSubProyectoAsignado.Items.Insert(0, New ListItem("Todos", "-1"))
DdlSubProyectoAsignado.DataBind()
ElseIf UsuarioActual.Empresa.Tipo_CentroCosto = 2 Then
DdlSubProyectoAsignado.Items.Clear()
DivProyecto.Visible = False
LblProyecto.Visible = False
LblSubProyecto.Text = "Proyecto:"
DdlSubProyectoAsignado.DataSource = GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1, 1)
DdlSubProyectoAsignado.Items.Insert(0, New ListItem("Todos", "-1"))
DdlSubProyectoAsignado.DataBind()
ElseIf UsuarioActual.Empresa.Tipo_CentroCosto = 4 Then
LblProyecto.Text = "Sucursal:"
LblSubProyecto.Text = "Proyecto:"
ElseIf UsuarioActual.Empresa.Tipo_CentroCosto = 5 Then
LblProyecto.Text = "Proyecto:"
LblSubProyecto.Text = "Sucursal:"
End If
End Sub
Private Sub CargaSupervisores()
DdlSupervisor.DataSource = GlobalDTUsuarios.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa & " AND EsSupervisorRH = 1 ")
DdlSupervisor.DataBind()
End Sub
Private Sub CargaMetodosPago()
DdlMetodoPago.DataSource = GlobalDTMetodosPago
DdlMetodoPago.DataBind()
End Sub
#End Region
#Region "P E R Z O N A L I Z A R"
Protected Sub BtnPersonalizar_Click(sender As Object, e As System.EventArgs) Handles BtnPersonalizar.Click
If ChkCodigo.Checked Then
GvDatos.Columns(0).Visible = True
Else
GvDatos.Columns(0).Visible = False
End If
If ChkNombre.Checked Then
GvDatos.Columns(1).Visible = True
Else
GvDatos.Columns(1).Visible = False
End If
If ChkNSS.Checked Then
GvDatos.Columns(2).Visible = True
Else
GvDatos.Columns(2).Visible = False
End If
If ChlRFC.Checked Then
GvDatos.Columns(3).Visible = True
Else
GvDatos.Columns(3).Visible = False
End If
If ChkTurno.Checked Then
GvDatos.Columns(4).Visible = True
Else
GvDatos.Columns(4).Visible = False
End If
If ChkPuesto.Checked Then
GvDatos.Columns(5).Visible = True
Else
GvDatos.Columns(5).Visible = False
End If
If ChkDepartamento.Checked Then
GvDatos.Columns(6).Visible = True
Else
GvDatos.Columns(6).Visible = False
End If
If ChkRuta.Checked Then
GvDatos.Columns(7).Visible = True
Else
GvDatos.Columns(7).Visible = False
End If
If ChkEscolaridad.Checked Then
GvDatos.Columns(8).Visible = True
Else
GvDatos.Columns(8).Visible = False
End If
If ChkEstadoCivil.Checked Then
GvDatos.Columns(9).Visible = True
Else
GvDatos.Columns(9).Visible = False
End If
If ChkGenero.Checked Then
GvDatos.Columns(10).Visible = True
Else
GvDatos.Columns(10).Visible = False
End If
If ChkEstatusPersonal.Checked Then
GvDatos.Columns(11).Visible = True
Else
GvDatos.Columns(11).Visible = False
End If
If ChkSubProyecto.Checked Then
GvDatos.Columns(12).Visible = True
Else
GvDatos.Columns(12).Visible = False
End If
If ChkSupervisor.Checked Then
GvDatos.Columns(13).Visible = True
Else
GvDatos.Columns(13).Visible = False
End If
If ChkTipoPeriodo.Checked Then
GvDatos.Columns(14).Visible = True
Else
GvDatos.Columns(14).Visible = False
End If
If ChkMetodoPago.Checked Then
GvDatos.Columns(15).Visible = True
Else
GvDatos.Columns(15).Visible = False
End If
If ChkTipoContrato.Checked Then
GvDatos.Columns(16).Visible = True
Else
GvDatos.Columns(16).Visible = False
End If
If ChkMotivoBaja.Checked Then
GvDatos.Columns(17).Visible = True
Else
GvDatos.Columns(17).Visible = False
End If
If ChkProyecto.Checked Then
GvDatos.Columns(18).Visible = True
Else
GvDatos.Columns(18).Visible = False
End If
If ChkFechaIngreso.Checked Then
GvDatos.Columns(19).Visible = True
Else
GvDatos.Columns(19).Visible = False
End If
If ChkSeInscribioSS.Checked Then
GvDatos.Columns(20).Visible = True
Else
GvDatos.Columns(20).Visible = False
End If
If ChkSalarioDiarioPago.Checked Then
GvDatos.Columns(21).Visible = True
Else
GvDatos.Columns(21).Visible = False
End If
If ChkSalarioDiario.Checked Then
GvDatos.Columns(22).Visible = True
Else
GvDatos.Columns(22).Visible = False
End If
If ChkSDI.Checked Then
GvDatos.Columns(23).Visible = True
Else
GvDatos.Columns(23).Visible = False
End If
If ChkSalarioDiarioSS.Checked Then
GvDatos.Columns(24).Visible = True
Else
GvDatos.Columns(24).Visible = False
End If
If ChkBono.Checked Then
GvDatos.Columns(25).Visible = True
Else
GvDatos.Columns(25).Visible = False
End If
If ChkNumDiasAguinaldo.Checked Then
GvDatos.Columns(26).Visible = True
Else
GvDatos.Columns(26).Visible = False
End If
If ChkPorPrimaVacacional.Checked Then
GvDatos.Columns(27).Visible = True
Else
GvDatos.Columns(27).Visible = False
End If
If ChkUbicacion.Checked Then
GvDatos.Columns(28).Visible = True
Else
GvDatos.Columns(28).Visible = False
End If
If ChkFechaNacimiento.Checked Then
GvDatos.Columns(29).Visible = True
Else
GvDatos.Columns(29).Visible = False
End If
If ChkLugarNacimiento.Checked Then
GvDatos.Columns(30).Visible = True
Else
GvDatos.Columns(30).Visible = False
End If
If ChkDireccion.Checked Then
GvDatos.Columns(31).Visible = True
Else
GvDatos.Columns(31).Visible = False
End If
If ChkCP.Checked Then
GvDatos.Columns(32).Visible = True
Else
GvDatos.Columns(32).Visible = False
End If
If ChkCiudad.Checked Then
GvDatos.Columns(33).Visible = True
Else
GvDatos.Columns(33).Visible = False
End If
If ChkEstado.Checked Then
GvDatos.Columns(34).Visible = True
Else
GvDatos.Columns(34).Visible = False
End If
If ChkTelefono.Checked Then
GvDatos.Columns(35).Visible = True
Else
GvDatos.Columns(35).Visible = False
End If
If ChkCelular.Checked Then
GvDatos.Columns(36).Visible = True
Else
GvDatos.Columns(36).Visible = False
End If
If ChkCURP.Checked Then
GvDatos.Columns(37).Visible = True
Else
GvDatos.Columns(37).Visible = False
End If
If ChkNombrePadre.Checked Then
GvDatos.Columns(38).Visible = True
Else
GvDatos.Columns(38).Visible = False
End If
If ChkNombreMadre.Checked Then
GvDatos.Columns(39).Visible = True
Else
GvDatos.Columns(39).Visible = False
End If
If ChkClienteAsignado.Checked Then
GvDatos.Columns(40).Visible = True
Else
GvDatos.Columns(40).Visible = False
End If
If ChkUsuario.Checked Then
GvDatos.Columns(42).Visible = True
Else
GvDatos.Columns(42).Visible = False
End If
If (GvDatos.Rows.Count > 0) Then
GvDatos.UseAccessibleHeader = True
GvDatos.HeaderRow.TableSection = TableRowSection.TableHeader
RegistraScript("OrdenarGV();")
End If
liLnkDescarPersonalizado.Visible = True
UpPersonalizado.Update()
UPDatos.Update()
End Sub
#End Region
#Region "G V D A T O S"
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.RowIndex = 0 Then
e.Row.Cells(0).Width = Unit.Pixel(60)
e.Row.Cells(1).Width = Unit.Pixel(250)
e.Row.Cells(2).Width = Unit.Pixel(80)
e.Row.Cells(3).Width = Unit.Pixel(80)
e.Row.Cells(4).Width = Unit.Pixel(100)
e.Row.Cells(5).Width = Unit.Pixel(100)
e.Row.Cells(6).Width = Unit.Pixel(60)
e.Row.Cells(7).Width = Unit.Pixel(110)
e.Row.Cells(8).Width = Unit.Pixel(90)
End If
'If UsuarioActual.Empresa.CveEmpresa = 4 Or UsuarioActual.Empresa.CveEmpresa = 11 Or UsuarioActual.Empresa.CveEmpresa = 7 Or UsuarioActual.Empresa.CveEmpresa = 12 Or UsuarioActual.Empresa.CveEmpresa = 2 Then
' e.Row.FCLiteral("LtlNombre").Text = "<a target='_blank' class=""Texto"" href=""/RH/Reclutamiento.aspx?CvePersonal=" & e.Row.DBCampo("CvePersonal") & """>" & e.Row.FCLiteral("LtlNombre").Text & "</a>"
'Else
' e.Row.FCLiteral("LtlNombre").Text = "<a class=""Texto"" href=""/RH/Personal.aspx?CvePersonal=" & e.Row.DBCampo("CvePersonal") & """>" & e.Row.FCLiteral("LtlNombre").Text & "</a>"
'End If
'e.Row.FCLiteral("LtlCodigo").Text = "<a class=""Texto"" href=""/RH/Personal.aspx?CvePersonal=" & e.Row.DBCampo("CvePersonal") & """>" & e.Row.FCLiteral("LtlCodigo").Text & "</a>"
End If
End Sub
#End Region
#Region "I M P R I M I R P D F/Excel"
Private Sub LnkExportar_Click(sender As Object, e As EventArgs) Handles LnkExportar.Click
GenerarPDF("Excel")
End Sub
Private Sub LinkPDF_Click(sender As Object, e As EventArgs) Handles LinkPDF.Click
GenerarPDF()
End Sub
Private Sub GenerarPDF(Optional Formato As String = "PDF")
Dim ObjTareas As New ClsOIEventos
Dim params As New List(Of ReportParameter)
Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta))
Dim logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa)
' params.Add(New ReportParameter("AgrupadoPor", Filtros))
params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa))
'params.Add(New ReportParameter("FechaInicio", FechaI))
'params.Add(New ReportParameter("FechaFin", FechaF))
params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre))
params.Add(New ReportParameter("FechaImpresion", Now.ToDateTime.ToShortDateString))
If Imagen.Exists Then
params.Add(New ReportParameter("LogoPath", logouri))
Else
params.Add(New ReportParameter("LogoPath", ""))
End If
ImprimirPDF("Empresas\Grales\Formatos\RepPersonal.rdlc", DTDatos, params, "ReporteTareas", Formato:=Formato)
End Sub
#End Region
Protected Sub DdlProyectoAsignado_SelectedIndexChanged(sender As Object, e As EventArgs)
CargaSubProyectos()
End Sub
Protected Sub LnkDescarPersonalizados_Click(sender As Object, e As EventArgs)
Dim htmlFuente As String = txtDatos.Text
Dim RutaLogo As String = $"{Server.MapPath("~")}\Empresas\{UsuarioActual.CveEmpresa}\logo.png"
'Dim Logo As String = ""
'If IO.File.Exists(RutaLogo) Then
' Dim fs = New IO.MemoryStream(IO.File.ReadAllBytes(RutaLogo))
' Dim br As New System.IO.BinaryReader(fs)
' Dim bytes As Byte() = br.ReadBytes(CType(fs.Length, Integer))
' Logo = Convert.ToBase64String(bytes, 0, bytes.Length)
' fs.Dispose()
'End If
' Dim Cabera = $"<table width='900px'><tr><td ><img src='data:image/png;base64,{Logo}' alt='Logo' /> </td><td colspan='3'><h2><center>{UsuarioActual.Empresa.Empresa}</center></h2></td><tr><tr> <td ></td> <td>Reporte Personal</td></tr></table>"
htmlFuente = htmlFuente.Replace("<table ", "<table border='1' ")
htmlFuente = htmlFuente.Replace("<a ", "<label ")
htmlFuente = htmlFuente.Replace("</a ", "</label ")
htmlFuente = htmlFuente.Replace("<th ", "<th style='background-color:#ddd!important'; ")
' htmlFuente = Cabera + htmlFuente
Dim buffer As Byte()
Dim memoryStream = New System.IO.MemoryStream()
buffer = Encoding.Default.GetBytes(htmlFuente)
memoryStream.Write(buffer, 0, buffer.Length)
Response.Clear()
Response.AddHeader("content-disposition", $"attachment;filename=personalizado_{Now.ToString("yyyyMMddhhmmss")}.xls")
Response.AddHeader("Content-Length", memoryStream.Length.ToString())
Response.ContentType = "application/octet-stream"
memoryStream.WriteTo(Response.OutputStream)
Response.End()
End Sub
End Class

View File

@@ -0,0 +1,194 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatPersonalRequerido.aspx.vb" Inherits="RH_CatPersonalRequerido" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<style>
.Widthall {
width: 100% !important;
}
.dataTables_scrollHeadInner {
width: 100% !important;
background-color: #dddddd;
padding-left: 0px !important;
}
.dataTables_scrollFoot {
display: none;
position: static;
}
.table-scrollable {
margin: 0px !important;
}
.dataTables_scroll {
margin-bottom: 0px;
}
.table.dataTable {
margin-top: 0px !important;
}
.dataTables_scrollBody table th {
padding: 0px !important;
padding-right: 4px !important;
padding-left: 4px !important;
}
.sinlink td a {
pointer-events: none;
cursor: default;
color: black;
font-size: small;
}
.white a {
color: white !important;
}
</style>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server">
Catálogo de Personal Requerido
</asp:Content>
<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 runat="server" ID="BtnAgregarPersonalReq" data-toggle="tooltip" data-placement="left" title="Agregar Personal Requerido" Text="<i class='fa fa-plus'></i> Agregar Personal "></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="UpGral" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="row">
<div class="Widthall" style="text-align: right!important; margin-top: 20px!important; margin-bottom: 2px!important">
<input type="text" id="TxtBusqueda" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GVDatos.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GVDatos.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
</div>
<div class="row" style="margin: 5px">
<asp:UpdatePanel ID="UPGVDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GVDatos" runat="server" GridLines="None" CssClass="table table-striped table-advance table-hover Widthall ScrollAD" AutoGenerateColumns="false" data-sort="true" EmptyDataText="No se encontraron registros"
DataKeyNames="CveRequerimiento,Cantidad,Proyecto,CveProyecto,SubProyecto,CveSubProyecto,Turno,CveTurno,Usuario,CveUsuario,CveEmpresa,FechaIngreso,FechaActualizacion">
<Columns>
<asp:TemplateField HeaderText="Proyecto">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("Proyecto", "{0}") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SubProyecto">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("SubProyecto", "{0}") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Turno">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("Turno", "{0}") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Cantidad">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("Cantidad", "{0}") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Editar" ItemStyle-Width="5px">
<ItemTemplate>
<asp:LinkButton ID="ImgE" OnClick="Edit_ClickPersonalReq" runat="server" AlternateText="Editar" CausesValidation="False"
CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Eliminar" ItemStyle-Width="5px">
<ItemTemplate>
<asp:LinkButton ID="imgD" OnClick="Remove_ClickPersonalReq" runat="server" AlternateText="Eliminar" CausesValidation="False" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<br />
<br />
<div id="DivAgregarPersonalReq" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalPersonalReq" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloModalPersonalReq" runat="server">Agregar Folio Garantia</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright" style="width: 170px!important">
<asp:DropDownList ID="ReqProyectoDdl" runat="server" DataTextField="Proyecto" DataValueField="CveProyecto" CssClass="form-control input-sm select2me" Class="table-group-action-input form-control input-inline input-small input-sm" Width="250px" AutoPostBack="true"></asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVProyecto" InitialValue="-1" runat="server" ControlToValidate="ReqProyectoDdl" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Proyecto''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEProducto2" runat="server" HighlightCssClass="vco" TargetControlID="RFVProyecto" Width="300px"></ajax:ValidatorCalloutExtender>
<label for="<%= ReqProyectoDdl.ClientID.ToString()%>">Proyecto:</label>
<i></i>
</div>
<br />
<div class="form-group form-md-line-input input-iconright" style="width: 170px!important">
<asp:DropDownList ID="ReqSubProyectoDdl" runat="server" DataTextField="SubProyecto" DataValueField="CveSubProyecto" CssClass="form-control input-sm select2me" Class="table-group-action-input form-control input-inline input-small input-sm" Width="250px" AutoPostBack="true"></asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVSubProyecto" InitialValue="-1" runat="server" ControlToValidate="ReqSubProyectoDdl" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''SubProyecto''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" runat="server" HighlightCssClass="vco" TargetControlID="RFVSubProyecto" Width="300px"></ajax:ValidatorCalloutExtender>
<label for="<%= ReqSubProyectoDdl.ClientID.ToString()%>">SubProyecto:</label>
<i></i>
</div>
<br />
<div class="form-group form-md-line-input input-iconright" style="width: 170px!important">
<asp:DropDownList ID="ReqTurnoDdl" runat="server" DataTextField="Turno" DataValueField="CveTurno" CssClass="form-control input-sm select2me" Class="table-group-action-input form-control input-inline input-small input-sm" Width="250px" AutoPostBack="true"></asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVTurno" InitialValue="-1" runat="server" ControlToValidate="ReqTurnoDdl" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Turno''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender2" runat="server" HighlightCssClass="vco" TargetControlID="RFVTurno" Width="300px"></ajax:ValidatorCalloutExtender>
<label for="<%= ReqTurnoDdl.ClientID.ToString()%>">Turno:</label>
<i></i>
</div>
<br />
<div class="form-group form-md-line-input input-iconright" style="width: 170px!important">
<asp:TextBox ID="TxtCantidad" CssClass="form-control " Width="150px" runat="server" MaxLength="10" CausesValidation="true" Style="text-align: right!important" OnKeyup="FormatoMoneda(this);"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvTxtCantidad" runat="server" ControlToValidate="TxtCantidad" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Cantidad''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<label for="<%= TxtCantidad.ClientID.ToString()%>">Cantidad:</label>
<i></i>
</div>
</div>
<div class="modal-footer">
<asp:Button ID="BtnAgregarPersonalReqModal" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpGuardar" />
<button id="Button3" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content9" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

View File

@@ -0,0 +1,213 @@

Imports Extensiones
Partial Class RH_CatPersonalRequerido
Inherits ClsPaginas
Private Property CveRequerimiento As Integer
Get
If Not ViewState("CveRequerimiento") Is Nothing Then
Return ViewState("CveRequerimiento").ToString.ToEntero
Else
Return -1
End If
End Get
Set(value As Integer)
ViewState("CveRequerimiento") = value
End Set
End Property
Private Property Actualizar As Boolean
Get
If Not ViewState("Actualizar") Is Nothing Then
Return DirectCast(ViewState("Actualizar"), Boolean)
Else
Return False
End If
End Get
Set(value As Boolean)
ViewState("Actualizar") = value
End Set
End Property
Private Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
CargadatosGvPersonalReq()
End If
End Sub
Private Sub CargadatosGvPersonalReq()
Dim ObjRH As New ClsRH
If ObjRH.GetPersonalRequerido(UsuarioActual.CveEmpresa) Then
GVDatos.DataSource = ObjRH.DtResultados
Else
GVDatos.DataSource = Nothing
End If
ObjRH.Dispose()
GVDatos.DataBind()
UPGVDatos.DataBind()
UpGral.Update()
End Sub
Protected Sub BtnAgregarPersonalReq_Click(sender As Object, e As EventArgs) Handles BtnAgregarPersonalReq.Click
LtlTituloModalPersonalReq.Text = "Agregar Personal Requerido"
BtnAgregarPersonalReqModal.Text = "Agregar"
CargaProyectos()
CargaTurno()
ReqProyectoDdl.SelectedValueExist(-1)
ReqSubProyectoDdl.SelectedValueExist(-1)
ReqTurnoDdl.SelectedValueExist(-1)
TxtCantidad.Text = ""
Actualizar = False
UpGral.Update()
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarPersonalReq"))
End Sub
Private Sub CargaProyectos()
ReqProyectoDdl.DataSource = GlobalDTProyectos(UsuarioActual.Empresa.CveEmpresa, 1)
ReqProyectoDdl.DataBind()
ReqProyectoDdl.Items.Insert(0, New ListItem("Seleccione el Proyecto", "-1"))
End Sub
Private Sub CargaSubProyectos(CveProyecto As Integer, SubProyectoDdl As DropDownList)
SubProyectoDdl.Items.Clear()
SubProyectoDdl.SelectedValue = Nothing
If CveProyecto > 0 Then
SubProyectoDdl.DataSource = GlobalDTSubProyectos(CveProyecto)
End If
SubProyectoDdl.DataBind()
SubProyectoDdl.Items.Insert(0, New ListItem("Seleccione el SubProyecto", "-1"))
End Sub
Private Sub CargaTurno()
ReqTurnoDdl.DataSource = GlobalDTTurno.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
ReqTurnoDdl.DataBind()
End Sub
Protected Sub BtnAgregarPersonalReqModal_Click(sender As Object, e As EventArgs) Handles BtnAgregarPersonalReqModal.Click
Dim RHRequerido As New Modelos.RH_PersonalRequerido
Dim ObjRH As New ClsRH
If Not Actualizar Then
RHRequerido.CveSubProyecto = ReqSubProyectoDdl.SelectedValue.ToEntero
RHRequerido.CveTurno = ReqTurnoDdl.SelectedValue.ToEntero
RHRequerido.Cantidad = TxtCantidad.Text.ToEntero
RHRequerido.CveUsuario = UsuarioActual.CveUsuario
RHRequerido.CveEmpresa = UsuarioActual.CveEmpresa
If ObjRH.AddPersonalRequerido(RHRequerido) Then
ReqProyectoDdl.SelectedValueExist(-1)
ReqSubProyectoDdl.SelectedValueExist(-1)
ReqTurnoDdl.SelectedValueExist(-1)
TxtCantidad.Text = ""
CargadatosGvPersonalReq()
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAgregarPersonalReq"), "jsHideModalPersonalReq")
UpGral.Update()
Alert("Personal Requerido Agregado Correctamente", TipoMensaje.MsgInformacion)
Else
Alert("Ocurrió un error al guardar el Personal Requerido", TipoMensaje.MsgError)
End If
Else
RHRequerido.CveSubProyecto = ReqSubProyectoDdl.SelectedValue.ToEntero
RHRequerido.CveTurno = ReqTurnoDdl.SelectedValue.ToEntero
RHRequerido.Cantidad = TxtCantidad.Text.ToEntero
RHRequerido.CveRequerimiento = CveRequerimiento
If ObjRH.UpdatePersonalRequerido(RHRequerido) Then
ReqProyectoDdl.SelectedValueExist(-1)
ReqSubProyectoDdl.SelectedValueExist(-1)
ReqTurnoDdl.SelectedValueExist(-1)
TxtCantidad.Text = ""
CargadatosGvPersonalReq()
UpModalPersonalReq.Update()
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAgregarPersonalReq"), "jsHideModalPersonalReq")
UpGral.Update()
Alert("Personal Requerido Actualizado Correctamente", TipoMensaje.MsgInformacion)
Else
Alert("Ocurrió un error al Actualizar el Personal Requerido", TipoMensaje.MsgError)
End If
End If
ObjRH.Dispose()
CveRequerimiento = -1
Actualizar = False
End Sub
Public Sub Remove_ClickPersonalReq(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim CveReq As Integer = GvRow.DataKey("CveRequerimiento")
Dim ObjRH As New ClsRH
If ObjRH.RemovePersonalRequerido(CveReq) Then
CargadatosGvPersonalReq()
Alert("El personal requerido se eliminó correctamente ", TipoMensaje.MsgInformacion)
Else
Alert("Ocurrió un error al Eliminar el Personal Requerido", TipoMensaje.MsgError)
End If
ObjRH.Dispose()
CargadatosGvPersonalReq()
CveRequerimiento = -1
End Sub
Public Sub Edit_ClickPersonalReq(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim activo As Boolean = 0
LtlTituloModalPersonalReq.Text = "Editar Personal Requerido"
Actualizar = True
CveRequerimiento = GvRow.DataKey("CveRequerimiento")
CargaProyectos()
ReqProyectoDdl.SelectedValueExist(GvRow.DataKey("CveProyecto").ToEntero)
CargaSubProyectos(GvRow.DataKey("CveProyecto").ToEntero, ReqSubProyectoDdl)
ReqSubProyectoDdl.SelectedValueExist(GvRow.DataKey("CveSubProyecto").ToEntero)
CargaTurno()
ReqTurnoDdl.SelectedValueExist(GvRow.DataKey("CveTurno").ToEntero)
TxtCantidad.Text = GvRow.DataKey("Cantidad").ToEntero
BtnAgregarPersonalReqModal.Text = "Actualizar"
UpModalPersonalReq.Update()
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarPersonalReq"))
End Sub
Protected Sub ReqProyectoDdl_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ReqProyectoDdl.SelectedIndexChanged
CargaSubProyectos(ReqProyectoDdl.SelectedValue.ToEntero, ReqSubProyectoDdl)
End Sub
End Class

151
RH/CatPuesto.aspx Normal file
View File

@@ -0,0 +1,151 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatPuesto.aspx.vb" Inherits="RH_CatPuesto" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<style>
</style>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="E" runat="Server">
Catálogo de Puestos
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel ID="UpAcciones" runat="server" >
<ContentTemplate>
<li>
<asp:LinkButton runat="server" ID="BtnAgregarPuesto" data-toggle="tooltip" data-placement="left" title="Agregar un Puesto" Text="<i class='fa fa-plus'></i> Agregar Puesto"></asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<div class="row col-md-12" style="text-align:right!important;margin-top:20px!important;margin-bottom:2px!important">
<input type="text" id="TxtBusqueda" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvPuestos.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvPuestos.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvPuestos" runat="server" AutoGenerateColumns="False" ShowHeader="true"
DataKeyNames="CvePuesto,Puesto,CveOcupacion,Estatus" EmptyDataText="No se encontraron Subtemas"
ToolTip="Listado de Puestos" CssClass="ADSCROLLER2 table table-striped table-advance table-hover Widthall" GridLines="None" data-cols="0" data-heighmenos="500">
<Columns>
<asp:TemplateField HeaderText="Puesto" ItemStyle-HorizontalAlign ="Left">
<ItemTemplate>
<asp:Literal ID="LtlPuesto" runat="server" Text='<%# Eval("Puesto") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estatus" ItemStyle-HorizontalAlign ="Left">
<ItemTemplate>
<asp:Literal ID="LtlEstatus" runat="server" Text='<%# Eval("SEstatus") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Ocupacion" ItemStyle-HorizontalAlign ="Left">
<ItemTemplate>
<asp:Literal ID="LtlOcupacion" runat="server" Text='<%# Eval("Ocupacion") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha" ItemStyle-HorizontalAlign ="Center" ItemStyle-Width="80">
<ItemTemplate>
<asp:Literal ID="LtlFechaIng" runat="server" Text='<%# Eval("FechaIng", "{0:d}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Usuario" ItemStyle-HorizontalAlign ="Left">
<ItemTemplate>
<asp:Literal ID="LtlUsuario" runat="server" Text='<%# Eval("Usuario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Right" ItemStyle-Width="80px">
<ItemTemplate>
<asp:LinkButton ID="ImgE" OnClick="Edit_ClickPuesto" runat="server" AlternateText="Editar" CausesValidation="False"
CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Left" ItemStyle-Width="80px">
<ItemTemplate>
<asp:LinkButton ID="imgD" OnClick="Remove_ClickPuesto" runat="server" AlternateText="Eliminar" CausesValidation="False" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
<div id="divAgregarEditarPuesto" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalPuesto" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloModalPuesto" runat="server">Agregar Puesto</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtPuesto" CssClass="form-control " runat="server" MaxLength="50" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtPuesto" runat="server" ControlToValidate="TxtPuesto" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El <b>''Puesto''</b> es necesario, por favor ingréselo." ValidationGroup="GrpPuesto"></asp:RequiredFieldValidator>
<label for="<%= TxtPuesto.ClientID.ToString()%>">Puesto:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlArea" runat="server" AutoPostBack="true" Width="200" CssClass="form-control input-sm select2me js-referencia-programmatic" DataTextField="Area" DataValueField="CveArea">
<asp:ListItem Value="-1">Seleccione</asp:ListItem>
</asp:DropDownList>
<%--<asp:RequiredFieldValidator InitialValue="-1" ID="rfvDdlArea" ControlToValidate="DdlArea" Display="None" ValidationGroup="GrpPuesto" runat="server" Text="*" ErrorMessage="Seleccione una de las opciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="rfvcDdlArea" runat="server" TargetControlID="rfvDdlArea" HighlightCssClass="validatorCalloutHighlight"></ajax:ValidatorCalloutExtender>--%>
<label for="<%= DdlArea.ClientID.ToString()%>">Area:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlSubArea" runat="server" AutoPostBack="true" Width="200" CssClass="form-control input-sm select2me js-referencia-programmatic" DataTextField="SubArea" DataValueField="CveSubArea">
<asp:ListItem Value="-1">Seleccione</asp:ListItem>
</asp:DropDownList>
<%--<asp:RequiredFieldValidator InitialValue="-1" ID="rfvDdlSubArea" ControlToValidate="DdlSubArea" Display="None" ValidationGroup="GrpPuesto" runat="server" Text="*" ErrorMessage="Seleccione una de las opciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="rfvcDdlSubArea" runat="server" TargetControlID="rfvDdlSubArea" HighlightCssClass="validatorCalloutHighlight"></ajax:ValidatorCalloutExtender>--%>
<label for="<%= DdlSubArea.ClientID.ToString()%>">SubArea:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlModulo" runat="server" AutoPostBack="true" Width="200" CssClass="form-control input-sm select2me js-referencia-programmatic" DataTextField="Modulo" DataValueField="CveModulo">
<asp:ListItem Value="-1">Seleccione</asp:ListItem>
</asp:DropDownList>
<%--<asp:RequiredFieldValidator InitialValue="-1" ID="rfvDdlModulo" ControlToValidate="DdlModulo" Display="None" ValidationGroup="GrpPuesto" runat="server" Text="*" ErrorMessage="Seleccione una de las opciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="rfvcDdlModulo" runat="server" TargetControlID="rfvDdlModulo" HighlightCssClass="validatorCalloutHighlight"></ajax:ValidatorCalloutExtender>--%>
<label for="<%= DdlModulo.ClientID.ToString()%>">Modulo:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlOcupacion" runat="server" Width="200" CssClass="form-control input-sm select2me js-referencia-programmatic" DataTextField="Ocupacion" DataValueField="CveOcupacion">
<asp:ListItem Value="-1">Seleccione</asp:ListItem>
</asp:DropDownList>
<%--<asp:RequiredFieldValidator InitialValue="-1" ID="rfvDdlOcupacion" ControlToValidate="DdlOcupacion" Display="None" ValidationGroup="GrpPuesto" runat="server" Text="*" ErrorMessage="Seleccione una de las opciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="rfvcDdlOcupacion" runat="server" TargetControlID="rfvDdlOcupacion" HighlightCssClass="validatorCalloutHighlight"></ajax:ValidatorCalloutExtender>--%>
<label for="<%= DdlArea.ClientID.ToString()%>">Ocupacion:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:CheckBox Text="Activo" runat="server" ID="ChkEstatusPuesto" Checked="true" Visible="true" />
</div>
</div>
<div class="modal-footer">
<asp:Button ID="BtnAgregarPuestoModal" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpPuesto" />
<button id="Button3" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

445
RH/CatPuesto.aspx.vb Normal file
View File

@@ -0,0 +1,445 @@
Option Explicit On
Option Strict On
Imports System.Data
Imports System.Linq
Imports Extensiones
Partial Class RH_CatPuesto
Inherits ClsPaginas
Private Property CvePuesto As Integer
Get
If ViewState("CvePuesto") Is Nothing Then
Return -1
Else
Return DirectCast(ViewState("CvePuesto"), Integer)
End If
End Get
Set(value As Integer)
ViewState("CvePuesto") = value
End Set
End Property
Private Property Actualizar As Boolean
Get
If ViewState("Actualizar") Is Nothing Then
Return True
Else
Return Boolean.Parse((ViewState("Actualizar").ToString))
End If
End Get
Set(value As Boolean)
ViewState("Actualizar") = value
End Set
End Property
Private Property Ocupacion As String
Get
If ViewState("Ocupacion") Is Nothing Then
Return "-1"
Else
Return ViewState("Ocupacion").ToString
End If
End Get
Set(value As String)
ViewState("Ocupacion") = value
End Set
End Property
Private Property DTOcupacionesRaw As DataTable
Get
If ViewState("DTOcupacionesRaw") Is Nothing Then
Return New DataTable
Else
Return DirectCast(ViewState("DTOcupacionesRaw"), DataTable)
End If
End Get
Set(value As DataTable)
ViewState("DTOcupacionesRaw") = value
End Set
End Property
Private Property DTArea As DataTable
Get
If ViewState("DTArea") Is Nothing Then
Return New DataTable
Else
Return DirectCast(ViewState("DTArea"), DataTable)
End If
End Get
Set(value As DataTable)
ViewState("DTArea") = value
End Set
End Property
Private Property DTSubArea As DataTable
Get
If ViewState("DTSubArea") Is Nothing Then
Return New DataTable
Else
Return DirectCast(ViewState("DTSubArea"), DataTable)
End If
End Get
Set(value As DataTable)
ViewState("DTSubArea") = value
End Set
End Property
Private Property DtModulo As DataTable
Get
If ViewState("DtModulo") Is Nothing Then
Return New DataTable
Else
Return DirectCast(ViewState("DtModulo"), DataTable)
End If
End Get
Set(value As DataTable)
ViewState("DtModulo") = value
End Set
End Property
Private Property DtOcupacion As DataTable
Get
If ViewState("DtOcupacion") Is Nothing Then
Return New DataTable
Else
Return DirectCast(ViewState("DtOcupacion"), DataTable)
End If
End Get
Set(value As DataTable)
ViewState("DtOcupacion") = value
End Set
End Property
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
CargaDatos()
End If
End Sub
Public Sub CargaDatos()
Dim ObjPuestos As New ClsRH
CargaCatalogoOcupaciones()
If ObjPuestos.GetPuestos(-1) Then
GvPuestos.DataSource = ObjPuestos.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
'GlobalDTRHPuestos(-1) = ObjPuestos.DtResultados
Else
Me.GvPuestos.DataSource = Nothing
End If
ObjPuestos.Dispose()
GvPuestos.DataBind()
UpDatos.Update()
End Sub
Private Sub CargaCatalogoOcupaciones()
Dim objRH As New ClsRH
If objRH.GetCatalogoNacionalOcupaciones(-1, -1, -1) Then
DTOcupacionesRaw = objRH.DtResultados
If DTOcupacionesRaw.Rows.Count > 0 Then
DdlArea.DataSource = DTOcupacionesRaw.FiltraParametros("", "", {"CveArea", "Area"})
Else
DdlArea.DataSource = Nothing
End If
Else
DTOcupacionesRaw = Nothing
End If
objRH.Dispose()
DdlArea.DataBind()
DdlArea.Items.Insert(0, New ListItem("Seleccione una opción", "-1"))
UpModalPuesto.Update()
End Sub
Protected Sub DdlArea_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlArea.SelectedIndexChanged
Dim objRH As New ClsRH
ResetComos(1)
If objRH.GetCatalogoNacionalOcupacionesCombos(-1, DdlArea.SelectedValue.ToEntero, -1, "-1") Then
DTSubArea = objRH.DtResultados.FiltraParametros("", "", {"CveSubArea", "SubArea"})
End If
objRH.Dispose()
If DTSubArea.Rows.Count > 0 Then
DdlSubArea.DataSource = DTSubArea
Else
DdlSubArea.DataSource = Nothing
End If
DdlSubArea.DataBind()
DdlSubArea.Items.Insert(0, New ListItem("Seleccione una opción", "-1"))
UpModalPuesto.Update()
End Sub
Protected Sub DdlSubArea_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlSubArea.SelectedIndexChanged
Dim objRH As New ClsRH
ResetComos(2)
If objRH.GetCatalogoNacionalOcupacionesCombos(-1, -1, DdlSubArea.SelectedValue.ToEntero, "-1") Then
DtModulo = objRH.DtResultados.FiltraParametros("", "", {"CveModulo", "Modulo"})
End If
objRH.Dispose()
If DtModulo.Rows.Count > 0 Then
DdlModulo.DataSource = DtModulo
Else
DdlModulo.DataSource = Nothing
End If
DdlModulo.DataBind()
DdlModulo.Items.Insert(0, New ListItem("Seleccione una opción", "-1"))
UpModalPuesto.Update()
End Sub
Protected Sub DdlModulo_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlModulo.SelectedIndexChanged
Dim objRH As New ClsRH
ResetComos(3)
If objRH.GetCatalogoNacionalOcupacionesCombos(-1, -1, -1, DdlModulo.SelectedValue) Then
DtOcupacion = objRH.DtResultados.FiltraParametros("", "", {"CveOcupacion", "Ocupacion"})
End If
objRH.Dispose()
If DtOcupacion.Rows.Count > 0 Then
DdlOcupacion.DataSource = DtOcupacion
Else
DdlOcupacion.DataSource = Nothing
End If
DdlOcupacion.DataBind()
DdlOcupacion.Items.Insert(0, New ListItem("Seleccione una opción", "-1"))
UpModalPuesto.Update()
End Sub
Private Sub LoadCombosPuestosConValor(_CveOcupacion As Integer)
Dim objRh As New ClsRH
If objRh.GetCatalogoNacionalOcupacionesCombos(1, -1, -1, "-1") Then
DTArea = objRh.DtResultados.FiltraParametros("", "", {"CveArea", "Area"})
End If
DdlArea.DataSource = DTArea
DdlArea.DataBind()
DdlArea.Items.Insert(0, New ListItem("Seleccine una opción", "-1"))
If _CveOcupacion > 0 Then
Dim DtTemp As New DataTable
DtTemp = DTOcupacionesRaw.FiltraParametros(" CveOcupacion = " & _CveOcupacion)
Dim _CveArea As Integer = DtTemp(0)("CveArea").ToString.ToEntero
Dim _CveSubArea As Integer = DtTemp(0)("CveSubArea").ToString.ToEntero
Dim _CveModulo As String = DtTemp(0)("CveModulo").ToString
If objRh.GetCatalogoNacionalOcupacionesCombos(-1, _CveArea, -1, "-1") Then
DTSubArea = objRh.DtResultados.FiltraParametros("", "", {"CveSubArea", "SubArea"})
End If
If objRh.GetCatalogoNacionalOcupacionesCombos(-1, -1, _CveSubArea, "-1") Then
DtModulo = objRh.DtResultados.FiltraParametros("", "", {"CveModulo", "Modulo"})
End If
If objRh.GetCatalogoNacionalOcupacionesCombos(-1, -1, -1, _CveModulo) Then
DtOcupacion = objRh.DtResultados.FiltraParametros("", "", {"CveOcupacion", "Ocupacion"})
End If
objRh.Dispose()
DdlSubArea.DataSource = DTSubArea
DdlSubArea.DataBind()
DdlSubArea.Items.Insert(0, New ListItem("Selecione una opción", "-1"))
DdlSubArea.SelectedValueExist(_CveSubArea)
DdlModulo.DataSource = DtModulo
DdlModulo.DataBind()
DdlModulo.Items.Insert(0, New ListItem("Seleccione una opción", "-1"))
DdlModulo.SelectedValueExist(_CveModulo)
DdlOcupacion.DataSource = DtOcupacion
DdlOcupacion.DataBind()
DdlOcupacion.Items.Insert(0, New ListItem("Seleccione una opción", "-1"))
DdlOcupacion.SelectedValueExist(_CveOcupacion)
DdlArea.SelectedValueExist(_CveArea)
End If
UpModalPuesto.Update()
End Sub
Private Sub ResetComos(opcion As Integer)
Select Case opcion
Case 1
DdlSubArea.Items.Clear()
DdlModulo.Items.Clear()
DdlOcupacion.Items.Clear()
DdlSubArea.Items.Insert(0, New ListItem("Seleccione una opción", "-1"))
DdlModulo.Items.Insert(0, New ListItem("Seleccione una opción", "-1"))
DdlOcupacion.Items.Insert(0, New ListItem("Seleccione una opción", "-1"))
Exit Select
Case 2
DdlModulo.Items.Clear()
DdlOcupacion.Items.Clear()
DdlModulo.Items.Insert(0, New ListItem("Seleccione una opción", "-1"))
DdlOcupacion.Items.Insert(0, New ListItem("Seleccione una opción", "-1"))
Exit Select
Case 3
DdlOcupacion.Items.Clear()
DdlOcupacion.Items.Insert(0, New ListItem("Seleccione una opción", "-1"))
Exit Select
End Select
End Sub
Protected Sub BtnAgregarPuestoModal_Click(sender As Object, e As EventArgs) Handles BtnAgregarPuestoModal.Click
Dim ObjPuestos As New ClsRH
Dim estatus As Integer
If ChkEstatusPuesto.Checked Then
estatus = 1
Else
estatus = 0
End If
If CvePuesto = -1 And Actualizar = False Then
If ObjPuestos.AddPuesto(TxtPuesto.Text.Trim, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, DdlOcupacion.SelectedValue.ToEntero) Then
If ObjPuestos.GetPuestos(-1) Then Application("GlobalDTRHPuestos") = ObjPuestos.DtResultados Else Application("GlobalDTRHPuestos") = Nothing
Alert("Puesto agregado correctamente.")
End If
Else
If ObjPuestos.UpdatePuesto(CvePuesto, TxtPuesto.Text.Trim, estatus, UsuarioActual.CveUsuario, DdlOcupacion.SelectedValue.ToEntero) Then
If ObjPuestos.GetPuestos(-1) Then Application("GlobalDTRHPuestos") = ObjPuestos.DtResultados Else Application("GlobalDTRHPuestos") = Nothing
Alert("Puesto actualizado correctamente.")
End If
End If
Actualizar = False
CvePuesto = -1
ObjPuestos.Dispose()
UpModalPuesto.Update()
CargaDatos()
RegistraScript(String.Format("$('#{0}').modal('hide');", "divAgregarEditarPuesto"))
End Sub
Public Sub Remove_ClickPuesto(sender As Object, e As EventArgs)
Dim objRH As New ClsRH
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim _CvePuesto As Integer = GvRow.DataKey("CvePuesto").ToEntero
If objRH.RemovePuesto(_CvePuesto) Then
If objRH.GetPuestos(-1) Then Application("GlobalDTRHPuestos") = objRH.DtResultados Else Application("GlobalDTRHPuestos") = Nothing
CargaDatos()
Else
Alert("Ocurrio un error al eliminar el puesto", TipoMensaje.MsgError)
End If
End Sub
Public Sub Edit_ClickPuesto(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim CveOcupacion As Integer = GvRow.DataKey("CveOcupacion").ToEntero
Actualizar = True
CvePuesto = GvRow.DataKey("CvePuesto").ToEntero
TxtPuesto.Text = GvRow.DataKey("Puesto")
LtlTituloModalPuesto.Text = "Editar Puesto"
If Boolean.Parse(GvRow.DataKey("Estatus")) Then
ChkEstatusPuesto.Checked = True
Else
ChkEstatusPuesto.Checked = False
End If
BtnAgregarPuestoModal.Text = "Actualizar"
Actualizar = True
ResetComos(1)
LoadCombosPuestosConValor(CveOcupacion)
UpModalPuesto.Update()
RegistraScript(String.Format("$('#{0}').modal();", "divAgregarEditarPuesto"))
End Sub
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvPuestos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
End If
End Sub
Protected Sub BtnAgregarPuesto_Click(sender As Object, e As EventArgs) Handles BtnAgregarPuesto.Click
CvePuesto = -1
TxtPuesto.Text = ""
LtlTituloModalPuesto.Text = "Agregar Puesto"
Actualizar = False
ChkEstatusPuesto.Checked = True
DdlArea.SelectedIndex = 0
DdlSubArea.Items.Clear()
DdlModulo.Items.Clear()
DdlOcupacion.Items.Clear()
BtnAgregarPuestoModal.Text = "Agregar"
'Combos
UpModalPuesto.Update()
RegistraScript(String.Format("$('#{0}').modal();", "divAgregarEditarPuesto"))
End Sub
End Class

106
RH/CatPuestosSueldos.aspx Normal file
View File

@@ -0,0 +1,106 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatPuestosSueldos.aspx.vb" Inherits="RH_CatPuestosSueldos" %>
<asp:Content ID="ContentCP" ContentPlaceHolderID="CP" runat="Server">
<style>
.gridtablas tr td:nth-child(1) {
width: 150px;
}
.gridtablas tr td:nth-child(2), .gridtablas tr td:nth-child(3), .gridtablas tr td:nth-child(4) {
width: 100px;
text-align: center;
}
</style>
</asp:Content>
<asp:Content ID="ContentCSS" ContentPlaceHolderID="Css" runat="Server">
</asp:Content>
<asp:Content ID="ContentE" ContentPlaceHolderID="E" runat="Server">
</asp:Content>
<asp:Content ID="ContentHB" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="ContentH" ContentPlaceHolderID="H" runat="Server">
</asp:Content>
<asp:Content ID="ContentC" ContentPlaceHolderID="C" runat="Server">
<div class="portlet box green" style="width: 480px;">
<div class="portlet-title">
<div class="caption">
<i class="fa fa-money"></i>Puestos Sueldos
</div>
</div>
<div class="portlet-body">
<asp:UpdatePanel ID="UPP" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<table class="table gridtablas Widthall">
<tr>
<th colspan="3">Material / Consumible</th>
</tr>
<tr>
<th class="truncate">Puesto</th>
<th class="truncate">Sueldo</th>
<th class="truncate" colspan="2">Comando</th>
</tr>
<tr>
<td>
<asp:DropDownList ID="DdlPuesto" runat="server" AppendDataBoundItems="true" DataTextField="Puesto" DataValueField="CvePuesto" CssClass="form-control input-sm input-small select2me">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</td>
<td>
<asp:TextBox ID="TxtSueldo" Type="number" CssClass="form-control input-sm" pattern="(\d{3})([\.])(\d{2})" runat="server" required></asp:TextBox>
</td>
<td colspan="2">
<asp:LinkButton ID="Agregar" CssClass="btn btn-success" runat="server"><i class="fa fa-plus"></i> Agregar</asp:LinkButton></td>
</tr>
</table>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" CssClass="table gridtablas table-hover table-advance Widthall" GridLines="none" ShowHeader="False" DataKeyNames="CvePuesto,Importe,Puesto">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:HiddenField ID="CvePuesto" Value='<%# Eval("CvePuesto")%>' runat="server" />
<asp:Label ID="Puesto" runat="server" Text='<%# Eval("Puesto")%>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:HiddenField ID="CvePuesto" Value='<%# Eval("CvePuesto")%>' runat="server" />
<asp:DropDownList ID="DdlPuesto" runat="server" DataValueField="CvePuesto" DataTextField="Puesto" CssClass="form-control input-sm input-small select2me"></asp:DropDownList>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:Label ID="Sueldo" runat="server" Text='<%# Eval("Importe","{0:N2}")%>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="TxtSueldo" pattern="(\d{3})([\.])(\d{2})" CssClass="form-control input-sm" runat="server" Text='<%# Eval("Importe","{0:N2}")%>'></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Editar">
<EditItemTemplate>
<asp:LinkButton ID="imgU" runat="server" AlternateText="Actualizar" CausesValidation="True" CommandName="Update"
CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-check'></i>" ValidationGroup="GrpGV" />
<asp:LinkButton ID="imgC" runat="server" AlternateText="Cancelar" CausesValidation="False" CommandName="Cancel"
CssClass="btn btn-circle btn-sm red" Text="<i class='fa fa-times'></i>" />
</EditItemTemplate>
<ItemTemplate>
<asp:LinkButton ID="imgE" runat="server" AlternateText="Editar" CausesValidation="False" CommandName="Edit"
CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<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="confirmar" data-btn-ok-label="si" />
</ItemTemplate>
<ItemStyle HorizontalAlign="Center" Width="25px" />
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</asp:Content>
<asp:Content ID="ContentJS" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

View File

@@ -0,0 +1,116 @@
Imports Extensiones
Imports System.Data
Partial Class RH_CatPuestosSueldos
Inherits ClsPaginas
Private Property DTDatos As DataTable
Get
Return CType(ViewState("DTDatos"), DataTable)
End Get
Set(value As DataTable)
ViewState("DTDatos") = value
End Set
End Property
Private Property FiltroPuestos As String
Get
Return ViewState("FiltroPuestos").ToString
End Get
Set(value As String)
ViewState("FiltroPuestos") = value
End Set
End Property
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
cargar()
End If
End Sub
Private Sub CargaPuestos(DDL As DropDownList, Optional CvePuesto As Integer = -1)
DDL.DataSource = GlobalDTRHPuestos(UsuarioActual.CveEmpresa).FiltraParametros(String.Format(" (CvePuesto NOT IN({0}) OR CvePuesto={1})", FiltroPuestos, CvePuesto))
DDL.DataBind()
If CvePuesto > 0 Then
DDL.SelectedValue = CvePuesto
End If
End Sub
Private Sub cargar()
Dim objRH As New ClsRH
Dim Str As New StringBuilder
Str.Append("-1")
If objRH.GetPuestosSueldos(UsuarioActual.CveEmpresa) Then
DTDatos = objRH.DtResultados
cargaGVDatos()
For Each item As DataRow In DTDatos.Rows
Str.Append(String.Format(",{0}", item("CvePuesto").ToString))
Next
End If
FiltroPuestos = Str.ToString
objRH.Dispose()
TxtSueldo.Text = ""
CargaPuestos(DdlPuesto)
End Sub
#Region "GVDatos"
Private Sub cargaGVDatos()
GvDatos.DataSource = DTDatos
GvDatos.DataBind()
End Sub
Protected Sub GvDatos_RowCancelingEdit(sender As Object, e As System.Web.UI.WebControls.GridViewCancelEditEventArgs) Handles GvDatos.RowCancelingEdit
GvDatos.EditIndex = -1
cargaGVDatos()
End Sub
Protected Sub GvDatos_RowDeleting(sender As Object, e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles GvDatos.RowDeleting
Dim index As Integer = e.RowIndex
Dim cvepuesto As Integer = GvDatos.Rows(index).FCHiddenField("CvePuesto").Value.ToString.ToEntero
Dim objRH As New ClsRH
If objRH.RemovePuestosSueldos(cvepuesto) Then
cargar()
Alert("Se eliminó el registro", TipoMensaje.MsgInformacion)
Else
Alert("no se eliminó el registro", TipoMensaje.MsgAdvertencia)
End If
objRH.Dispose()
End Sub
Protected Sub GvDatos_RowUpdating(sender As Object, e As System.Web.UI.WebControls.GridViewUpdateEventArgs) Handles GvDatos.RowUpdating
Dim index As Integer = e.RowIndex
Dim cvepuesto As Integer = GvDatos.Rows(index).FCHiddenField("CvePuesto").Value.ToString.ToEntero
Dim Importe As Integer = GvDatos.Rows(index).FCTextBox("TxtSueldo").Text.ToString.ToDouble
Dim objRH As New ClsRH
If objRH.UpdatePuestosSueldos(cvepuesto, Importe) Then
GvDatos.EditIndex = -1
cargar()
Alert("Se actualizó el registro", TipoMensaje.MsgInformacion)
Else
Alert("no se actualizó el registro", TipoMensaje.MsgAdvertencia)
End If
objRH.Dispose()
End Sub
Protected Sub GvDatos_RowEditing(sender As Object, e As System.Web.UI.WebControls.GridViewEditEventArgs) Handles GvDatos.RowEditing
Dim index As Integer = e.NewEditIndex
GvDatos.EditIndex = index
cargaGVDatos()
CargaPuestos(GvDatos.Rows(index).FCDropDownList("DdlPuesto"), GvDatos.Rows(index).FCHiddenField("CvePuesto").Value)
End Sub
#End Region
Protected Sub Agregar_Click(sender As Object, e As EventArgs) Handles Agregar.Click
Dim CvePuesto As Integer = DdlPuesto.SelectedValue.ToEntero
Dim Importe As Double = TxtSueldo.Text.ToDouble
If CvePuesto > 0 And Importe > 0 Then
Dim objRH As New ClsRH
If objRH.AddPuestosSueldos(CvePuesto, Importe) Then
cargar()
Alert("los datos se guardaron satisfactoriamente", TipoMensaje.MsgInformacion)
Else
Alert("no se guardaron los cambios", TipoMensaje.MsgAdvertencia)
End If
objRH.Dispose()
Else
Alert("favor de llenar todos los campos")
End If
End Sub
End Class

121
RH/CatRuta.aspx Normal file
View File

@@ -0,0 +1,121 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatRuta.aspx.vb" Inherits="RH_CatRuta" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<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 Rutas
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel runat="server" ID="UpAgregar">
<ContentTemplate>
<li>
<asp:LinkButton runat="server" ID="BtnAgregarMotivoD" data-toggle="tooltip" data-placement="left" title="Agregar un Defecto" Text="<i class='fa fa-plus'></i> Rutas"></asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpTitulos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" DataKeyNames="CveRuta,Ruta,Estatus" EmptyDataText="No se encontraron Rutas Registrados" ToolTip="Listado de Rutas" CssClass="table table-striped table-advance table-hover" Style="margin-top: -10px; text-align: center;width:100%" GridLines="None">
<Columns>
<asp:TemplateField HeaderText="Ruta">
<ItemTemplate>
<asp:Literal ID="LtlRuta" runat="server" Text='<%# Eval("Ruta", "&nbsp;{0}") %>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="TxtRuta" runat="server" CausesValidation="true" MaxLength="50" Text='<%# Eval("Ruta") %>' ValidationGroup="GrpGV" Width="234px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVRuta" runat="server" ControlToValidate="TxtRuta" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Ruta''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGV"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCRuta" runat="server" HighlightCssClass="vco" TargetControlID="RFVRuta" Width="300px"></ajax:ValidatorCalloutExtender>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estatus">
<ItemTemplate>
<asp:Literal ID="LtlEstatus" runat="server" Text='<%# Eval("Estatus") %>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:CheckBox ID="ChkEstatus" runat="server" Checked='<%# If (Eval("Estatus").ToString = "Activo", True, False) %>' />
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha">
<ItemTemplate>
<asp:Literal ID="LtlFechaIng" runat="server" Text='<%# Eval("FechaIng", "{0:d}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Usuario">
<ItemTemplate>
<asp:Literal ID="LtlUsuario" runat="server" Text='<%# Eval("Usuario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Editar">
<EditItemTemplate>
<center>
<asp:LinkButton ID="imgU" runat="server" AlternateText="Actualizar" CausesValidation="True" CommandName="Update" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-check'></i>" ValidationGroup="GrpGV" />
&nbsp;<asp:LinkButton ID="imgC" runat="server" AlternateText="Cancelar" CausesValidation="False" CommandName="Cancel" CssClass="btn btn-circle btn-sm red" Text="<i class='fa fa-times'></i>" />
</center>
</EditItemTemplate>
<ItemTemplate>
<asp:LinkButton ID="imgE" runat="server" OnClick="GvDatos_RowEditing" AlternateText="Editar" CausesValidation="False" CommandName="Edit" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Eliminar">
<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="Confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" />
<AlternatingRowStyle CssClass="TextoAlterno" />
</asp:GridView>
<div id="DivAgregarTiposD" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalTiposD" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloModalTiposD" runat="server">Rutas</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="RutasTxt" CssClass="form-control " runat="server" MaxLength="70" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" ControlToValidate="RutasTxt" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTiposD"></asp:RequiredFieldValidator>
<label for="RutasTxt">Rutas:</label>
<i></i>
</div>
<br ID="saltoDeLinea" runat="server" />
<div ID="CheckActiveSection" runat="server" class="form-group form-md-line-input input-iconright">
<label for="ChkEstatus">Activo:</label>&nbsp;
<asp:CheckBox ID="ChkEstatus" runat="server" CssClass="make-switchsd" data-size="small" Text=" " Checked="true" />
<i></i>
</div>
</div>
<br />
<div class="modal-footer">
<asp:Button ID="BtnAgregarTiposDModal" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpTiposD" />
<asp:Button ID="BtnEditarTiposDModal" runat="server" class="btn btn-success" Text="Confirmar" ValidationGroup="GrpTiposD" />
<button id="Button3" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

220
RH/CatRuta.aspx.vb Normal file
View File

@@ -0,0 +1,220 @@
Option Explicit On
Option Strict On
Imports System.Data
Imports System.Linq
Imports Extensiones
Partial Class RH_CatRuta
Inherits ClsPaginas
Public Property PuedeEditar As Boolean
Get
Return CBool(ViewState("PuedeEditar"))
End Get
Set(value As Boolean)
ViewState("PuedeEditar") = value
End Set
End Property
Public Property PuedeEliminar As Boolean
Get
Return CBool(ViewState("PuedeEditar"))
End Get
Set(value As Boolean)
ViewState("PuedeEditar") = value
End Set
End Property
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
ViewState("Orden") = ""
CargaDatos()
''Permiso Registro
'If PermisoRegistro Then
' LbAgregar.Enabled = True
'Else
' LbAgregar.Enabled = False
'End If
End If
End Sub
Public Sub CargaDatos()
Dim ObjRuta As New ClsRH
If ObjRuta.GetRutas() Then
ViewState("DTRuta") = ObjRuta.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GlobalDTRutas = ObjRuta.DtResultados
Else
Me.GvDatos.DataSource = Nothing
End If
ObjRuta.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Private Property CveRutaAEditar() As Integer 'Guardamos el ID de registro para saber cual registro Editar
Get
Return If(IsNothing(ViewState("CveRutaAEditar")), -1, CInt(ViewState("CveRutaAEditar")))
End Get
Set
ViewState("CveRutaAEditar") = Value
End Set
End Property
Protected Sub BtnAgregarMotivo_Click(sender As Object, e As EventArgs) Handles BtnAgregarMotivoD.Click 'Hacemos aparecer la ventana modal con los campos limpios
BtnEditarTiposDModal.Visible = False
BtnAgregarTiposDModal.Visible = True
CheckActiveSection.Visible = False
saltoDeLinea.Visible = False
RutasTxt.Text = ""
ChkEstatus.Checked = True
UpModalTiposD.Update()
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarTiposD"))
End Sub
Protected Sub LbAgregar_Click(sender As Object, e As System.EventArgs) Handles BtnAgregarTiposDModal.Click 'esta funcion es la que agrega un nuevo motivo de baja se activa con el boton "Agregar" de la ventana modal"
Dim ObjRuta As New ClsRH
If ObjRuta.AddRuta(RutasTxt.Text.Trim, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
RutasTxt.Text = ""
Alert("La nueva Ruta se guardó correctamente.", TipoMensaje.MsgInformacion)
UpTitulos.Update()
ViewState("DTRuta") = ObjRuta.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GlobalDTRutas = ObjRuta.DtResultados
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End If
ObjRuta.Dispose()
End Sub
#Region "G V D A T O S"
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.RowIndex = 0 Then
e.Row.Cells(0).Width = Unit.Pixel(250)
e.Row.Cells(1).Width = Unit.Pixel(100)
e.Row.Cells(2).Width = Unit.Pixel(100)
e.Row.Cells(3).Width = Unit.Pixel(100)
e.Row.Cells(4).Width = Unit.Pixel(100)
e.Row.Cells(5).Width = Unit.Pixel(61)
End If
e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left
End If
End Sub
Protected Sub GvDatos_RowDeleting(sender As Object, e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles GvDatos.RowDeleting
Dim ObjRuta As New ClsRH
If ObjRuta.RemoveRuta(GvDatos.DataKeys(e.RowIndex).Value.ToString.ToEntero) Then
GvDatos.EditIndex = -1
ViewState("DTRuta") = ObjRuta.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GlobalDTRutas = ObjRuta.DtResultados
Alert("La Ruta se eliminó correctamente.", TipoMensaje.MsgInformacion)
End If
ObjRuta.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowCancelingEdit(sender As Object, e As System.Web.UI.WebControls.GridViewCancelEditEventArgs) Handles GvDatos.RowCancelingEdit
GvDatos.EditIndex = -1
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowUpdating(sender As Object, e As System.EventArgs) Handles BtnEditarTiposDModal.Click '(Leer primero "GvDatos_RowEditing")Se manda la informacion a un procedmiento que hace la actualizacion
Dim ObjRuta As New ClsRH
Dim Ruta As String = RutasTxt.Text.Trim
Dim Estatus As Boolean = ChkEstatus.Checked
Dim CveRuta As Integer = CveRutaAEditar 'aquí obtenemos el valor de la propiedad que utilizamos en el metodo "GvDatos_RowEditing"
If ObjRuta.UpdateRuta(Ruta, Estatus, CveRuta) Then
GvDatos.EditIndex = -1
ViewState("DTRuta") = ObjRuta.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GlobalDTRutas = ObjRuta.DtResultados
Alert("Los cambios se guardaron correctamente.", TipoMensaje.MsgInformacion)
End If
ObjRuta.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Public Sub GvDatos_RowEditing(sender As Object, e As System.EventArgs) 'Este metodo muestra la pantalla modal con la información del renglon ya puesta en los campos del formulario
BtnAgregarTiposDModal.Visible = False
BtnEditarTiposDModal.Visible = True
CheckActiveSection.Visible = True
saltoDeLinea.Visible = True
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) 'obtenemos el renglon que acabamos de seleccionar
RutasTxt.Text = GvRow.DataKey("Ruta")
ChkEstatus.Checked = If(GvRow.DataKey("Estatus") = "Activo", True, False)
CveRutaAEditar = Convert.ToInt32(GvRow.DataKey("CveRuta")) 'Guardamos en una propiedad el id del registro del cual haremos cambios, se guarda y se utiliza en el metodo "GvDatos_RowUpdating"
UpDatos.Update()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarTiposD"))
End Sub
#End Region
#Region "O R D E N A M I E N T O"
Protected Sub LbOrden_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim Orden As String = ""
Dim Campo As String = ""
Dim Literal As Literal = Nothing
Const OrdenInicial As String = ""
Dim Arg(2) As String
Arg = CType(sender, LinkButton).CommandArgument().ToString.Split(";"c)
Campo = Arg(0)
Literal = CType(CType(sender, LinkButton).NamingContainer.FindControl("Img" & Campo.Replace(",", "_")), Literal)
If ViewState(String.Format("O{0}", Campo)) IsNot Nothing AndAlso ViewState(String.Format("O{0}", Campo)).ToString = String.Format("{0} DESC", Campo) Then
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} ASC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-asc' style='color:#999' ></i>")
Else
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} DESC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-desc' style='color:#999' ></i>")
End If
Orden = OrdenInicial & ViewState(String.Format("O{0}", Campo)).ToString
ViewState("Orden") = Orden
CargaGrid(Orden)
End Sub
Private Sub CargaGrid(Orden As String)
If Orden <> String.Empty Then
Dim DV As New DataView(CType(ViewState("DTRuta"), DataTable), "", Orden, DataViewRowState.CurrentRows)
GvDatos.DataSource = DV.ToTable()
DV.Dispose()
Else
GvDatos.DataSource = CType(ViewState("DTRuta"), DataTable)
End If
GvDatos.DataBind()
UpDatos.Update()
End Sub
#End Region
End Class

View File

@@ -0,0 +1,152 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatSubProyectosZonas.aspx.vb" Inherits="RH_CatSubProyectosZonas" %>
<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="E" Runat="Server">
Catálogo Zonas
</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>
<li>
<asp:LinkButton runat="server" ID="LnkAgregarZona" CssClass=" " data-toggle="tooltip" data-placement="left" title="Agregar Zona" Text="<i class='fa fa-plus'></i>Agregar Zona"></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="UpGralDatos" runat="server">
<ContentTemplate>
<div class="portlet smmallpadding light bordered" id="Div2" runat="server">
<div class="portlet-title">
<div class="caption font-green">
<i class="icon-pin font-green"></i>
<span class="caption-subject bold uppercase">SUBPROYECTOS ZONAS</span>
</div>
<div class="actions">
<div class="btn-group">
</div>
<input type="text" id="TxtBuscaZona" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBuscaZona','{0}')", GvZonas.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBuscaZona','{0}')", GvZonas.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<div class="tools">
</div>
</div>
<div class="portlet-body form">
<asp:UpdatePanel ID="UPTabFamiliares4" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvZonas" runat="server" AutoGenerateColumns="False" DataKeyNames="CveSubProyectoZona,SubProyectoZona,CveSubProyecto,Estatus" EmptyDataText="No se encontraron registros de familiares" ToolTip="Listado de familiares"
CssClass="table table-striped table-advance table-hover Widthall ScrollAD" data-sort="true" GridLines="None">
<Columns>
<asp:TemplateField ItemStyle-HorizontalAlign="Left" HeaderText="SubProyectoZona">
<ItemTemplate>
<asp:Literal ID="LtlSubProyectoZona" runat="server" Text='<%# Eval("SubProyectoZona") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Left" HeaderText="SubProyecto">
<ItemTemplate>
<asp:Literal ID="LtlSubProyecto" runat="server" Text='<%# Eval("SubProyecto")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Left" ItemStyle-Width="70" HeaderText="Activo">
<ItemTemplate>
<asp:Literal ID="LtlEstatus" runat="server" Text='<%# Eval("SEstatus") %>'>></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" ItemStyle-Width="100" HeaderText="Estatus">
<ItemTemplate>
<asp:Literal ID="LtlFecha" runat="server" Text='<%# Eval("Fecha", "{0:d}") %>'>></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-Width="200px" HeaderText="Usuario">
<ItemTemplate>
<asp:Literal ID="LtlUsuario" runat="server" Text='<%# Eval("Usuario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Right" ItemStyle-Width="80px">
<ItemTemplate>
<asp:LinkButton ID="ImgE" OnClick="Edit_ClickZona" runat="server" AlternateText="Editar" CausesValidation="False"
CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Left" ItemStyle-Width="40px">
<ItemTemplate>
<asp:LinkButton ID="imgD" OnClick="Remove_ClickZona" runat="server" AlternateText="Eliminar" CausesValidation="False" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
<Triggers>
</Triggers>
</asp:UpdatePanel>
<div id="divAgregarZona" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalZona" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloModalZona" runat="server"> Agregar Zona</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtSubproyectoZona" CssClass="form-control" MaxLength="50" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtNombreFamiliar4" runat="server" ControlToValidate="TxtSubproyectoZona" ValidationGroup="GrpFamiliar" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Zona''</b> es necesario, por favor ingréselo."></asp:RequiredFieldValidator>
<label for="<%= TxtSubproyectoZona.ClientID.ToString()%>">Zona:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlSubproyecto" DataTextField="SubProyecto" DataValueField="CveSubproyecto" runat="server" Width="300" CssClass=" select2me form-control ">
</asp:DropDownList>
<asp:RequiredFieldValidator InitialValue="-1" ID="rfvDDLParentescoFamiliar" ControlToValidate="DdlSubproyecto" CssClass="help-block errorimput" ValidationGroup="GrpFamiliar" runat="server" ErrorMessage="Seleccione una de las opciones"></asp:RequiredFieldValidator>
<label for="<%= DdlSubproyecto.ClientID.ToString()%>">Subproyecto:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:CheckBox ID="ChkEstatus" runat="server" />
<label for="<%= ChkEstatus.ClientID.ToString()%>">Activo:</label>
</div>
</div>
<div class="modal-footer">
<asp:Button ID="BtnAgregarZonaModal" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpFamiliar" />
<button id="BtnCancelarZonaModal" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" Runat="Server">
</asp:Content>

View File

@@ -0,0 +1,195 @@
Option Strict On
Imports System.Data
Imports Extensiones
Partial Class RH_CatSubProyectosZonas
Inherits ClsPaginas
Private Property ActualizarZona As Boolean
Get
If ViewState("ActualizarZona") Is Nothing Then
Return False
Else
Return DirectCast(ViewState("ActualizarZona"), Boolean)
End If
End Get
Set(value As Boolean)
ViewState("ActualizarZona") = value
End Set
End Property
Private Property CveSubproyectoZona As Integer
Get
If ViewState("CveSubproyectoZona") Is Nothing Then
Return -1
Else
Return DirectCast(ViewState("CveSubproyectoZona"), Integer)
End If
End Get
Set(value As Integer)
ViewState("CveSubproyectoZona") = value
End Set
End Property
Private Property SubproyectoZona As String
Get
If ViewState("SubproyectoZona") Is Nothing Then
Return ""
Else
Return ViewState("SubproyectoZona").ToString
End If
End Get
Set(value As String)
ViewState("SubproyectoZona") = value
End Set
End Property
Private Property CveSubproyecto As Integer
Get
If ViewState("CveSubproyecto") Is Nothing Then
Return -1
Else
Return DirectCast(ViewState("CveSubproyecto"), Integer)
End If
End Get
Set(value As Integer)
ViewState("CveSubproyecto") = value
End Set
End Property
Private Property Estatus As Boolean
Get
If ViewState("Estatus") Is Nothing Then
Return False
Else
Return DirectCast(ViewState("Estatus"), Boolean)
End If
End Get
Set(value As Boolean)
ViewState("Estatus") = value
End Set
End Property
Private Sub RH_CatSubProyectosZonas_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
DdlSubproyecto.DataSource = GlobalDTSubProyectos(-1, -1, UsuarioActual.Empresa.CveEmpresa, 1)
DdlSubproyecto.DataBind()
DdlSubproyecto.Items.Insert(0, New ListItem("Seleccine un subroyecto", "-1"))
CargaZonas()
End If
End Sub
Private Sub CargaZonas()
Dim objRH As New ClsRH
If objRH.SubproyectoZonaGet(-1, -1, UsuarioActual.Empresa.CveEmpresa) Then
GvZonas.DataSource = objRH.DtResultados
Else
GvZonas.DataSource = Nothing
End If
objRH.Dispose()
GvZonas.DataBind()
End Sub
Private Sub ResetFormZona()
LtlTituloModalZona.Text = "Agregar Zona"
BtnAgregarZonaModal.Text = "Agregar"
TxtSubproyectoZona.Text = ""
DdlSubproyecto.SelectedIndex = 0
ChkEstatus.Checked = True
CveSubproyectoZona = -1
UpModalZona.Update()
End Sub
Protected Sub BtnAgregarZonaModal_Click(sender As Object, e As EventArgs) Handles BtnAgregarZonaModal.Click
Dim objRH As New ClsRH
Dim _Estatus As Integer
If ChkEstatus.Checked Then _Estatus = 1 Else _Estatus = 0
If ActualizarZona Then
If objRH.SubproyectoZonaAddUpdate(CveSubproyectoZona, TxtSubproyectoZona.Text, DdlSubproyecto.SelectedValue.ToEntero, _Estatus, UsuarioActual.CveUsuario, UsuarioActual.Empresa.CveEmpresa) Then
Alert("Se actualizo la zona correctamente.", TipoMensaje.MsgInformacion)
End If
Else
If objRH.SubproyectoZonaAddUpdate(-1, TxtSubproyectoZona.Text, DdlSubproyecto.SelectedValue.ToEntero, _Estatus, UsuarioActual.CveUsuario, UsuarioActual.Empresa.CveEmpresa) Then
Alert("Se agrego la zona correctamente.", TipoMensaje.MsgInformacion)
End If
End If
objRH.Dispose()
RegistraScript("$('#divAgregarZona').modal('hide');")
CargaZonas()
ResetFormZona()
CveSubproyectoZona = -1
ActualizarZona = False
End Sub
Public Sub Edit_ClickZona(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim activo As Boolean = True
CveSubproyectoZona = GvRow.DataKey("CveSubProyectoZona").ToString.ToEntero
TxtSubproyectoZona.Text = GvRow.DataKey("SubProyectoZona")
DdlSubproyecto.SelectedValueExist(GvRow.DataKey("CveSubProyecto"))
If Convert.ToBoolean(GvRow.DataKey("Estatus")) Then
ChkEstatus.Checked = True
Else
ChkEstatus.Checked = False
End If
LtlTituloModalZona.Text = "Actualizar Zona"
BtnAgregarZonaModal.Text = "Actualizar"
UpModalZona.Update()
RegistraScript("$('#divAgregarZona').modal({ backdrop: 'static', keyboard: false});")
ActualizarZona = True
End Sub
Public Sub Remove_ClickZona(sender As Object, e As EventArgs)
Dim objRH As New ClsRH
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim activo As Boolean = False
Dim CveSubproyetoZona As Integer = GvRow.DataKey("CveSubProyectoZona").ToString.ToEntero
If objRH.SubproyectoZonaRemove(CveSubproyetoZona, UsuarioActual.Empresa.CveEmpresa) Then
Alert("Zona eliminada correctamente ", TipoMensaje.MsgInformacion)
End If
objRH.Dispose()
CargaZonas()
End Sub
Protected Sub LnkAgregarZona_Click(sender As Object, e As EventArgs) Handles LnkAgregarZona.Click
ResetFormZona()
RegistraScript("$('#divAgregarZona').modal({ backdrop: 'static', keyboard: false});")
End Sub
End Class

121
RH/CatTipoBuzon.aspx Normal file
View File

@@ -0,0 +1,121 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatTipoBuzon.aspx.vb" Inherits="RH_CatTipoBuzon" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<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 Tipo de Buzón
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel runat="server" ID="UpAgregar">
<ContentTemplate>
<li>
<asp:LinkButton runat="server" ID="BtnAgregarMotivoD" data-toggle="tooltip" data-placement="left" title="Agregar un Defecto" Text="<i class='fa fa-plus'></i> Tipo de Buzón"></asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpTitulos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" DataKeyNames="CveTipoBuzon,TipoBuzon,Estatus" EmptyDataText="No se encontraron Tipo de Buzón Registrados" ToolTip="Listado de TipoBuzon" CssClass="table table-striped table-advance table-hover" Style="margin-top: -10px; text-align: center;width:100%" GridLines="None">
<Columns>
<asp:TemplateField HeaderText="Tipo de Buzón">
<ItemTemplate>
<asp:Literal ID="LtlTipoBuzon" runat="server" Text='<%# Eval("TipoBuzon", "&nbsp;{0}") %>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="TxtTipoBuzon" runat="server" CausesValidation="true" MaxLength="50" Text='<%# Eval("TipoBuzon") %>' ValidationGroup="GrpGV" Width="234px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVTipoBuzon" runat="server" ControlToValidate="TxtTipoBuzon" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''TipoBuzon''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGV"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCTipoBuzon" runat="server" HighlightCssClass="vco" TargetControlID="RFVTipoBuzon" Width="300px"></ajax:ValidatorCalloutExtender>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estatus">
<ItemTemplate>
<asp:Literal ID="LtlEstado" runat="server" Text='<%# Eval("Estatus") %>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:CheckBox ID="ChkEstado" runat="server" Checked='<%# If (Eval("Estatus").ToString = "Activo", True, False) %>' />
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha">
<ItemTemplate>
<asp:Literal ID="LtlFecha" runat="server" Text='<%# Eval("FechaIng", "{0:d}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Usuario">
<ItemTemplate>
<asp:Literal ID="LtlUsuario" runat="server" Text='<%# Eval("Usuario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Editar">
<EditItemTemplate>
<center>
<asp:LinkButton ID="imgU" runat="server" AlternateText="Actualizar" CausesValidation="True" CommandName="Update" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-check'></i>" ValidationGroup="GrpGV" />
&nbsp;<asp:LinkButton ID="imgC" runat="server" AlternateText="Cancelar" CausesValidation="False" CommandName="Cancel" CssClass="btn btn-circle btn-sm red" Text="<i class='fa fa-times'></i>" />
</center>
</EditItemTemplate>
<ItemTemplate>
<asp:LinkButton OnClick="GvDatos_RowEditing" ID="imgE" runat="server" AlternateText="Editar" CausesValidation="False" CommandName="Edit" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Eliminar">
<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="Confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" />
<AlternatingRowStyle CssClass="TextoAlterno" />
</asp:GridView>
<div id="DivAgregarTiposD" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalTiposD" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloModalTiposD" runat="server">Tipo de Buzón</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TipoTxt" CssClass="form-control " runat="server" MaxLength="70" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvTxtTiposD" runat="server" ControlToValidate="TipoTxt" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTiposD"></asp:RequiredFieldValidator>
<label for="TipoTxt">Tipo de Buzón:</label>
<i></i>
</div>
<br ID="saltoDeLinea" runat="server" />
<div ID="CheckActiveSection" runat="server" class="form-group form-md-line-input input-iconright">
<label for="ChkEstatus">Activo:</label>&nbsp;
<asp:CheckBox ID="ChkEstatus" runat="server" CssClass="make-switchsd" data-size="small" Text=" " Checked="true" />
<i></i>
</div>
</div>
<br />
<div class="modal-footer">
<asp:Button ID="BtnAgregarTiposDModal" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpTiposD" />
<asp:Button ID="BtnEditarTiposDModal" runat="server" class="btn btn-success" Text="Confirmar" ValidationGroup="GrpTiposD" />
<button id="Button3" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

217
RH/CatTipoBuzon.aspx.vb Normal file
View File

@@ -0,0 +1,217 @@
Option Strict On
Imports System.Data
Imports System.Linq
Imports Extensiones
Partial Class RH_CatTipoBuzon
Inherits ClsPaginas
Private Property CveTipoBuzonAEditar() As Integer 'Guardamos el ID de registro para saber cual registro Editar
Get
Return If(IsNothing(ViewState("CveTipoBuzonAEditar")), -1, CInt(ViewState("CveTipoBuzonAEditar")))
End Get
Set
ViewState("CveTipoBuzonAEditar") = Value
End Set
End Property
Public Property PuedeEditar As Boolean
Get
Return CBool(ViewState("PuedeEditar"))
End Get
Set(value As Boolean)
ViewState("PuedeEditar") = value
End Set
End Property
Public Property PuedeEliminar As Boolean
Get
Return CBool(ViewState("PuedeEditar"))
End Get
Set(value As Boolean)
ViewState("PuedeEditar") = value
End Set
End Property
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
ViewState("Orden") = ""
CargaDatos()
''Permiso Registro
'If PermisoRegistro Then
' LbAgregar.Enabled = True
'Else
' LbAgregar.Enabled = False
'End If
End If
End Sub
Public Sub CargaDatos()
Dim ObjTipoBuzon As New ClsRH
If ObjTipoBuzon.GetTipoBuzon() Then
ViewState("DTTipoBuzon") = ObjTipoBuzon.DtResultados
GlobalDTTipoBuzon = ObjTipoBuzon.DtResultados
Else
Me.GvDatos.DataSource = Nothing
End If
ObjTipoBuzon.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub BtnAgregarMotivo_Click(sender As Object, e As EventArgs) Handles BtnAgregarMotivoD.Click 'Hacemos aparecer la ventana modal con los campos limpios
BtnEditarTiposDModal.Visible = False
BtnAgregarTiposDModal.Visible = True
CheckActiveSection.Visible = False
saltoDeLinea.Visible = False
TipoTxt.Text = ""
UpModalTiposD.Update()
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarTiposD"))
End Sub
Protected Sub LbAgregar_Click(sender As Object, e As System.EventArgs) Handles BtnAgregarTiposDModal.Click 'esta funcion es la que agrega un nuevo motivo de baja se activa con el boton "Agregar" de la ventana modal"
Dim ObjTipoBuzon As New ClsRH
If ObjTipoBuzon.AddTipoBuzon(TipoTxt.Text.Trim, UsuarioActual.CveUsuario) Then
TipoTxt.Text = ""
Alert("El nuevo Tipo de Buzón se guardó correctamente.", TipoMensaje.MsgInformacion)
UpTitulos.Update()
ViewState("DTTipoBuzon") = ObjTipoBuzon.DtResultados
GlobalDTTipoBuzon = ObjTipoBuzon.DtResultados
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End If
ObjTipoBuzon.Dispose()
End Sub
#Region "G V D A T O S"
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.RowIndex = 0 Then
e.Row.Cells(0).Width = Unit.Pixel(250)
e.Row.Cells(1).Width = Unit.Pixel(100)
e.Row.Cells(2).Width = Unit.Pixel(100)
e.Row.Cells(3).Width = Unit.Pixel(100)
e.Row.Cells(4).Width = Unit.Pixel(100)
e.Row.Cells(5).Width = Unit.Pixel(61)
End If
e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left
End If
End Sub
Protected Sub GvDatos_RowDeleting(sender As Object, e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles GvDatos.RowDeleting
Dim ObjTipoBuzon As New ClsRH
If ObjTipoBuzon.RemoveTipoBuzon(GvDatos.DataKeys(e.RowIndex).Value.ToString.ToEntero) Then
GvDatos.EditIndex = -1
ViewState("DTTipoBuzon") = ObjTipoBuzon.DtResultados
GlobalDTTipoBuzon = ObjTipoBuzon.DtResultados
Alert("El Tipo de Buzón se eliminó correctamente.", TipoMensaje.MsgInformacion)
End If
ObjTipoBuzon.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowCancelingEdit(sender As Object, e As System.Web.UI.WebControls.GridViewCancelEditEventArgs) Handles GvDatos.RowCancelingEdit
GvDatos.EditIndex = -1
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Public Sub GvDatos_RowUpdating(sender As Object, e As EventArgs) Handles BtnEditarTiposDModal.Click '(Leer primero "GvDatos_RowEditing")Se manda la informacion a un procedmiento que hace la actualizacion
Dim ObjTipoBuzon As New ClsRH
Dim TipoBuzon As String = TipoTxt.Text.Trim
Dim Estatus As Boolean = ChkEstatus.Checked
Dim CveTipoBuzon As Integer = CveTipoBuzonAEditar 'aquí obtenemos el valor de la propiedad que utilizamos en el metodo "GvDatos_RowEditing"
If ObjTipoBuzon.UpdateTipoBuzon(TipoBuzon, Estatus, CveTipoBuzon) Then
GvDatos.EditIndex = -1
ViewState("DTTipoBuzon") = ObjTipoBuzon.DtResultados
GlobalDTTipoBuzon = ObjTipoBuzon.DtResultados
Alert("Los cambios se guardaron correctamente.", TipoMensaje.MsgInformacion)
End If
ObjTipoBuzon.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Public Sub GvDatos_RowEditing(sender As Object, e As EventArgs) 'Este metodo muestra la pantalla modal con la información del renglon ya puesta en los campos del formulario
BtnAgregarTiposDModal.Visible = False
BtnEditarTiposDModal.Visible = True
CheckActiveSection.Visible = True
saltoDeLinea.Visible = True
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) 'obtenemos el renglon que acabamos de seleccionar
TipoTxt.Text = GvRow.DataKey("TipoBuzon")
ChkEstatus.Checked = If(GvRow.DataKey("Estatus") = "Activo", True, False)
CveTipoBuzonAEditar = Convert.ToInt32(GvRow.DataKey("CveTipoBuzon")) 'Guardamos en una propiedad el id del registro del cual haremos cambios, se guarda y se utiliza en el metodo "GvDatos_RowUpdating"
UpDatos.Update()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarTiposD"))
End Sub
#End Region
#Region "O R D E N A M I E N T O"
Protected Sub LbOrden_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim Orden As String = ""
Dim Campo As String = ""
Dim Literal As Literal = Nothing
Const OrdenInicial As String = ""
Dim Arg(2) As String
Arg = CType(sender, LinkButton).CommandArgument().ToString.Split(";"c)
Campo = Arg(0)
Literal = CType(CType(sender, LinkButton).NamingContainer.FindControl("Img" & Campo.Replace(",", "_")), Literal)
If ViewState(String.Format("O{0}", Campo)) IsNot Nothing AndAlso ViewState(String.Format("O{0}", Campo)).ToString = String.Format("{0} DESC", Campo) Then
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} ASC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-asc' style='color:#999' ></i>")
Else
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} DESC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-desc' style='color:#999' ></i>")
End If
Orden = OrdenInicial & ViewState(String.Format("O{0}", Campo)).ToString
ViewState("Orden") = Orden
CargaGrid(Orden)
End Sub
Private Sub CargaGrid(Orden As String)
If Orden <> String.Empty Then
Dim DV As New DataView(CType(ViewState("DTTipoBuzon"), DataTable), "", Orden, DataViewRowState.CurrentRows)
GvDatos.DataSource = DV.ToTable()
DV.Dispose()
Else
GvDatos.DataSource = CType(ViewState("DTTipoBuzon"), DataTable)
End If
GvDatos.DataBind()
UpDatos.Update()
End Sub
#End Region
End Class

121
RH/CatTiposContratos.aspx Normal file
View File

@@ -0,0 +1,121 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatTiposContratos.aspx.vb" Inherits="RH_CatTiposContratos" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<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 Tipo de Contratos
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel runat="server" ID="UpAgregar">
<ContentTemplate>
<li>
<asp:LinkButton runat="server" ID="BtnAgregarMotivoD" data-toggle="tooltip" data-placement="left" title="Agregar un Defecto" Text="<i class='fa fa-plus'></i>Agregar Tipo de Contrato"></asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpTitulos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" DataKeyNames="CveTipoContrato,TipoContrato,Estatus" EmptyDataText="No se encontraron TipoContratos Registrados" ToolTip="Listado de TipoContratos" CssClass="table table-striped table-advance table-hover" Style="margin-top: -10px; text-align: center;width:100%" GridLines="None">
<Columns>
<asp:TemplateField HeaderText="Tipo de Contrato">
<ItemTemplate>
<asp:Literal ID="LtlTipoContrato" runat="server" Text='<%# Eval("TipoContrato", "&nbsp;{0}") %>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="TxtTipoContrato" runat="server" CausesValidation="true" MaxLength="50" Text='<%# Eval("TipoContrato") %>' ValidationGroup="GrpGV" Width="234px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVTipoContrato" runat="server" ControlToValidate="TxtTipoContrato" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''TipoContrato''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGV"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCTipoContrato" runat="server" HighlightCssClass="vco" TargetControlID="RFVTipoContrato" Width="300px"></ajax:ValidatorCalloutExtender>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Estatus">
<ItemTemplate>
<asp:Literal ID="LtlEstatus" runat="server" Text='<%# Eval("Estatus") %>'></asp:Literal>
</ItemTemplate>
<EditItemTemplate>
<asp:CheckBox ID="ChkEstatus" runat="server" Checked='<%# If (Eval("Estatus").ToString = "Activo", True, False) %>' />
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha">
<ItemTemplate>
<asp:Literal ID="LtlFechaIng" runat="server" Text='<%# Eval("FechaIng", "{0:d}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Usuario">
<ItemTemplate>
<asp:Literal ID="LtlUsuario" runat="server" Text='<%# Eval("Usuario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Editar">
<EditItemTemplate>
<center>
<asp:LinkButton ID="imgU" runat="server" AlternateText="Actualizar" CausesValidation="True" CommandName="Update" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-check'></i>" ValidationGroup="GrpGV" />
&nbsp;<asp:LinkButton ID="imgC" runat="server" AlternateText="Cancelar" CausesValidation="False" CommandName="Cancel" CssClass="btn btn-circle btn-sm red" Text="<i class='fa fa-times'></i>" />
</center>
</EditItemTemplate>
<ItemTemplate>
<asp:LinkButton ID="imgE" runat="server" OnClick="GvDatos_RowEditing" AlternateText="Editar" CausesValidation="False" CommandName="Edit" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Eliminar">
<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="Confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" />
<AlternatingRowStyle CssClass="TextoAlterno" />
</asp:GridView>
<div id="DivAgregarTiposD" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModalTiposD" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlTituloModalTiposD" runat="server">Tipos de Contratos</asp:Literal></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TipoTxt" CssClass="form-control " runat="server" MaxLength="70" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" ControlToValidate="TipoTxt" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo''</b> es necesario, por favor ingréselo." ValidationGroup="GrpTiposD"></asp:RequiredFieldValidator>
<label for="TipoTxt">Tipo de Contrato:</label>
<i></i>
</div>
<br ID="saltoDeLinea" runat="server" />
<div ID="CheckActiveSection" runat="server" class="form-group form-md-line-input input-iconright">
<label for="ChkEstatus">Activo:</label>&nbsp;
<asp:CheckBox ID="ChkEstatus" runat="server" CssClass="make-switchsd" data-size="small" Text=" " Checked="true" />
<i></i>
</div>
</div>
<br />
<div class="modal-footer">
<asp:Button ID="BtnAgregarTiposDModal" runat="server" class="btn btn-success" Text="Agregar" ValidationGroup="GrpTiposD" />
<asp:Button ID="BtnEditarTiposDModal" runat="server" class="btn btn-success" Text="Confirmar" ValidationGroup="GrpTiposD" />
<button id="Button3" runat="server" type="button" class="btn default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

View File

@@ -0,0 +1,220 @@
Option Explicit On
Option Strict On
Imports System.Data
Imports System.Linq
Imports Extensiones
Partial Class RH_CatTiposContratos
Inherits ClsPaginas
Public Property PuedeEditar As Boolean
Get
Return CBool(ViewState("PuedeEditar"))
End Get
Set(value As Boolean)
ViewState("PuedeEditar") = value
End Set
End Property
Public Property PuedeEliminar As Boolean
Get
Return CBool(ViewState("PuedeEditar"))
End Get
Set(value As Boolean)
ViewState("PuedeEditar") = value
End Set
End Property
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
ViewState("Orden") = ""
CargaDatos()
''Permiso Registro
'If PermisoRegistro Then
' LbAgregar.Enabled = True
'Else
' LbAgregar.Enabled = False
'End If
End If
End Sub
Public Sub CargaDatos()
Dim ObjTipoContratos As New ClsRH
If ObjTipoContratos.GetTiposContrato() Then
ViewState("DTTipoContratos") = ObjTipoContratos.DtResultados
GlobalDTTiposContrato = ObjTipoContratos.DtResultados
Else
Me.GvDatos.DataSource = Nothing
End If
ObjTipoContratos.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Private Property CveTipoAEditar() As Integer
Get
Return If(IsNothing(ViewState("CveTipoAEditar")), -1, CInt(ViewState("CveTipoAEditar")))
End Get
Set
ViewState("CveTipoAEditar") = Value
End Set
End Property
Protected Sub BtnAgregarMotivo_Click(sender As Object, e As EventArgs) Handles BtnAgregarMotivoD.Click
BtnEditarTiposDModal.Visible = False
BtnAgregarTiposDModal.Visible = True
CheckActiveSection.Visible = False
saltoDeLinea.Visible = False
TipoTxt.Text = ""
ChkEstatus.Checked = True
UpModalTiposD.Update()
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarTiposD"))
End Sub
Protected Sub LbAgregar_Click(sender As Object, e As System.EventArgs) Handles BtnAgregarTiposDModal.Click
Dim ObjTipoContratos As New ClsRH
If ObjTipoContratos.AddTiposContrato(TipoTxt.Text.Trim, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
TipoTxt.Text = ""
Alert("El nuevo Tipo de Contrato se guardó correctamente.", TipoMensaje.MsgInformacion)
UpTitulos.Update()
ViewState("DTTipoContratos") = ObjTipoContratos.DtResultados
GlobalDTTiposContrato = ObjTipoContratos.DtResultados
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End If
ObjTipoContratos.Dispose()
End Sub
#Region "G V D A T O S"
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.RowIndex = 0 Then
e.Row.Cells(0).Width = Unit.Pixel(250)
e.Row.Cells(1).Width = Unit.Pixel(100)
e.Row.Cells(2).Width = Unit.Pixel(100)
e.Row.Cells(3).Width = Unit.Pixel(100)
e.Row.Cells(4).Width = Unit.Pixel(100)
e.Row.Cells(5).Width = Unit.Pixel(61)
End If
e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left
End If
End Sub
Protected Sub GvDatos_RowDeleting(sender As Object, e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles GvDatos.RowDeleting
Dim ObjTipoContratos As New ClsRH
If ObjTipoContratos.RemoveTiposContrato(GvDatos.DataKeys(e.RowIndex).Value.ToString.ToEntero) Then
GvDatos.EditIndex = -1
ViewState("DTTipoContratos") = ObjTipoContratos.DtResultados
GlobalDTTiposContrato = ObjTipoContratos.DtResultados
Alert("El TipoContrato se eliminó correctamente.", TipoMensaje.MsgInformacion)
End If
ObjTipoContratos.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowCancelingEdit(sender As Object, e As System.Web.UI.WebControls.GridViewCancelEditEventArgs) Handles GvDatos.RowCancelingEdit
GvDatos.EditIndex = -1
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowUpdating(sender As Object, e As System.EventArgs) Handles BtnEditarTiposDModal.Click
Dim ObjTipoContratos As New ClsRH
Dim TipoContrato As String = TipoTxt.Text.Trim
Dim Estatus As Boolean = ChkEstatus.Checked
Dim CveTipoContrato As Integer = CveTipoAEditar
If ObjTipoContratos.UpdateTiposContrato(TipoContrato, Estatus, CveTipoContrato) Then
GvDatos.EditIndex = -1
ViewState("DTTipoContratos") = ObjTipoContratos.DtResultados
GlobalDTTiposContrato = ObjTipoContratos.DtResultados
Alert("Los cambios se guardaron correctamente.", TipoMensaje.MsgInformacion)
End If
ObjTipoContratos.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub GvDatos_RowEditing(sender As Object, e As System.EventArgs)
BtnAgregarTiposDModal.Visible = False
BtnEditarTiposDModal.Visible = True
CheckActiveSection.Visible = True
saltoDeLinea.Visible = True
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) 'obtenemos el renglon que acabamos de seleccionar
TipoTxt.Text = GvRow.DataKey("TipoContrato")
ChkEstatus.Checked = If(GvRow.DataKey("Estatus") = "Activo", True, False)
CveTipoAEditar = Convert.ToInt32(GvRow.DataKey("CveTipoContrato")) 'Guardamos en una propiedad el id del registro del cual haremos cambios, se guarda y se utiliza en el metodo "GvDatos_RowUpdating"
UpDatos.Update()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarTiposD"))
End Sub
#End Region
#Region "O R D E N A M I E N T O"
Protected Sub LbOrden_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim Orden As String = ""
Dim Campo As String = ""
Dim Literal As Literal = Nothing
Const OrdenInicial As String = ""
Dim Arg(2) As String
Arg = CType(sender, LinkButton).CommandArgument().ToString.Split(";"c)
Campo = Arg(0)
Literal = CType(CType(sender, LinkButton).NamingContainer.FindControl("Img" & Campo.Replace(",", "_")), Literal)
If ViewState(String.Format("O{0}", Campo)) IsNot Nothing AndAlso ViewState(String.Format("O{0}", Campo)).ToString = String.Format("{0} DESC", Campo) Then
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} ASC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-asc' style='color:#999' ></i>")
Else
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} DESC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-desc' style='color:#999' ></i>")
End If
Orden = OrdenInicial & ViewState(String.Format("O{0}", Campo)).ToString
ViewState("Orden") = Orden
CargaGrid(Orden)
End Sub
Private Sub CargaGrid(Orden As String)
If Orden <> String.Empty Then
Dim DV As New DataView(CType(ViewState("DTTipoContratos"), DataTable), "", Orden, DataViewRowState.CurrentRows)
GvDatos.DataSource = DV.ToTable()
DV.Dispose()
Else
GvDatos.DataSource = CType(ViewState("DTTipoContratos"), DataTable)
End If
GvDatos.DataBind()
UpDatos.Update()
End Sub
#End Region
End Class

121
RH/CatTurno.aspx Normal file
View File

@@ -0,0 +1,121 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatTurno.aspx.vb" Inherits="RH_CatTurno" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<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 Turnos
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel ID="UppAddAcciones" runat="server">
<ContentTemplate>
<li>
<asp:LinkButton ID="LnkTurno" runat="server" Text="Agregar"></asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:HiddenField ClientIDMode="Static" runat="server" ID="HdnCveTurno" Value="-1" />
<div class="row" style="margin-right: 10px; margin-top: 18px;" align="right">
<input type="text" id="TxtBusqueda" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvTurno.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvTurno.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<asp:GridView ID="GvTurno" runat="server" GridLines="None" DataKeyNames="CveTurno,Turno,CveChecadorHorario,HorarioDe,HorarioA,Estatus,FechaIng,CveUsuario,CveEmpresa,Usuario,ChecadorHorario" CssClass="table table-striped table-advance table-hover Widthall" CellSpacing="0" Width="100%" AutoGenerateColumns="False" EmptyDataText="No se encontraron registros" ToolTip="Listado de Turnos">
<Columns>
<asp:BoundField DataField="Turno" HeaderText="Turno" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField DataField="ChecadorHorario" HeaderText="Checador Horario" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField DataField="HorarioDe" HeaderText="Hr. Entrada" ItemStyle-HorizontalAlign="Center" />
<asp:BoundField DataField="HorarioA" HeaderText="Hr. Salida" ItemStyle-HorizontalAlign="Center" />
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="Estatus">
<ItemTemplate>
<asp:Label ID="LblEstatus" runat="server" Text='<%# Eval("Estatus") %>'>></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="FechaIng" HeaderText="Fecha de Ingreso" ItemStyle-HorizontalAlign="Center" DataFormatString="{0:d}" />
<asp:BoundField DataField="Usuario" HeaderText="Usuario" ItemStyle-HorizontalAlign="Center" />
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="Comandos">
<ItemTemplate>
<asp:LinkButton ID="imgE" runat="server" AlternateText="Editar" CausesValidation="False" CssClass="btn btn-circle btn-sm green" OnClick="Edit_Click" Text="<i class='fa fa-pencil'></i>" />
<asp:LinkButton ID="imgD" runat="server" AlternateText="Eliminar" OnClick="Delete_Click" CausesValidation="False" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="Confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:HiddenField ID="HdnModalidad" runat="server" Value="A" ClientIDMode="Static" />
<asp:HiddenField ID="HdnID" runat="server" Value="-1" ClientIDMode="Static" />
</ContentTemplate>
</asp:UpdatePanel>
<%--POPUP AGREGAR--%>
<div id="divAddTurno" class="modal ADS fade" role="dialog">
<div class="modal-dialog">
<asp:UpdatePanel ID="UpAddTurno" class="modal-content rowpadding" 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" id="myModalLabel">Agregar Turno</h4>
</div>
<div class="modal-body">
<asp:UpdatePanel ID="UpBodyTurno" UpdateMode="Conditional" runat="server">
<ContentTemplate>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtTurno" runat="server" CausesValidation="true" CssClass="form-control" MaxLength="50" ValidationGroup="GrpObligatorio" ></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVTurno" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtTurno" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Turno''</b> es necesario, por favor ingréselo." ValidationGroup="GrpObligatorio"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCTurno" runat="server" HighlightCssClass="vco" TargetControlID="RFVTurno"></ajax:ValidatorCalloutExtender>
<label for="<%= TxtTurno.ClientID.ToString()%>">Turno:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlChecadorHorario" DataValueField="CveChecadorHorario" DataTextField="ChecadorHorario" runat="server" CssClass="form-control select2me" Width="150px"></asp:DropDownList>
<label for="<%= DdlChecadorHorario.ClientID.ToString()%>">Checador de Horario:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtHorarioDe" runat="server" CausesValidation="true" CssClass="form-control" MaxLength="10" Width="104px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVHorarioDe" runat="server" ControlToValidate="TxtHorarioDe" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hr. Entrada''</b> es necesario, por favor ingréselo." ValidationGroup="GrpObligatorio"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOHorarioDe1" runat="server" HighlightCssClass="vco" TargetControlID="RFVHorarioDe" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:MaskedEditExtender ID="MEEHorarioDe" runat="server" TargetControlID="TxtHorarioDe" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHorarioDe" runat="server" ControlExtender="MEEHorarioDe" ControlToValidate="TxtHorarioDe" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hr. Entrada''</b> no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpObligatorio"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="VCOHorarioDe2" runat="server" HighlightCssClass="vco" TargetControlID="MEVHorarioDe"></ajax:ValidatorCalloutExtender>
<label for="<%= TxtHorarioDe.ClientID.ToString()%>">Hora de Entrada:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtHorarioA" runat="server" CausesValidation="true" CssClass="form-control" MaxLength="10" Width="84px" ValidationGroup="GrpObligatorio"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVHorarioA" runat="server" ControlToValidate="TxtHorarioA" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hr. Salida''</b> es necesario, por favor ingréselo." ValidationGroup="GrpObligatorio"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOHorarioA1" runat="server" HighlightCssClass="vco" TargetControlID="RFVHorarioA" Width="300px"></ajax:ValidatorCalloutExtender>
<ajax:MaskedEditExtender ID="MEEHorarioA" runat="server" TargetControlID="TxtHorarioA" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHorarioA" runat="server" ControlExtender="MEEHorarioA" ControlToValidate="TxtHorarioA" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hr. Salida''</b> no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpObligatorio"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="VCOHorarioA2" runat="server" HighlightCssClass="vco" TargetControlID="MEVHorarioA"></ajax:ValidatorCalloutExtender>
<label for="<%= TxtHorarioDe.ClientID.ToString()%>">Hora de Salida:</label>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:CheckBox ID="ChkEstatus" runat="server" CssClass="form-control" />
<label for="<%= ChkEstatus.ClientID.ToString()%>">Estatus:</label>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<div class="modal-footer">
<asp:UpdatePanel ID="UpFooter" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:LinkButton ID="BtnAgregarTurno" runat="server" CssClass="btn btn-primary" ValidationGroup="GrpObligatorio"> <i class='material-icons'>done_all</i> Agregar</asp:LinkButton>
<button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

141
RH/CatTurno.aspx.vb Normal file
View File

@@ -0,0 +1,141 @@
Option Explicit On
Option Strict On
Imports System.Data
Imports System.Linq
Imports Extensiones
Partial Class RH_CatTurno
Inherits ClsPaginas
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
CargaDdlChecadorHorario()
CargaDatos()
End If
End Sub
Private Sub CargaDdlChecadorHorario()
Dim ObjRH As New ClsRH()
If ObjRH.DdlChecadorHorarioGet() Then
DdlChecadorHorario.DataSource = ObjRH.DtResultados
DdlChecadorHorario.DataBind()
End If
ObjRH.Dispose()
UpDatos.Update()
End Sub
Private Sub CargaDatos()
Dim ObjRH As New ClsRH()
If ObjRH.GetTurnos Then
GvTurno.DataSource = ObjRH.DtResultados.FiltraParametros(" CveEmpresa =" & UsuarioActual.CveEmpresa)
GvTurno.DataBind()
End If
ObjRH.Dispose()
UpDatos.Update()
End Sub
Private Sub BtnAgregarTurno_Click(sender As Object, e As EventArgs) Handles BtnAgregarTurno.Click
Dim ObjRH As New ClsRH
Dim Estatus As Boolean = False
If ChkEstatus.Checked Then Estatus = True
If HdnModalidad.Value = "A" Then
If ObjRH.AddTurno(TxtTurno.Text, TxtHorarioDe.Text, TxtHorarioA.Text, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, DdlChecadorHorario.SelectedValue.ToEntero) Then
CargaDatos()
CargaGlobalDTTurno()
Alert("Agregado Correctamente.", TipoMensaje.MsgInformacion)
End If
ElseIf HdnModalidad.Value = "U" Then
If ObjRH.UpdateTurno(TxtTurno.Text, TxtHorarioDe.Text, TxtHorarioA.Text, Estatus, HdnID.Value.ToEntero, UsuarioActual.CveUsuario, DdlChecadorHorario.SelectedValue.ToEntero) Then
CargaDatos()
CargaGlobalDTTurno()
Alert("Actualizado Correctamente.", TipoMensaje.MsgInformacion)
End If
End If
RegistraScript(String.Format("$('#{0}').modal('hide');", "divAddTurno"))
ObjRH.Dispose()
UpDatos.Update()
End Sub
Public Sub Edit_Click(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
HdnModalidad.Value = "U"
HdnID.Value = GvRow.DataKey("CveTurno")
UpDatos.Update()
BtnAgregarTurno.Text = "Actualizar"
DdlChecadorHorario.SelectedValueExist(GvRow.DataKey("CveChecadorHorario"))
TxtTurno.Text = GvRow.DataKey("Turno")
TxtHorarioDe.Text = GvRow.DataKey("HorarioDe")
TxtHorarioA.Text = GvRow.DataKey("HorarioA")
ChkEstatus.Checked = CBool(GvRow.DataKey("Estatus"))
UpAddTurno.Update()
'CargaGlobalDTTurno()
RegistraScript(String.Format("$('#{0}').modal('show');", "divAddTurno"))
End Sub
Public Sub Agregar()
HdnModalidad.Value = "A"
UpDatos.Update()
BtnAgregarTurno.Text = "Agregar"
TxtHorarioA.Text = ""
TxtHorarioDe.Text = ""
TxtTurno.Text = ""
CargaDdlChecadorHorario()
ChkEstatus.Checked = True
UpAddTurno.Update()
RegistraScript(String.Format("$('#{0}').modal('show');", "divAddTurno"))
End Sub
Private Sub CargaGlobalDTTurno()
Dim ObjRH As New ClsRH
If ObjRH.GetTurnos() Then
Application("GlobalDTTurno") = ObjRH.DtResultados
Else
Application("GlobalDTTurno") = Nothing
End If
ObjRH.Dispose()
End Sub
Public Sub Delete_Click(sender As Object, e As EventArgs)
Dim ObjRH As New ClsRH()
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
HdnID.Value = GvRow.DataKey("CveTurno")
UpDatos.Update()
If ObjRH.RemoveTurno(HdnID.Value.ToEntero) Then
CargaDatos()
CargaGlobalDTTurno()
Alert("Eliminado Correctamente.", TipoMensaje.MsgInformacion)
End If
ObjRH.Dispose()
UpDatos.Update()
End Sub
Private Sub LnkTurno_Click(sender As Object, e As EventArgs) Handles LnkTurno.Click
Agregar()
End Sub
Private Sub GvTurno_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvTurno.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If CBool(e.Row.DBCampo("Estatus")) = True Then
e.Row.FCLabel("LblEstatus").Text = "Activo"
e.Row.FCLabel("LblEstatus").ForeColor = Drawing.Color.Green
Else
e.Row.FCLabel("LblEstatus").Text = "Inactivo"
e.Row.FCLabel("LblEstatus").ForeColor = Drawing.Color.Red
End If
End If
End Sub
End Class

116
RH/CatUniformes.aspx Normal file
View File

@@ -0,0 +1,116 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatUniformes.aspx.vb" Inherits="RH_CatUniformes" %>
<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="E" Runat="Server">
Catalogo Uniformes
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" Runat="Server">
<asp:UpdatePanel ID="UpAcciones" runat="server">
<ContentTemplate>
<li>
<asp:LinkButton ID="LnkAgregarUniforme" PostBackUrl="~/RH/CatUniformesDetalle.aspx" runat="server"><i class="fa fa-plus-square-o" aria-hidden="true"></i>Agregar</asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" Runat="Server">
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HA" Runat="Server">
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="C" Runat="Server">
<asp:UpdatePanel runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="col-md-12 rowpadding">
<div class="portlet light smmallpadding bordered">
<div class="portlet-title">
<div class="caption"> <i class="fa fa-user" aria-hidden="true"></i> <span class="caption-subject bold uppercase" >Desarrollo</span>
</div>
<div class="tools">
<div style="display: inline-block">
<input type="text" id="TxtBusqueda" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvDatos.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px; height: 25px; border-color: #89C4F4;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvDatos.ClientID) %>" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body">
<asp:UpdatePanel ID="UPDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" ClientIDMode="Static" DataKeyNames="CveUniforme,Uniforme,Estatus" runat="server" AutoGenerateColumns="False" Width="100%" EmptyDataText="No se Encontraron registros" ToolTip="Listado de Desarrollos"
CssClass="table table-striped table-advance table-hover Widthall ScrollAD" data-sort="true" data-freezerows="1" GridLines="None">
<Columns>
<asp:BoundField HeaderText="Uniforme" DataField="Uniforme" ItemStyle-HorizontalAlign="Left" />
<asp:TemplateField ItemStyle-HorizontalAlign="Left" HeaderText="Activo" ItemStyle-Width="80px">
<ItemTemplate>
<asp:Label ID="LblEstado" runat="server" Text='<%# If(Boolean.Parse(Eval("Estatus").ToString), "Activo", "Inactivo") %>' ForeColor='<%# If(Boolean.Parse(Eval("Estatus").ToString), Drawing.Color.Green, Drawing.Color.Red) %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField HeaderText="Usuario" DataField="Usuario" ItemStyle-Width="150px" ItemStyle-HorizontalAlign="Left" />
<asp:TemplateField ItemStyle-HorizontalAlign="Right" HeaderText="Fecha" ItemStyle-Width="80px">
<ItemTemplate>
<asp:Label ID="LblFecha" runat="server" Text='<%# Eval("FechaIng", "{0:d}") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Right" HeaderText="Comandos" ItemStyle-Width="120px">
<ItemTemplate>
<asp:LinkButton ID="imgE" Width="28" runat="server" PostBackUrl='<%#String.Format("~/RH/CatUniformesDetalle.aspx?CveUniforme={0}", Eval("CveUniforme")) %>' AlternateText="Editar" CausesValidation="False" CssClass="btn btn-circle btn-sm green" OnClick="Edit_Click" Text="<i class='fa fa-pencil'></i>" />
<asp:LinkButton Visible="false" ID="imgD" Width="28" runat="server" AlternateText="Eliminar" OnClick="Delete_Click" CausesValidation="False" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="Confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" />
<AlternatingRowStyle CssClass="TextoAlterno" />
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<div id="DivModalUniforme" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModaluniformes" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal"></button>
<h4 class="modal-title"><asp:Literal ID="LlTituloModalUniforme" Text="Uniforme" runat="server"></asp:Literal></h4>
</div>
<div class="modal-body ">
<div class="form-group form-md-line-input input-iconright">
<label for="<%= TxtModalUniforme.ClientID.ToString()%>">Uniforme</label>
<asp:TextBox ID="TxtModalUniforme" CssClass="form-control" runat="server" ValidationGroup="grpUniforme" CausesValidation="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxtModalUniforme" runat="server" ControlToValidate="TxtModalUniforme" CssClass="help-block errorimput"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="grpUniforme"></asp:RequiredFieldValidator>
<i></i>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:CheckBox Id="chkModalUniforme" runat="Server" Text ="Activo" />
</div>
</div>
<div class="modal-footer">
<asp:LinkButton ID="LnkModalUniformeAgregar" CssClass="btn btn-success" runat="server" ValidationGroup="grpUniforme">Agregar</asp:LinkButton>
<button id="btnCacelarUniforme" runat="server" type="button" class="btn btn-danger" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" Runat="Server">
</asp:Content>

133
RH/CatUniformes.aspx.vb Normal file
View File

@@ -0,0 +1,133 @@
Option Strict On
Imports Extensiones
Partial Class RH_CatUniformes
Inherits ClsPaginas
Private Property CveUniforme As Integer
Get
If ViewState("CveUniforme") Is Nothing Then
Return -1
Else
Return DirectCast(ViewState("CveUniforme"), Integer)
End If
End Get
Set(value As Integer)
ViewState("CveUniforme") = value
End Set
End Property
Private Property Uniforme As String
Get
If ViewState("Uniforme") Is Nothing Then
Return ""
Else
Return ViewState("Uniforme").ToString
End If
End Get
Set(value As String)
ViewState("Uniforme") = value
End Set
End Property
Private Property Estatus As Integer
Get
If ViewState("Estatus") Is Nothing Then
Return -1
Else
Return DirectCast(ViewState("Estatus"), Integer)
End If
End Get
Set(value As Integer)
ViewState("Estatus") = value
End Set
End Property
Private Sub RH_CatUniformes_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
CargaDatos()
End If
End Sub
Private Sub CargaDatos()
Dim objRH As New ClsRH
If objRH.UniformeGet(-1, -1, UsuarioActual.CveEmpresa) Then
GvDatos.DataSource = objRH.DtResultados
End If
objRH.Dispose()
GvDatos.DataBind()
UPDatos.Update()
End Sub
'RegistraScript("$('#DivModalHojaTecnica').modal({ backdrop: 'static', keyboard: false});", "MTareas")
'DivModalUniforme
Public Sub Edit_Click(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
CveUniforme = GvRow.DataKey("CveUniforme").ToEntero
TxtModalUniforme.Text = GvRow.DataKey("Uniforme")
chkModalUniforme.Checked = Boolean.Parse(GvRow.DataKey("Estatus").ToString)
RegistraScript("$('#DivModalUniforme').modal({ backdrop: 'static', keyboard: false});", "MUniforme")
UpModaluniformes.Update()
End Sub
'Delete_Click
Public Sub Delete_Click(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim CveUniformeE As Integer = GvRow.DataKey("CveUniforme").ToEntero
Dim objRH As New ClsRH
If objRH.UniformeRemove(CveUniformeE, UsuarioActual.CveEmpresa) Then
Alert("Uniforme eliminado correctamente.")
CargaDatos()
End If
CveUniforme = -1
objRH.Dispose()
End Sub
Private Sub LnkAgregarUniforme_Click(sender As Object, e As EventArgs)
TxtModalUniforme.Text = ""
chkModalUniforme.Checked = True
RegistraScript("$('#DivModalUniforme').modal({ backdrop: 'static', keyboard: false});", "MUniforme")
End Sub
Private Sub LnkModalUniformeAgregar_Click(sender As Object, e As EventArgs) Handles LnkModalUniformeAgregar.Click
Dim objRH As New ClsRH
If objRH.UniformeAddUpdate(CveUniforme, TxtModalUniforme.Text.Trim, If(chkModalUniforme.Checked, 1, 0), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
CargaDatos()
RegistraScript("$('#DivModalUniforme').modal('hide');", "MUniforme")
Alert("Uniforme agregado correctamente.")
CveUniforme = -1
End If
objRH.Dispose()
End Sub
End Class

177
RH/CatUniformesDetalle.aspx Normal file
View File

@@ -0,0 +1,177 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatUniformesDetalle.aspx.vb" Inherits="RH_CatUniformesDetalle" %>
<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="E" Runat="Server">
Uniformes
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" Runat="Server">
<asp:UpdatePanel ID="UpAcciones" runat="server">
<ContentTemplate>
<li>
<asp:LinkButton ID="LnkAgregarUniforme" runat="server"><i class="fa fa-plus-square-o" aria-hidden="true"></i>Nuevo uniforme</asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" Runat="Server">
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HA" Runat="Server">
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="C" Runat="Server">
<asp:UpdatePanel Id="UpGeneral" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="col-md-6 rowpadding">
<div class="portlet light smmallpadding bordered">
<div class="portlet-title">
<div class="caption"> <i class="fa fa-user" aria-hidden="true"></i> <span class="caption-subject bold uppercase" >Uniforme</span>
</div>
<div class="tools">
<div style="display: inline-block"></div>
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body">
<asp:UpdatePanel runat="server">
<ContentTemplate>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtUniforme" CssClass="form-control" runat="server" MaxLength="300"></asp:TextBox>
<label for="<%= TxtUniforme.ClientID.ToString() %>">Uniforme:</label>
<asp:RequiredFieldValidator ID="rfvTxtUniforme" runat="server" ControlToValidate="TxtUniforme" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Uniforme''</b> es necesario, por favor ingréselo." ValidationGroup="grpUniforme"></asp:RequiredFieldValidator>
<i></i>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:CheckBox ID="chkUniformeActivo" runat="Server" Text="Activo" />
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<div class="col-md-6 rowpadding">
<div class="portlet light smmallpadding bordered">
<div class="portlet-title">
<div class="caption"> <i class="fa fa-user" aria-hidden="true"></i> <span class="caption-subject bold uppercase" >Uniforme detalle</span>
</div>
<div class="tools">
<div style="display: inline-block">
<input type="text" id="TxtBusqueda" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvDatos.ClientID) %>" style='display: inline-block; margin-right: -20px; width: 150px; height: 25px; border-color: #89C4F4;' />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvDatos.ClientID) %>" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body">
<asp:UpdatePanel ID="UPDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="Widthall" style="text-align:right" ><asp:LinkButton id="lnkUniformeDetalleAgregar" runat="server" CssClass="btn btn-circle green btn-outline btn-sm"><i class="fa fa-plus"></i> Agregar</asp:LinkButton></div>
<br />
<asp:GridView ID="GvDatos" ShowHeader="true" DataKeyNames="CveUniforme,Uniforme,CveUniformeDetalle,CvePS,PS,Periodo,Cantidad" runat="server" AutoGenerateColumns="False" EmptyDataText="No se Encontraron registros"
CssClass="table table-striped table-advance table-hover Widthall ScrollAD" data-sort="true" data-freezerows="1" GridLines="None">
<Columns>
<asp:BoundField HeaderText="Artículo" DataField="PS" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField HeaderText="Cantidad" DataField="Cantidad" ItemStyle-HorizontalAlign="Right" ItemStyle-Width="80px" />
<asp:BoundField HeaderText="Cantidad" DataField="Periodo" ItemStyle-HorizontalAlign="Right" ItemStyle-Width="80px" />
<asp:TemplateField ItemStyle-HorizontalAlign="Right" HeaderText="Fecha" ItemStyle-Width="80px">
<ItemTemplate>
<asp:Label ID="LblFecha" runat="server" Text='<%# Eval("FechaIng", "{0:d}") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField HeaderText="Usuario" DataField="Usuario" ItemStyle-Width="150px" ItemStyle-HorizontalAlign="Left" />
<asp:TemplateField ItemStyle-HorizontalAlign="Right" HeaderText="Comandos" ItemStyle-Width="120px">
<ItemTemplate>
<asp:LinkButton ID="imgE" Width="28" runat="server" AlternateText="Editar" CausesValidation="False" CssClass="btn btn-circle btn-sm green" OnClick="Edit_Click" Text="<i class='fa fa-pencil'></i>" />
<asp:LinkButton ID="imgD" Width="28" runat="server" AlternateText="Eliminar" OnClick="Delete_Click" CausesValidation="False" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="Confirmar" data-btn-ok-label="si" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" />
<AlternatingRowStyle CssClass="TextoAlterno" />
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</div>
<div class="col-md-12" style="text-align:center!important">
<asp:UpdatePanel ID="UpBtnGuardar" runat="server">
<ContentTemplate>
<asp:Button ID="BtnGuardar" runat="server" ValidationGroup="grpUniforme" CssClass="btn btn-primary" Text="Guardar" />
<asp:Button ID="BtnEliminar" runat="server" CssClass="btn btn-danger" Text="Eliminar" data-toggle="confirmation" data-popout="true" data-original-title="Confirmar" data-btn-ok-label="si" />
</ContentTemplate>
</asp:UpdatePanel>
</div>
<div id="DivModalUniformeDetalle" class="modal ADS fade" role="dialog">
<div class="modal-dialog" style="width: 450px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpModaluniformes" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal"></button>
<h4 class="modal-title"><asp:Literal ID="LlTituloModalUniforme" Text="Uniforme" runat="server"></asp:Literal></h4>
</div>
<div class="modal-body ">
<div class="form-group form-md-line-input input-iconright">
<label for="<%= DdlPSEdit.ClientID.ToString()%>">Artículo:</label>
<ADS:Dropdownlost runat="server" ID="DdlPSEdit" CssStyle="width: 100%;" CssClassDdl="select2me" DataTextField="PSCodigo" DataValueField="CvePS" />
<%--<asp:RequiredFieldValidator ID="RfvDdlPSEdit" runat="server" ControlToValidate="DdlPSEdit" InitialValue="-1" CssClass="help-block errorimput"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="grpUniformeDetalle"></asp:RequiredFieldValidator>--%>
<i></i>
</div>
<div class="form-group form-md-line-input input-iconright">
<label for="<%= TxtModalCantidad.ClientID.ToString()%>">Cantidad:</label>
<asp:TextBox ID="TxtModalCantidad" runat="server" CssClass="form-control"></asp:TextBox>
<ajax:FilteredTextBoxExtender ID="FilTxtCantidad" runat="server" FilterType="Numbers" InvalidChars=".-+" TargetControlID="TxtModalCantidad" />
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="TxtModalCantidad" CssClass="help-block errorimput"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="grpUniformeDetalle"></asp:RequiredFieldValidator>
<i></i>
</div>
<div class="form-group form-md-line-input input-iconright">
<label for="<%= TxtModalCantidad.ClientID.ToString()%>">Periodo(Meses):</label>
<asp:TextBox ID="TxtModalPeriodo" runat="server" CssClass="form-control"></asp:TextBox>
<ajax:FilteredTextBoxExtender ID="FilTxtModalPeriodo" runat="server" FilterType="Numbers" InvalidChars=".-+" TargetControlID="TxtModalPeriodo" />
<asp:RequiredFieldValidator ID="RfvTxtModalPeriodo" runat="server" ControlToValidate="TxtModalPeriodo" CssClass="help-block errorimput"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="grpUniformeDetalle"></asp:RequiredFieldValidator>
<i></i>
</div>
</div>
<div class="modal-footer">
<asp:LinkButton ID="LnkModalUniformeDetalleAgregar" CssClass="btn btn-success" runat="server" ValidationGroup="grpUniformeDetalle">Agregar</asp:LinkButton>
<button id="btnCacelarUniforme" runat="server" type="button" class="btn btn-danger" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" Runat="Server">
</asp:Content>

View File

@@ -0,0 +1,297 @@
Option Strict On
Imports Extensiones
Partial Class RH_CatUniformesDetalle
Inherits ClsPaginas
Private Property CveUniforme As Integer
Get
If ViewState("CveUniforme") Is Nothing Then
Return -1
Else
Return DirectCast(ViewState("CveUniforme"), Integer)
End If
End Get
Set(value As Integer)
ViewState("CveUniforme") = value
End Set
End Property
Private Property CveUniformeDetalle As Integer
Get
If ViewState("CveUniformeDetalle") Is Nothing Then
Return -1
Else
Return DirectCast(ViewState("CveUniformeDetalle"), Integer)
End If
End Get
Set(value As Integer)
ViewState("CveUniformeDetalle") = value
End Set
End Property
Private Property Uniforme As String
Get
If ViewState("Uniforme") Is Nothing Then
Return ""
Else
Return ViewState("Uniforme").ToString
End If
End Get
Set(value As String)
ViewState("Uniforme") = value
End Set
End Property
Private Property Estatus As Integer
Get
If ViewState("Estatus") Is Nothing Then
Return -1
Else
Return DirectCast(ViewState("Estatus"), Integer)
End If
End Get
Set(value As Integer)
ViewState("Estatus") = value
End Set
End Property
Private Property Cantidad As Integer
Get
If ViewState("Cantidad") Is Nothing Then
Return -1
Else
Return DirectCast(ViewState("Cantidad"), Integer)
End If
End Get
Set(value As Integer)
ViewState("Cantidad") = value
End Set
End Property
Private Property Periodo As Integer
Get
If ViewState("Periodo") Is Nothing Then
Return -1
Else
Return DirectCast(ViewState("Periodo"), Integer)
End If
End Get
Set(value As Integer)
ViewState("Periodo") = value
End Set
End Property
Private Sub RH_CatUniformes_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
If Not Request.QueryString("CveUniforme") Is Nothing Then
CveUniforme = Request.QueryString("CveUniforme").ToEntero
Else
CveUniforme = -1
End If
CargaDatos()
End If
End Sub
Private Sub CargaDatos()
If CveUniforme > 0 Then
lnkUniformeDetalleAgregar.Visible = True
Dim objRH As New ClsRH
If objRH.UniformeGet(CveUniforme, -1, UsuarioActual.CveEmpresa) Then
If objRH.DtResultados.Rows.Count > 0 Then
TxtUniforme.Text = objRH.DtResultados.Rows(0)("Uniforme").ToString
chkUniformeActivo.Checked = If(Boolean.Parse(objRH.DtResultados.Rows(0)("Estatus").ToString), True, False)
If objRH.UniformeDetalleGet(-1, CveUniforme, UsuarioActual.CveEmpresa) Then
GvDatos.DataSource = objRH.DtResultados
Else
GvDatos.DataSource = Nothing
End If
End If
objRH.Dispose()
GvDatos.DataBind()
UPDatos.Update()
End If
Else
lnkUniformeDetalleAgregar.Visible = False
GvDatos.DataSource = Nothing
GvDatos.DataBind()
TxtUniforme.Text = ""
chkUniformeActivo.Checked = False
UPDatos.Update()
End If
End Sub
Public Sub Edit_Click(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
CveUniforme = GvRow.DataKey("CveUniforme").ToEntero
CveUniformeDetalle = GvRow.DataKey("CveUniformeDetalle").ToEntero
TxtModalCantidad.Text = GvRow.DataKey("Cantidad")
TxtModalPeriodo.Text = GvRow.DataKey("Periodo")
'DdlPSEdit.DataSource = GlobalDTProductosServicios(UsuarioActual.CveEmpresa)
'DdlPSEdit.DataBind()
DdlPSEdit.ddl.Visible = False
DdlPSEdit.SelectedText = GvRow.DataKey("PS").ToString
DdlPSEdit.SelectedValue = GvRow.DataKey("CvePS").ToString
DdlPSEdit.txtText.Value = GvRow.DataKey("PS").ToString
DdlPSEdit.txtValue.Value = GvRow.DataKey("CvePS").ToString
LnkModalUniformeDetalleAgregar.Text = "Actualizar"
RegistraScript("$('#DivModalUniformeDetalle').modal({ backdrop: 'static', keyboard: false});", "MUniforme")
UpModaluniformes.Update()
End Sub
Public Sub Delete_Click(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim CveUniformeDetalleE As Integer = GvRow.DataKey("CveUniformeDetalle").ToEntero
Dim objRH As New ClsRH
If objRH.UniformeDetalleRemove(CveUniformeDetalleE) Then
Alert("Registro eliminado correctamente.")
CargaDatos()
End If
objRH.Dispose()
End Sub
Private Sub LnkAgregarUniforme_Click(sender As Object, e As EventArgs) Handles LnkAgregarUniforme.Click
Response.Redirect("CatUniformesDetalle.aspx", True)
End Sub
Private Sub LnkModalUniformeDetellaAgregar_Click(sender As Object, e As EventArgs) Handles LnkModalUniformeDetalleAgregar.Click
Dim objRH As New ClsRH
Dim CvePS As Integer
If DdlPSEdit.SelectedValue.ToEntero = 0 And DdlPSEdit.txtValue.Value.ToEntero = 0 Then
Alert("Debe seleccionar un producto")
Exit Sub
Else
If DdlPSEdit.SelectedValue.ToEntero = 0 Then
CvePS = DdlPSEdit.txtValue.Value.ToEntero
Else
CvePS = DdlPSEdit.SelectedValue.ToEntero
End If
End If
If CveUniformeDetalle > 0 Then
If objRH.UniformeDetalleAddUpdate(CveUniformeDetalle, CveUniforme, CvePS, TxtModalPeriodo.Text.ToEntero, TxtModalCantidad.Text.ToEntero, UsuarioActual.CveUsuario) Then
RegistraScript("$('#DivModalUniformeDetalle').modal('hide');", "MUniforme")
Alert("Uniforme actualizado correctamente.")
CveUniformeDetalle = -1
End If
Else
If objRH.UniformeDetalleAddUpdate(-1, CveUniforme, CvePS, TxtModalPeriodo.Text.ToEntero, TxtModalCantidad.Text.ToEntero, UsuarioActual.CveUsuario) Then
RegistraScript("$('#DivModalUniformeDetalle').modal('hide');", "MUniforme")
Alert("Uniforme agregado correctamente.")
CveUniformeDetalle = -1
End If
End If
objRH.Dispose()
CargaDatos()
End Sub
Private Sub BtnGuardar_Click(sender As Object, e As EventArgs) Handles BtnGuardar.Click
Dim objRH As New ClsRH
If CveUniforme > 0 Then
If objRH.UniformeAddUpdate(CveUniforme, TxtUniforme.Text.Trim, If(chkUniformeActivo.Checked, 1, 0), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
Alert("Uniforme agregado Actualizado")
objRH.Dispose()
End If
Else
If objRH.UniformeAddUpdate(-1, TxtUniforme.Text.Trim, If(chkUniformeActivo.Checked, 1, 0), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
objRH.Dispose()
CveUniforme = objRH.DtResultados.Rows(0)(0).ToString.ToEntero
Response.Redirect($"CatUniformesDetalle.aspx?CveUniforme={CveUniforme}", True)
End If
End If
CargaDatos()
End Sub
Private Sub lnkUniformeDetalleAgregar_Click(sender As Object, e As EventArgs) Handles lnkUniformeDetalleAgregar.Click
DdlPSEdit.txtText.Value = ""
DdlPSEdit.txtValue.Value = ""
DdlPSEdit.ddl.Visible = False
TxtModalCantidad.Text = ""
TxtModalPeriodo.Text = ""
LnkModalUniformeDetalleAgregar.Text = "Agregar"
UpModaluniformes.Update()
RegistraScript("$('#DivModalUniformeDetalle').modal({ backdrop: 'static', keyboard: false});", "MUniforme")
End Sub
Private Sub BtnEliminar_Click(sender As Object, e As EventArgs) Handles BtnEliminar.Click
Dim objRH As New ClsRH
If objRH.UniformeRemove(CveUniforme, UsuarioActual.CveEmpresa) Then
objRH.Dispose()
Response.Redirect("CatUniformes.aspx", True)
Else
objRH.Dispose()
End If
End Sub
End Class

229
RH/ComparativoNomina.aspx Normal file
View File

@@ -0,0 +1,229 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="ComparativoNomina.aspx.vb" Inherits="RH_ComparativoNomina" %>
<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:ImageButton ID="ImgExcel" runat="server" ImageUrl="/Imagenes/IconoExcel.gif" Width="17px" Height="17px" />
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="E" runat="Server">
Comparativo Nómina
</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 class="portlet solid grey-cascade portlet-filter" style="">
<div class="portlet-title portlet-filterT" style="">
<div class="titlefiltros caption ">
<ul class="list-inline">
<li>Ejercicio:
<asp:DropDownList ID="DdlEjercicio" AutoPostBack="true" runat="server" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 100px !important;" OnSelectedIndexChanged="DdlEjercicio_SelectedIndexChanged"></asp:DropDownList>
<%--<asp:RangeValidator ID="RVEjercicio" runat="server" ControlToValidate="DdlEjercicio" Display="None" Type="Integer" MinimumValue="1" MaximumValue="2147483647" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Ejercicio''</b> es necesario, por favor seleccione uno." ValidationGroup="Validar" ></asp:RangeValidator>
<ajax:ValidatorCalloutExtender ID="VCOEjercicio" runat="server" HighlightCssClass="vco" TargetControlID="RVEjercicio" Width="300px"></ajax:ValidatorCalloutExtender>--%>
</li>
<li>Tipo de Periodo:
<asp:DropDownList ID="DdlTipoPeriodo" AutoPostBack="true" runat="server" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 120px !important;" DataTextField="TipoPeriodo" DataValueField="CveTipoPeriodo" OnSelectedIndexChanged="DdlTipoPeriodo_SelectedIndexChanged"></asp:DropDownList>
<asp:RangeValidator ID="RVTipoPeriodo" runat="server" ControlToValidate="DdlTipoPeriodo" Display="None" Type="Integer" MinimumValue="1" MaximumValue="2147483647" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo de Periodo''</b> es necesario, por favor seleccione uno." ValidationGroup="Validar"></asp:RangeValidator>
<ajax:ValidatorCalloutExtender ID="VCOTipoPeriodo" runat="server" HighlightCssClass="vco" TargetControlID="RVTipoPeriodo" Width="300px"></ajax:ValidatorCalloutExtender>
</li>
<li>Periodo:
<asp:DropDownList ID="DdlPeriodo" runat="server" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 200px !important;" DataTextField="NominaEstatus" DataValueField="CvePeriodo"></asp:DropDownList>
<asp:RangeValidator ID="RVPeriodo" runat="server" ControlToValidate="DdlPeriodo" Display="None" Type="Integer" MinimumValue="1" MaximumValue="2147483647" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Periodo''</b> es necesario, por favor seleccione uno." ValidationGroup="Validar"></asp:RangeValidator>
<ajax:ValidatorCalloutExtender ID="VCOPeriodo" runat="server" HighlightCssClass="vco" TargetControlID="RVPeriodo" Width="300px"></ajax:ValidatorCalloutExtender>
</li>
</ul>
</div>
<div class="tools">
<asp:Button ID="BtnConsultar" runat="server" Text="Consultar" OnClick="CargarComparativoNomina" ValidationGroup="Validar" class="btn btn-primary" />
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<br />
<asp:UpdatePanel ID="UPDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="Gv" runat="server" ShowHeader="True" AutoGenerateColumns="False" EmptyDataText="Seleccione un Tipo de Periodo y un Periodo en particular." CellPadding="1" CellSpacing="1" RowStyle-VerticalAlign="Middle" RowStyle-HorizontalAlign="Center" CssClass="table table-striped table-advance table-hover" Style="margin-top: -10px; text-align: center;" GridLines="None">
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<asp:LinkButton ID="LbNombre" runat="server" CausesValidation="False" Text="" CommandArgument="Nombre" OnClick="LbOrden_Click">
Nombre
<asp:Literal ID="ImgNombre" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</HeaderTemplate>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Bind("Nombre")%>'></asp:Label>
</ItemTemplate>
<ControlStyle CssClass="Texto" />
<ItemStyle Width="300px" HorizontalAlign="Left" />
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
<asp:LinkButton ID="LbSalarioDiario" runat="server" CausesValidation="False" Text="" CommandArgument="SalarioDiario" OnClick="LbOrden_Click">
Salario Diario
<asp:Literal ID="ImgSalarioDiario" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</HeaderTemplate>
<ItemTemplate>
<asp:Label ID="Label2" runat="server" Text='<%# Bind("SalarioDiario", "{0:C}")%>'></asp:Label>
</ItemTemplate>
<ControlStyle CssClass="Texto" />
<ItemStyle Width="70px" />
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
<asp:LinkButton ID="LbSalarioDiarioSS" runat="server" CausesValidation="False" Text="" CommandArgument="SalarioDiarioSS" OnClick="LbOrden_Click">
Salario Diario SS
<asp:Literal ID="ImgSalarioDiarioSS" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</HeaderTemplate>
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%# Bind("SalarioDiarioSS", "{0:C}")%>'></asp:Label>
</ItemTemplate>
<ControlStyle CssClass="Texto" />
<ItemStyle Width="70px" />
</asp:TemplateField>
<asp:TemplateField Visible="False">
<HeaderTemplate>
<asp:LinkButton ID="LbCveEstatusPersonal" runat="server" CausesValidation="False" Text="Estatus" CommandArgument="CveEstatusPersonal" OnClick="LbOrden_Click">
<asp:Literal ID="Img" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</HeaderTemplate>
<ItemTemplate>
<asp:Label ID="Label4" runat="server" Text='<%# Bind("EstatusPersonal")%>'></asp:Label>
</ItemTemplate>
<ControlStyle CssClass="Texto" />
<ItemStyle Width="70px" />
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
<asp:LinkButton ID="LbPrestacionesEspecie" runat="server" CausesValidation="False" Text="" CommandArgument="PrestacionesEspecie" OnClick="LbOrden_Click">
Prestaciones Especie
<asp:Literal ID="ImgPrestacionesEspecie" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</HeaderTemplate>
<ItemTemplate>
<asp:Label ID="Label5" runat="server" Text='<%# Bind("PrestacionesEspecie", "{0:C}")%>'></asp:Label>
</ItemTemplate>
<ControlStyle CssClass="Texto" />
<ItemStyle Width="100px" />
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
<asp:LinkButton ID="LbPrestacionesDinero" runat="server" CausesValidation="False" Text="" CommandArgument="PrestacionesDinero" OnClick="LbOrden_Click">
Prestaciones Dinero
<asp:Literal ID="ImgPrestacionesDinero" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</HeaderTemplate>
<ItemTemplate>
<asp:Label ID="Label6" runat="server" Text='<%# Bind("PrestacionesDinero", "{0:C}")%>'></asp:Label>
</ItemTemplate>
<ControlStyle CssClass="Texto" />
<ItemStyle Width="100px" />
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
<asp:LinkButton ID="LbInvalidezyVida" runat="server" CausesValidation="False" Text="" CommandArgument="InvalidezyVida" OnClick="LbOrden_Click">
Invalidez y Vida
<asp:Literal ID="ImgInvalidezyVida" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</HeaderTemplate>
<ItemTemplate>
<asp:Label ID="Label7" runat="server" Text='<%# Bind("InvalidezyVida", "{0:C}")%>'></asp:Label>
</ItemTemplate>
<ControlStyle CssClass="Texto" />
<ItemStyle Width="70px" />
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
<asp:LinkButton ID="LbSeguroRetiro" runat="server" CausesValidation="False" Text="" CommandArgument="SeguroRetiro" OnClick="LbOrden_Click">
Seguro Retiro
<asp:Literal ID="ImgSeguroRetiro" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</HeaderTemplate>
<ItemTemplate>
<asp:Label ID="Label8" runat="server" Text='<%# Bind("SeguroRetiro", "{0:C}")%>'></asp:Label>
</ItemTemplate>
<ControlStyle CssClass="Texto" />
<ItemStyle Width="70px" />
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
<asp:LinkButton ID="LbCesantiayVejez" runat="server" CausesValidation="False" Text="" CommandArgument="CesantiayVejez" OnClick="LbOrden_Click">
Cesantía y Vejez
<asp:Literal ID="ImgCesantiayVejez" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</HeaderTemplate>
<ItemTemplate>
<asp:Label ID="Label9" runat="server" Text='<%# Bind("CesantiayVejez", "{0:C}")%>'></asp:Label>
</ItemTemplate>
<ControlStyle CssClass="Texto" />
<ItemStyle Width="70px" />
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
<asp:LinkButton ID="LbGuarderias" runat="server" CausesValidation="false" Text="" CommandArgument="Guarderias" OnClick="LbOrden_Click">
Guarderias
<asp:Literal ID="ImgGuarderias" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</HeaderTemplate>
<ItemTemplate>
<asp:Label ID="Label10" runat="server" Text='<%# Bind("Guarderias", "{0:C}")%>'></asp:Label>
</ItemTemplate>
<ControlStyle CssClass="Texto" />
<ItemStyle Width="70px" />
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
<asp:LinkButton ID="LbInfonavit" runat="server" CausesValidation="False" Text="" CommandArgument="Infonavit" OnClick="LbOrden_Click">
Infonavit
<asp:Literal ID="ImgInfonavit" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</HeaderTemplate>
<ItemTemplate>
<asp:Label ID="Label11" runat="server" Text='<%# Bind("Infonavit", "{0:C}")%>'></asp:Label>
</ItemTemplate>
<ControlStyle CssClass="Texto" />
<ItemStyle Width="70px" />
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
<asp:LinkButton ID="LbTotalActual" runat="server" CausesValidation="False" Text="" CommandArgument="TotalActual" OnClick="LbOrden_Click">
Total Actual
<asp:Literal ID="ImgTotalActual" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</HeaderTemplate>
<ItemTemplate>
<asp:Label ID="Label12" runat="server" Text='<%# Bind("TotalActual", "{0:C}")%>'></asp:Label>
</ItemTemplate>
<ControlStyle CssClass="Texto" />
<ItemStyle Width="80px" />
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
<asp:LinkButton ID="LbTotalProyectado" runat="server" CausesValidation="False" Text="" CommandArgument="TotalProyectado" OnClick="LbOrden_Click">
Total Proyectado
<asp:Literal ID="ImgTotalProyectado" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton>
</HeaderTemplate>
<ItemTemplate>
<asp:Label ID="Label13" runat="server" Text='<%# Bind("TotalProyectado", "{0:C}")%>'></asp:Label>
</ItemTemplate>
<ControlStyle CssClass="Texto" />
<ItemStyle Width="80px" />
</asp:TemplateField>
</Columns>
<HeaderStyle CssClass="Titulos"></HeaderStyle>
<AlternatingRowStyle CssClass="TextoAlterno"></AlternatingRowStyle>
<RowStyle CssClass="Texto"></RowStyle>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

View File

@@ -0,0 +1,131 @@
Option Explicit On
Option Strict On
Imports System.Data
Imports Extensiones
Partial Class RH_ComparativoNomina
Inherits ClsPaginas
Private ReadOnly Property DTPeriodos As Data.DataTable
Get
Return DirectCast(ViewState("DTPeriodos"), Data.DataTable)
End Get
End Property
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
DdlTipoPeriodo.DataSource = GlobalDTTipoPeriodo.FiltraParametros("Estatus = 'Activo'")
DdlTipoPeriodo.DataBind()
DdlTipoPeriodo.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlEjercicio.Items.Add(New ListItem(UsuarioActual.Empresa.EjercicioActual.ToString, UsuarioActual.Empresa.EjercicioActual.ToString))
DdlEjercicio.Items.Add(New ListItem((UsuarioActual.Empresa.EjercicioActual - 1).ToString, (UsuarioActual.Empresa.EjercicioActual - 1).ToString))
'DdlEjercicio.Items.Insert(0, New ListItem("Seleccionar", "-1"))
ViewState("Orden") = ""
End If
End Sub
Protected Sub DdlEjercicio_SelectedIndexChanged(sender As Object, e As EventArgs)
If DdlEjercicio.SelectedValue.ToEntero > 0 And DdlTipoPeriodo.SelectedValue.ToEntero > 0 Then
Dim ObjPeriodos As New ClsNominas
If ObjPeriodos.GetPeriodos(DdlTipoPeriodo.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, DdlEjercicio.SelectedValue.ToEntero, -1, -1) Then
ViewState("DTPeriodos") = ObjPeriodos.DtResultados
DdlPeriodo.DataSource = DTPeriodos
DdlPeriodo.Items.Clear()
DdlPeriodo.DataBind()
DdlPeriodo.Items.Insert(0, New ListItem("Seleccione un Periodo", "-1"))
Else
DdlPeriodo.DataSource = Nothing
End If
ObjPeriodos.Dispose()
End If
Gv.DataBind()
UPDatos.Update()
End Sub
Protected Sub DdlTipoPeriodo_SelectedIndexChanged(sender As Object, e As EventArgs)
If DdlTipoPeriodo.SelectedValue.ToEntero > 0 Then
Dim ObjPeriodos As New ClsNominas
If ObjPeriodos.GetPeriodos(DdlTipoPeriodo.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, DdlEjercicio.SelectedValue.ToEntero, -1, -1) Then
ViewState("DTPeriodos") = ObjPeriodos.DtResultados
DdlPeriodo.DataSource = DTPeriodos
Else
DdlPeriodo.DataSource = Nothing
End If
ObjPeriodos.Dispose()
End If
DdlPeriodo.Items.Clear()
DdlPeriodo.DataBind()
DdlPeriodo.Items.Insert(0, New ListItem("Seleccione un Periodo", "-1"))
End Sub
Protected Sub CargaDatos()
Dim ObjComparativoNomina As New ClsRH
UPDatos.Update()
Gv.DataBind()
If ObjComparativoNomina.GetComparativoNomina(DdlPeriodo.SelectedValue.ToEntero, "-1") Then
ViewState("DTComparativoNomina") = ObjComparativoNomina.DtResultados
End If
ObjComparativoNomina.Dispose()
If ViewState("Orden").ToString() <> String.Empty Then
CargaGrid(ViewState("Orden").ToString())
Else
CargaGrid("")
End If
End Sub
Protected Sub CargarComparativoNomina(sender As Object, e As EventArgs)
CargaDatos()
End Sub
#Region "O R D E N A M I E N T O"
Protected Sub LbOrden_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim Orden As String = ""
Dim Campo As String = ""
Dim Literal As Literal = Nothing
Const OrdenInicial As String = ""
Dim Arg(2) As String
Arg = CType(sender, LinkButton).CommandArgument().ToString.Split(";"c)
Campo = Arg(0)
Literal = CType(CType(sender, LinkButton).NamingContainer.FindControl("Img" & Campo.Replace(",", "_")), Literal)
If ViewState(String.Format("O{0}", Campo)) IsNot Nothing AndAlso ViewState(String.Format("O{0}", Campo)).ToString = String.Format("{0} DESC", Campo) Then
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} ASC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-asc' style='color:#999' ></i>")
Else
ViewState(String.Format("O{0}", Campo)) = String.Format("{0} DESC", Campo)
Literal.Text = String.Format("<i class='fa fa-sort-desc' style='color:#999' ></i>")
End If
Orden = OrdenInicial & ViewState(String.Format("O{0}", Campo)).ToString
ViewState("Orden") = Orden
CargaGrid(Orden)
End Sub
Protected Sub CargaGrid(Orden As String)
If Orden <> String.Empty Then
Dim DV As New DataView(CType(ViewState("DTComparativoNomina"), DataTable), "", Orden, DataViewRowState.CurrentRows)
Gv.DataSource = DV.ToTable()
DV.Dispose()
Else
Gv.DataSource = CType(ViewState("DTComparativoNomina"), DataTable)
End If
Gv.DataBind()
UPDatos.Update()
End Sub
#End Region
Protected Sub ImgExcel_Click(sender As Object, e As ImageClickEventArgs) Handles ImgExcel.Click
Gv.ExportToExcel("ComparativoNomina")
End Sub
End Class

View File

@@ -0,0 +1,136 @@
Imports System.Data
Imports Extensiones
Partial Class RH_DocumentacionVencida
Inherits ClsPaginas
Private Sub RH_DocumentacionVencida_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
CargaCombos()
TxtFechaI.Text = Now.AddDays(-15).ToString("dd/MM/yyyy")
TxtFechaF.Text = Now.ToString("dd/MM/yyyy")
End If
End Sub
Private Sub CargaCombos()
Dim objRh As New ClsRH
Dim objClientes As New ClsClientes
Dim objEdoc As New ClsEdoc
If objEdoc.DocumentacionElectronicaDDLGet(-1, UsuarioActual.CveEmpresa) Then
DDlDocumentacion.DataSource = objEdoc.DtResultados
DDlDocumentacion.DataBind()
DDlDocumentacion.Items.Insert(0, New ListItem("Seleccione una opción", "-1"))
End If
If objEdoc.DocumentacionElectronicaTipoGett(UsuarioActual.CveEmpresa) Then
DDLDocumentacionTipo.DataSource = objEdoc.DtResultados
DDLDocumentacionTipo.DataBind()
DDLDocumentacionTipo.Items.Insert(0, New ListItem("Seleccione una opción", "-1"))
End If
If objClientes.GetClientes(-1, "-1", "-1", "-1", "-1", "-1", "-1", -1, UsuarioActual.Empresa.CveEmpresa) Then
DDLClientes.DataSource = objClientes.DtResultados 'DDlclientes
DDLClientes.DataBind()
DDLClientes.Items.Insert(0, New ListItem("Seleccione un cliente", "-1"))
End If
If objRh.GetPersonal(-1, UsuarioActual.Empresa.CveEmpresa) Then
DDLPersonal.DataSource = objRh.DtResultados
DDLPersonal.DataBind()
DDLPersonal.Items.Insert(0, New ListItem("Seleccione una opicon", "-1"))
'dttemp = objRh.DtResultados
End If
If objRh.GetPuestos() Then
DDLPuesto.DataSource = objRh.DtResultados.FiltraParametros(" CveEmpresa = " & UsuarioActual.Empresa.CveEmpresa & " ")
DDLPuesto.DataBind()
DDLPuesto.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
End If
DDLSucursal.DataSource = GlobalDTProyectos(UsuarioActual.Empresa.CveEmpresa)
DDLSucursal.DataBind()
DDLSucursal.Items.Insert(0, New ListItem("Seleccione una sucursal", "-1"))
DdlPuesto.DataSource = GlobalDTPuestos.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
DdlPuesto.DataBind()
objClientes.Dispose()
objRh.Dispose()
objEdoc.Dispose()
End Sub
Private Sub CargaDatos()
End Sub
Protected Sub btConsultar_Click(sender As Object, e As EventArgs) Handles btConsultar.Click
Dim objEDoc As New ClsEdoc
If objEDoc.DocumentacionVenciadaRepGet(DdlTipo.SelectedValue.ToEntero, DDLPersonal.SelectedValue.ToEntero, -1, UsuarioActual.Empresa.CveEmpresa, DDlDocumentacion.SelectedValue.ToEntero, DDLDocumentacionTipo.SelectedValue.ToEntero, TxtFechaI.Text.ToDate, TxtFechaF.Text.ToDate, DDLSucursal.SelectedValue.ToEntero, DDLPuesto.SelectedValue.ToEntero, DDLVencidos.SelectedValue.ToEntero) Then
GvDocumentos.DataSource = objEDoc.DtResultados
End If
objEDoc.Dispose()
GvDocumentos.DataBind()
UpGvDatos.Update()
End Sub
Protected Sub DdlTipo_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlTipo.SelectedIndexChanged
'If DdlTipo.SelectedIndex = 0 Then
' DDLClientes.Visible = False
' DDLPersonal.Visible = False
' DDLPuesto.Visible = False
' LtlPersonal.Visible = False
' LtlPuesto.Visible = False
' LtlClietes.Visible = False
' DDLPersonal.SelectedIndex = 0
' DDLClientes.SelectedIndex = 0
' DDLPersonal.SelectedIndex = 0
'End If
If DdlTipo.SelectedIndex = 0 Then
DDLClientes.Visible = False
DDLClientes.SelectedIndex = 0
LtlClietes.Visible = False
DDLPersonal.Visible = True
DDLPuesto.Visible = True
LtlPersonal.Visible = True
LtlPuesto.Visible = True
End If
If DdlTipo.SelectedIndex = 1 Then
DDLClientes.Visible = True
DDLPersonal.Visible = False
DDLPuesto.Visible = False
LtlPersonal.Visible = False
LtlPuesto.Visible = False
LtlClietes.Visible = True
DDLPersonal.SelectedIndex = 0
DDLPuesto.SelectedIndex = 0
End If
UpFiltros.Update()
End Sub
End Class

116
RH/ListaAsistenciaRH.aspx Normal file
View File

@@ -0,0 +1,116 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="ListaAsistenciaRH.aspx.vb" Inherits="RH_ListaAsistenciaRH" %>
<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="E" Runat="Server">
Lista de asistencia
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" Runat="Server">
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" Runat="Server">
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HA" Runat="Server">
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="C" Runat="Server">
<asp:UpdatePanel ID="UPFiltros" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="portlet solid grey-cascade portlet-filter" style="">
<div class="portlet-title portlet-filterT smalltitle " style="">
<div class="tools">
<asp:Button ID="BtnConsultar" runat="server" Text="Consultar" class="btn btn-primary" />
<a href="javascript:;" class="expand"></a>
</div>
<div class="titlefiltros caption">
<div class="row">
<div class="col-md-1 truncate">
Fecha:
</div>
<div class="col-md-1">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 100px !important; padding: 0px;">
<asp:TextBox Width="80px" ID="txtFecha" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="10"></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="imgCalendario" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
</div>
<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="txtFecha" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="Calendario" TargetControlID="txtFecha" PopupButtonID="ImgCalendario" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="rfvFechaI" runat="server" ControlToValidate="txtFecha" 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="txtFecha" 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>
</div>
<div class="col-md-1 truncate" style="text-align:right!important">
SubProyecto:
</div>
<div class="col-md-1">
<asp:DropDownList ID="DdlSubProyecto" runat="server" DataTextField="SubProyecto" DataValueField="CveSubProyecto" CssClass="form-control input-small input-sm select2me" Width="150">
</asp:DropDownList>
</div>
<div class="col-md-1 truncate" style="text-align:right!important">
Departamento:
</div>
<div class="col-md-1">
<asp:DropDownList ID="DdlDepartamento" runat="server" DataTextField="Departamento" DataValueField="CveDepartamento" CssClass="form-control input-small input-sm select2me" Width="150">
</asp:DropDownList>
</div>
<div class="col-md-1 truncate" style="text-align:right!important">
Cliente:
</div>
<div class="col-md-1">
<asp:DropDownList ID="DdlClientes" runat="server" DataTextField="Nombre" DataValueField="CveCliente" CssClass="form-control input-small input-sm select2me" Width="150">
</asp:DropDownList>
</div>
</div>
</div>
</div>
<div class="portlet-body" style="display: none;">
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UPDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontraron Contratos Suministros con los datos especificados."
DataKeyNames="CvePersonal,CveAsistencia,CveAsistenciasInasistencias,CveTurno,CveSubProyecto,SalarioDiario" ToolTip ="Listado de Contratos Suministros" CssClass="table table-advance table-hover Widthall ScrollAD" data-sort="true" GridLines="None">
<Columns>
<asp:BoundField DataField="NombreCompleto" HeaderText="Nombre Completo" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField DataField="Fecha" HeaderText="Fecha" ItemStyle-HorizontalAlign="Center" DataFormatString="{0:d}" />
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="Asistencia">
<ItemTemplate>
<asp:DropDownList ID="DdlAsistenciaInasistencia" runat="server" DataTextField="Tipo" CssClass="select2me" DataValueField="CveAsistenciasInasistencias"></asp:DropDownList>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
<div class="row" style="text-align:center">
<asp:UpdatePanel runat="server">
<ContentTemplate>
<asp:Button ID="BtnProcesaLista" CssClass="btn btn-primary" runat="server" Style="margin-top:20px!important" Text ="Guardar" />
</ContentTemplate>
</asp:UpdatePanel>
</div>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" Runat="Server">
</asp:Content>

View File

@@ -0,0 +1,165 @@
Option Strict On
Imports Extensiones
Imports System.Data
Partial Class RH_ListaAsistenciaRH
Inherits ClsPaginas
Property CveSupervisor As Integer
Get
If ViewState("CveSupervisor") Is Nothing Then
Return -1
Else
Return DirectCast(ViewState("CveSupervisor"), Integer)
End If
End Get
Set(value As Integer)
ViewState("CveSupervisor") = value
End Set
End Property
Private Sub RH_ListaAsistencia_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
txtFecha.Text = Now.ToShortDateString
CveSupervisor = UsuarioActual.CvePersonal
CargaCombos()
CargaDatos()
End If
End Sub
Private Sub CargaCombos()
DdlSubProyecto.DataSource = GlobalDTSubProyectos(-1, -1, UsuarioActual.CveEmpresa, 1)
DdlSubProyecto.DataBind()
DdlSubProyecto.Items.Insert(0, New ListItem("Todos", "-1"))
DdlClientes.DataSource = GlobalDTCliente(UsuarioActual.CveEmpresa)
DdlClientes.DataBind()
DdlClientes.Items.Insert(0, New ListItem("Todos", "-1"))
DdlDepartamento.DataSource = GlobalDTDepartamentos().FiltraParametros($"CveEmpresa = {UsuarioActual.CveEmpresa}")
DdlDepartamento.DataBind()
DdlDepartamento.Items.Insert(0, New ListItem("Todos", "-1"))
End Sub
Private Sub CargaDatos()
Dim ObjRH As New ClsRH
If ObjRH.GetListaAsistencia(txtFecha.Text.ToDate, DdlSubProyecto.SelectedValue.ToEntero, DdlDepartamento.SelectedValue.ToEntero, CveSupervisor, DdlClientes.SelectedValue.ToEntero, UsuarioActual.CveEmpresa) Then
GvDatos.DataSource = ObjRH.DtResultados
Else
GvDatos.DataSource = Nothing
End If
ObjRH.Dispose()
GvDatos.DataBind()
UPDatos.Update()
End Sub
Private Sub GvDatos_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
'CvePersonal,CveAsistencia,CveAsistenciasInasistencias
'DdlAsistenciaInasistencia
Dim DTAsistenciasInasistencias As DataTable = GlobalDTAsistenciasInasistencias().FiltraParametros($"CveEmpresa ={ UsuarioActual.CveEmpresa}")
'If DTAsistenciasInasistencias.Rows.Count = 0 Then
' DTAsistenciasInasistencias = GlobalDTAsistenciasInasistencias().FiltraParametros($"CveEmpresa = 2 ")
'End If
e.Row.FCDropDownList("DdlAsistenciaInasistencia").DataSource = DTAsistenciasInasistencias
e.Row.FCDropDownList("DdlAsistenciaInasistencia").DataBind()
e.Row.FCDropDownList("DdlAsistenciaInasistencia").Items.Insert(0, New ListItem("Seleccione uno", "-1"))
e.Row.FCDropDownList("DdlAsistenciaInasistencia").SelectedValueExist(e.Row.DataKey("CveAsistenciasInasistencias").ToString)
End If
End Sub
Private Sub BtnProcesaLista_Click(sender As Object, e As EventArgs) Handles BtnProcesaLista.Click
Dim TieneError As Boolean = False
Dim DTAsistenciasInasistencias As DataTable = GlobalDTAsistenciasInasistencias().FiltraParametros($"CveEmpresa = {UsuarioActual.CveEmpresa}")
If DTAsistenciasInasistencias.Rows.Count > 0 Then
Dim ObjRH As New ClsRH
ObjRH.IniciaTransacSQL()
For Each gvRow As GridViewRow In GvDatos.Rows
Dim DdlAsistenciaInasistencia As DropDownList = gvRow.FCDropDownList("DdlAsistenciaInasistencia")
If DdlAsistenciaInasistencia.SelectedIndex > 0 Then
Try
Dim dtTemp As DataTable = DTAsistenciasInasistencias
Dim Falta As Boolean = If(DTAsistenciasInasistencias.FiltraParametros($"CveAsistenciasInasistencias = {DdlAsistenciaInasistencia.SelectedValue.ToEntero }")(0)("AplicaAsistencia").ToString = "Aplica", False, True)
Dim Porcentaje As Decimal
Dim CveAsistencia As Integer = gvRow.DataKey("CveAsistencia").ToEntero
Dim CvePersonal As Integer = gvRow.DataKey("CvePersonal").ToEntero
Dim CveSubProyecto As Integer = gvRow.DataKey("CveSubProyecto").ToEntero
Dim CveTurno As Integer = gvRow.DataKey("CveTurno").ToEntero
Dim SalarioDiario As Decimal = gvRow.DataKey("SalarioDiario").ToDecimal
If Falta Then
Porcentaje = 0
Else
Porcentaje = 100
End If
If CveAsistencia > 0 Then
If Not ObjRH.UpdateListaAsistencia(CveAsistencia, CvePersonal, CveSubProyecto, CveTurno, txtFecha.Text.ToDate, DdlAsistenciaInasistencia.SelectedValue.ToEntero, Porcentaje, 0, 0, -1, "-1", SalarioDiario, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
TieneError = True
Exit For
End If
Else
If Not ObjRH.AddListaAsistencia(CvePersonal, CveSubProyecto, CveTurno, txtFecha.Text.ToDate, DdlAsistenciaInasistencia.SelectedValue.ToEntero, Porcentaje, 0, 0, -1, "-1", SalarioDiario, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
TieneError = True
Exit For
End If
End If
Catch ex As Exception
TieneError = True
Exit For
End Try
End If
Next
If TieneError = False Then
ObjRH.Commit()
Alert("Asistencias procesadas correctamente", TipoMensaje.MsgInformacion)
Else
ObjRH.RollBack()
Alert("Se preento un error al procesar la lista de asistencia", TipoMensaje.MsgAdvertencia)
End If
ObjRH.Dispose()
Else
Alert("No existen datos de asistencias inasistencias", TipoMensaje.MsgInformacion)
End If
End Sub
Private Sub BtnConsultar_Click(sender As Object, e As EventArgs) Handles BtnConsultar.Click
CargaDatos()
End Sub
End Class

130
RH/ListaAsistencias.aspx Normal file
View File

@@ -0,0 +1,130 @@
<%@ Page Title="Nómina - Lista de Asistencias" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="ListaAsistencias.aspx.vb" Inherits="Nomina_ListaAsistencias" %>
<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">
Lista de Asistencias
</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 class="portlet solid grey-cascade portlet-filter" style="">
<div class="portlet-title portlet-filterT" style="">
<div class="titlefiltros caption ">
<ul class="list-inline">
<li>Cliente:
<asp:Button ID="BtnCargarClientes" runat="server" ClientIDMode="Static" Text="CargarClientes" Style="display: none;" class="btn btn-primary" />
<asp:DropDownList ID="DdlCliente" runat="server" AppendDataBoundItems="true" DataTextField="Nombre" DataValueField="CveCliente" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 160px !important;">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</li>
<li>Proyecto:
<asp:DropDownList ID="DdlProyecto" runat="server" AppendDataBoundItems="true" AutoPostBack="true" DataTextField="Proyecto" DataValueField="CveProyecto" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 110px !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</li>
<li>SubProyecto:
<asp:DropDownList ID="DdlSubProyecto" runat="server" AppendDataBoundItems="true" DataTextField="SubProyecto" DataValueField="CveSubProyecto" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 110px !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</li>
<li>Turno:
<asp:DropDownList ID="DdlTurno" runat="server" AppendDataBoundItems="true" DataTextField="Turno" DataValueField="CveTurno" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 100px !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem>
</asp:DropDownList>
</li>
</ul>
</div>
<div class="tools">
<asp:Button ID="BtnConsultar" runat="server" Text="Consultar" class="btn btn-primary" />
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<br />
<asp:UpdatePanel ID="UPDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontraron Ventas con los filtros especificados" ToolTip="Listado de Asistencias" CssClass="table table-striped table-advance table-hover" Style="margin-top: -10px; text-align: center;" GridLines="None">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:Literal ID="LtlNombre" runat="server" Text='<%# Eval("Nombre") %>'></asp:Literal>
</ItemTemplate>
<ItemStyle Width="250px" />
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:Literal ID="LtlUbicacion" runat="server" Text='<%# Eval("Ubicacion") %>'></asp:Literal>
</ItemTemplate>
<ItemStyle Width="250px" />
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
&nbsp;Jueves&nbsp;
</HeaderTemplate>
<ItemTemplate>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
&nbsp;Viernes&nbsp;
</HeaderTemplate>
<ItemTemplate>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
&nbsp;Sábado&nbsp;
</HeaderTemplate>
<ItemTemplate>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
&nbsp;Domingo&nbsp;
</HeaderTemplate>
<ItemTemplate>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
&nbsp;Lunes&nbsp;
</HeaderTemplate>
<ItemTemplate>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
&nbsp;Martes&nbsp;
</HeaderTemplate>
<ItemTemplate>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
&nbsp;Miércoles&nbsp;
</HeaderTemplate>
<ItemTemplate>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" />
<HeaderStyle CssClass="Titulos" />
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
<script language="javascript" type="text/javascript">
function CargaClientes() {
$("#BtnCargarClientes").click();
}
</script>
</asp:Content>

View File

@@ -0,0 +1,93 @@
Imports Extensiones
Partial Class Nomina_ListaAsistencias
Inherits ClsPaginas
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
DdlCliente.Attributes.Add("onclick", "CargaClientes();")
CargaProyecto()
CargaTurnos()
End If
End Sub
#Region "CargaCombos"
Private Sub CargaClientes()
Dim ObjClientes As New ClsClientes
If ObjClientes.GetClientes(-1, "-1", "-1", "-1", "-1", "-1", "-1", -1, UsuarioActual.CveEmpresa) Then
DdlCliente.DataSource = ObjClientes.DtResultados
Else
DdlCliente.DataSource = Nothing
End If
ObjClientes.Dispose()
'Application("GlobalDTResponsable")
DdlCliente.DataBind()
End Sub
Protected Sub BtnCargarClientes_Click(sender As Object, e As System.EventArgs) Handles BtnCargarClientes.Click
CargaClientes()
DdlCliente.Attributes.Remove("onclick")
End Sub
Private Sub CargaProyecto()
DdlProyecto.DataSource = GlobalDTProyectos(UsuarioActual.CveEmpresa)
DdlProyecto.DataBind()
End Sub
Private Sub CargaSubProyecto()
DdlSubProyecto.Items.Clear()
DdlSubProyecto.DataSource = GlobalDTSubProyectos(DdlProyecto.SelectedValue.ToEntero)
DdlSubProyecto.DataBind()
DdlSubProyecto.Items.Insert(0, New ListItem("Seleccione", "-1"))
End Sub
Private Sub CargaTurnos()
DdlTurno.DataSource = GlobalDTTurno.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
DdlTurno.DataBind()
End Sub
#End Region
Protected Sub DdlProyecto_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles DdlProyecto.SelectedIndexChanged
CargaSubProyecto()
End Sub
Protected Sub BtnConsultar_Click(sender As Object, e As System.EventArgs) Handles BtnConsultar.Click
Dim ObjPersonal As New ClsRH
If ObjPersonal.GetListaAsistencias(DdlSubProyecto.SelectedValue.ToEntero, DdlTurno.SelectedValue.ToEntero, UsuarioActual.CveEmpresa) Then
GvDatos.DataSource = ObjPersonal.DtResultados
Else
GvDatos.DataSource = Nothing
End If
ObjPersonal.Dispose()
GvDatos.DataBind()
UPDatos.Update()
End Sub
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.DBCampo("Turno") = "" AndAlso e.Row.DBCampo("Nombre") = "" Then
e.Row.FCLiteral("LtlNombre").Text = "Sub Proyecto: " & e.Row.DBCampo("SubProyecto")
e.Row.Cells(0).ColumnSpan = 8
For i As Integer = 1 To 7
e.Row.Cells(i).Visible = False
Next
e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left
ElseIf e.Row.DBCampo("Turno") <> "" AndAlso e.Row.DBCampo("Nombre") = "" Then
e.Row.FCLiteral("LtlNombre").Text = "Turno: " & e.Row.DBCampo("Turno")
e.Row.Cells(0).ColumnSpan = 8
For i As Integer = 1 To 7
e.Row.Cells(i).Visible = False
Next
e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left
End If
End If
End Sub
End Class

1947
RH/MiPerfil.aspx Normal file

File diff suppressed because it is too large Load Diff

1995
RH/MiPerfil.aspx.vb Normal file

File diff suppressed because it is too large Load Diff

136
RH/Organigrama.aspx Normal file
View File

@@ -0,0 +1,136 @@
<%@ Page Title="SIG: Organigrama" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="Organigrama.aspx.vb" Inherits="RH_Organigrama" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<style>
.node {
width: 150px;
background-color: whitesmoke;
font-weight:normal;
}
</style>
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript">
google.charts.load('current', { packages: ["orgchart"] });
google.charts.setOnLoadCallback(drawChart);
function drawChart() {//esta funcion se ejecuta cada vez que se el boton "Consultar" es seleccionado y se ejecuta el metodo "GenerarOrg" en el VB
var data = new google.visualization.DataTable();
data.addColumn('string', 'Name');
data.addColumn('string', 'Manager');
data.addColumn('string', 'ToolTip');
$.ajax({
type: "POST",
url: "Organigrama.aspx/FetchData",
data: '{}',
contentType: "application/json",
dataType: "json",
success: function (r) {
var options = {
allowHtml: true,
size: "large",
nodeClass: "node"
};
if (r.d.length > 0) {
var formatedData = [];
for (var i = 0; i < r.d.length; i++) {
let arregloAux = [JSON.parse(r.d[i][0]),i!=0?r.d[i][1]:"", r.d[i][2]]//por cada registro convertimos en JSON los titulos y subtitulos(llegan en String) y damos formato al header
formatedData.push(arregloAux);
}
data.addRows(formatedData);
var chart = new google.visualization.OrgChart(document.getElementById('chart_div'));
for (let i = 0; i < data.getNumberOfRows(); i++) {
data.setRowProperty(i, 'style', "font-weight:normal");
}
chart.draw(data, options);
} else {
let contenedor = document.getElementById('chart_div');
contenedor.innerHTML = '';
}
},
failure: function (r) {
alert("failure");
},
error: function (r) {
alert("error");
console.log(r);
}
});
}
</script>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server">
Organigrama
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HA" runat="Server">
<asp:UpdatePanel ID="UpdatePanel1" runat="server" RenderMode="Inline">
<ContentTemplate>
<div class="btn-group pull-right btn-separete">
<asp:Button ID="BtnConsultar" runat="server" Text="Consultar" ClientIDMode="Static" class="btn btn-fit-height btnopaco" />
</div>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel runat="server" ID="upPanel">
<ContentTemplate>
<div class="portlet solid grey-cascade portlet-filter" style="">
<div class="portlet-title portlet-filterT smalltitle" style="min-height: 49px; position: relative;">
<div class="tools">
<asp:Button ID="btConsultar" CssClass="btn btn-primary" runat="server" ValidationGroup="GrpConsultar" Text="Consultar" /></td>
<a href="javascript:;" data-idchekbox="<%= chkexpand.ClientID%>" class=" <%= IIf(chkexpand.Checked = True, "collapse", "expand")%>"></a>
<asp:CheckBox ID="chkexpand" CssClass="hidden" runat="server" />
</div>
<div class="titlefiltros caption magindate">
<div class="row">
<div class="col-md-1 truncate" style="text-align: right!important; width: 180px">Cabecera del Organigrama: </div>
<div class="col-md-1">
<asp:DropDownList ID="DdlSupervisorOrganigrama" runat="server" AppendDataBoundItems="True" Width="260px" DataTextField="NombreCompleto" DataValueField="CvePersonal" CssClass="form-control input-sm select2me" ValidationGroup="GrpGuardar">
<%--<asp:ListItem Value="0">&lt;Seleccione &gt;</asp:ListItem>--%>
<%--<asp:ListItem Selected="True" Text="Sin Asignar" Value="-1"></asp:ListItem>
<asp:ListItem Text="Cabecera" Value="0"></asp:ListItem>--%>
</asp:DropDownList>
<i></i>
</div>
<div class="col-md-1 truncate" style="text-align: right!important; width: 200px; margin-left:110px">Nivel de cadena de mando: </div>
<div class="col-md-1">
<asp:TextBox runat="server" ID="txtNivel" Style="width:35px"></asp:TextBox>
</div>
</div>
</div>
</div>
<div class="portlet-body magindate" <%= IIf(chkexpand.Checked = True, "", "style=""display:none;""")%>>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<br />
<div id="chart_div"></div>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

118
RH/Organigrama.aspx.vb Normal file
View File

@@ -0,0 +1,118 @@
Option Explicit On
Option Strict On
Imports System.Data
Imports Extensiones
Imports System.Web.Services
Partial Class RH_Organigrama
Inherits ClsPaginas
#Region " PROPIEDADES "
Private employees As DataTable
Private Shared CveEmpresaAtribute As Integer
Public Shared Cabecera As Integer
Public Shared Empresa As Integer
Public Shared Nivel As Integer
Dim rgx As New Regex("^\d+$")
Public Shared Property CveCabecera() As Integer 'Guardamos el ID de registro para saber cual registro Editar
Get
Return Cabecera
End Get
Set
Cabecera = Value
End Set
End Property
Public Shared Property CveEmpresaFiltro() As Integer
Get
Return Empresa
End Get
Set
Empresa = Value
End Set
End Property
Public Shared Property NivelOrg() As Integer
Get
Return Nivel
End Get
Set
Nivel = Value
End Set
End Property
#End Region
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
'CveCabecera = UsuarioActual.CvePersonal
'CveEmpresaFiltro = UsuarioActual.CveEmpresa
If Not IsPostBack Then
txtNivel.Text = ""
DdlSupervisorOrganigrama.SelectedIndex = 0
End If
Dim viewFlag As Integer = CveCabecera
CargaSuperioresOrganigrama()
End Sub
#Region " CARGA DATOS "
Private Sub CargaSuperioresOrganigrama()
Dim ObjRH As New ClsRH
If ObjRH.GetPersonal(-1, UsuarioActual.CveEmpresa) Then
DdlSupervisorOrganigrama.AppendDataBoundItems = True
DdlSupervisorOrganigrama.Items.Add("Seleccione...")
DdlSupervisorOrganigrama.DataSource = ObjRH.DtResultados
Else
DdlSupervisorOrganigrama.DataSource = Nothing
Alert("Ocurrió un error al cargar el catálogo de Jefes Inmediatos")
End If
ObjRH.Dispose()
If DdlSupervisorOrganigrama.DataSource IsNot Nothing Then
DdlSupervisorOrganigrama.DataBind()
End If
End Sub
Protected Sub GenerarOrg(sender As Object, e As EventArgs) Handles btConsultar.Click 'este metodo es el que carga el organigrama al dispara la funcion en JS
CveCabecera = DdlSupervisorOrganigrama.SelectedValue.ToEntero
CveEmpresaFiltro = UsuarioActual.CveEmpresa
NivelOrg = If(rgx.IsMatch(txtNivel.Text), txtNivel.Text.ToEntero, NivelOrg)
txtNivel.Text = ""
DdlSupervisorOrganigrama.SelectedIndex = 0
ScriptManager.RegisterClientScriptBlock(Me, [GetType], "mykey", "drawChart()", True) 'ejecutamos la funcion de js para que haga la consulta de los registros
End Sub
#End Region
<WebMethod()>
Public Shared Function FetchData() As List(Of Object)
Dim ObjRH As New ClsRH
Dim DtTemporal As New DataTable
Dim chartData As New List(Of Object)()
If ObjRH.GetOrganigrama(CveEmpresaFiltro, CveCabecera, NivelOrg) Then
DtTemporal = ObjRH.DtResultados.Copy
For Each renglon As DataRow In DtTemporal.Rows
Dim nombreEmpleado As String = renglon("nombreEmpleado").ToString
Dim nombreSuperior As String = renglon("nombreSuperior").ToString
Dim puesto As String = renglon("puesto").ToString
Dim headerEmpleado As String = String.Format("{{{2}v{2}:{2}{0}{2},{2}f{2}:{2}{0}<div style='color:#32A1CF;font-size:10px;font-style:italic'>{1}</div>{2}}}", nombreEmpleado, puesto, ControlChars.Quote) 'este es el JSON que da formato a los subtitulos se hace en String y la funcion lo hace JSON
chartData.Add(New Object() {headerEmpleado, If(nombreEmpleado = nombreSuperior, "", nombreSuperior), puesto})
Next
End If
Return chartData
End Function
End Class

4188
RH/Personal.aspx Normal file

File diff suppressed because it is too large Load Diff

5473
RH/Personal.aspx.vb Normal file

File diff suppressed because it is too large Load Diff

332
RH/PopUpBuscarPersonal.aspx Normal file
View File

@@ -0,0 +1,332 @@
<%@ Page Title="R.H. - Buscar Personal" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="PopUpBuscarPersonal.aspx.vb" Inherits="RH_PopUpBuscarPersonal" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<style>
#C_GvCaracteristicas_LtlCaracteristica_0{
min-width: 275px!important;
}
</style>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="E" runat="Server">
Búsqueda de Personal
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:HiddenField ID="hdnEsThickbox" runat="server" ClientIDMode="Static" />
<asp:UpdatePanel ID="UPFiltros" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Button ID="BtnCargarClientes" runat="server" ClientIDMode="Static" Text="CargarClientes" Style="display: none;" />
<asp:Panel ID="PnlPrincipal" runat="server" DefaultButton="BtnBuscar" Width="750px">
<table class="Widthall">
<tr>
<th class="Titulos" colspan="6">Filtros para búsqueda</th>
</tr>
<tr align="left">
<td class="text-right"><b>Código:</b></td>
<td>
<asp:TextBox ID="TxtCodigo" runat="server" MaxLength="12" Width="100px"></asp:TextBox></td>
<td class="text-right"><b>Nombre:</b></td>
<td colspan="3">
<asp:TextBox ID="TxtNombre" runat="server" MaxLength="100" Width="362px" autofocus></asp:TextBox></td>
</tr>
<tr align="left">
<td class="text-right"><b>NSS:</b></td>
<td>
<asp:TextBox ID="TxtNSS" runat="server" MaxLength="11" Width="100px"></asp:TextBox></td>
<td class="text-right"><b>Puesto:</b></td>
<td>
<asp:DropDownList ID="DdlPuestos" runat="server" AppendDataBoundItems="true" DataTextField="Puesto" DataValueField="CvePuesto" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 100px !important;">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</td>
<td class="text-right"><b>RFC:</b></td>
<td>
<asp:TextBox ID="TxtRFC" runat="server" MaxLength="13" Width="100px"></asp:TextBox></td>
</tr>
<tr align="left">
<td class="text-right"><b>Tipo de Período:</b></td>
<td>
<asp:DropDownList ID="DdlTipoPeriodo" runat="server" AppendDataBoundItems="true" DataTextField="TipoPeriodo" DataValueField="CveTipoPeriodo" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 100px !important;">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</td>
<td class="text-right"><b>Tipo de Contrato:</b></td>
<td>
<asp:DropDownList ID="DdlTipoContrato" runat="server" AppendDataBoundItems="true" DataTextField="TipoContrato" DataValueField="CveTipoContrato" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 100px !important;">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</td>
<td class="text-right"><b>Departamento:</b></td>
<td>
<asp:DropDownList ID="DdlDepartamentos" runat="server" AppendDataBoundItems="true" DataTextField="Departamento" DataValueField="CveDepartamento" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 100px !important;">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</td>
</tr>
<tr align="left">
<td class="text-right"><b>Género:</b></td>
<td>
<asp:DropDownList ID="DdlGenero" runat="server" AppendDataBoundItems="true" DataTextField="Genero" DataValueField="CveGenero" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 100px !important;">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</td>
<td class="text-right"><b>Estado Civil:</b></td>
<td>
<asp:DropDownList ID="DdlEstadoCivil" runat="server" AppendDataBoundItems="true" DataTextField="EstadoCivil" DataValueField="CveEstadoCivil" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 100px !important;">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</td>
<td class="text-right"><b>Escolaridad:</b></td>
<td>
<asp:DropDownList ID="DdlEscolaridad" runat="server" AppendDataBoundItems="true" DataTextField="Escolaridad" DataValueField="CveEscolaridad" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 100px !important;">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</td>
</tr>
<tr align="left">
<td class="text-right"><b>Horario:</b></td>
<td>
<asp:TextBox ID="TxtHorarioDe" runat="server" CausesValidation="true" MaxLength="10" Width="100px"></asp:TextBox>
<ajax:MaskedEditExtender ID="MEEHorarioDe" runat="server" TargetControlID="TxtHorarioDe" Mask="99:99:99" MaskType="Time" InputDirection="RightToLeft"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHorarioDe" runat="server" ControlExtender="MEEHorarioDe" ControlToValidate="TxtHorarioDe" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hr. Entrada''</b> no tiene el formato correcto, por favor corrija (Formato 24 Horas)." IsValidEmpty="true" MaximumValue="23:59:59" MinimumValue="00:00:00" ToolTip="Formato 24 Horas" ValidationGroup="GrpBuscar"></ajax:MaskedEditValidator>
<ajax:ValidatorCalloutExtender ID="VCOHorarioDe2" runat="server" HighlightCssClass="vco" TargetControlID="MEVHorarioDe"></ajax:ValidatorCalloutExtender>
</td>
<td class="text-right"><b>Turno:</b></td>
<td>
<asp:DropDownList ID="DdlTurnos" runat="server" AppendDataBoundItems="true" DataTextField="Turno" DataValueField="CveTurno" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 100px !important;">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</td>
<td class="text-right"><b>Cliente:</b></td>
<td>
<asp:DropDownList ID="DdlClienteAsignado" runat="server" AppendDataBoundItems="true" DataTextField="Nombre" DataValueField="CveCliente" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 100px !important;">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</td>
</tr>
<tr align="left">
<td class="text-right"><b>Proyecto:</b></td>
<td>
<asp:DropDownList ID="DdlProyecto" runat="server" AppendDataBoundItems="true" AutoPostBack="true" DataTextField="Proyecto" DataValueField="CveProyecto" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 100px !important;">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</td>
<td class="text-right"><b>Sub Proyecto:</b></td>
<td>
<asp:DropDownList ID="DdlSubProyecto" runat="server" AppendDataBoundItems="true" DataTextField="SubProyecto" DataValueField="CveSubProyecto" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 100px !important;">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</td>
<td class="text-right"><b>Ruta:</b></td>
<td>
<asp:DropDownList ID="DdlRuta" runat="server" AppendDataBoundItems="true" DataTextField="Ruta" DataValueField="CveRuta" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 100px !important;">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</td>
</tr>
<tr>
<td class="text-right"><b>Estatus:</b></td>
<td colspan="5">
<asp:DropDownList ID="DdlEstatus" runat="server" AppendDataBoundItems="true" DataTextField="EstatusPersonal" DataValueField="CveEstatusPersonal" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 100px !important;">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</td>
</tr>
<tr style="vertical-align:top;"><td colspan="2">
<asp:GridView ID="GvCrt1" runat="server" GridLines="None" BorderWidth="0" CssClass="table table-hover table-advance Widthall" AutoGenerateColumns="False"
DataKeyNames="CveCaracteristica,Caracteristica" ShowHeader="False">
<Columns>
<asp:TemplateField>
<ItemStyle BorderStyle="None" />
<ItemTemplate>
<asp:Panel ID="PnlClasif" Visible="False" runat="server">
<div style="width: 100%" class="SubTotales">
<b><asp:Literal ID="LblCaracteristica" runat="server" Text=""></asp:Literal></b>
</div>
</asp:Panel>
<div style="width:105px!important; display: inline-block; text-align:right;">
<asp:Literal ID="LtlCrt" runat="server" Text='<%# Eval("Caracteristica", "<b>{0}:</b>")%>'></asp:Literal>&nbsp;
</div>
<div style="display: inline-block;">
<asp:DropDownList ID="DdlValor" runat="server" Visible="false" DataValueField="CveCaracteristicaOpcion" DataTextField ="CaracteristicaOpcion" Width="100px" CssClass="form-control input-inline input-sm" ></asp:DropDownList>
<asp:TextBox CssClass="form-control input-sm" ID="TxtValor" runat="server" CausesValidation="true" MaxLength="50" Visible="false" Width="100px"></asp:TextBox>
</div>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</td>
<td colspan="2">
<asp:GridView ID="GvCrt2" runat="server" GridLines="None" BorderWidth="0" CssClass="table table-hover table-advance Widthall" AutoGenerateColumns="False"
DataKeyNames="CveCaracteristica,Caracteristica" ShowHeader="False">
<Columns>
<asp:TemplateField>
<ItemStyle BorderStyle="None" />
<ItemTemplate>
<asp:Panel ID="PnlClasif" Visible="False" runat="server">
<div style="width: 100%" class="SubTotales">
<b><asp:Literal ID="LblCaracteristica" runat="server" Text=""></asp:Literal></b>
</div>
</asp:Panel>
<div style="width:110px!important; display: inline-block;">
<asp:Literal ID="LtlCrt" runat="server" Text='<%# Eval("Caracteristica", "<b>{0}:</b>")%>'></asp:Literal>
</div>
<div style="display: inline-block;">
<asp:DropDownList ID="DdlValor" runat="server" Visible="false" DataValueField="CveCaracteristicaOpcion" DataTextField ="CaracteristicaOpcion" Width="100px" CssClass="form-control input-inline input-sm" ></asp:DropDownList>
<asp:TextBox CssClass="form-control input-sm" ID="TxtValor" runat="server" CausesValidation="true" MaxLength="50" Visible="false" Width="100px"></asp:TextBox>
</div>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</td>
<td colspan="2">
<asp:GridView ID="GvCrt3" runat="server" GridLines="None" BorderWidth="0" CssClass="table table-hover table-advance Widthall" AutoGenerateColumns="False"
DataKeyNames="CveCaracteristica,Caracteristica" ShowHeader="False">
<Columns>
<asp:TemplateField>
<ItemStyle BorderStyle="None" />
<ItemTemplate>
<asp:Panel ID="PnlClasif" Visible="False" runat="server">
<div style="width: 100%" class="SubTotales">
<b><asp:Literal ID="LblCaracteristica" runat="server" Text=""></asp:Literal></b>
</div>
</asp:Panel>
<div style="width:110px!important; display: inline-block; text-align:right;">
<asp:Literal ID="LtlCrt" runat="server" Text='<%# Eval("Caracteristica", "<b>{0}:</b>")%>'></asp:Literal>
</div>
<div style="display: inline-block;">
<asp:DropDownList ID="DdlValor" runat="server" Visible="false" DataValueField="CveCaracteristicaOpcion" DataTextField ="CaracteristicaOpcion" Width="100px" CssClass="form-control input-inline input-sm" ></asp:DropDownList>
<asp:TextBox CssClass="form-control input-sm" ID="TxtValor" runat="server" CausesValidation="true" MaxLength="50" Visible="false" Width="100px"></asp:TextBox>
</div>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</td>
</tr>
<tr>
<td style="text-align: center;" colspan="6">
<asp:Button ID="BtnBuscar" runat="server" Text="Buscar" ValidationGroup="GrpBuscar" class="btn btn-primary" />&nbsp;<asp:Button ID="BtnNuevoPersonal" runat="server" Text="Nuevo" OnClientClick="window.opener.location='/RH/Personal.aspx';window.close(); return false;" class="btn btn-success" /></td>
</tr>
</table>
</asp:Panel>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UPDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<table id="TblBusqueda" runat="server" border="0" visible="false">
<tr>
<td align="left">Número de registros encontrados:&nbsp;<b><asp:Literal ID="LtlTotalRegistros" runat="server"></asp:Literal></b></td>
</tr>
<tr>
<td>
<div id="DivBeneficiarios" style="overflow-y: auto; width: 750px; height: 175px;">
<asp:GridView ID="GV" runat="server" AutoGenerateColumns="false" EmptyDataText="No se encontraron registros" ToolTip="Listado de Contratos encontrados." CssClass="table table-striped table-advance table-hover" Style="text-align: center;" GridLines="None">
<Columns>
<asp:TemplateField>
<HeaderTemplate>N°</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlCodigo" runat="server"></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Nombre</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlNombre" runat="server"></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>F. Ingreso</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlFechaIng" runat="server"></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Periodo</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlTipoPeriodo" runat="server"></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Turno</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlTurno" runat="server"></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Departamento</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlDepartamento" runat="server"></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Puesto</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlPuesto" runat="server"></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Estatus</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlEstatus" runat="server"></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<%--<RowStyle CssClass="Texto" />
<AlternatingRowStyle CssClass="TextoAlterno" />
<HeaderStyle CssClass="Titulos" />--%>
</asp:GridView>
</div>
</td>
</tr>
</table>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
<script language="javascript" type="text/javascript">
function Ir(c) {
opener.location.href = '/RH/Personal.aspx?CvePersonal=' + c;
window.close();
}
function Ir2(c) {
if (document.getElementById("hdnEsThickbox").value == "S") {
parent.CargaPersonal(c);
parent.tb_remove();
}
else {
window.opener.CargaPersonal(c);
window.close();
}
}
function Ir3(c) {
opener.location.href = '/RH/Reclutamiento.aspx?CvePersonal=' + c;
window.close();
}
function IrOI(c) {
debugger;
window.opener.CargaPersonal(c);
window.close();
}
function CargaClientes() {
$("#BtnCargarClientes").click();
}
</script>
</asp:Content>

View File

@@ -0,0 +1,386 @@

Option Explicit On
Option Strict On
Imports Extensiones
Imports System.Data
Partial Class RH_PopUpBuscarPersonal
Inherits ClsPaginas
#Region "Propiedades"
Private ReadOnly Property OpcionBusqueda As String
Get
Return ViewState("Opt").ToString
End Get
End Property
Private Property DTCaracteristicasOpciones As DataTable
Get
If ViewState("DTCaracteristicasOpciones") Is Nothing Then
Return New DataTable
Else
Return DirectCast(ViewState("DTCaracteristicasOpciones"), DataTable)
End If
End Get
Set(value As DataTable)
ViewState("DTCaracteristicasOpciones") = value
End Set
End Property
#End Region
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
CType(Me.Master, Site).EsPopup = True
CType(Me.Master, Site).PopupWidth = 970
RegistraScript("$get('tdContenido').style.height='520px'")
ViewState("Opt") = ""
If Request("Opt") = "OI/OE" Then
ViewState("Opt") = "OI/OE"
End If
If Not Request("EsThickbox") Is Nothing Then
hdnEsThickbox.Value = Request("EsThickbox")
Else
hdnEsThickbox.Value = "N"
End If
'Carga Combos
CargaTurno()
CargaProyecto()
CargaTipoPeriodo()
CargaDepartamento()
CargaPuesto()
CargaTiposContrato()
CargaGenero()
CargaEstadoCivil()
CargaEscolaridad()
CargaRuta()
CargaEstatusPersonal()
DdlClienteAsignado.Attributes.Add("onclick", "CargaClientes();")
CargaCaracteristicas()
End If
End Sub
Private Sub CargaTurno()
DdlTurnos.DataSource = GlobalDTTurno.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
DdlTurnos.DataBind()
End Sub
Private Sub CargaProyecto()
DdlProyecto.DataSource = GlobalDTProyectos(UsuarioActual.CveEmpresa)
DdlProyecto.DataBind()
End Sub
Private Sub CargaSubProyecto()
DdlSubProyecto.Items.Clear()
DdlSubProyecto.DataSource = GlobalDTSubProyectos(DdlProyecto.SelectedValue.ToEntero)
DdlSubProyecto.DataBind()
DdlSubProyecto.Items.Insert(0, New ListItem("Seleccione", "-1"))
End Sub
Private Sub CargaClientes()
Dim ObjClientes As New ClsClientes
If ObjClientes.GetClientes(-1, "-1", "-1", "-1", "-1", "-1", "-1", -1, UsuarioActual.CveEmpresa) Then
DdlClienteAsignado.DataSource = ObjClientes.DtResultados
Else
DdlClienteAsignado.DataSource = Nothing
End If
ObjClientes.Dispose()
DdlClienteAsignado.DataBind()
End Sub
Private Sub CargaTipoPeriodo()
DdlTipoPeriodo.DataSource = GlobalDTTipoPeriodo
DdlTipoPeriodo.DataBind()
End Sub
Private Sub CargaDepartamento()
DdlDepartamentos.DataSource = GlobalDTDepartamentos.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
DdlDepartamentos.DataBind()
End Sub
Private Sub CargaPuesto()
DdlPuestos.DataSource = GlobalDTRHPuestos(UsuarioActual.CveEmpresa)
DdlPuestos.DataBind()
End Sub
Private Sub CargaTiposContrato()
DdlTipoContrato.DataSource = GlobalDTTiposContrato
DdlTipoContrato.DataBind()
End Sub
Private Sub CargaGenero()
DdlGenero.DataSource = GlobalDTGenero
DdlGenero.DataBind()
End Sub
Private Sub CargaEstadoCivil()
DdlEstadoCivil.DataSource = GlobalDTEstadoCivil
DdlEstadoCivil.DataBind()
End Sub
Private Sub CargaEscolaridad()
DdlEscolaridad.DataSource = GlobalDTEscolaridad
DdlEscolaridad.DataBind()
End Sub
Private Sub CargaRuta()
DdlRuta.DataSource = GlobalDTRutas.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
DdlRuta.DataBind()
End Sub
Private Sub CargaEstatusPersonal()
DdlEstatus.DataSource = GlobalDTEstatusPersonal
DdlEstatus.DataBind()
End Sub
Protected Sub DdlProyecto_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles DdlProyecto.SelectedIndexChanged
CargaSubProyecto()
End Sub
Protected Sub BtnBuscar_Click(sender As Object, e As System.EventArgs) Handles BtnBuscar.Click
Dim ObjPersonal As New ClsRH()
Dim Codigo As String = "-1"
Dim Nombre As String = "-1"
Dim NSS As String = "-1"
Dim RFC As String = "-1"
Dim Horario As String = "-1"
'Definir estructura de supervisores.
Dim CveSupervisor As Integer = -1
If TxtCodigo.Text.Trim <> String.Empty Then Codigo = TxtCodigo.Text.Trim
If TxtNombre.Text.Trim <> String.Empty Then Nombre = TxtNombre.Text.Trim
If TxtNSS.Text.Trim <> String.Empty Then NSS = TxtNSS.Text.Trim
If TxtRFC.Text.Trim <> String.Empty Then RFC = TxtRFC.Text.Trim
If TxtHorarioDe.Text.Trim <> String.Empty Then Horario = TxtHorarioDe.Text.Trim
Dim StrFiltroCaracteristica As String = GeneraFiltroCaracteristicas()
If ObjPersonal.GetPersonal2(-1, Codigo, Nombre, NSS, RFC, DdlTurnos.SelectedValue.ToEntero, DdlPuestos.SelectedValue.ToEntero, DdlDepartamentos.SelectedValue.ToEntero,
DdlRuta.SelectedValue.ToEntero, DdlEscolaridad.SelectedValue.ToEntero, DdlEstadoCivil.SelectedValue.ToEntero, DdlGenero.SelectedValue.ToEntero,
DdlEstatus.SelectedValue.ToEntero, DdlSubProyecto.SelectedValue.ToEntero, DdlClienteAsignado.SelectedValue.ToEntero, Horario, CveSupervisor,
-1, -1, -1, -1, -1, "-1", "-1", "-1", "-1", StrFiltroCaracteristica, 1, UsuarioActual.CveEmpresa) Then
If ObjPersonal.DtResultados.Rows.Count > 0 Then
LtlTotalRegistros.Text = ObjPersonal.DtResultados.Rows.Count.ToString.FormatoNumero(0)
GV.DataSource = ObjPersonal.DtResultados
Else
LtlTotalRegistros.Text = "0"
GV.DataSource = Nothing
Alert("No se encontraron registros con los parámetros solicitados.", Extensiones.TipoMensaje.MsgAdvertencia)
End If
End If
ObjPersonal.Dispose()
GV.DataBind()
UPDatos.Update()
TblBusqueda.Visible = True
End Sub
Private Function GeneraFiltroCaracteristicas() As String
Dim sqlStr As New StringBuilder
Dim NCaracteristicas As Integer = 0
Dim CampoUno As Boolean = True
Dim Retorno As New StringBuilder
For Each dRow As GridViewRow In GvCrt1.Rows
Dim DdlValor As DropDownList = dRow.FCDropDownList("DdlValor")
Dim TxtValor As TextBox = dRow.FCTextBox("TxtValor")
Dim Caracteristica As String = dRow.DataKey("Caracteristica")
Dim CveCaracteristica As Integer = dRow.DataKey("CveCaracteristica").ToString.ToEntero
If DdlValor.SelectedIndex > 0 Then
NCaracteristicas = NCaracteristicas + 1
If sqlStr.ToString <> "" Then sqlStr.Append(" OR ")
sqlStr.AppendFormat(" CveCaracteristica ={0} AND CveCaracteristicaOpcion ={1} AND CvePersonal <> NULL", CveCaracteristica, DdlValor.SelectedValue)
CampoUno = False
ElseIf (TxtValor.Text.Trim.Length > 0) Then
NCaracteristicas = NCaracteristicas + 1
If sqlStr.ToString <> "" Then sqlStr.Append(" OR ")
sqlStr.AppendFormat(" CveCaracteristica = {0} AND CveCaracteristicaOpcion LIKE '%{1}%' AND CvePersonal <> NULL", CveCaracteristica, TxtValor.Text.Trim)
CampoUno = False
End If
Next
For Each dRow As GridViewRow In GvCrt2.Rows
Dim DdlValor As DropDownList = dRow.FCDropDownList("DdlValor")
Dim TxtValor As TextBox = dRow.FCTextBox("TxtValor")
Dim Caracteristica As String = dRow.DataKey("Caracteristica")
Dim CveCaracteristica As Integer = dRow.DataKey("CveCaracteristica").ToString.ToEntero
If DdlValor.SelectedIndex > 0 Then
NCaracteristicas = NCaracteristicas + 1
If sqlStr.ToString <> "" Then sqlStr.Append(" OR ")
sqlStr.AppendFormat(" CveCaracteristica ={0} AND CveCaracteristicaOpcion ={1} AND CvePersonal <> NULL", CveCaracteristica, DdlValor.SelectedValue)
CampoUno = False
ElseIf (TxtValor.Text.Trim.Length > 0) Then
NCaracteristicas = NCaracteristicas + 1
If sqlStr.ToString <> "" Then sqlStr.Append(" OR ")
sqlStr.AppendFormat(" CveCaracteristica = {0} AND CveCaracteristicaOpcion LIKE '%{1}%' AND CvePersonal <> NULL", CveCaracteristica, TxtValor.Text.Trim)
CampoUno = False
End If
Next
For Each dRow As GridViewRow In GvCrt3.Rows
Dim DdlValor As DropDownList = dRow.FCDropDownList("DdlValor")
Dim TxtValor As TextBox = dRow.FCTextBox("TxtValor")
Dim Caracteristica As String = dRow.DataKey("Caracteristica")
Dim CveCaracteristica As Integer = dRow.DataKey("CveCaracteristica").ToString.ToEntero
If DdlValor.SelectedIndex > 0 Then
NCaracteristicas = NCaracteristicas + 1
If sqlStr.ToString <> "" Then sqlStr.Append(" OR ")
sqlStr.AppendFormat(" CveCaracteristica ={0} AND CveCaracteristicaOpcion ={1} AND CvePersonal <> NULL ", CveCaracteristica, DdlValor.SelectedValue)
CampoUno = False
ElseIf (TxtValor.Text.Trim.Length > 0) Then
NCaracteristicas = NCaracteristicas + 1
If sqlStr.ToString <> "" Then sqlStr.Append(" OR ")
sqlStr.AppendFormat(" CveCaracteristica = {0} AND CveCaracteristicaOpcion LIKE '%{1}%' AND CvePersonal <> NULL ", CveCaracteristica, TxtValor.Text.Trim)
CampoUno = False
End If
Next
If NCaracteristicas > 0 Then
Retorno.Append(" SELECT CvePersonal as CvePersonal, SUM(1) AS Contador FROM Gral_CaracteristicasValores WHERE ")
Retorno.Append(sqlStr.ToString)
Retorno.Append(" GROUP BY CvePersonal ")
End If
Return Retorno.ToString
End Function
Protected Sub GV_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GV.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.RowIndex = 0 Then
'e.Row.Cells(0).Width = Unit.Pixel(70)
'e.Row.Cells(1).Width = Unit.Pixel(300)
'e.Row.Cells(2).Width = Unit.Pixel(80)
'e.Row.Cells(3).Width = Unit.Pixel(90)
'e.Row.Cells(4).Width = Unit.Pixel(90)
'e.Row.Cells(5).Width = Unit.Pixel(120)
'e.Row.Cells(6).Width = Unit.Pixel(120)
'e.Row.Cells(7).Width = Unit.Pixel(80)
End If
e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left
e.Row.Cells(1).HorizontalAlign = HorizontalAlign.Left
e.Row.Cells(3).HorizontalAlign = HorizontalAlign.Left
e.Row.Cells(4).HorizontalAlign = HorizontalAlign.Left
e.Row.Cells(5).HorizontalAlign = HorizontalAlign.Left
e.Row.Cells(6).HorizontalAlign = HorizontalAlign.Left
Dim Liga As String = String.Empty
Select Case OpcionBusqueda
Case "OI/OE"
Liga = String.Format("<a class='Texto' href='javascript:IrOI({0});'>", e.Row.DBCampo("CvePersonal"))
Case Else
If hdnEsThickbox.Value = "S" Then
Liga = String.Format("<a class='Texto' href='javascript:Ir2(""{0}"");'>", e.Row.DBCampo("CvePersonal"))
Else
If e.Row.DBCampo("CveEstatusPersonal") = "3" Then
Liga = String.Format("<a class='Texto' href='javascript:Ir3(""{0}"");'>", e.Row.DBCampo("CvePersonal"))
Else
Liga = String.Format("<a class='Texto' href='javascript:Ir(""{0}"");'>", e.Row.DBCampo("CvePersonal"))
End If
End If
End Select
e.Row.FCLiteral("LtlCodigo").Text = String.Format("<div class='truncate' style='width:54px;'>{0}{1}</a></div>", Liga, e.Row.DBCampo("Codigo"))
e.Row.FCLiteral("LtlNombre").Text = String.Format("<div class='truncate' style='width:155px;'>{0}{1}</a></div>", Liga, e.Row.DBCampo("Nombre"))
e.Row.FCLiteral("LtlFechaIng").Text = String.Format("<div class='truncate' style='width:64px;'>{0}{1}</a></div>", Liga, e.Row.DBCampo("FechaIng").ToDate.ToShortDateString)
e.Row.FCLiteral("LtlTipoPeriodo").Text = String.Format("<div class='truncate' style='width:60px;'>{0}{1}</a></div>", Liga, e.Row.DBCampo("TipoPeriodo"))
e.Row.FCLiteral("LtlTurno").Text = String.Format("<div class='truncate' style='width:60px;'>{0}{1}</a></div>", Liga, e.Row.DBCampo("Turno"))
e.Row.FCLiteral("LtlDepartamento").Text = String.Format("<div class='truncate' style='width:84px;'>{0}{1}</a></div>", Liga, e.Row.DBCampo("Departamento"))
e.Row.FCLiteral("LtlPuesto").Text = String.Format("<div class='truncate' style='width:62px;'>{0}{1}</a></div>", Liga, e.Row.DBCampo("Puesto"))
e.Row.FCLiteral("LtlEstatus").Text = String.Format("<div class='truncate' style='width:44px;'>{0}{1}</a></div>", Liga, e.Row.DBCampo("EstatusPersonal"))
End If
End Sub
Protected Sub BtnCargarClientes_Click(sender As Object, e As System.EventArgs) Handles BtnCargarClientes.Click
CargaClientes()
DdlClienteAsignado.Attributes.Remove("onclick")
End Sub
#Region "C A R A C T E R I S T I C A S "
Private Sub CargaCaracteristicas()
Dim objCaract As New ClsGenerales
If objCaract.GetCaracteristicas(-1, -1, UsuarioActual.Empresa.CveEmpresa) Then
Dim dtt As DataTable = objCaract.DtResultados
Dim column As DataColumn = New DataColumn
column.DataType = System.Type.GetType("System.Int32") : column.ColumnName = "Cve" : dtt.Columns.Add(column)
Dim i As Integer = 1
For Each dr As DataRow In dtt.Rows
dr("Cve") = i
i += 1
If i > 3 Then i = 1
Next
'With column
' .AutoIncrement = True : .AutoIncrementSeed = 1 : .AutoIncrementStep = 1
'End With
GvCrt1.DataSource = dtt.FiltraParametros("Cve = 1")
GvCrt2.DataSource = dtt.FiltraParametros("Cve = 2")
GvCrt3.DataSource = dtt.FiltraParametros("Cve = 3")
End If
If objCaract.GetCaracteriscasOpciones(-1, UsuarioActual.Empresa.CveEmpresa) Then
DTCaracteristicasOpciones = objCaract.DtResultados
End If
objCaract.Dispose()
GvCrt1.DataBind() : GvCrt2.DataBind() : GvCrt3.DataBind()
End Sub
#End Region
Protected Sub GvCaracteristicas_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvCrt1.RowDataBound, GvCrt2.RowDataBound, GvCrt3.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
Dim DdlValor As DropDownList = e.Row.FCDropDownList("DdlValor")
Dim TxtValor As TextBox = e.Row.FCTextBox("TxtValor")
Dim CveCaracteristica As Integer = e.Row.DBCampo("CveCaracteristica").ToString.ToEntero
Dim DtTempResultado As DataTable = DTCaracteristicasOpciones.FiltraParametros(String.Format("CveCaracteristica ={0} ", CveCaracteristica))
If DtTempResultado.Rows.Count <> 0 Then
DdlValor.DataSource = DtTempResultado
DdlValor.DataBind()
DdlValor.Items.Insert(0, New ListItem("-", "-1"))
DdlValor.Visible = True
DdlValor.Visible = True
TxtValor.Visible = False
Else
DdlValor.Visible = False
TxtValor.Visible = True
End If
End If
End Sub
End Class

696
RH/Prospectos.aspx Normal file
View File

@@ -0,0 +1,696 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="Prospectos.aspx.vb" Inherits="Prospectos_Prospectos" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<asp:Content ID="Content1" ContentPlaceHolderID="H" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="E" runat="Server">
<asp:Literal ID="LtlTitulo" runat="server" Text="Registro de Prospectos"></asp:Literal>&nbsp;<asp:Literal ID="LtlProspectos" runat="server"></asp:Literal>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="C" runat="Server">
<style type="text/css">
.CaracteristicaPrincipal {
font-size: 14px;
color: #fff;
background-color: gray;
}
</style>
<table border="0" cellpadding="0" cellspacing="0" width="100%" style="padding-top: 20px;">
<tr>
<td align="left">
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<ajax:TabContainer ID="Tab" runat="server" ActiveTabIndex="0" Width="100%">
<ajax:TabPanel ID="TabAlta" runat="server" HeaderText="Información General">
<ContentTemplate>
<table border="0" class="contenido">
<tr>
<td>
<div>
<fieldset>
<legend><b>Datos Generales</b></legend>
<table border="0" cellpadding="1" cellspacing="0">
<tr>
<%--<td>CveProspecto</td>--%><td>
<asp:TextBox ID="TxtCveProspecto" runat="server" MaxLength="12" Width="200px" Enabled="false" Visible="false"></asp:TextBox></td>
</tr>
<tr>
<td>Apellido Paterno:</td>
<td>
<asp:TextBox ID="TxtApellidoPaterno" runat="server" MaxLength="50" Width="150px"></asp:TextBox>(*)
<asp:RequiredFieldValidator ID="RFVApellidoPaterno" runat="server" ControlToValidate="TxtApellidoPaterno" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Apellido Paterno''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEApellidoPaterno" runat="server" HighlightCssClass="vco" TargetControlID="RFVApellidoPaterno" Width="300px"></ajax:ValidatorCalloutExtender>
</td>
<td>Apellido Materno: </td>
<td>
<asp:TextBox ID="TxtApellidoMaterno" runat="server" MaxLength="50" Width="150px"></asp:TextBox>(*)
<asp:RequiredFieldValidator ID="RFVApellidoMaterno" runat="server" ControlToValidate="TxtApellidoMaterno" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Apellido Materno ''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEApellidoMaterno" runat="server" HighlightCssClass="vco" TargetControlID="RFVApellidoMaterno" Width="300px">
</ajax:ValidatorCalloutExtender>
</td>
<td>Nombre(s):</td>
<td>
<asp:TextBox ID="TxtNombres" runat="server" MaxLength="12" Width="200px"></asp:TextBox>(*)
<asp:RequiredFieldValidator ID="RFVNombres" runat="server" ControlToValidate="TxtNombres" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Nombres''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCENombres" runat="server" HighlightCssClass="vco" TargetControlID="RFVNombres" Width="300px">
</ajax:ValidatorCalloutExtender>
</td>
<td colspan="2"></td>
</tr>
<tr>
<td>Lugar Nacimiento</td>
<td>
<asp:TextBox ID="TxtLugarNacimiento" runat="server" MaxLength="50" Width="150px"></asp:TextBox></td>
<td>Fecha Nacimiento</td>
<td>
<asp:TextBox ID="TxtFechaNacimiento" runat="server" MaxLength="12" Width="100px"></asp:TextBox>
&nbsp;<asp:ImageButton runat="server" ID="ImgCalendario" ImageUrl="/Imagenes/calendar.png" ImageAlign="AbsMiddle" Width="16px" Height="16px" AlternateText="Click para ver el Calendario" />
<ajax:MaskedEditExtender ID="MEEFecha" runat="server" TargetControlID="TxtFechaNacimiento" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender ID="Calendario" runat="server" TargetControlID="TxtFechaNacimiento" PopupButtonID="ImgCalendario" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="RFVFechaNacimiento" runat="server" ControlToValidate="TxtFechaNacimiento" Display="None" ErrorMessage="El campo <b>''Fecha de Nacimiento''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CVFechaNacimiento" runat="server" ControlToValidate="TxtFechaNacimiento" Display="None" ErrorMessage="El campo <b>''Fecha de Nacimiento''</b> no tienes el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpGuardar"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCOFechaNacimiento1" runat="server" HighlightCssClass="vco" TargetControlID="RFVFechaNacimiento" Width="350px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="VCOFechaNacimiento2" runat="server" HighlightCssClass="vco" TargetControlID="CVFechaNacimiento" Width="350px"></ajax:ValidatorCalloutExtender>
</td>
<td colspan="2"></td>
</tr>
<tr>
<td>RFC</td>
<td>
<asp:TextBox ID="TxtRFC" runat="server" MaxLength="13" Width="150px"></asp:TextBox></td>
<td>Nacionalidad</td>
<td>
<asp:TextBox ID="TxtNacionalidad" runat="server" MaxLength="50" Width="200px"></asp:TextBox></td>
<td>Sexo</td>
<td>
<asp:DropDownList ID="DdlSexo" Width="50px" runat="server">
<asp:ListItem Text="Femenino" Value="0"></asp:ListItem>
<asp:ListItem Text="Masculino" Value="1"></asp:ListItem>
</asp:DropDownList>
</td>
</tr>
</table>
</fieldset>
<br />
<fieldset>
<legend><b>Domicilio Particular</b></legend>
<table border="0">
<tr>
<td>Calle: </td>
<td>
<asp:TextBox ID="TxtCalle" runat="server" MaxLength="100" Width="200px"></asp:TextBox></td>
<td>Número: </td>
<td>
<asp:TextBox ID="TxtNumero" runat="server" MaxLength="10" Width="200px"></asp:TextBox></td>
<td>No. Interior</td>
<td>
<asp:TextBox ID="TxtNumeroInterior" runat="server" MaxLength="10" Width="200px"></asp:TextBox></td>
</tr>
<tr>
<td>Colonia: </td>
<td>
<asp:TextBox ID="TxtColonia" runat="server" MaxLength="50" Width="200px"></asp:TextBox></td>
<td>Código Postal: </td>
<td>
<asp:TextBox ID="TxtCodigoPostal" runat="server" MaxLength="5" Width="200px"></asp:TextBox><ajax:FilteredTextBoxExtender ID="FTBECodigoPostal" runat="server" TargetControlID="TxtCodigoPostal" FilterType="Numbers" />
</td>
<td colspan="2"></td>
</tr>
<tr>
<td>País: </td>
<td>
<asp:UpdatePanel ID="UPPPaises" runat="server" UpdateMode="Conditional" RenderMode="Inline">
<ContentTemplate>
<asp:DropDownList ID="DdlPaises" DataTextField="Pais" DataValueField="CvePais" Width="200px" runat="server" AutoPostBack="True"></asp:DropDownList>
</ContentTemplate>
</asp:UpdatePanel>
</td>
<td>Estado: </td>
<td>
<asp:UpdatePanel ID="UPPEstados" runat="server" UpdateMode="Conditional" RenderMode="Inline">
<ContentTemplate>
<asp:DropDownList ID="DdlEstados" DataTextField="Estado" DataValueField="CveEstado" idth="200px" runat="server" AutoPostBack="True"></asp:DropDownList>
</ContentTemplate>
</asp:UpdatePanel>
</td>
<td>Municipio:</td>
<td>
<asp:UpdatePanel ID="UPPMunicipios" runat="server" UpdateMode="Conditional" RenderMode="Inline">
<ContentTemplate>
<asp:DropDownList ID="DdlMunicipios" DataTextField="Municipio" DataValueField="CveMunicipio" Width="200px" runat="server"></asp:DropDownList>
</ContentTemplate>
</asp:UpdatePanel>
</td>
</tr>
<tr>
<td>Teléfono: </td>
<td>
<asp:TextBox ID="TxtTelefono" runat="server" MaxLength="50" Width="200px"></asp:TextBox></td>
<td>Fax: </td>
<td>
<asp:TextBox ID="TxtFax" runat="server" MaxLength="50" Width="200px"></asp:TextBox></td>
<td>Correo: </td>
<td>
<asp:TextBox ID="TxtCorreo" runat="server" MaxLength="100" Width="200px"></asp:TextBox></td>
</tr>
</table>
</fieldset>
<br />
<fieldset>
<legend><b>Datos de la Empresa o Institución</b></legend>
<table border="0">
<tr>
<td>Nombre</td>
<td colspan="3">
<asp:TextBox ID="TxtEmpresaNombre" runat="server" MaxLength="100" Width="490px"></asp:TextBox></td>
<td>Giro</td>
<td>
<asp:TextBox ID="TxtEmpresaGiro" runat="server" MaxLength="50" Width="200px"></asp:TextBox></td>
</tr>
<tr>
<td>Sector</td>
<td>
<asp:TextBox ID="TxtEmpresaSector" runat="server" MaxLength="1" Width="200px"></asp:TextBox></td>
<td>Página</td>
<td>
<asp:TextBox ID="TxtEmpresaPagina" runat="server" MaxLength="50" Width="200px"></asp:TextBox></td>
</tr>
<tr>
<td>Calle</td>
<td>
<asp:TextBox ID="TxtEmpresaCalle" runat="server" MaxLength="50" Width="200px"></asp:TextBox></td>
<td>Número</td>
<td>
<asp:TextBox ID="TxtEmpresaNumero" runat="server" MaxLength="10" Width="200px"></asp:TextBox></td>
</tr>
<tr>
<td>Colonia</td>
<td>
<asp:TextBox ID="TxtEmpresaColonia" runat="server" MaxLength="50" Width="200px"></asp:TextBox></td>
<td>CódigoPostal</td>
<td>
<asp:TextBox ID="TxtEmpresaCodigoPostal" runat="server" MaxLength="5" Width="200px"></asp:TextBox><ajax:FilteredTextBoxExtender ID="FTBEEmpresaCodigoPostal" runat="server" TargetControlID="TxtEmpresaCodigoPostal" FilterType="Numbers" />
</td>
</tr>
<tr>
<td>País</td>
<td>
<asp:UpdatePanel ID="UPPEmpresaPaises" runat="server" UpdateMode="Conditional" RenderMode="Inline">
<ContentTemplate>
<asp:DropDownList ID="DdlEmpresaPaises" DataTextField="Pais" DataValueField="CvePais" Width="200px" runat="server" AutoPostBack="True"></asp:DropDownList>
</ContentTemplate>
</asp:UpdatePanel>
</td>
<td>Estado</td>
<td>
<asp:UpdatePanel ID="UPPEmpresaEstados" runat="server" UpdateMode="Conditional" RenderMode="Inline">
<ContentTemplate>
<asp:DropDownList ID="DdlEmpresaEstados" DataTextField="Estado" DataValueField="CveEstado" idth="200px" runat="server" AutoPostBack="True"></asp:DropDownList>
</ContentTemplate>
</asp:UpdatePanel>
</td>
<td>Municipio</td>
<td>
<asp:UpdatePanel ID="UPPEmpresaMunicipios" runat="server" UpdateMode="Conditional" RenderMode="Inline">
<ContentTemplate>
<asp:DropDownList ID="DdlEmpresaMunicipios" DataTextField="Municipio" DataValueField="CveMunicipio" Width="200px" runat="server"></asp:DropDownList>
</ContentTemplate>
</asp:UpdatePanel>
</td>
</tr>
<tr>
<td>Teléfono</td>
<td>
<asp:TextBox ID="TxtEmpresaTelefono" runat="server" MaxLength="50" Width="200px"></asp:TextBox></td>
<td>Fax</td>
<td>
<asp:TextBox ID="TxtEmpresaFax" runat="server" MaxLength="50" Width="200px"></asp:TextBox></td>
<td>Correo</td>
<td>
<asp:TextBox ID="TxtEmpresaCorreo" runat="server" MaxLength="50" Width="200px"></asp:TextBox></td>
</tr>
<tr>
<td>Puesto</td>
<td>
<asp:TextBox ID="TxtEmpresaPuesto" runat="server" MaxLength="50" Width="200px"></asp:TextBox></td>
<td>Especialidad</td>
<td>
<asp:TextBox ID="TxtEmpresaEspecialidad" runat="server" MaxLength="50" Width="200px"></asp:TextBox></td>
<td></td>
</tr>
</table>
</fieldset>
<br />
<fieldset>
<legend><b>Envío de Correspondencia</b></legend>
<table border="0">
<tr>
<td>EnvioCorrespondencia</td>
<td>
<asp:CheckBox ID="ChkEnvioCorrespondencia" runat="server" /></td>
</tr>
</table>
</fieldset>
<br />
<fieldset>
<legend><b>Datos Fiscales</b></legend>
<table border="0">
<tr>
<td>Razón Social</td>
<td>
<asp:TextBox ID="TxtFiscalRazonSocial" runat="server" MaxLength="100" Width="490px"></asp:TextBox></td>
<td>RFC</td>
<td>
<asp:TextBox ID="TxtFiscalRFC" runat="server" MaxLength="13" Width="200px"></asp:TextBox></td>
</tr>
<tr>
<td>Domicilio</td>
<td>
<asp:TextBox ID="TxtFiscalDomicilio" runat="server" MaxLength="100" Width="490px"></asp:TextBox></td>
<td>Colonia</td>
<td>
<asp:TextBox ID="TxtFiscalColonia" runat="server" MaxLength="50" Width="200px"></asp:TextBox></td>
</tr>
<tr>
<td>Código Postal</td>
<td>
<asp:TextBox ID="TxtFiscalCodigoPostal" runat="server" MaxLength="5" Width="200px"></asp:TextBox>
<ajax:FilteredTextBoxExtender ID="ftbeFiscalCodigoPostal" runat="server" TargetControlID="TxtFiscalCodigoPostal" FilterType="Numbers" />
</td>
</tr>
<tr>
<td>Estado</td>
<td>
<asp:UpdatePanel ID="UPPFiscalEstados" runat="server" UpdateMode="Conditional" RenderMode="Inline">
<ContentTemplate>
<asp:DropDownList ID="DdlFiscalEstados" DataTextField="Estado" DataValueField="CveEstado" idth="200px" runat="server" AutoPostBack="True"></asp:DropDownList>
</ContentTemplate>
</asp:UpdatePanel>
</td>
<td>Municipio</td>
<td>
<asp:UpdatePanel ID="UPPFiscalMunicipios" runat="server" UpdateMode="Conditional" RenderMode="Inline">
<ContentTemplate>
<asp:DropDownList ID="DdlFiscalMunicipios" DataTextField="Municipio" DataValueField="CveMunicipio" Width="200px" runat="server"></asp:DropDownList>
</ContentTemplate>
</asp:UpdatePanel>
</td>
</tr>
</table>
</fieldset>
</div>
</td>
</tr>
</table>
</ContentTemplate>
</ajax:TabPanel>
<ajax:TabPanel ID="TabCarac" runat="server" HeaderText="Escolaridad">
<ContentTemplate>
<table border="0" class="contenido">
<tr>
<td>
<asp:GridView ID="GvClasificaciones" runat="server" ShowHeader="false" AutoGenerateColumns="False" DataKeyNames="CveCaracteristicaClasificacion" EmptyDataText="No se encontraron Clasificaciones de Caracteristicas Registradas" ToolTip="Listado de Clasificaciones de Caracteristicas">
<Columns>
<asp:TemplateField>
<ItemStyle BorderStyle="None" />
<ItemTemplate>
<asp:Label Font-Bold="true" Width="100%" ID="LblCaracteristicaClasificacion" runat="server" Text='<%# Eval("CaracteristicaClasificacion")%>'></asp:Label>
<asp:GridView ID="GvTiposCaracteristicas" ShowHeader="false" OnRowDataBound="GvTiposCaracteristicas_RowDataBound" runat="server" AutoGenerateColumns="False" DataKeyNames="CveCaracteristicaTipo" EmptyDataText="No se encontraron Tipos de Caracteristicas Registrados" ToolTip="Listado de Tipos de Caracteristicas">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:Label Font-Bold="true" Width="100%" ID="LblCaracteristicaTipo" runat="server" Text='<%# Eval("CaracteristicaTipo")%>'></asp:Label>
<asp:GridView ID="GvCaracteristicas" ShowHeader="false" OnRowDataBound="GvCaracteristicas_RowDataBound" runat="server" AutoGenerateColumns="False" DataKeyNames="CveCaracteristica" EmptyDataText="No se encontraron Caracteristicas Registrados" ToolTip="Listado de Caracteristicas">
<Columns>
<asp:TemplateField>
<ItemStyle BorderStyle="None" />
<ItemTemplate>
<asp:Label ID="LtlCaracteristica" runat="server" Text='<%# Eval("Caracteristica")%>' Width="200px"></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemStyle BorderStyle="None" />
<ItemTemplate>
<asp:TextBox ID="TxtValor" Visible="false" runat="server" CausesValidation="true" MaxLength="50" ValidationGroup="GrpEditGuardarCl" Width="400px"></asp:TextBox>
<asp:ImageButton runat="server" ID="ImgTxtValor" Visible="false" ImageUrl="/Imagenes/calendar.png" ImageAlign="AbsMiddle" Width="16px" Height="16px" AlternateText="Click para ver el Calendario" />
<ajax:MaskedEditExtender ID="MEETxtValor" Enabled="false" runat="server" TargetControlID="TxtValor" Mask="99/99/9999" MaskType="Date" UserDateFormat="DayMonthYear" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CETxtValor" TargetControlID="TxtValor" PopupButtonID="ImgTxtValor" PopupPosition="BottomRight" Enabled="False"></ajax:CalendarExtender>
<asp:DropDownList ID="DdlCaracteristicaOpcion" Visible="false" runat="server" DataValueField="CveCaracteristicaOpcion" DataTextField="CaracteristicaOpcion"></asp:DropDownList>
<asp:RadioButtonList ID="RbCaracteristicaOpcion" Visible="false" RepeatDirection="Horizontal" runat="server" DataValueField="CveCaracteristicaOpcion" DataTextField="CaracteristicaOpcion" ValidationGroup="GrpGuardar"></asp:RadioButtonList>
<asp:RequiredFieldValidator ID="RFVRbCaracteristicaOpcion" runat="server" ControlToValidate="RbCaracteristicaOpcion" Display="None" ErrorMessage="&lt;b&gt;&lt;span style='text-decoration: underline'&gt;ERROR:&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;El campo &lt;b&gt;'' ''&lt;/b&gt; es necesario, por favor seleccione uno." InitialValue="-1" ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCORbOpcion" runat="server" HighlightCssClass="vco" TargetControlID="RFVRbCaracteristicaOpcion" Width="300px"></ajax:ValidatorCalloutExtender>
<asp:HiddenField ID="HdnEsOpcion" runat="server" Value='<%# Eval("EsOpcion")%>' />
<asp:HiddenField ID="HdnCveCaracteristica" runat="server" Value='<%# Eval("CveCaracteristica")%>' />
<asp:HiddenField ID="HdnCveValor" runat="server" Value="-1" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</td>
</tr>
<tr>
<td>
<div>
<fieldset>
<legend><b>Plan de Beneficio por Defunción</b></legend>
<table>
<tr>
<td align="center">BENEFICIARIOS</td>
<td align="center">%</td>
<td align="center">PARENTESCO</td>
</tr>
<tr>
<td>
<asp:TextBox ID="TxtNombreReferencia1" runat="server" Width="345px"></asp:TextBox><asp:HiddenField ID="HdnCveReferencia1" runat="server" Value="-1" />
</td>
<td>
<asp:TextBox ID="TxtPorcentaje1" Style="text-align: right" runat="server" Width="50px"></asp:TextBox>
<asp:CompareValidator ID="CVPorcentaje1" runat="server" ControlToValidate="TxtPorcentaje1" Display="None" ErrorMessage="El campo <b>''Porcentaje''</b> no tiene el formato correcto, por favor corrija e intente de nuevo (Solo formato numérico)." Operator="DataTypeCheck" Type="Double" ValidationGroup="GrpGuardar"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCOPorcentaje1" runat="server" HighlightCssClass="vco" TargetControlID="CVPorcentaje1" Width="300px"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtParentesco1" runat="server" Width="150px"></asp:TextBox></td>
</tr>
<tr>
<td>
<asp:TextBox ID="TxtNombreReferencia2" runat="server" Width="345px"></asp:TextBox><asp:HiddenField ID="HdnCveReferencia2" runat="server" Value="-1" />
</td>
<td>
<asp:TextBox ID="TxtPorcentaje2" Style="text-align: right" runat="server" Width="50px"></asp:TextBox>
<asp:CompareValidator ID="CVPorcentaje2" runat="server" ControlToValidate="TxtPorcentaje2" Display="None" ErrorMessage="El campo <b>''Porcentaje''</b> no tiene el formato correcto, por favor corrija e intente de nuevo (Solo formato numérico)." Operator="DataTypeCheck" Type="Double" ValidationGroup="GrpGuardar"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCOPorcentaje2" runat="server" HighlightCssClass="vco" TargetControlID="CVPorcentaje2" Width="300px"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtParentesco2" runat="server" Width="150px"></asp:TextBox></td>
</tr>
<tr>
<td>
<asp:TextBox ID="TxtNombreReferencia3" runat="server" Width="345px"></asp:TextBox><asp:HiddenField ID="HdnCveReferencia3" runat="server" Value="-1" />
</td>
<td>
<asp:TextBox ID="TxtPorcentaje3" Style="text-align: right" runat="server" Width="50px"></asp:TextBox>
<asp:CompareValidator ID="CVPorcentaje3" runat="server" ControlToValidate="TxtPorcentaje3" Display="None" ErrorMessage="El campo <b>''Porcentaje''</b> no tiene el formato correcto, por favor corrija e intente de nuevo (Solo formato numérico)." Operator="DataTypeCheck" Type="Double" ValidationGroup="GrpGuardar"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCOPorcentaje3" runat="server" HighlightCssClass="vco" TargetControlID="CVPorcentaje3" Width="300px"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtParentesco3" runat="server" Width="150px"></asp:TextBox></td>
</tr>
<tr>
<td>
<asp:TextBox ID="TxtNombreReferencia4" runat="server" Width="345px"></asp:TextBox><asp:HiddenField ID="HdnCveReferencia4" runat="server" Value="-1" />
</td>
<td>
<asp:TextBox ID="TxtPorcentaje4" Style="text-align: right" runat="server" Width="50px"></asp:TextBox>
<asp:CompareValidator ID="CVPorcentaje4" runat="server" ControlToValidate="TxtPorcentaje4" Display="None" ErrorMessage="El campo <b>''Porcentaje''</b> no tiene el formato correcto, por favor corrija e intente de nuevo (Solo formato numérico)." Operator="DataTypeCheck" Type="Double" ValidationGroup="GrpGuardar"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCOPorcentaje4" runat="server" HighlightCssClass="vco" TargetControlID="CVPorcentaje4" Width="300px"></ajax:ValidatorCalloutExtender>
</td>
<td>
<asp:TextBox ID="TxtParentesco4" runat="server" Width="150px"></asp:TextBox></td>
</tr>
</table>
<table>
<tr>
<td width="300px" align="center">A FALTA DE BENEFICIARIO, SE NOMBRA SUSTITUTO</td>
<td width="250px" align="center">PARA MENOR DE EDAD NOMBRAR UN TUTOR</td>
</tr>
<tr>
<td>
<asp:TextBox ID="TxtNombreReferenciaSustituto1" runat="server" Width="300px"></asp:TextBox><asp:HiddenField ID="HdnCveReferenciaSustituto1" runat="server" Value="-1" />
</td>
<td>
<asp:TextBox ID="TxtParentescoSustituto1" runat="server" Width="250px"></asp:TextBox></td>
</tr>
<tr>
<td>
<asp:TextBox ID="TxtNombreReferenciaSustituto2" runat="server" Width="300px"></asp:TextBox><asp:HiddenField ID="HdnCveReferenciaSustituto2" runat="server" Value="-1" />
</td>
<td>
<asp:TextBox ID="TxtParentescoSustituto2" runat="server" Width="250px"></asp:TextBox></td>
</tr>
<tr>
<td>
<asp:TextBox ID="TxtNombreReferenciaSustituto3" runat="server" Width="300px"></asp:TextBox><asp:HiddenField ID="HdnCveReferenciaSustituto3" runat="server" Value="-1" />
</td>
<td>
<asp:TextBox ID="TxtParentescoSustituto3" runat="server" Width="250px"></asp:TextBox></td>
</tr>
</table>
</fieldset>
</div>
</td>
</tr>
</table>
</ContentTemplate>
</ajax:TabPanel>
</ajax:TabContainer>
</ContentTemplate>
</asp:UpdatePanel>
</td>
</tr>
<tr>
<td align="center">
<br />
<asp:UpdatePanel ID="UpGuardar" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Button ID="BtnGuardar" runat="server" Text="Guardar" ValidationGroup="GrpGuardar" />
<asp:Button ID="BtnEliminar" runat="server" Text="Eliminar" Visible="False" />
<asp:Button ID="BtnCancelar" runat="server" Text="Cancelar" OnClientClick="javascript:window.location.href='/Prospectos/CatProspectos.aspx';return false" />
<asp:ValidationSummary ID="VS" runat="server" DisplayMode="BulletList" ShowSummary="true" ValidationGroup="GrpGuardar" />
</ContentTemplate>
</asp:UpdatePanel>
<br />
</td>
</tr>
</table>
<br />
<%-- PORLET BITACORA NUEVO --%>
<div class="row">
<div class="col-md-12 ">
<div class="portlet light bordered">
<div class="portlet-title">
<div class="caption font-green">
<span class="caption-subject bold uppercase">Bitacora</span>
</div>
<div class="actions">
<div class="btn-group">
<asp:HyperLink ID="ImgAddObs" CssClass="caption-subject bold" data-toggle="modal" data-target="#ModalBitacora" runat="server" Text=" <i class='fa fa-commenting font-green' style='font-weight: 700 !important;' ><span class='caption-subject bold'>Agregar</span></i>" Style="cursor: pointer;" ToolTip="Observaciones"></asp:HyperLink><br />
<asp:HyperLink ID="HlEvento" CssClass="thickbox caption-subject bold" runat="server" Text=" <i class='fa fa-calendar-plus-o font-green' style='font-weight: 700 !important;' >Agendar</i>" Visible="false" Style="cursor: pointer;" ToolTip="Agendar"></asp:HyperLink>
</div>
</div>
</div>
<div class="portlet-body">
<asp:UpdatePanel ID="UPEventoBitacora" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GVEventoBitacora" runat="server" AutoGenerateColumns="False" EmptyDataText="No se han capturado comentarios o bitácora">
<Columns>
<asp:TemplateField>
<HeaderTemplate>Fecha</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlFecha" runat="server" Text='<%# Eval("FechaIng") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Fecha Agenda</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlFechaAgenda" runat="server" Text='<%# Eval("FechaInicio") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Usuario</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlUsuario" runat="server" Text='<%# Eval("Usuario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Descripción</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlEventoBitacora" runat="server" Text='<%# Eval("Descripcion") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Estatus</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlEventoEstatus" runat="server" Text='<%# Eval("EventoEstatus") %>'></asp:Literal>
<asp:LinkButton ID="LnkEventoEstatus" runat="server" ToolTip="Concluir"><img src="../Imagenes/Btn_Update2.png" alt ="Concluir"/></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Archivo</HeaderTemplate>
<ItemTemplate>
<asp:LinkButton ID="LinkArchivo" Visible="false" runat="server" CssClass="Texto" OnClick="DownloadFile">
<asp:Image ImageUrl="/Imagenes/Abajo.png" ID="ImgArchivo" runat="server" />
</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<HeaderStyle CssClass="Titulos" />
<AlternatingRowStyle CssClass="TextoAlterno" />
<RowStyle CssClass="Texto" />
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</div>
</div>
<%--<table id="TblEventoBitacora" runat="server" border="1" rules="all" style="border-collapse: collapse;">
<tr>
<td align="left" class="rep_titulo" style="width: 980px">
<b>Bitácora</b>&nbsp;<asp:Image ID="ImgAddObs" runat="server" ImageUrl="~/Imagenes/add_comment.png" AlternateText="Agregar Observación" Style="cursor: pointer;" ToolTip="Agregar a Bitacora" />
<asp:HyperLink ID="ImgAddObs" CssClass="caption-subject bold" data-toggle="modal" data-target="#ModalBitacora" runat="server" Text=" <i class='fa fa-commenting font-green' style='font-weight: 700 !important;' ><span class='caption-subject bold'>Agregar</span></i>" Style="cursor: pointer;" ToolTip="Observaciones"></asp:HyperLink><br />
<asp:HyperLink ID="HlEvento" CssClass="Texto thickbox" runat="server" Text="Agendar..." Visible="false" ImageUrl="/Imagenes/date_add.png" Style="cursor: pointer;" ToolTip="Agendar"></asp:HyperLink>
</td>
</tr>
<tr>
<td>
<asp:UpdatePanel ID="UPEventoBitacora" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GVEventoBitacora" runat="server" AutoGenerateColumns="False" EmptyDataText="No se han capturado comentarios o bitácora">
<Columns>
<asp:TemplateField>
<HeaderTemplate>Fecha</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlFecha" runat="server" Text='<%# Eval("FechaIng") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Fecha Agenda</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlFecha" runat="server" Text='<%# Eval("FechaInicio") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Usuario</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlUsuario" runat="server" Text='<%# Eval("Usuario") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Descripción</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlEventoBitacora" runat="server" Text='<%# Eval("Descripcion") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Estatus</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlEventoEstatus" runat="server" Text='<%# Eval("EventoEstatus") %>'></asp:Literal>
<asp:LinkButton ID="LnkEventoEstatus" runat="server" ToolTip="Concluir"><img src="../Imagenes/Btn_Update2.png" alt ="Concluir"/></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<HeaderStyle CssClass="Titulos" />
<AlternatingRowStyle CssClass="TextoAlterno" />
<RowStyle CssClass="Texto" />
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</td>
</tr>
</table>--%>
<br />
<%-- MODAL BITACORA --%>
<div id="ModalBitacora" class="modal ADS fade" role="dialog">
<div class="modal-dialog">
<!-- Modal content-->
<div class="modal-content" style="width: 700px;">
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">&times;</button>
<h4 class="modal-title">Bitácora</h4>
</div>
<div class="modal-body">
<asp:UpdatePanel runat="server" ID="UPAddEventoBitacora" UpdateMode="Conditional">
<ContentTemplate>
<div class="row">
<div class="col-md-8">
<label>Bitácora/Observaciones</label>
<br />
<asp:TextBox CssClass="form-control" ID="TxtEventoDescripcion" class="Widthall" runat="server" TextMode="MultiLine" Columns="60" Rows="8"></asp:TextBox>
<br />
<%--<asp:CheckBox ID="ChkEventoPrioridad" CssClass="md-checksd2" Text="Bitácora de Atención" runat="server" />--%>
</div>
<div class="col-md-4">
<div>
<asp:TextBox ID="Anexo" CssClass="ADSdropzone hidden" data-maxFile="1" Text="" runat="server"></asp:TextBox>
</div>
</div>
</div>
<%--<div>
<asp:TextBox ID="Anexo" CssClass="ADSdropzone hidden" data-maxFile="1" Text="" runat="server"></asp:TextBox>
</div> --%>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<div class="modal-footer">
<asp:UpdatePanel runat="server">
<ContentTemplate>
<asp:Button ID="BtnGuardarEventoBitacora" runat="server" ClientIDMode="Static" Text="Guardar" CssClass="btn btn-primary" />
<button type="button" class="btn btn-danger" data-dismiss="modal">Cancelar</button>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</div>
</div>
<%-- FIN MODAL BITACORA --%>
<%--<asp:UpdatePanel runat="server" ID="UPAddEventoBitacora" UpdateMode="Conditional">
<ContentTemplate>
<div id="DivEventoBitacora" style="width: 335px; background-color: White; border: solid 1px black; color: Black; display: none; position: absolute;">
<table border="0" width="335px" cellpadding="0" cellspacing="0">
<tr class="Titulos">
<td style="width: 330px">Bitácora&nbsp;</td>
<td style="padding-right: 4px; padding-top: 4px" valign="top">
<img alt="" src="/Imagenes/close.gif" style="cursor: pointer;" onclick="$('#DivEventoBitacora').hide(1000);" /></td>
</tr>
<tr align="left">
<td>
<table>
<tr>
<td>Bitácora/Observaciones</td>
</tr>
<tr>
<td>
<asp:TextBox ID="TxtEventoDescripcion" runat="server" TextMode="MultiLine" Columns="60" Rows="4"></asp:TextBox>
</td>
</tr>
</table>
</td>
</tr>
<tr style="height: 25px">
<td align="center" colspan="2">
<asp:Button ID="BtnGuardarEventoBitacora" runat="server" ClientIDMode="Static" OnClientClick="$('#DivEventoBitacora').hide(1000);" Text="Guardar" />
<input id="BtnCancelarObs" type="button" value="Cancelar" onclick="$('#DivEventoBitacora').hide(1000);" />
</td>
</tr>
</table>
</div>
</ContentTemplate>
</asp:UpdatePanel>--%>
<script src="/Metronic/assets/global/plugins/dropzone/dropzone.js"></script>
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="Css" runat="Server">
<link href="/Metronic/assets/global/plugins/dropzone/css/dropzone.css" rel="stylesheet" />
</asp:Content>

620
RH/Prospectos.aspx.vb Normal file
View File

@@ -0,0 +1,620 @@
Option Explicit On
Option Strict On
Imports Extensiones
Imports System.Runtime.InteropServices
Imports System.IO
Imports System.Data
Partial Class Prospectos_Prospectos
Inherits ClsPaginas
'Confinguración
Private Property DTProspectosValores As DataTable
Get
Return CType(ViewState("DTProspectosValores"), DataTable)
End Get
Set(value As DataTable)
ViewState("DTProspectosValores") = value
End Set
End Property
Private ReadOnly Property CveProspecto As Integer
Get
Return ViewState("CveProspecto").ToString.ToEntero
End Get
End Property
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
'ViewState("OCveProspecto") = "CveProspecto DESC"
'ViewState("OCveCliente") = "CveCliente DESC"
'ViewState("OApellidoPaterno") = "ApellidoPaterno DESC"
'ViewState("OApellidoMaterno") = "ApellidoMaterno DESC"
'ViewState("ONombres") = "Nombres DESC"
'ViewState("OFechaNacimiento") = "FechaNacimiento DESC"
'ViewState("OLugarNacimiento") = "LugarNacimiento DESC"
'ViewState("ORFC") = "RFC DESC"
'ViewState("ONacionalidad") = "Nacionalidad DESC"
'ViewState("OCalle") = "Calle DESC"
'ViewState("ONumero") = "Numero DESC"
'ViewState("OColonia") = "Colonia DESC"
'ViewState("OCodigoPostal") = "CodigoPostal DESC"
'ViewState("OPais") = "Pais DESC"
'ViewState("OMunicipio") = "Municipio DESC"
'ViewState("OEstado") = "Estado DESC"
'ViewState("OTelefono") = "Telefono DESC"
'ViewState("OFax") = "Fax DESC"
'ViewState("OCorreo") = "Correo DESC"
'ViewState("OEmpresaNombre") = "EmpresaNombre DESC"
'ViewState("OEmpresaGiro") = "EmpresaGiro DESC"
'ViewState("OEmpresaSector") = "EmpresaSector DESC"
'ViewState("OEmpresaPagina") = "EmpresaPagina DESC"
'ViewState("OEmpresaCalle") = "EmpresaCalle DESC"
'ViewState("OEmpresaNumero") = "EmpresaNumero DESC"
'ViewState("OEmpresaColonia") = "EmpresaColonia DESC"
'ViewState("OEmpresaCodigoPostal") = "EmpresaCodigoPostal DESC"
'ViewState("OEmpresaPais") = "EmpresaPais DESC"
'ViewState("OEmpresaMunicipio") = "EmpresaMunicipio DESC"
'ViewState("OEmpresaEstado") = "EmpresaEstado DESC"
'ViewState("OEmpresaTelefono") = "EmpresaTelefono DESC"
'ViewState("OEmpresaFax") = "EmpresaFax DESC"
'ViewState("OEmpresaCorreo") = "EmpresaCorreo DESC"
'ViewState("OEmpresaPuesto") = "EmpresaPuesto DESC"
'ViewState("OEmpresaEspecialidad") = "EmpresaEspecialidad DESC"
'ViewState("OEnvioCorrespondencia") = "EnvioCorrespondencia DESC"
'ViewState("OFiscalRazonSocial") = "FiscalRazonSocial DESC"
'ViewState("OFiscalDomicilio") = "FiscalDomicilio DESC"
'ViewState("OFiscalColonia") = "FiscalColonia DESC"
'ViewState("OFiscalCodigoPostal") = "FiscalCodigoPostal DESC"
'ViewState("OFiscalMunicipio") = "FiscalMunicipio DESC"
'ViewState("OFiscalEstado") = "FiscalEstado DESC"
'ViewState("OFiscalRFC") = "FiscalRFC DESC"
'ViewState("OCveEstatus") = "CveEstatus DESC"
'ViewState("OFechaIng") = "FechaIng DESC"
'ViewState("OCveUsuario") = "CveUsuario DESC"
'ViewState("OCveEmpresa") = "CveEmpresa DESC"
DdlPaises.DataSource = GlobalDTGralPaises : DdlPaises.DataBind()
DdlPaises.SelectedValue = "1"
DdlEmpresaPaises.SelectedValue = "1"
DdlEmpresaPaises.DataSource = GlobalDTGralPaises : DdlEmpresaPaises.DataBind()
DdlFiscalEstados.DataSource = GlobalDTGralEstados(1) : DdlFiscalEstados.DataBind()
'DdlMunicipios.DataSource = GlobalDTGralMunicipios : DdlMunicipios.DataBind()
If Request("CveProspecto") IsNot Nothing AndAlso IsNumeric(Request("CveProspecto")) AndAlso Request("CveProspecto").ToEntero > 0 Then
ViewState("CveProspecto") = Request("CveProspecto")
CargaDatos()
'Configuración de Modalidad Update
BtnGuardar.Text = "Guardar Cambios"
LtlTitulo.Text = "Consulta del Prospecto:"
'ImgAddObs.Attributes.Add("onclick", "javascript:$('#DivEventoBitacora').show(1000); PosicionaObjeto(this.id,'DivEventoBitacora');")
'Else
' CargaEstados(DdlEstados, DdlPaises.SelectedValue.ToEntero)
' CargaMunicipios(DdlMunicipios, DdlEstados.SelectedValue.ToEntero)
' CargaEstados(DdlEmpresaEstados, DdlEmpresaPaises.SelectedValue.ToEntero)
' CargaMunicipios(DdlEmpresaMunicipios, DdlEmpresaEstados.SelectedValue.ToEntero)
' CargaMunicipios(DdlFiscalMunicipios, DdlFiscalEstados.SelectedValue.ToEntero)
' ViewState("CveProspecto") = -1
Else
CargaEstados(DdlEstados, 1)
DdlEstados.SelectedValue = "26"
CargaMunicipios(DdlMunicipios, DdlEstados.SelectedValue.ToEntero)
DdlMunicipios.SelectedValue = "1919"
CargaEstados(DdlEmpresaEstados, 1)
DdlEmpresaEstados.SelectedValue = "26"
CargaMunicipios(DdlEmpresaMunicipios, DdlEmpresaEstados.SelectedValue.ToEntero)
DdlEmpresaMunicipios.SelectedValue = "1919"
DdlEmpresaEstados.SelectedValue = "26"
CargaMunicipios(DdlMunicipios, DdlEmpresaEstados.SelectedValue.ToEntero)
DdlMunicipios.SelectedValue = "1919"
CargaEstados(DdlEmpresaEstados, 1)
DdlFiscalEstados.SelectedValue = "26"
CargaMunicipios(DdlFiscalMunicipios, DdlFiscalEstados.SelectedValue.ToEntero)
DdlFiscalMunicipios.SelectedValue = "1919"
ViewState("CveProspecto") = -1
End If
CargaCaracteristicas()
End If
End Sub
Private Sub CargaDatos()
Dim ObjProspectos As New ClsProspectos
If ObjProspectos.GetProspectos(CveProspecto, "-1", "-1", -1, -1, -1, -1, -1, -1, UsuarioActual.CveEmpresa) Then
If ObjProspectos.DtResultados.Rows.Count > 0 Then
TxtCveProspecto.Text = ObjProspectos.CveProspecto.ToString
TxtApellidoPaterno.Text = ObjProspectos.ApellidoPaterno
TxtApellidoMaterno.Text = ObjProspectos.ApellidoMaterno
TxtNombres.Text = ObjProspectos.Nombres
TxtFechaNacimiento.Text = ObjProspectos.FechaNacimiento.ToString
TxtLugarNacimiento.Text = ObjProspectos.LugarNacimiento
TxtRFC.Text = ObjProspectos.RFC
TxtNacionalidad.Text = ObjProspectos.Nacionalidad
TxtCalle.Text = ObjProspectos.Calle
TxtNumero.Text = ObjProspectos.Numero
TxtNumeroInterior.Text = ObjProspectos.NumeroInterior
TxtColonia.Text = ObjProspectos.Colonia
TxtCodigoPostal.Text = ObjProspectos.CodigoPostal.ToString
DdlSexo.SelectedValue = ObjProspectos.Sexo.ToString
DdlPaises.SelectedValue = ObjProspectos.CvePais.ToString
CargaEstados(DdlEstados, DdlPaises.SelectedValue.ToEntero)
DdlEstados.SelectedValue = ObjProspectos.CveEstado.ToString
CargaMunicipios(DdlMunicipios, DdlEstados.SelectedValue.ToEntero)
DdlMunicipios.SelectedValue = ObjProspectos.CveMunicipio.ToString
TxtTelefono.Text = ObjProspectos.Telefono
TxtFax.Text = ObjProspectos.Fax
TxtCorreo.Text = ObjProspectos.Correo
TxtEmpresaNombre.Text = ObjProspectos.EmpresaNombre
TxtEmpresaGiro.Text = ObjProspectos.EmpresaGiro
TxtEmpresaSector.Text = ObjProspectos.EmpresaSector
TxtEmpresaPagina.Text = ObjProspectos.EmpresaPagina
TxtEmpresaCalle.Text = ObjProspectos.EmpresaCalle
TxtEmpresaNumero.Text = ObjProspectos.EmpresaNumero
TxtEmpresaColonia.Text = ObjProspectos.EmpresaColonia
TxtEmpresaCodigoPostal.Text = ObjProspectos.EmpresaCodigoPostal
DdlEmpresaPaises.SelectedValue = ObjProspectos.CveEmpresaPais.ToString
CargaEstados(DdlEmpresaEstados, DdlEmpresaPaises.SelectedValue.ToEntero)
DdlEmpresaEstados.SelectedValue = ObjProspectos.CveEmpresaEstado.ToString
CargaMunicipios(DdlEmpresaMunicipios, DdlEmpresaEstados.SelectedValue.ToEntero)
DdlEmpresaMunicipios.SelectedValue = ObjProspectos.CveEmpresaMunicipio.ToString
'cveEmpresaPais.Text = ObjProspectos.EmpresaPais
'TxtEmpresaMunicipio.Text = ObjProspectos.EmpresaMunicipio
'TxtEmpresaEstado.Text = ObjProspectos.EmpresaEstado
TxtEmpresaTelefono.Text = ObjProspectos.EmpresaTelefono
TxtEmpresaFax.Text = ObjProspectos.EmpresaFax
TxtEmpresaCorreo.Text = ObjProspectos.EmpresaCorreo
TxtEmpresaPuesto.Text = ObjProspectos.EmpresaPuesto
TxtEmpresaEspecialidad.Text = ObjProspectos.EmpresaEspecialidad
ChkEnvioCorrespondencia.Checked = ObjProspectos.EnvioCorrespondencia
TxtFiscalRazonSocial.Text = ObjProspectos.FiscalRazonSocial
TxtFiscalDomicilio.Text = ObjProspectos.FiscalDomicilio
TxtFiscalColonia.Text = ObjProspectos.FiscalColonia
TxtFiscalCodigoPostal.Text = ObjProspectos.FiscalCodigoPostal
CargaEstados(DdlFiscalEstados, 1)
DdlFiscalEstados.SelectedValue = ObjProspectos.CveFiscalEstado.ToString
CargaMunicipios(DdlFiscalMunicipios, DdlFiscalEstados.SelectedValue.ToEntero)
DdlFiscalMunicipios.SelectedValue = ObjProspectos.CveFiscalMunicipio.ToString
TxtFiscalRFC.Text = ObjProspectos.FiscalRFC
'TxtCveEstatus.Text = ObjProspectos.CveEstatus
'TxtFechaIng.Text = ObjProspectos.FechaIng
'TxtCveUsuario.Text = ObjProspectos.CveUsuario
'TxtCveEmpresa.Text = ObjProspectos.CveEmpresa
'Cargar los Valores de las Caractertisticas
If ObjProspectos.GetProspectosValores(CveProspecto) Then
ViewState("DTProspectosValores") = ObjProspectos.DtResultados
End If
'Cargar Referencias de Beneficiarios
If ObjProspectos.GetProspectosReferencias(CveProspecto) Then
Dim Beneficiarios As DataTable = ObjProspectos.DtResultados.FiltraParametros("CveTipoReferencia = " + ClsProspectos.TipoReferencias.Beneficiario.ToEntero.ToString)
Dim Sustitutos As DataTable = ObjProspectos.DtResultados.FiltraParametros("CveTipoReferencia = " + ClsProspectos.TipoReferencias.Sustituto.ToEntero.ToString)
If Beneficiarios.Rows.Count > 0 Then
HdnCveReferencia1.Value = Beneficiarios.Rows(0)("CveReferencia").ToString
TxtNombreReferencia1.Text = Beneficiarios.Rows(0)("NombreReferencia").ToString
TxtParentesco1.Text = Beneficiarios.Rows(0)("Parentesco").ToString
TxtPorcentaje1.Text = If(Beneficiarios.Rows(0)("Porcentaje").ToString.ToDouble <> 0, Beneficiarios.Rows(0)("Porcentaje").ToString, "")
End If
If Beneficiarios.Rows.Count > 1 Then
HdnCveReferencia2.Value = Beneficiarios.Rows(1)("CveReferencia").ToString
TxtNombreReferencia2.Text = Beneficiarios.Rows(1)("NombreReferencia").ToString
TxtParentesco2.Text = Beneficiarios.Rows(1)("Parentesco").ToString
TxtPorcentaje2.Text = If(Beneficiarios.Rows(1)("Porcentaje").ToString.ToDouble <> 0, Beneficiarios.Rows(1)("Porcentaje").ToString, "")
End If
If Beneficiarios.Rows.Count > 2 Then
HdnCveReferencia3.Value = Beneficiarios.Rows(2)("CveReferencia").ToString
TxtNombreReferencia3.Text = Beneficiarios.Rows(2)("NombreReferencia").ToString
TxtParentesco3.Text = Beneficiarios.Rows(2)("Parentesco").ToString
TxtPorcentaje3.Text = If(Beneficiarios.Rows(2)("Porcentaje").ToString.ToDouble <> 0, Beneficiarios.Rows(2)("Porcentaje").ToString, "")
End If
If Beneficiarios.Rows.Count > 3 Then
HdnCveReferencia4.Value = Beneficiarios.Rows(3)("CveReferencia").ToString
TxtNombreReferencia4.Text = Beneficiarios.Rows(3)("NombreReferencia").ToString
TxtParentesco4.Text = Beneficiarios.Rows(3)("Parentesco").ToString
TxtPorcentaje4.Text = If(Beneficiarios.Rows(3)("Porcentaje").ToString.ToDouble <> 0, Beneficiarios.Rows(3)("Porcentaje").ToString, "")
End If
If Sustitutos.Rows.Count > 0 Then
HdnCveReferenciaSustituto1.Value = Sustitutos.Rows(0)("CveReferencia").ToString
TxtNombreReferenciaSustituto1.Text = Sustitutos.Rows(0)("NombreReferencia").ToString
TxtParentescoSustituto1.Text = Sustitutos.Rows(0)("Parentesco").ToString
End If
If Sustitutos.Rows.Count > 1 Then
HdnCveReferenciaSustituto2.Value = Sustitutos.Rows(1)("CveReferencia").ToString
TxtNombreReferenciaSustituto2.Text = Sustitutos.Rows(1)("NombreReferencia").ToString
TxtParentescoSustituto2.Text = Sustitutos.Rows(1)("Parentesco").ToString
End If
If Sustitutos.Rows.Count > 2 Then
HdnCveReferenciaSustituto3.Value = Sustitutos.Rows(2)("CveReferencia").ToString
TxtNombreReferenciaSustituto3.Text = Sustitutos.Rows(2)("NombreReferencia").ToString
TxtParentescoSustituto3.Text = Sustitutos.Rows(2)("Parentesco").ToString
End If
End If
CargaCaracteristicas()
CargaEventoBitacora()
End If
End If
ObjProspectos.Dispose()
End Sub
#Region "E V E N T O - B I T A C O R A"
Protected Sub GVEventoBitacora_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GVEventoBitacora.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.RowIndex = 0 Then
e.Row.Cells(0).Width = Unit.Pixel(200)
e.Row.Cells(1).Width = Unit.Pixel(200)
e.Row.Cells(2).Width = Unit.Pixel(100)
e.Row.Cells(3).Width = Unit.Pixel(500)
End If
If e.Row.DBCampo("Archivo").ToString <> "" Then
e.Row.FCLinkButton("LinkArchivo").Visible = True
e.Row.FCLinkButton("LinkArchivo").CommandArgument = String.Format("OI\{0}", e.Row.DBCampo("Archivo").ToString)
ScriptManager.GetCurrent(Me).RegisterPostBackControl(e.Row.FCLinkButton("LinkArchivo")) 'Registro un evento Postbacktrigger, que recargue toda la pagina para que funcione
End If
e.Row.Cells(3).HorizontalAlign = HorizontalAlign.Left
End If
End Sub
Protected Sub BtnGuardarEventoBitacora_Click(sender As Object, e As EventArgs) Handles BtnGuardarEventoBitacora.Click
Dim ObjEventoBitacora As New ClsOIEventos
Dim FileExtension As String = "-1"
Dim filesgral As List(Of Archivo) = Anexo.getfiles().Archivos
Dim filemove As String = ""
For Each fileItem As Archivo In filesgral
FileExtension = IO.Path.GetExtension(String.Format("{0}Temp\{1}", AppDomain.CurrentDomain.BaseDirectory, fileItem.filename)).Replace(".", "")
filemove = fileItem.filename
Next
If ObjEventoBitacora.AddEventoBitacora(TxtEventoDescripcion.Text.Trim, String.Format(".{0}", FileExtension), -1, -1, CveProspecto, -1, -1, -1, -1, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
If filemove <> "" Then
filemove.FilesMove(String.Format("OI{0}", ObjEventoBitacora.CveEvento.ToString), String.Format("Empresas\{0}\OI", UsuarioActual.CveEmpresa))
End If
GVEventoBitacora.DataSource = ObjEventoBitacora.DtResultados
TxtEventoDescripcion.Text = ""
Anexo.Text = "[]"
Alert("La bitácora/observación se guardó correctamente", TipoMensaje.MsgInformacion)
RegistraScript("$('#ModalBitacora').modal('hide')", "hidemodal")
End If
ObjEventoBitacora.Dispose()
GVEventoBitacora.DataBind()
UPEventoBitacora.Update()
CargaEventoBitacora()
UPAddEventoBitacora.Update()
End Sub
Private Sub CargaEventoBitacora()
Dim ObjEventoBitacora As New ClsOIEventos()
If ObjEventoBitacora.GetAgendaBitacora(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveProspecto:=CveProspecto) Then
GVEventoBitacora.DataSource = ObjEventoBitacora.DtResultados.FiltraParametros("CveTipoEvento = 6 OR CveTipoEvento = 2")
Else
GVEventoBitacora.DataSource = Nothing
End If
GVEventoBitacora.DataBind()
End Sub
Protected Sub DownloadFile(ByVal sender As Object, ByVal e As EventArgs)
Dim filePath As String = String.Format("{0}{1}", UsuarioActual.Empresa.Ruta, CType(sender, LinkButton).CommandArgument)
Dim Archivo As New System.IO.FileInfo(filePath)
HttpContext.Current.Response.Clear()
HttpContext.Current.Response.ClearContent()
HttpContext.Current.Response.ContentType = "application/octet-stream"
HttpContext.Current.Response.AppendHeader("Content-disposition", "attachment; filename=" + Path.GetFileName(filePath))
HttpContext.Current.Response.AddHeader("Content-Length", Archivo.Length.ToString())
HttpContext.Current.Response.TransmitFile(filePath)
HttpContext.Current.Response.Flush()
HttpContext.Current.Response.End()
Archivo = Nothing
End Sub
#End Region
Private Sub CargaEstados(ddl As DropDownList, CvePais As Integer)
ddl.DataSource = GlobalDTGralEstados(CvePais) : ddl.DataBind()
End Sub
Private Sub CargaMunicipios(ddl As DropDownList, CveEstado As Integer)
ddl.DataSource = GlobalDTGralMunicipios(CveEstado) : ddl.DataBind()
End Sub
Protected Sub CargaCaracteristicas()
Dim objClasificaciones As New ClsProspectos
If objClasificaciones.GetCaracteristicasClasificaciones(UsuarioActual.CveEmpresa) Then
GvClasificaciones.DataSource = objClasificaciones.DtResultados
GvClasificaciones.DataBind()
End If
objClasificaciones.Dispose()
End Sub
Protected Sub BtnGuardar_Click(sender As Object, e As System.EventArgs) Handles BtnGuardar.Click
Dim ObjProspectos As New ClsProspectos
If CveProspecto = -1 Then
Dim RetVal As Integer = ObjProspectos.AddProspectos(-1, TxtApellidoPaterno.Text.Trim, TxtApellidoMaterno.Text.Trim,
TxtNombres.Text.Trim, TxtFechaNacimiento.Text.Trim.ToDate, TxtLugarNacimiento.Text.Trim, TxtRFC.Text.Trim, TxtNacionalidad.Text.Trim, DdlSexo.SelectedValue.ToEntero, TxtCalle.Text.Trim,
TxtNumero.Text.Trim, TxtNumeroInterior.Text.Trim, "", "", TxtColonia.Text.Trim, TxtCodigoPostal.Text.Trim.ToEntero, DdlMunicipios.SelectedValue.ToEntero,
TxtTelefono.Text.Trim, "", TxtFax.Text.Trim, "", TxtCorreo.Text.Trim, "", "", "", -1, -1, -1, TxtEmpresaNombre.Text.Trim, TxtEmpresaGiro.Text.Trim, TxtEmpresaSector.Text.Trim,
TxtEmpresaPagina.Text.Trim, TxtEmpresaCalle.Text.Trim, TxtEmpresaNumero.Text.Trim, TxtEmpresaColonia.Text.Trim, TxtEmpresaCodigoPostal.Text.Trim, DdlEmpresaMunicipios.SelectedValue.ToEntero,
TxtEmpresaTelefono.Text.Trim, TxtEmpresaFax.Text.Trim, TxtEmpresaCorreo.Text.Trim, TxtEmpresaPuesto.Text.Trim,
TxtEmpresaEspecialidad.Text.Trim, ChkEnvioCorrespondencia.Checked, TxtFiscalRazonSocial.Text.Trim, TxtFiscalDomicilio.Text.Trim, TxtFiscalColonia.Text.Trim,
TxtFiscalCodigoPostal.Text.Trim, DdlFiscalMunicipios.SelectedValue.ToEntero, TxtFiscalRFC.Text.Trim, -1, -1, -1, "", -1, -1, -1, "", 0, "", -1, -1, 1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
If RetVal > 0 Then
ViewState("CveProspecto") = ObjProspectos.CveProspecto
GuardarCaracteristicas()
GuardarReferencias()
Alert("El Prospecto se guardó correctamente.", TipoMensaje.MsgInformacion, "document.location.href=""/Prospectos/Prospectos.aspx"";")
End If
Else
If ObjProspectos.UpdateProspectos(-1, TxtApellidoPaterno.Text.Trim, TxtApellidoMaterno.Text.Trim,
TxtNombres.Text.Trim, TxtFechaNacimiento.Text.Trim.ToDate, TxtLugarNacimiento.Text.Trim, TxtRFC.Text.Trim, TxtNacionalidad.Text.Trim, DdlSexo.SelectedValue.ToEntero, TxtCalle.Text.Trim,
TxtNumero.Text.Trim, TxtNumeroInterior.Text.Trim, "", "", TxtColonia.Text.Trim, TxtCodigoPostal.Text.Trim.ToEntero, DdlMunicipios.SelectedValue.ToEntero,
TxtTelefono.Text.Trim, "", TxtFax.Text.Trim, "", TxtCorreo.Text.Trim, "", "", "", -1, -1, -1, TxtEmpresaNombre.Text.Trim, TxtEmpresaGiro.Text.Trim, TxtEmpresaSector.Text.Trim,
TxtEmpresaPagina.Text.Trim, TxtEmpresaCalle.Text.Trim, TxtEmpresaNumero.Text.Trim, TxtEmpresaColonia.Text.Trim, TxtEmpresaCodigoPostal.Text.Trim, DdlEmpresaMunicipios.SelectedValue.ToEntero,
TxtEmpresaTelefono.Text.Trim, TxtEmpresaFax.Text.Trim, TxtEmpresaCorreo.Text.Trim, TxtEmpresaPuesto.Text.Trim,
TxtEmpresaEspecialidad.Text.Trim, ChkEnvioCorrespondencia.Checked, TxtFiscalRazonSocial.Text.Trim, TxtFiscalDomicilio.Text.Trim, TxtFiscalColonia.Text.Trim,
TxtFiscalCodigoPostal.Text.Trim, DdlFiscalMunicipios.SelectedValue.ToEntero, TxtFiscalRFC.Text.Trim, -1, -1, -1, "", -1, -1, -1, "", 0, "", -1, -1, 1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveProspecto) Then
GuardarCaracteristicas()
GuardarReferencias()
UpDatos.Update()
Alert("Los cambios se guardaron correctamente.", TipoMensaje.MsgInformacion)
End If
End If
ObjProspectos.Dispose()
End Sub
Protected Sub GuardarCaracteristicas()
Dim objProspectosValores As New ClsProspectos
For Each DR As GridViewRow In GvClasificaciones.Rows
For Each DR_CaracteristicaTipo As GridViewRow In DR.FCGridView("GvTiposCaracteristicas").Rows
For Each DR_Caracteristica As GridViewRow In DR_CaracteristicaTipo.FCGridView("GvCaracteristicas").Rows
Dim CveCaracteristicaOpcion As Integer = -1
Dim CveValor As Integer = DR_Caracteristica.FCHiddenField("HdnCveValor").Value.ToEntero
Dim Valor As String = DR_Caracteristica.FCTextBox("TxtValor").Text.Trim
Dim CveCaracteristica As Integer = DR_Caracteristica.FCHiddenField("HdnCveCaracteristica").Value.ToEntero
Select Case DR_Caracteristica.FCHiddenField("HdnEsOpcion").Value
Case "1" 'Listado o DropDownList
CveCaracteristicaOpcion = DR_Caracteristica.FCDropDownList("DdlCaracteristicaOpcion").SelectedValue.ToEntero
Case "2" 'Radio o RadioButtonList
CveCaracteristicaOpcion = DR_Caracteristica.FCRadioButtonList("RbCaracteristicaOpcion").SelectedValue.ToEntero
End Select
If CveValor = -1 Then
objProspectosValores.AddProspectosValores(CveProspecto, CveCaracteristica, CveCaracteristicaOpcion, If(Valor = "", "-1", Valor), UsuarioActual.CveUsuario)
Else
objProspectosValores.UpdateProspectosValores(CveProspecto, CveCaracteristica, CveCaracteristicaOpcion, If(Valor = "", "-1", Valor), UsuarioActual.CveUsuario, CveValor)
End If
Next
Next
Next
objProspectosValores.Dispose()
End Sub
Protected Sub GuardarReferencias()
Dim objProspectosReferencias As New ClsProspectos
If HdnCveReferencia1.Value = "-1" Then
objProspectosReferencias.AddProspectosReferencias(CveProspecto, ClsProspectos.TipoReferencias.Beneficiario, TxtNombreReferencia1.Text, TxtParentesco1.Text, "", TxtPorcentaje1.Text.ToDouble, UsuarioActual.CveUsuario)
Else
objProspectosReferencias.UpdateProspectosReferencias(CveProspecto, ClsProspectos.TipoReferencias.Beneficiario, TxtNombreReferencia1.Text, TxtParentesco1.Text, "", TxtPorcentaje1.Text.ToDouble, HdnCveReferencia1.Value.ToEntero)
End If
If HdnCveReferencia2.Value = "-1" Then
objProspectosReferencias.AddProspectosReferencias(CveProspecto, ClsProspectos.TipoReferencias.Beneficiario, TxtNombreReferencia2.Text, TxtParentesco2.Text, "", TxtPorcentaje2.Text.ToDouble, UsuarioActual.CveUsuario)
Else
objProspectosReferencias.UpdateProspectosReferencias(CveProspecto, ClsProspectos.TipoReferencias.Beneficiario, TxtNombreReferencia2.Text, TxtParentesco2.Text, "", TxtPorcentaje2.Text.ToDouble, HdnCveReferencia2.Value.ToEntero)
End If
If HdnCveReferencia3.Value = "-1" Then
objProspectosReferencias.AddProspectosReferencias(CveProspecto, ClsProspectos.TipoReferencias.Beneficiario, TxtNombreReferencia3.Text, TxtParentesco3.Text, "", TxtPorcentaje3.Text.ToDouble, UsuarioActual.CveUsuario)
Else
objProspectosReferencias.UpdateProspectosReferencias(CveProspecto, ClsProspectos.TipoReferencias.Beneficiario, TxtNombreReferencia3.Text, TxtParentesco3.Text, "", TxtPorcentaje3.Text.ToDouble, HdnCveReferencia3.Value.ToEntero)
End If
If HdnCveReferencia4.Value = "-1" Then
objProspectosReferencias.AddProspectosReferencias(CveProspecto, ClsProspectos.TipoReferencias.Beneficiario, TxtNombreReferencia4.Text, TxtParentesco4.Text, "", TxtPorcentaje4.Text.ToDouble, UsuarioActual.CveUsuario)
Else
objProspectosReferencias.UpdateProspectosReferencias(CveProspecto, ClsProspectos.TipoReferencias.Beneficiario, TxtNombreReferencia4.Text, TxtParentesco4.Text, "", TxtPorcentaje4.Text.ToDouble, HdnCveReferencia4.Value.ToEntero)
End If
If HdnCveReferenciaSustituto1.Value = "-1" Then
objProspectosReferencias.AddProspectosReferencias(CveProspecto, ClsProspectos.TipoReferencias.Sustituto, TxtNombreReferenciaSustituto1.Text, TxtParentescoSustituto1.Text, "", 0, UsuarioActual.CveUsuario)
Else
objProspectosReferencias.UpdateProspectosReferencias(CveProspecto, ClsProspectos.TipoReferencias.Sustituto, TxtNombreReferenciaSustituto1.Text, TxtParentescoSustituto1.Text, "", 0, HdnCveReferenciaSustituto1.Value.ToEntero)
End If
If HdnCveReferenciaSustituto2.Value = "-1" Then
objProspectosReferencias.AddProspectosReferencias(CveProspecto, ClsProspectos.TipoReferencias.Sustituto, TxtNombreReferenciaSustituto2.Text, TxtParentescoSustituto2.Text, "", 0, UsuarioActual.CveUsuario)
Else
objProspectosReferencias.UpdateProspectosReferencias(CveProspecto, ClsProspectos.TipoReferencias.Sustituto, TxtNombreReferenciaSustituto2.Text, TxtParentescoSustituto2.Text, "", 0, HdnCveReferenciaSustituto2.Value.ToEntero)
End If
If HdnCveReferenciaSustituto3.Value = "-1" Then
objProspectosReferencias.AddProspectosReferencias(CveProspecto, ClsProspectos.TipoReferencias.Sustituto, TxtNombreReferenciaSustituto3.Text, TxtParentescoSustituto3.Text, "", 0, UsuarioActual.CveUsuario)
Else
objProspectosReferencias.UpdateProspectosReferencias(CveProspecto, ClsProspectos.TipoReferencias.Sustituto, TxtNombreReferenciaSustituto3.Text, TxtParentescoSustituto3.Text, "", 0, HdnCveReferenciaSustituto3.Value.ToEntero)
End If
objProspectosReferencias.Dispose()
End Sub
Protected Sub BtnEliminar_Click(sender As Object, e As System.EventArgs) Handles BtnEliminar.Click
Dim ObjProspectos As New ClsProspectos()
If ObjProspectos.RemoveProspectos(CveProspecto) Then
Alert("El Prospecto se Eliminó correctamente.", TipoMensaje.MsgInformacion, "document.location.href=""/Prospectos/CatProspectos.aspx""")
End If
ObjProspectos.Dispose()
End Sub
Protected Sub GvClasificaciones_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvClasificaciones.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.DBCampo("CveCaracteristicaClasificacion").ToEntero > 1 Then
e.Row.FCLabel("LblCaracteristicaClasificacion").CssClass = "CaracteristicaPrincipal"
End If
Dim objTiposCaracteristicas As New ClsProspectos
If objTiposCaracteristicas.GetTiposCaracteristicas(UsuarioActual.CveEmpresa) Then
With e.Row.FCGridView("GvTiposCaracteristicas")
.DataSource = objTiposCaracteristicas.DtResultados.FiltraParametros("CveCaracteristicaClasificacion = " + e.Row.DBCampo("CveCaracteristicaClasificacion"))
.DataBind()
End With
End If
objTiposCaracteristicas.Dispose()
End If
End Sub
Protected Sub GvTiposCaracteristicas_RowDataBound(sender As Object, e As GridViewRowEventArgs)
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.DBCampo("CaracteristicaClasificacion").Trim = "" Then
e.Row.FCLabel("LblCaracteristicaTipo").CssClass = "CaracteristicaPrincipal"
End If
Dim objCaracteristicas As New ClsProspectos
If objCaracteristicas.GetCaracteristicas(UsuarioActual.CveEmpresa) Then
With e.Row.FCGridView("GvCaracteristicas")
.DataSource = objCaracteristicas.DtResultados.FiltraParametros("Estatus = 'Activo' and CveCaracteristicaTipo = " + e.Row.DBCampo("CveCaracteristicaTipo"))
.DataBind()
End With
End If
objCaracteristicas.Dispose()
End If
End Sub
Protected Sub GvCaracteristicas_RowDataBound(sender As Object, e As GridViewRowEventArgs)
If e.Row.RowType = DataControlRowType.DataRow Then
Dim RowProspectoValor As DataRowCollection
Dim EsOpcion As Integer = e.Row.FCHiddenField("HdnEsOpcion").Value.ToEntero
Dim CveCaracteristica As Integer = e.Row.DBCampo("CveCaracteristica").ToEntero
'Dim RowProspectoValor As DataRowCollection = CType(ViewState("DTPS"), DataTable).FiltraParametros("CveCaracteristica = " + CveCaracteristica.ToString).Rows
If DTProspectosValores.Rows.Count > 0 Then
RowProspectoValor = DTProspectosValores.FiltraParametros("CveCaracteristica = " + CveCaracteristica.ToString).Rows
Else
RowProspectoValor = Nothing
End If
Dim CveValor As Integer = -1
Dim Valor As String = ""
Dim CveCaracteristicaOpcion As Integer = -1
If RowProspectoValor.Count > 0 Then
e.Row.FCHiddenField("HdnCveValor").Value = RowProspectoValor(0)("CveValor").ToString
Valor = RowProspectoValor(0)("Valor").ToString
CveCaracteristicaOpcion = RowProspectoValor(0)("CveOpcion").ToString.ToEntero
End If
Select Case EsOpcion
Case 0, 4 'Texto, Multiline
With e.Row.FCTextBox("TxtValor")
.Text = Valor
.Visible = True
If EsOpcion = 4 Then
.Rows = 3
.TextMode = TextBoxMode.MultiLine
End If
End With
Case 1, 2 'DropDownList, Radios
Dim objOpciones As New ClsProspectos
If objOpciones.GetCaracteristicasOpciones(CveCaracteristica, UsuarioActual.CveEmpresa) Then
If EsOpcion = 1 Then
With e.Row.FCDropDownList("DdlCaracteristicaOpcion")
.Visible = True
.DataSource = objOpciones.DtResultados.FiltraParametros("Estatus = 'Activo'")
.DataBind()
.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
.SelectedValue = CveCaracteristicaOpcion.ToString
End With
ElseIf EsOpcion = 2 Then
With e.Row.FCRadioButtonList("RbCaracteristicaOpcion")
.Visible = True
.DataSource = objOpciones.DtResultados.FiltraParametros("Estatus = 'Activo'")
.DataBind()
If CveCaracteristicaOpcion > 0 Then
.SelectedValue = CveCaracteristicaOpcion.ToString
End If
End With
End If
End If
objOpciones.Dispose()
Case 3 'Fecha
With e.Row.FCTextBox("TxtValor")
If Valor <> "" Then
.Text = Valor
End If
.Visible = True
.Width = New Unit(80)
End With
e.Row.FCImageButton("ImgTxtValor").Visible = True
e.Row.FCMaskedEditExtender("MEETxtValor").Enabled = True
e.Row.FCCalendarExtender("CETxtValor").Enabled = True
End Select
End If
End Sub
Protected Sub DdlPaises_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlPaises.SelectedIndexChanged
CargaEstados(DdlEstados, DdlPaises.SelectedValue.ToEntero)
UPPEstados.Update()
CargaMunicipios(DdlMunicipios, DdlEstados.SelectedValue.ToEntero)
UPPMunicipios.Update()
End Sub
Protected Sub DdlEstados_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlEstados.SelectedIndexChanged
CargaMunicipios(DdlMunicipios, DdlEstados.SelectedValue.ToEntero)
UPPMunicipios.Update()
End Sub
Protected Sub DdlEmpresaPaises_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlEmpresaPaises.SelectedIndexChanged
CargaEstados(DdlEmpresaEstados, DdlEmpresaPaises.SelectedValue.ToEntero)
UPPEmpresaEstados.Update()
CargaMunicipios(DdlEmpresaMunicipios, DdlEmpresaEstados.SelectedValue.ToEntero)
UPPEmpresaMunicipios.Update()
End Sub
Protected Sub DdlEmpresaEstados_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlEmpresaEstados.SelectedIndexChanged
CargaMunicipios(DdlEmpresaMunicipios, DdlEmpresaEstados.SelectedValue.ToEntero)
UPPEmpresaMunicipios.Update()
End Sub
Protected Sub DdlFiscalEstados_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlFiscalEstados.SelectedIndexChanged
CargaMunicipios(DdlFiscalMunicipios, DdlFiscalEstados.SelectedValue.ToEntero)
UPPFiscalMunicipios.Update()
End Sub
End Class

3672
RH/Reclutamiento.aspx Normal file

File diff suppressed because it is too large Load Diff

5825
RH/Reclutamiento.aspx.vb Normal file

File diff suppressed because it is too large Load Diff

18
RH/RepAnomalias.aspx Normal file
View File

@@ -0,0 +1,18 @@
<%@ Page Title="RH - Anomalías" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RepAnomalias.aspx.vb" Inherits="RH_RepAnomalias" %>
<asp:Content ID="Content4" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="Css" runat="Server">
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="E" runat="Server">
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="H" runat="Server">
</asp:Content>
<asp:Content ID="Content9" ContentPlaceHolderID="C" runat="Server">
</asp:Content>
<asp:Content ID="Content10" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

5
RH/RepAnomalias.aspx.vb Normal file
View File

@@ -0,0 +1,5 @@

Partial Class RH_RepAnomalias
Inherits System.Web.UI.Page
End Class

View File

@@ -0,0 +1,136 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RepAusentismoLaboral.aspx.vb" Inherits="RH_RepAusentismoLaboral" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" Runat="Server">
<style>
.dataTables_scrollBody table th {
padding:0px !important;
padding-right:4px !important;
padding-left:4px !important;
}
.table-scrollable{
margin:0px !important;
}
.dataTables_scrollFoot{
display: none;
}
.dataTables_scroll{
margin-bottom: 0px;
}
.table.dataTable{
margin-top: 0px !important
}
.table table-striped table-hover dataTable no-footer{
margin-top:0px !important;
}
</style>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" Runat="Server">
Reporte Ausentismo Laboral
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" Runat="Server">
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" Runat="Server">
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HA" Runat="Server">
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="C" Runat="Server">
<asp:UpdatePanel ID="UPFiltros" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="portlet solid grey-cascade portlet-filter" style="">
<div class="portlet-title portlet-filterT" style="">
<div class="titlefiltros caption ">
<ul class="list-inline text-size-12">
<li>Proyecto:
<asp:DropDownList ID="DdlProyecto" runat="server" AutoPostBack="true" CssClass="form-control input-sm select2me" Style="width: 200px !important;" DataTextField="Proyecto" DataValueField="CveProyecto" ValidationGroup="GrpGuardar">
</asp:DropDownList>
</li>
<li>SubProyecto:
<asp:DropDownList ID="DdlSubProyecto" runat="server" AppendDataBoundItems="true" Class="form-control input-sm select2me" Style="width: 100px !important;" DataTextField="SubProyecto" DataValueField="CveSubProyecto" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem>
</asp:DropDownList>
</li>
<li>Turno:
<asp:DropDownList ID="DdlTurno" runat="server" Class="form-control input-sm select2me" DataTextField="Turno" DataValueField="CveTurno" Style="width: 75px !important;">
</asp:DropDownList>
</li>
<li>Inicio:
<div class="input-group input-sm date date-picker " data-date-format="dd/mm/yyyy" style="display: inline-block;">
<asp:TextBox ID="txtInicio" runat="server" CssClass="form-control input-sm" CausesValidation="true" MaxLength="10" Width="82px "></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="ImgFechaInicio" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
</div>
<ajax:MaskedEditExtender ID="MEEFecha" runat="server" TargetControlID="txtInicio" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CEFecha" TargetControlID="txtInicio" PopupButtonID="ImgFechaInicio" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="RFVFecha" runat="server" ControlToValidate="txtInicio" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha''</b> es necesario, por favor ingréselo." ValidationGroup="GrpEmitirImprimir"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CVFecha" runat="server" ControlToValidate="txtInicio" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpEmitirImprimir"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCOFecha1" runat="server" HighlightCssClass="vco" TargetControlID="RFVFecha" Width="350px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="VCOFecha2" runat="server" HighlightCssClass="vco" TargetControlID="CVFecha" Width="350px"></ajax:ValidatorCalloutExtender>
</li>
<li>Fin:
<div class="input-group input-sm date date-picker " data-date-format="dd/mm/yyyy" style="display: inline-block;">
<asp:TextBox ID="txtFin" runat="server" CssClass="form-control input-sm" CausesValidation="true" MaxLength="10" Width="82px "></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="imgFechaFin" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span> </div>
<ajax:MaskedEditExtender ID="MaskedEditExtender1" runat="server" TargetControlID="txtFin" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CalendarExtender1" TargetControlID="txtFin" PopupButtonID="imgFechaFin" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="txtFin" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha''</b> es necesario, por favor ingréselo." ValidationGroup="GrpEmitirImprimir"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CompareValidator1" runat="server" ControlToValidate="txtFin" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpEmitirImprimir"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" runat="server" HighlightCssClass="vco" TargetControlID="RFVFecha" Width="350px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender2" runat="server" HighlightCssClass="vco" TargetControlID="CVFecha" Width="350px"></ajax:ValidatorCalloutExtender>
</li>
</ul>
</div>
<div class="tools">
<asp:Button ID="BtnConsultar" runat="server" Text="Consultar" class="btn btn-primary" OnClick="BtnConsultar_Click" />
<%--<a href="javascript:;" class="expand"></a>
<a onclick="document.getElementById('C_BtnConsultar').click();" class="reload"></a>--%>
</div>
</div>
<div class="portlet-body" style="display: none;">
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GVRegDatos" runat="server" AutoGenerateColumns="false" EmptyDataText="No se encontraron registros" ToolTip="Listado de Personal" CssClass="table table-striped table-advance table-hover Widthall ScrollAD" data-sort="true" Style="margin-top: -10px; text-align: center;" GridLines="None">
<Columns>
<asp:BoundField HeaderText ="Proyecto" DataField="Proyecto" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField HeaderText ="Subproyecto" DataField="SubProyecto" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField HeaderText="Turno" DataField="Turno" ItemStyle-HorizontalAlign="Left" />
<asp:TemplateField HeaderText="Faltas">
<ItemTemplate>
<asp:Label ID ="lblFaltas" runat ="server" Width="70" Text='<%# If(Eval("Faltas").ToString = "0", "-", Eval("FALTAS")) %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField HeaderText="Días laborales" DataField="DIAS" />
<asp:TemplateField HeaderText= "AUSENTISMO" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:Label ID="lblAusentismo" runat="server" Width ="70" Text='<%# Eval("AUSENTISMO")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" HorizontalAlign="Left" />
<AlternatingRowStyle CssClass="TextoAlterno" />
<HeaderStyle CssClass="Titulos" />
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" Runat="Server">
</asp:Content>

View File

@@ -0,0 +1,132 @@
Option Strict On
Option Explicit On
Imports Extensiones
Imports System.Data
Partial Class RH_RepAusentismoLaboral
Inherits ClsPaginas
Private Sub Ventas_RepIndiceRotacionPersonal_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not IsPostBack Then
txtInicio.Text = Date.Now.AddDays(-30).ToString("dd/MM/yyyy")
txtFin.Text = Date.Now.ToString("dd/MM/yyyy")
CargaProyecto()
CargaTurnos()
CargaDatos()
loadData()
End If
End Sub
Private Sub CargaTurnos()
DdlTurno.DataSource = GlobalDTTurno.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
DdlTurno.DataBind()
DdlTurno.Items.Insert(0, New ListItem("Todos", "-1"))
End Sub
Private Sub CargaProyecto()
DdlProyecto.DataSource = GlobalDTProyectos(UsuarioActual.Empresa.CveEmpresa)
DdlProyecto.DataBind()
DdlProyecto.Items.Insert(0, New ListItem("Todos", "-1"))
End Sub
Private Sub CargaSubProyecto()
DdlSubProyecto.Items.Clear()
DdlSubProyecto.DataSource = GlobalDTSubProyectos(DdlProyecto.SelectedValue.ToEntero)
DdlSubProyecto.DataBind()
DdlSubProyecto.Items.Insert(0, New ListItem("Todos", "-1"))
End Sub
Protected Sub DdlProyecto_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles DdlProyecto.SelectedIndexChanged
CargaSubProyecto()
End Sub
Private Sub CargaDatos()
End Sub
Private Sub loadData()
Dim rh As New ClsRH
Dim dTable As New DataTable
Dim CveProyecto As Integer = -1
Dim CveSubproyecto As Integer = -1
Dim CveTurno As Integer = -1
Dim FechaInicio As Date = Date.Now.AddDays(-30)
Dim FechaFin As Date = Date.Now
Try
FechaInicio = Date.Parse(txtInicio.Text)
FechaFin = Date.Parse(txtFin.Text)
If DdlProyecto.SelectedIndex <> 0 Then
CveProyecto = DdlProyecto.SelectedValue.ToEntero
End If
If DdlSubProyecto.SelectedIndex <> 0 Then
CveSubproyecto = DdlSubProyecto.SelectedValue.ToEntero
End If
If DdlTurno.SelectedIndex <> 0 Then
CveTurno = DdlTurno.SelectedValue.ToEntero
End If
If rh.GetReporteAusentismoLaboral(FechaInicio, FechaFin, CveTurno, CveProyecto, CveSubproyecto, UsuarioActual.Empresa.CveEmpresa) Then
dTable = rh.DtResultados
End If
GVRegDatos.DataSource = dTable
GVRegDatos.DataBind()
Catch ex As Exception
Dim exe As String = ex.Message
End Try
rh.Dispose()
UpDatos.Update()
End Sub
Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs)
loadData()
End Sub
Protected Sub GVRegDatos_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GVRegDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If Not (e.Row.RowState = DataControlRowState.Edit OrElse e.Row.RowState = 5) Then
Dim sPorcentaje As String = e.Row.DBCampo("AUSENTISMO").Trim
Dim porcentaje As Double = Convert.ToDouble(sPorcentaje)
e.Row.FCLabel("lblAusentismo").CssClass = "label label-danger"
e.Row.FCLabel("lblAusentismo").Font.Bold = True
e.Row.FCLabel("lblAusentismo").Attributes.Add("dir", "rtl")
e.Row.FCLabel("lblAusentismo").Text = sPorcentaje & "%"
If porcentaje <= 15.0 Then
e.Row.FCLabel("lblAusentismo").CssClass = "label label-success"
ElseIf (porcentaje > 15.0 And porcentaje <= 30.0) Then
e.Row.FCLabel("lblAusentismo").CssClass = "label label-warning"
End If
End If
End If
End Sub
End Class

142
RH/RepBuzonCalidad.aspx Normal file
View File

@@ -0,0 +1,142 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RepBuzonCalidad.aspx.vb" Inherits="RH_RepBuzonCalidad" %>
<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">
Buzón de Calidad
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel runat="server">
<ContentTemplate>
<li>
<asp:LinkButton ID="ImgExcel" runat="server"><i class="fa fa-ad-excel"></i> Exporta Excel</asp:LinkButton>
<%--<asp:ImageButton ID="ImgExcel" runat="server" ImageUrl="/Imagenes/IconoExcel.gif" Width="17px" Height="17px" />--%>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UPFiltros" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="portlet solid grey-cascade portlet-filter" style="">
<div class="portlet-title portlet-filterT" style="">
<div class="titlefiltros caption ">
<ul class="list-inline">
<li>Cliente:
<asp:DropDownList ID="DdlClientes" runat="server" AppendDataBoundItems="true" DataTextField="Nombre" DataValueField="CveCliente" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 200px !important;">
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem>
</asp:DropDownList>
</li>
<li>Tipo de Buzón:
<asp:DropDownList ID="DdlTipoBuzon" runat="server" AppendDataBoundItems="true" DataTextField="TipoBuzon" DataValueField="CveTipoBuzon" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 120px !important;">
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem>
</asp:DropDownList>
</li>
<li>Estatus:
<asp:DropDownList ID="DdlEstatus" runat="server" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 120px !important;">
<asp:ListItem Text="Todos" Value="-1"></asp:ListItem>
<asp:ListItem Selected="True" Text="Sin Atender" Value="0"></asp:ListItem>
<asp:ListItem Text="Atendidos" Value="1"></asp:ListItem>
</asp:DropDownList>
</li>
<li>F.I.:
<asp:TextBox ID="txtFechaI" runat="server" Width="70px"></asp:TextBox>
&nbsp;<asp:ImageButton runat="server" ID="imgCalendario" ImageUrl="/Imagenes/calendar.png" ImageAlign="AbsMiddle" Width="16px" Height="16px" AlternateText="Click para ver el Calendario" />
<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="txtFechaI" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></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>
</li>
<li>F.F.:
<asp:TextBox ID="txtFechaF" runat="server" Width="70px"></asp:TextBox>
&nbsp;<asp:ImageButton runat="server" ID="imgCalendarioF" ImageUrl="/Imagenes/calendar.png" ImageAlign="AbsMiddle" Width="16px" Height="16px" AlternateText="Click para ver el Calendario" />
<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>
</li>
</ul>
</div>
<div class="tools">
<asp:Button ID="BtnConsultar" runat="server" Text="Consultar" class="btn btn-primary" />
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<br />
<asp:UpdatePanel ID="UPDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontraron Ventas con los filtros especificados" ShowHeader="false" CssClass="table table-striped table-advance table-hover" Style="margin-top: -10px; text-align: center;" GridLines="None">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:Literal ID="LtlGrupo" runat="server"></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<table>
<tr>
<td align="left"><b>Tipo de Buzón:</b>&nbsp;<asp:Literal ID="LtlTipoBuzon" runat="server" Text='<%# Eval("TipoBuzon") %>'></asp:Literal></td>
<td align="right"><b>Se Atendió:</b>&nbsp;<asp:Literal ID="LtlEstatus" runat="server" Text='<%# Eval("SeAtendio") %>'></asp:Literal></td>
</tr>
<tr>
<td align="left">
<asp:Image ID="ImgPersonal" runat="server" ImageUrl="/Imagenes/SinImagen.jpg" Width="150px" Height="150px" /></td>
<td align="left" valign="top">
<table border="1" rules="all" style="border-collapse: collapse;" width="750px">
<tr>
<td width="120px"><b>Personal:</b></td>
<td>
<asp:Literal ID="LtlPersonal" runat="server"></asp:Literal></td>
</tr>
<tr>
<td width="120px"><b>Cliente:</b></td>
<td>
<asp:Literal ID="LtlCliente" runat="server"></asp:Literal></td>
</tr>
<%-- <tr>
<td><b>Sucursal del Cliente:</b></td>
<td>
<asp:Literal ID="LtlSucursalCliente" runat="server" Text='<%# Eval("SucursalCliente") %>'></asp:Literal></td>
</tr>--%>
<tr>
<td><b>Fecha Ocurrencia:</b></td>
<td>
<asp:Literal ID="LtlFecha" runat="server" Text='<%# Eval("FechaQueja") %>'></asp:Literal></td>
</tr>
<tr>
<td><b>Nombre Reportó:</b></td>
<td>
<asp:Literal ID="LtlReporto" runat="server" Text='<%# Eval("NombreReporto") %>'></asp:Literal></td>
</tr>
<tr>
<td align="left" colspan="2"><b>Observaciones:</b></td>
</tr>
<tr>
<td colspan="2">
<asp:TextBox ID="TxtObs" runat="server" ReadOnly="true" Height="49px" Text='<%# Eval("Observaciones") %>' Width="744px"></asp:TextBox></td>
</tr>
</table>
</td>
</tr>
</table>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" />
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</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 RH_RepBuzonCalidad
Inherits ClsPaginas
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
CargaCombos()
End If
End Sub
Private Sub CargaCombos()
'CargaClientes
Dim ObjClientes As New ClsClientes
If ObjClientes.GetClientes(-1, "-1", "-1", "-1", "-1", "-1", "-1", -1, UsuarioActual.CveEmpresa) Then
DdlClientes.DataSource = ObjClientes.DtResultados
Else
DdlClientes.DataSource = Nothing
End If
ObjClientes.Dispose()
DdlClientes.DataBind()
'Tipos de Buzón
DdlTipoBuzon.DataSource = GlobalDTTipoBuzon
DdlTipoBuzon.DataBind()
End Sub
Protected Sub BtnConsultar_Click(sender As Object, e As System.EventArgs) Handles BtnConsultar.Click
CargaDatos()
UPDatos.Update()
End Sub
Private Sub CargaDatos()
Dim ObjBuzon As New ClsRH()
Dim FechaI, FechaF As String
FechaI = If(IsDate(txtFechaI.Text.Trim()), txtFechaI.Text.Trim(), "-1")
FechaF = If(IsDate(txtFechaF.Text.Trim()), txtFechaF.Text.Trim(), "-1")
If ObjBuzon.GetBuzonCalidad(DdlClientes.SelectedValue.ToEntero, DdlTipoBuzon.SelectedValue.ToEntero, DdlEstatus.SelectedValue.ToEntero, FechaI, FechaF, UsuarioActual.CveEmpresa) Then
GvDatos.DataSource = ObjBuzon.DtResultados
Else
GvDatos.DataSource = Nothing
End If
ObjBuzon.Dispose()
GvDatos.DataBind()
End Sub
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.RowIndex = 0 Then
e.Row.Cells(0).ColumnSpan = 2
e.Row.Cells(1).Visible = False
e.Row.CssClass = "Totales"
e.Row.FCLiteral("LtlGrupo").Text = "Total : " & e.Row.DBCampo("Cantidad")
e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left
ElseIf e.Row.DBCampo("CvePersonal") = String.Empty Then
e.Row.Cells(0).ColumnSpan = 2
e.Row.Cells(1).Visible = False
e.Row.CssClass = "SubTotales"
'e.Row.FCLiteral("LtlGrupo").Text = e.Row.DBCampo("Sucursal") & " : " & e.Row.DBCampo("Cantidad")
e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left
Else
'
If System.IO.File.Exists(AppDomain.CurrentDomain.BaseDirectory & "Empresas\" & UsuarioActual.CveEmpresa & "\RH\Personal\" & e.Row.DBCampo("CvePersonal") & ".png") Then
e.Row.FCImage("ImgPersonal").ImageUrl = "/Empresas/" & UsuarioActual.CveEmpresa & "/RH/Personal/" & e.Row.DBCampo("CvePersonal") & ".png"
End If
e.Row.Cells(0).Visible = False
e.Row.FCLiteral("LtlPersonal").Text = "<a class=""Texto"" href=""/RH/Personal.aspx?CvePersonal=" & e.Row.DBCampo("CvePersonal") & "&Opt=5"">" & e.Row.DBCampo("Personal") & "</a>"
e.Row.FCLiteral("LtlCliente").Text = "<a class=""Texto"" href=""/Ventas/Clientes.aspx?CveCliente=" & e.Row.DBCampo("CveCliente") & """>" & e.Row.DBCampo("Cliente") & "</a>"
End If
End If
End Sub
Protected Sub ImgExcel_Click(sender As Object, e As System.EventArgs) Handles ImgExcel.Click
GvDatos.ExportToExcel("ReporteVentas" & Now.ToShortDateString)
End Sub
End Class

View File

@@ -0,0 +1,413 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RepChecadorPreAsistencia.aspx.vb" Inherits="RH_RepChecadorPreAsistencia" %>
<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="E" runat="Server">
<asp:UpdatePanel ID="UpTituloPagina" runat="server" UpdateMode="Conditional" RenderMode="Inline">
<ContentTemplate>
Reporte Asistencias Checador
<asp:Label ID="lblTituloPagina" style="font-size:14px;font-weight:bold" runat="server"></asp:Label>
</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 runat="server" ID="UpAgregar" UpdateMode="Conditional" >
<ContentTemplate>
<li>
<asp:LinkButton runat="server" ID="BtnAgregar" Visible="false" data-toggle="tooltip" data-placement="left" title="Procesar" Text="<i class='fa fa-plus'></i> Procesar"></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="UPFiltros" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="portlet solid grey-cascade portlet-filter" style="">
<div class="portlet-title portlet-filterT" style="">
<div class="titlefiltros caption ">
<ul class="list-inline text-size-12">
<li>Tipo Periodo:
<asp:DropDownList ID="DdlTipoPeriodo" AutoPostBack="true" runat="server" CssClass="form-control input-sm select2me" Style="width: 200px !important;" ValidationGroup="GrpGuardar" DataTextField="TipoPeriodo" DataValueField="CveTipoPeriodo">
</asp:DropDownList>
</li>
<li><asp:label ID="LblPeriodo" runat="server" Visible="true" >Periodo:</asp:label>
<asp:DropDownList ID="DdlRango" Visible="true" AutoPostBack="true" runat="server" CssClass="form-control input-sm select2me" Style="width: 300px !important;" DataTextField="NominaEstatus" DataValueField="CvePeriodo" ValidationGroup="GrpGuardar">
</asp:DropDownList>
</li>
<%--<li>Fecha Inicio:
<div class="input-group input-sm date date-picker " data-date-format="dd/mm/yyyy" style="display: inline-block;">
<asp:TextBox ID="TxtInicio" runat="server" CssClass="form-control input-sm" CausesValidation="true" MaxLength="10" Width="82px "></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="ImgFechaInicio" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
</div>
<ajax:MaskedEditExtender ID="MEEFecha" runat="server" TargetControlID="TxtInicio" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CEFecha" TargetControlID="TxtInicio" PopupButtonID="ImgFechaInicio" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="RFVFecha" runat="server" ControlToValidate="TxtInicio" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha inicio''</b> es necesario, por favor ingréselo." ValidationGroup="GrpEmitirImprimir"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CVFecha" runat="server" ControlToValidate="TxtInicio" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpEmitirImprimir"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCOFecha1" runat="server" HighlightCssClass="vco" TargetControlID="RFVFecha" Width="350px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="VCOFecha2" runat="server" HighlightCssClass="vco" TargetControlID="CVFecha" Width="350px"></ajax:ValidatorCalloutExtender>
</li>
<li>Fecha Fin:
<div class="input-group input-sm date date-picker " data-date-format="dd/mm/yyyy" style="display: inline-block;">
<asp:TextBox ID="TxtFechaFin" runat="server" CssClass="form-control input-sm" CausesValidation="true" MaxLength="10" Width="82px "></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="ImgFechaFin" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
</div>
<ajax:MaskedEditExtender ID="MEETxtFechaFin" runat="server" TargetControlID="TxtFechaFin" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CETxtFechaFin" TargetControlID="TxtFechaFin" PopupButtonID="ImgFechaFin" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="RfvTxtFechaFin" runat="server" ControlToValidate="TxtFechaFin" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Fin''</b> es necesario, por favor ingréselo." ValidationGroup="GrpEmitirImprimir"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CvTxtFechaFin" runat="server" ControlToValidate="TxtFechaFin" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpEmitirImprimir"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="RfvcTxtFechaFin" runat="server" HighlightCssClass="vco" TargetControlID="RfvTxtFechaFin" Width="350px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="CvcTxtFechaFin" runat="server" HighlightCssClass="vco" TargetControlID="CvTxtFechaFin" Width="350px"></ajax:ValidatorCalloutExtender>
</li>--%>
<li>SubProyecto:
<asp:DropDownList ID="DdlSubProyecto" runat="server" CssClass="form-control input-sm select2me" Style="width: 150px; !important;" DataTextField="SubProyecto" DataValueField="CveSubproyecto">
</asp:DropDownList>
</li>
<li>Turno:
<asp:DropDownList ID="DdlTurno" runat="server" Class="form-control input-sm select2me" DataTextField="Turno" DataValueField="CveTurno" Width="150">
</asp:DropDownList>
</li>
<li>Checador
<asp:RadioButton ID="RdbChecador" runat="server" Checked="true" GroupName="Checador" />
</li>
<li>Lista Asistencia
<asp:RadioButton ID="RdbAsistencia" runat="server" GroupName="Checador" />
</li>
</ul>
</div>
<div class="tools">
<asp:Button ID="BtnConsultar" runat="server" Text="Consultar" Enabled="false" class="btn btn-primary" OnClick="BtnConsultar_Click" />
</div>
</div>
<div class="portlet-body" style="display: none;">
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GVRegDatos" runat="server" AutoGenerateColumns="false" EmptyDataText="No se encontraron registros"
CssClass="ADSCROLLER2 table table-striped table-advance table-hover Widthall" data-rows="1" data-cols="3" data-heightmenos="100" data-heightfijo="600" Style="text-align: center;" GridLines="None">
<Columns>
<asp:TemplateField HeaderText="Numero" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="LtlNumero" runat="server" CssClass="truncate" Width="50" Text='<%# Eval("CvePersonal") %>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Personal" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblIPersonal" runat="server" CssClass="truncate" Width="250" Text='<%# Eval("NombreCompleto") %>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Faltas" ItemStyle-HorizontalAlign="Right">
<ItemTemplate>
<asp:Label ID="lblFaltas" runat="server" CssClass="truncate" Width="50"> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha1" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha1" runat="server" Width="50" Text='<%# Eval("Fecha1") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha2" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha2" runat="server" Width="50" Text='<%# Eval("Fecha2") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha3" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha3" runat="server" Width="50" Text='<%# Eval("Fecha3") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha4" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha4" runat="server" Width="50" Text='<%# Eval("Fecha4") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha5" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha5" runat="server" Width="50" Text='<%# Eval("Fecha5") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha6" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha6" runat="server" Width="50" Text='<%# Eval("Fecha6") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha7" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha7" runat="server" Width="50" Text='<%# Eval("Fecha7") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha8" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha8" runat="server" Width="50" Text='<%# Eval("Fecha8") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha9" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha9" runat="server" Width="50" Text='<%# Eval("Fecha9") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha10" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha10" runat="server" Width="50" Text='<%# Eval("Fecha10") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha11" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha11" runat="server" Width="50" Text='<%# Eval("Fecha11") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha12" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha12" runat="server" Width="50" Text='<%# Eval("Fecha12") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha13" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha13" runat="server" Width="50" Text='<%# Eval("Fecha13") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha14" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha14" runat="server" Width="50" Text='<%# Eval("Fecha14") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha15" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha15" runat="server" Width="50" Text='<%# Eval("Fecha15") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha16" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha16" runat="server" Width="50" Text='<%# Eval("Fecha16") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha17" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha17" runat="server" Width="50" Text='<%# Eval("Fecha17") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha18" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha18" runat="server" Width="50" Text='<%# Eval("Fecha18") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha19" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha19" runat="server" Width="50" Text='<%# Eval("Fecha19") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha20" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha20" runat="server" Width="50" Text='<%# Eval("Fecha20") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha21" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha21" runat="server" Width="50" Text='<%# Eval("Fecha21") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha22" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha22" runat="server" Width="50" Text='<%# Eval("Fecha22") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha23" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha23" runat="server" Width="50" Text='<%# Eval("Fecha23") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha24" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha24" runat="server" Width="50" Text='<%# Eval("Fecha24") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha25" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha25" runat="server" Width="50" Text='<%# Eval("Fecha25") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha26" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha26" runat="server" Width="50" Text='<%# Eval("Fecha26") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha27" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha27" runat="server" Width="50" Text='<%# Eval("Fecha27") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha28" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha28" runat="server" Width="50" Text='<%# Eval("Fecha28") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha29" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha29" runat="server" Width="50" Text='<%# Eval("Fecha29") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha30" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha30" runat="server" Width="50" Text='<%# Eval("Fecha30") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha31" ItemStyle-HorizontalAlign="Center" Visible="false">
<ItemTemplate>
<asp:LinkButton ID="LnkFecha31" runat="server" Width="50" Text='<%# Eval("Fecha31") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
<div id="divDetallesDia" class="modal ADS fade" role="dialog">
<div id="Div1" runat="server" class="modal-dialog" style="width: 300px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpDetallesDia" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">
<asp:Literal ID="LtlAsistenciaHorariosModal" runat="server">Detalles</asp:Literal></h4>
</div>
<div class="modal-body">
<table style="width: 100%">
<tr>
<td style="width: 50%; vertical-align: top!important">
<table style="width: 100%">
<tr>
<td style="width: 20%; text-align: right!important; vertical-align: top!important">
<asp:LinkButton ID="lnkModalImg" runat="server" Text="" OnClientClick="return false;"></asp:LinkButton></td>
<td style="font-weight: bold; font-size: 13px!important">
<asp:Label ID="lblModalFecha" runat="server"></asp:Label>
<br />
<asp:Label ID="lblModalMensaje" runat="server"></asp:Label>
</td>
</tr>
<tr>
<td></td>
<td>
<asp:DropDownList ID="DdlAsistenciaInacistencia" Width="150" runat="server" CssClass="select2me" DataTextField="Tipo" DataValueField="CveAsistenciasInasistencias"></asp:DropDownList></td>
</tr>
</table>
<div class="col-md-10">
</div>
<div class="col-md-10">
</div>
</td>
<td style="width: 50%">
<asp:GridView ID="GvDetalleDias" runat="server" AutoGenerateColumns="false" EmptyDataText="No se encontraron registros" with="150"
CssClass=" table table-striped table-advance table-hover Widthall" Style="text-align: center;" GridLines="None">
<Columns>
<asp:TemplateField HeaderText="Registros Checador" ItemStyle-HorizontalAlign="Left" Visible="true">
<ItemTemplate>
<asp:Label ID="lblFechaHora" runat="server" Width="150" Text='<%# Eval("FechaRegistro") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</td>
</tr>
</table>
</div>
<div class="modal-footer">
<div class="row">
<asp:Button ID="BtnEstusAsistenciaModal" runat="server" class="btn btn-success" Text="Aceptar" ValidationGroup="GrpAsistencia" />
<button id="Button4" runat="server" type="button" class="btn default" data-dismiss="modal">Cerrar</button>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
<div id="ModalModalFecha" class="modal ADS fade" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header ">
<%--<button type="button" class="close" data-dismiss="modal">&times;</button>--%>
<h4 class="modal-title">
<asp:UpdatePanel ID="UpModalFechaTitulo" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Literal ID="LtlModalFechaTitulo" runat="server">Seleccionar Fecha </asp:Literal>
</ContentTemplate>
</asp:UpdatePanel>
</h4>
</div>
<div class="modal-body">
<asp:UpdatePanel runat="server" ID="UpModalFechaBody" UpdateMode="Conditional">
<ContentTemplate>
<table><tr><td> No se han encontrado datos recientes de periodos anteriores, por favor especifique la fecha de inicio.</td></tr>
<tr><td style="text-align:center !important">
<div class="input-group input-sm date date-picker " data-date-format="dd/mm/yyyy" style="display: inline-block;">
<asp:TextBox ID="TxtFechaModal" runat="server" CssClass="form-control input-sm" CausesValidation="true" MaxLength="10" Width="100px "></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="LnkTxtFechaModal" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
</div>
<ajax:MaskedEditExtender ID="MaskedEditExtender1" runat="server" TargetControlID="TxtFechaModal" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CETxtFechaModal" TargetControlID="TxtFechaModal" PopupButtonID="LnkTxtFechaModal" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="RfvTxtFechaModal" runat="server" ControlToValidate="TxtFechaModal" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha inicio''</b> es necesario, por favor ingréselo." ValidationGroup="GrpModalFecha"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CVTxtFechaModal" runat="server" ControlToValidate="TxtFechaModal" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpModalFecha"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="RfvcRfvTxtFechaModal" runat="server" HighlightCssClass="vco" TargetControlID="RfvTxtFechaModal" Width="350px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="CVCCVTxtFechaModal" runat="server" HighlightCssClass="vco" TargetControlID="CVTxtFechaModal" Width="350px"></ajax:ValidatorCalloutExtender>
</td></tr>
</table>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<div class="modal-footer">
<asp:UpdatePanel runat="server">
<ContentTemplate>
<br />
<asp:Button ID="BtnModalFecha" runat="server" ClientIDMode="Static" Text="Procesar" CssClass="btn btn-primary" ValidationGroup="GrpModalFecha" />
<button type="button" class="btn btn-danger" data-dismiss="modal">Cancelar</button>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</div>
</div>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,19 @@
<%@ Page Title="RH - Contratos Vencidos" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RepContratosVencidos.aspx.vb" Inherits="RH_RepContratosVencidos" %>
<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">
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

View File

@@ -0,0 +1,5 @@

Partial Class RH_RepContratosVencidos
Inherits System.Web.UI.Page
End Class

75
RH/RepCumpleaneros.aspx Normal file
View File

@@ -0,0 +1,75 @@
<%@ Page Title="RH - Cumpleañeros" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RepCumpleaneros.aspx.vb" Inherits="RH_RepCumpleaneros" %>
<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">
Cumpleañeros del Mes de
<asp:Literal ID="LtlMes" runat="server"></asp:Literal>
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpTitulos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<table class="table table-striped table-advance table-hover">
<thead>
<tr class="Titulos">
<th width="250px">
<asp:LinkButton ID="LbDepartamento" runat="server" CausesValidation="false" Text="" CommandArgument="Departamento" OnClick="LbOrden_Click">
Departamento
<asp:Literal ID="ImgDepartamento" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton></th>
<th width="100px">
<asp:LinkButton ID="LbEstado" runat="server" CausesValidation="false" Text="" CommandArgument="Estatus" OnClick="LbOrden_Click">
Estado
<asp:Literal ID="ImgEstatus" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton></th>
<th width="100px">
<asp:LinkButton ID="LbFecha" runat="server" CausesValidation="false" Text="" CommandArgument="FechaIng" OnClick="LbOrden_Click">
Fecha
<asp:Literal ID="ImgFechaIng" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton></th>
<th width="100px">
<asp:LinkButton ID="LbUsuario" runat="server" CausesValidation="false" Text="" CommandArgument="Usuario" OnClick="LbOrden_Click">
Usuario
<asp:Literal ID="ImgUsuario" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton></th>
<th width="155px">Comandos</th>
</tr>
</thead>
</table>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontraron Departamentos Registrados">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:Literal ID="LtlDepartamento" runat="server" Text='<%# Eval("Departamento", "&nbsp;{0}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:Literal ID="LtlEstado" runat="server" Text='<%# Eval("Estatus") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:Literal ID="LtlFecha" runat="server" Text='<%# Eval("FechaIng", "{0:d}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" />
<AlternatingRowStyle CssClass="TextoAlterno" />
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

View File

@@ -0,0 +1,5 @@

Partial Class RH_RepCumpleaneros
Inherits System.Web.UI.Page
End Class

190
RH/RepCursos.aspx Normal file
View File

@@ -0,0 +1,190 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RepCursos.aspx.vb" Inherits="RH_RepCursos" %>
<asp:Content ID="Content1" ContentPlaceHolderID="H" runat="Server">
<li>
<asp:LinkButton ID="LnkExportar" runat="server"><i class="fa fa-ad-excel"></i> Exportar</asp:LinkButton>
</li>
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="Css" runat="Server">
<style>
.Widthall {
width: 100% !important;
}
.dataTables_scrollHeadInner {
width: 100% !important;
background-color: #dddddd;
padding-left: 0px !important;
}
.dataTables_scrollFoot {
display: none;
position: static;
}
.table-scrollable {
margin: 0px !important;
}
.dataTables_scroll {
margin-bottom: 0px;
}
.table.dataTable {
margin-top: 0px !important;
}
.dataTables_scrollBody table th {
padding: 0px !important;
padding-right: 4px !important;
padding-left: 4px !important;
}
.sinlink td a {
pointer-events: none;
cursor: default;
color: black;
font-size: small;
}
.white a {
color: white !important;
}
</style>
<style>
.dataTables_scrollHead{
background-color:#95A5A6;
color:white;
}
.table-scrollable{
margin-top:0px!important;
margin-bottom:0px!important;
}
</style>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="E" runat="Server">
Reporte Capacitación
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="C" runat="Server">
<%--Tabla con los campos para filtrar--%>
<asp:UpdatePanel runat="server">
<ContentTemplate>
<div class="portlet solid grey-cascade portlet-filter" style="">
<div class="portlet-title portlet-filterT smalltitle" style="min-height: 49px; position: relative;">
<div class="tools">
<asp:Button ID="btConsultar" CssClass="btn btn-primary" runat="server" ValidationGroup="GrpConsultar" Text="Consultar" /></td>
<%-- <a href="javascript:;" data-idchekbox="<%= chkexpand.ClientID%>" class=" <%= IIf(chkexpand.Checked = True, "collapse", "expand")%>"></a>--%>
<asp:CheckBox ID="chkexpand" CssClass="hidden" runat="server" />
</div>
<div class="titlefiltros caption magindate">
<div class="row">
<div class="col-md-1 truncate">Fecha Inicio:</div>
<div class="col-md-1 col-sm-1">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 95px !important; padding: 0px;">
<asp:TextBox Style="width: 80px !important;" ID="TxtFechaI" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="10"></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="ImgFechaI" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
</div>
<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="TxtFechaI" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CEFechaI" TargetControlID="TxtFechaI" PopupButtonID="ImgFechaI" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
</div>
<div class="col-md-1 truncate">Fecha Fin:</div>
<div class="col-md-1 col-sm-1">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 95px !important; padding: 0px;">
<asp:TextBox Style="width: 80px !important;" ID="TxtFechaF" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="10"></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="ImgFechaF" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
s</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="CalendarExtender1" TargetControlID="TxtFechaF" PopupButtonID="ImgFechaF" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
</div>
<div class="col-md-1 truncate">Grupo:</div>
<div class="col-md-1">
<asp:DropDownList ID="DDLAgrupador" CssClass="form-control input-sm select2me" runat="server" Width="100%" DataValueField="CveCapacitador" DataTextField="Capacitador">
<asp:ListItem Value="1" Text="Tema"></asp:ListItem>
<asp:ListItem Value="2" Text="Subtema"></asp:ListItem>
<asp:ListItem Value="3" Text="Capacitador"></asp:ListItem>
</asp:DropDownList>
</div>
<div class="col-md-1 truncate">Departamento:</div>
<div class="col-md-1">
<asp:DropDownList ID="DdlDepartamentos" CssClass="form-control input-sm select2me" runat="server" Width="100%" DataValueField="CveDepartamento" DataTextField="Departamento">
</asp:DropDownList>
</div>
</div>
</div>
</div>
<div class="portlet-body magindate" <%= IIf(chkexpand.Checked = True, "", "style=""display:block;""")%>>
<div class="row">
<div class="col-md-1 truncate">Supervisor:</div>
<div class="col-md-1">
<asp:DropDownList ID="DdlSupervisor" runat="server" AppendDataBoundItems="true" DataTextField="Nombre" DataValueField="CveUsuario" CssClass="form-control input-sm select2me" ValidationGroup="GrpGuardar">
</asp:DropDownList>
</div>
<div class="col-md-1 truncate">Curso:</div>
<div class="col-md-1">
<asp:DropDownList ID="DdlCursos" runat="server" AppendDataBoundItems="true" DataTextField="Curso" DataValueField="CveCurso" CssClass="form-control input-sm select2me" ValidationGroup="GrpGuardar">
</asp:DropDownList>
</div>
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<br />
<div class="row col-md-12" align="right">
<input type="text" id="TxtBusqueda" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", Gv.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", Gv.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<asp:UpdatePanel ID="UPGv" runat="server" RenderMode="Inline" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="Gv" Width="100%" runat="server" GridLines="None" BorderWidth="0" data-heighterror="330" data-freezecols="0" data-freezerows="1"
CssClass="ScrollAD table table-striped table-advance table-hover Widthall" ShowHeader="True" EmptyDataText="No se encontraron resultados." ShowHeaderWhenEmpty="true"
AutoGenerateColumns="False" AllowPaging="False" ShowFooter="False">
<Columns>
<asp:BoundField Visible="true" DataField="GPO" HeaderText="Subtema" ItemStyle-Width="40%" />
<asp:BoundField Visible="true" DataField="Cursos" HeaderText="Cursos" ItemStyle-Width="20%" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField Visible="true" DataField="Participantes" HeaderText="Participantes" ItemStyle-Width="20%" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField Visible="true" DataField="Horas" HeaderText="Horas" ItemStyle-Width="20%" ItemStyle-HorizontalAlign="Right" />
</Columns>
</asp:GridView>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="btConsultar" EventName="Click" />
</Triggers>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
<script src="/Metronic/assets/global/scripts/datatable.js"></script>
<script src="/Metronic/assets/global/plugins/datatables/all.min.js"></script>
</asp:Content>

Some files were not shown because too many files have changed in this diff Show More