Files
Antifraude.Net/.codex-links/WebIntranet/bolsaDeHoras.aspx
2026-04-30 08:55:00 +02:00

109 lines
7.4 KiB
Plaintext

<%@ Page Title="" Language="vb" AutoEventWireup="false" MasterPageFile="~/Site.master" CodeBehind="bolsaDeHoras.aspx.vb" Inherits="WebIntranet.bolsaDeHoras" %>
<asp:Content ID="Content1" ContentPlaceHolderID="Content" runat="server">
<div class="row pag">
<div class="col-3" id="navLateral">
<ul>
<li id='intPicadaBL' runat="server" class='obtListLat'><a onclick="redirigir()" href="intPicada.aspx">Introducir picada</a></li>
<li id='informPicadasBL' class='obtListLat'><a onclick="redirigir()" href="listPicadas.aspx">Informe de listado de picadas</a></li>
<li id='informIncidenciasBL' class='obtListLat'><a onclick="redirigir()" href="listSolicitudesComunicaciones.aspx">Informe de permisos y comunicaciones</a></li>
<li id='bolsaDeHorasBL' class='obtListLat listActivo'><a onclick="redirigir()" href="/bolsaDeHoras.aspx">Bolsa de horas extraordinarias</a></li>
<li id='VAAPBCBL' runat="server" class='obtListLat'><a onclick="redirigir()" href="/VAAPBC.aspx">Situación de vacaciones, asuntos particulares y días compensatorios</a></li>
<%--<li id='VAAPBCBLpers' runat="server" class='obtListLat'><a onclick="redirigir()" href="/VAAPBCpers.aspx">Situación de vacaciones, asuntos particulares y días compensatorios</a></li>--%>
<li id='resumenIncidenciasEntreFechasBL' class='obtListLat'><a onclick="redirigir()" href="/resumenSolicitudesComunicacionesEntreFechas.aspx">Resumen de permisos y comunicaciones entre fechas</a></li>
</ul>
</div>
<div id="bolsaDeHoras" class="col">
<p class="tituloMobile">Bolsa de horas extraordinarias</p>
<div class="migasDePan">
<ul>
<li class="migaActiva">/ Control Horario</li>
<li class="migaActiva">/ Bolsa de horas extraordinarias</li>
</ul>
</div>
<div class="d-flex-column justify-content-center">
<div class="row IntroducirFechas align-items-center wrap" style="margin-left: auto !important; margin-right: auto !important; margin-bottom: 25px !important; margin-top: 0px;">
<p style="margin-bottom: 0px; line-height: 35px">Del</p>
<input id="inpFechaIniBolsa" class="inFecha" style="height: 35px;" runat="server" type="date" max="9999-12-31" />
<p style="margin-bottom: 0px; line-height: 35px;">al</p>
<input id="inpFechaFinBolsa" class="inFecha" style="height: 35px;" runat="server" type="date" max="9999-12-31" />
<input type="button" class="btnAzul btnAlargado" onclick="ListaBolsaHoras()" value="Buscar" />
</div>
</div>
<div class="row" style="margin-left: 70px;">
<button id="Button1" class="btnOAAFAzul" onclick="" style="display: none" runat="server">
<img src="../Content/images/print.svg" style="height: 15px; width: auto; margin-right: 5px;" />
Imprimir</button>
<a class='btnOAAFAzul' id='A1' onclick='' role='button' style='margin-left: 15px; text-align: center !important; display: none;' runat="server">Mostrar todo</a>
</div>
<p id="P1" runat="server"></p>
<div id="tablaBolsaHoras" class="cajaTabla">
</div>
</div>
</div>
<script>
function ListaBolsaHoras() {
var fechaInicio = new Date($('#inpFechaIniBolsa').val())
fechaInicio = (fechaInicio.getMonth() + 1).toString().padStart(2, "0") + "%2F" + fechaInicio.getDate().toString().padStart(2, "0") + "%2F" + fechaInicio.getFullYear()
var fechaFinal = new Date($('#inpFechaFinBolsa').val())
fechaFinal = (fechaFinal.getMonth() + 1).toString().padStart(2, "0") + "%2F" + fechaFinal.getDate().toString().padStart(2, "0") + "%2F" + fechaFinal.getFullYear()
var html = ""
$("#divLoading").css("display", "flex")
$.ajax({
type: "post",
url: "/bolsaDeHoras.aspx/ListaBolsaHoras",
data: '{"fechaInit":"' + fechaInicio + '","fechaEnd":"' + fechaFinal + '"}',
async: true,
contentType: "application/json; charset=utf-8",
success: function (result) {
if (result.d != "") {
var tablaBolsaHoras = JSON.parse(result.d)
var fechainicio = new Date($('#inpFechaIniBolsa').val())
fechainicio = fechainicio.getDate().toString().padStart(2, "0") + "-" + (fechainicio.getMonth() + 1).toString().padStart(2, "0") + "-" + fechainicio.getFullYear()
var fechafinal = new Date($('#inpFechaFinBolsa').val())
fechafinal = fechafinal.getDate().toString().padStart(2, "0") + "-" + (fechafinal.getMonth() + 1).toString().padStart(2, "0") + "-" + fechafinal.getFullYear()
html += "<div class='d-flex flex-column justify-content-center'><div class='cabeceraTabla d-flex justify-content-between mt-3' ><h4 style='margin-left:25px;'>" + tablaBolsaHoras[0].Nombre + "</h4><p style='margin-right:25px;'> del <b> " + fechainicio + "</b> al <b>" + fechafinal + "</b></p></div>" +
"<table id='BolsaHorasTab' class='tablaPicadas'><col style='width:15%'><col style='width:10%'><col style='width:75%'><thead> <tr><th>Fecha</th><th style='max-width:100px'>Horas</th><th>Descripción</th></tr></thead><tbody>"
if (tablaBolsaHoras[0].HorasExtra.length != 0) {
for (var i = 0; i < tablaBolsaHoras[0].HorasExtra.length; i++) {
html += "<tr><td style='text-align:end'>" + tablaBolsaHoras[0].HorasExtra[i].Fecha + "</td><td style='text-align:end'>" + tablaBolsaHoras[0].HorasExtra[i].Horas + "</td><td>" + tablaBolsaHoras[0].HorasExtra[i].Descripcion + "</td></tr>"
}
}
else {
html += "<tr><td></td><td></td><td></td></tr>"
}
html += "</tbody><tfoot><tr style='height:5px;'><td style='background-color:#bbbbbb' colspan='3'></td></tr>"
html += "<tr><td style='text-align:end; background-color:#dddddd !important'>Total periodo: </td><td style='text-align:end'>" + tablaBolsaHoras[0].SaldoPeriodo + "</td><td class='celdaBlanca'></td></tr>"
html += "<tr><td style='text-align:end; background-color:#dddddd !important'>Total acumulado: </td><td style='text-align:end'>" + tablaBolsaHoras[0].SaldoAcumulado + "</td><td class='celdaBlanca'></td></tr></tfoot></table>"
$("#divLoading").css("display", "none")
$('#tablaBolsaHoras').css('display', 'block')
document.getElementById('tablaBolsaHoras').innerHTML = html
$('#BolsaHorasTab').DataTable({
paging: true
})
}
},
error: function (result) {
$("#divLoading").css("display", "none")
alert('error occured');
alert(result.responseText);
},
});
}
</script>
</asp:Content>