This commit is contained in:
JORGE LUIS CAUDILLO ESPARZA
2021-09-23 08:10:35 -07:00
parent 29d0e84352
commit dd0da844f7
12 changed files with 344 additions and 80 deletions

View File

@@ -115,11 +115,40 @@
</asp:GridView>
<div class="portlet light bordered xspadding">
<div class="portlet-title">
<div class="caption font-green">
<i class="icon-pin font-green"></i>
<span class="caption-subject bold uppercase">Historial de Modificación</span>
</div>
<div class="actions">
<div class="btn-group">
</div>
</div>
</div>
<div class="portlet-body">
<asp:GridView ID="GvBitacora" runat="server" GridLines="None" Width="100%" CssClass="table table-striped table-advance table-hover Widthall ScrollAD mysmallbtn" data-sort="true" CellSpacing="0" AutoGenerateColumns="False">
<Columns>
<asp:TemplateField HeaderText="Fecha" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:Literal ID="LtlFecha" runat="server" Text='<%# Eval("FechaIng") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="NombreCompleto" HeaderText="Nombre" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField DataField="ConceptoHistorialBitacora" HeaderText="Campo" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField DataField="Anterior" HeaderText="Anterior" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField DataField="Actual" HeaderText="Actual" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField DataField="Descripcion" HeaderText="Motivo" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField DataField="Usuario" HeaderText="Usuario" ItemStyle-HorizontalAlign="Left" />
</Columns>
</asp:GridView>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<div id="divDetallesDia" class="modal ADS fade" role="dialog">
<div id="Div1" runat="server" class="modal-dialog " style="width: 600px;">
<div id="Div1" runat="server" class="modal-dialog " style="width: 900px;">
<asp:UpdatePanel runat="server" class="modal-content" ID="UpDetallesDia" UpdateMode="Conditional">
<ContentTemplate>
@@ -148,45 +177,6 @@
</div>
</div>
</div>
<asp:GridView ID="GvAsistenciaUp" runat="server" DataKeyNames="CveAsistenciaDetalle,CveAsistenciasInasistencias,CvePersonal,CveSubProyecto,CveProyecto,CveTurno,Fecha" AutoGenerateColumns="false" ShowHeaderWhenEmpty="false" OnRowDataBound="GvAsistenciaUp_RowDataBound"
CssClass=" table table-striped table-advance table-hover Widthall" Style="text-align: center;" GridLines="None">
<Columns>
<asp:TemplateField HeaderText="Turno" ItemStyle-HorizontalAlign="Left" Visible="true">
<ItemTemplate>
<asp:Label runat="server" Width="150" Text='<%# Eval("Turno") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Asistencia" Visible="true">
<ItemTemplate>
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlTipoAsistencias" runat="server" CssClass="select2me form-control" DataTextField="Tipo" DataValueField="CveAsistenciasInasistencias"></asp:DropDownList>
</div>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Centro de costos" Visible="true">
<ItemTemplate>
<asp:Panel ID="PnlProyecto" CssClass="col-md-6" runat="server">
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlAsisProyecto" runat="server" AppendDataBoundItems="true" CssClass="form-control select2me" AutoPostBack="true" DataTextField="Proyecto" DataValueField="CveProyecto" Style="width: 100% !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:Label ID="LblAsisProyecto" AssociatedControlID="DdlAsisProyecto" runat="server" Text="Proyecto:"></asp:Label>
</div>
</asp:Panel>
<asp:Panel ID="PnlSubProyecto" CssClass="col-md-12" runat="server">
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlAsisSubProyecto" runat="server" AppendDataBoundItems="true" CssClass="form-control select2me" DataTextField="SubProyecto" DataValueField="CveSubProyecto" Style="width: 100% !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Text="Todos" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:Label ID="LblAsisSubProyecto" Visible="false" AssociatedControlID="DdlAsisSubProyecto" runat="server" Text="SubProyecto:"></asp:Label>
</div>
</asp:Panel>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:Panel ID="Panel1" Visible="false" runat="server">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox CssClass="form-control" ID="TxtPorPago" runat="server" Text="" type="number" min="0" max="100" step="0.01"></asp:TextBox>
@@ -262,6 +252,43 @@
</asp:GridView>
</div>
</div>
<asp:GridView ID="GvAsistenciaUp" runat="server" DataKeyNames="CveAsistenciaDetalle,CveAsistenciasInasistencias,CvePersonal,CveSubProyecto,CveProyecto,CveTurno,Fecha" AutoGenerateColumns="false" ShowHeaderWhenEmpty="false" OnRowDataBound="GvAsistenciaUp_RowDataBound"
CssClass=" table table-striped table-advance table-hover Widthall" Style="text-align: center;" GridLines="None">
<Columns>
<asp:TemplateField HeaderText="Turno" ItemStyle-HorizontalAlign="Left" Visible="true" HeaderStyle-Width="80px">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("Turno") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Asistencia" Visible="true" HeaderStyle-Width="100px">
<ItemTemplate>
<asp:DropDownList ID="DdlTipoAsistencias" runat="server" CssClass="select2me form-control" DataTextField="Tipo" DataValueField="CveAsistenciasInasistencias"></asp:DropDownList>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Centro de costos" Visible="true" HeaderStyle-Width="150px">
<ItemTemplate>
<asp:Panel ID="PnlProyecto" runat="server">
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlAsisProyecto" runat="server" AppendDataBoundItems="true" CssClass="form-control select2me" AutoPostBack="true" DataTextField="Proyecto" DataValueField="CveProyecto" Style="width: 100% !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:Label ID="LblAsisProyecto" AssociatedControlID="DdlAsisProyecto" runat="server" Text="Proyecto:"></asp:Label>
</div>
</asp:Panel>
<asp:DropDownList ID="DdlAsisSubProyecto" runat="server" AppendDataBoundItems="true" CssClass="form-control select2me" DataTextField="SubProyecto" DataValueField="CveSubProyecto" Style="width: 100% !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Text="Todos" Value="-1"></asp:ListItem>
</asp:DropDownList>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Motivo" Visible="true" HeaderStyle-Width="300px">
<ItemTemplate>
<asp:TextBox ID="TxtMotivo" CssClass="form-control" TextMode="MultiLine" rows="2" runat="server"></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<%-- <table style="width: 100%">
<tr>
<td style="width: 50%; vertical-align: top!important">
@@ -332,7 +359,13 @@
<ajax:ValidatorCalloutExtender ID="VcoFechaIngreso" runat="server" HighlightCssClass="vco" TargetControlID="RFVFechaIngreso" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="col-md-6">
<div class="col-md-2">
<label style="top: 0; margin-bottom: 0; font-size: 13px; color: #888888; display: block;">Segundos</label>
<div class="input-group input-sm date date-picker " data-date-format="dd/mm/yyyy hh:mm" style="display: inline-block; padding-left: 0px;">
<asp:TextBox ID="TxtSegundos" runat="server" CssClass="form-control input-sm " CausesValidation="true" MaxLength="18" ></asp:TextBox>
</div>
</div>
<div class="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlChecador" runat="server" CssClass="select2me form-control" Width="100%" DataTextField="Checador" DataValueField="CveChecador"></asp:DropDownList>
<asp:Label runat="server" AssociatedControlID="DdlTipoAsistencias" Text="Asistencia"></asp:Label>

View File

@@ -61,7 +61,7 @@ public partial class Nomina_ChecadorAsistencia : ClsPaginas
private DataTable generateTable()
{
DateTime FechaI = TxtRpdFechaInicio.Text.ToDateTime();
DateTime FechaF = TxtRpdFechaFin.Text.ToDateTime();
DateTime FechaF = TxtRpdFechaFin.Text.ToDateTime().AddDays(1);
DataTable dtCon = new DataTable();
dtCon.Columns.Add(new DataColumn("Codigo", typeof(string)));
dtCon.Columns.Add(new DataColumn("Empleado", typeof(string)));
@@ -98,12 +98,14 @@ public partial class Nomina_ChecadorAsistencia : ClsPaginas
string asistencia2 = "";
string Horas2 = "";
string HoraExtraPorAutorizar2 = "";
if (dtx.Rows.Count > 1)
{
DataRow drf = dtx.Rows[1];
asistencia2 = "<i class='fa fa-check-square' style=\"color:green;\"></i>";
TipoAsis = drf["TipoAsistencia"].ToString();
Horas2 = drf["Horas"].ToString();
HoraExtraPorAutorizar2 = drf["HoraExtraPorAutorizar"].ToString().ToEntero() > 0 ? string.Format("({0:0.##})", drf["HoraExtraPorAutorizar"]) : "";
switch (drf["Tipo"].ToString().ToEntero())
{
case 1:
@@ -131,6 +133,7 @@ public partial class Nomina_ChecadorAsistencia : ClsPaginas
}
string asistencia = "<i class='fa fa-check-square' style=\"color:green;\"></i>";
TipoAsis = drfec["TipoAsistencia"].ToString();
string HoraExtraPorAutorizar = drfec["HoraExtraPorAutorizar"].ToString().ToEntero() > 0 ? string.Format("({0:0.##})", drfec["HoraExtraPorAutorizar"]) : "";
switch (drfec["Tipo"].ToString().ToEntero())
{
case 1:
@@ -155,7 +158,7 @@ public partial class Nomina_ChecadorAsistencia : ClsPaginas
default:
break;
}
drow[FechaCol] = string.Format("<div style='display:inline-block'>{0}<br>{1}</div><div style='display:inline-block'>{2}<br>{3}</div>", asistencia, drfec["Horas"], asistencia2, Horas2);
drow[FechaCol] = string.Format("<div style='display:inline-block'>{0}<br>{1}{2}</div><div style='display:inline-block'>{3}<br>{4}{5}</div>", asistencia, drfec["Horas"], HoraExtraPorAutorizar, asistencia2, Horas2, HoraExtraPorAutorizar2);
//drow[FechaCol] = string.Format("{0}<br>{1:HH}:{1:mm} - {2:HH}:{2:mm}", asistencia, drfec["Entrada"], drfec["Salida"]);
}
else
@@ -188,6 +191,29 @@ public partial class Nomina_ChecadorAsistencia : ClsPaginas
DataTable dtCon = generateTable();
GvNominas.DataSource = dtCon;
GvNominas.DataBind();
DateTime fechai = TxtFecha.Text.ToDateTime();
DateTime fechaf = fechai.AddDays(1);
using (ClsGenerales ObjGral = new ClsGenerales()) {
if (ObjGral.GetHistorialBitacora(-1, -1, -1, -1, -1, -1, -1, UsuarioActual.CveEmpresa, FechaInicio: fechai.ToString("yyyy/MM/dd"), FechaFin: fechai.ToString("yyyy/MM/dd")))
{
GvBitacora.DataSource = ObjGral.DtResultados;
GvBitacora.DataBind();
}
}
/*
If CvePersonal > 0 Then
Dim ObjGral As New ClsGenerales()
If ObjGral.GetHistorialBitacora(-1, -1, -1, -1, -1, -1, -1, UsuarioActual.CveEmpresa, CvePersonal:=CvePersonal) Then
GvBitacora.DataSource = ObjGral.DtResultados
End If
ObjGral.Dispose()
GvBitacora.DataBind()
UpHistorialModificacion.Update()
End If
*/
UpDatos.Update();
}
@@ -273,9 +299,10 @@ public partial class Nomina_ChecadorAsistencia : ClsPaginas
protected void LnkAgregarRegistro_Click(object sender, EventArgs e)
{
DateTime fechaing = string.Format("{0:dd-MM-yyyy} {0:HH}:{0:mm}:{1:00}", TxtFechaIngreso.Text.ToDateTimeExcat(), TxtSegundos.Text.ToEntero()).ToDateTimeExcat("dd-MM-yyyy HH:mm:ss");
bool continuar = false;
List<RequestAddChecadorRegistro> items = new List<RequestAddChecadorRegistro>();
items.Add(new RequestAddChecadorRegistro() { CveChecador = DdlChecador.SelectedValue.ToEntero(), CvePersonal = DdlmcPersonal.SelectedValue.ToEntero(), ChecadorID = -1, Fecha = TxtFechaIngreso.Text.ToDateTimeExcat() });
items.Add(new RequestAddChecadorRegistro() { CveChecador = DdlChecador.SelectedValue.ToEntero(), CvePersonal = DdlmcPersonal.SelectedValue.ToEntero(), ChecadorID = -1, Fecha = fechaing });
using (ClsRH objrh = new ClsRH())
{
objrh.IniciaTransacSQL();
@@ -294,7 +321,7 @@ public partial class Nomina_ChecadorAsistencia : ClsPaginas
}
if (continuar)
{
Alert(string.Format("La asistencia se a agregado ({0:dd-MM-yyyy HH:mm}).", TxtFechaIngreso.Text.ToDateTimeExcat()), ModExtensiones.TipoMensaje.ToastInformacion);
Alert(string.Format("La asistencia se a agregado ({0:dd-MM-yyyy HH:mm:ss}).", fechaing), ModExtensiones.TipoMensaje.ToastInformacion);
}
if (!chkcontinuarAgregando.Checked)
{
@@ -316,9 +343,8 @@ public partial class Nomina_ChecadorAsistencia : ClsPaginas
DropDownList DdlAsisProyectoB = (DropDownList)e.Row.FindControl("DdlAsisProyecto");
DropDownList DdlAsisSubProyectoB = (DropDownList)e.Row.FindControl("DdlAsisSubProyecto");
Label LblAsisProyectoB = (Label)e.Row.FindControl("LblAsisProyecto");
Label LblAsisSubProyectoB = (Label)e.Row.FindControl("LblAsisSubProyecto");
//Label LblAsisSubProyectoB = (Label)e.Row.FindControl("LblAsisSubProyecto");
Panel PnlProyectoB = (Panel)e.Row.FindControl("PnlProyecto");
Panel PnlSubProyectoB = (Panel)e.Row.FindControl("PnlSubProyecto");
DdlTipoAsistenciasB.DataSource = GlobalDTAsistenciasInasistencias.FiltraParametros(string.Format("CveEmpresa = {0}", UsuarioActual.CveEmpresa));
DdlTipoAsistenciasB.DataBind();
@@ -331,9 +357,8 @@ public partial class Nomina_ChecadorAsistencia : ClsPaginas
LblAsisSubProyectoB.Text = LblAsisSubProyecto.Text;
*/
CargarCentrosDeCosto(DdlAsisProyectoB, DdlAsisSubProyectoB, LblAsisProyectoB, LblAsisSubProyectoB);
CargarCentrosDeCosto(DdlAsisProyectoB, DdlAsisSubProyectoB, LblAsisProyectoB, LblAsisSubProyecto);
PnlProyectoB.Visible = PnlProyecto.Visible;
PnlSubProyectoB.Visible = PnlSubProyectoB.Visible;
DdlTipoAsistenciasB.SelectedValueExist(CveAsistenciasInasistencias);
DdlAsisProyectoB.SelectedValueExist(CveProyecto);
DdlAsisSubProyectoB.SelectedValueExist(CveSubProyecto);
@@ -343,6 +368,7 @@ public partial class Nomina_ChecadorAsistencia : ClsPaginas
protected void BtnEstusAsistenciaModal_Click(object sender, EventArgs e)
{
bool continuar = true;
DateTime fecha = TxtFecha.Text.ToDateTime();
int CvePersonal = TxtCvePersonal.Text.ToEntero();
List<RequestUpAsistenciaDetalle> registros = new List<RequestUpAsistenciaDetalle>();
@@ -356,17 +382,37 @@ public partial class Nomina_ChecadorAsistencia : ClsPaginas
DropDownList DdlTipoAsistenciasB = (DropDownList)row.FindControl("DdlTipoAsistencias");
DropDownList DdlAsisProyectoB = (DropDownList)row.FindControl("DdlAsisProyecto");
DropDownList DdlAsisSubProyectoB = (DropDownList)row.FindControl("DdlAsisSubProyecto");
TextBox TxtMotivo = (TextBox)row.FindControl("TxtMotivo");
RequestUpAsistenciaDetalle obj = new RequestUpAsistenciaDetalle();
obj.CveAsistenciaDetalle = CveAsistenciaDetalle;
obj.CveAsistenciasInasistencias = DdlTipoAsistenciasB.SelectedValue.ToEntero();
obj.CveSubProyecto = DdlAsisSubProyectoB.SelectedValue.ToEntero();
obj.CvePersonal = CvePersonal;
obj.Fecha = fecha;
obj.Motivo = TxtMotivo.Text.Trim();
if (obj.Motivo.Length == 0 && CveAsistenciasInasistencias != obj.CveAsistenciasInasistencias)
{
continuar = false;
break;
}
registros.Add(obj);
}
using (ClsRH objRH = new ClsRH())
if (continuar)
{
objRH.UpAsistenciaDetalle(UsuarioActual.CveEmpresa, registros);
using (ClsRH objRH = new ClsRH())
{
if (objRH.UpAsistenciaDetalle(UsuarioActual.CveEmpresa,UsuarioActual.CveUsuario, registros))
{
Alert("Se ha guardado la asistencia satisfactoriamente");
RegistraScript("$('#divDetallesDia').modal('hide');");
LnkConsultar_Click(null, null);
}
}
}
else
{
Alert("El campo motivo es requerido favor de llenarlo",ModExtensiones.TipoMensaje.MsgAdvertencia);
}
//int CvePersonal = TxtasiscvePersonal.Text.ToEntero();
//DateTime fecha = TxtasisFecha.Text.ToDate();
@@ -377,8 +423,7 @@ public partial class Nomina_ChecadorAsistencia : ClsPaginas
// TxtHorasTriples.Text.Trim().ToDouble(), DdlMotivoHoraExtra.SelectedValue.ToEntero(), TxtObservaciones.Text.Trim(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa))
// {
// //Alert(string.Format("se ha guardado la asistencia satisfactoriamente <br/>{0}<br/>{1:dd/MM/yyyy}", TxtPersonal.Text, TxtasisFecha.Text.ToDate()), TipoMensaje.ToastInformacion);
// Alert("Se ha guardado la asistencia satisfactoriamente");
// RegistraScript("$('#DModalModAsistencia').modal('hide');");
// }
//}