<?php
  session_start();
  //RESTRICCIÓN DE ACCESO A TRABAJADOR (ACCESO INDIVIDUAL)
  if (isset($_SESSION['tipousuario'])){
    if ($_SESSION['tipousuario']=='1'){
      header ('location:menu_personal.php');
    }
  }
  if (trim($_SESSION['nombre_validar'])==''){
    header ('location:index.php');
  }
  //RESTRICCIÓN DE ACCESO A TRABAJADOR (ACCESO INDIVIDUAL)

  include ("fphp.php");
  include ("calendario/calendario.php");
  require_once 'PHPExcel/PHPExcel.php';

  $idValidar = $_SESSION['id_validar'];
  $enlace=cargar_conexion();
  $consulta=mysqli_query($enlace,"SELECT * FROM periodo WHERE id='$idValidar' ORDER BY nomina, periodo DESC LIMIT 1");
  if (mysqli_num_rows($consulta)!=0){
    $row=mysqli_fetch_array($consulta);
    $per=mostrar_fecha($row['desde']).' al '.mostrar_fecha($row['hasta'])." (Nom:".$row['nomina'].")";
  }
  else{
    $per='';
  }

  $mensaje = "";
  $exito = true;

  function generarReporteAsientosNomina ($enlace) {
    $fecha_procesado = date("d-m-Y");

    $fechaDesde = strtotime($_POST['fechaDesde']);
    $fechaHasta = strtotime($_POST['fechaHasta']);
    $fDesde= date('Y-m-d', $fechaDesde);
    $fHasta = date('Y-m-d', $fechaHasta);
    $idValidar = $_SESSION['id_validar'];

    $queryData = "SELECT  #Nomina regular
    h.nomina AS columnaA,
    h.cedula AS columnaC,
    CONCAT('Nomina del ',h.desperiodo) AS columnaD,
    c.codigo AS columnaE,
    if(c.cuenta = 'labor',p.cuenta_labor,c.cuenta) AS columnaF,
    if(c.cuenta = 'labor',p.subcuenta_labor,c.subcuenta) AS columnaG,
    IF(h.tipo = 'A',h.monto,0) as columnaH,
    IF(h.tipo = 'D',h.monto,0) as columnaI,
    c.detalle AS columnaJ,
    h.cedula AS columnaK,
    0 AS columnaL,
    p.departamento AS columnaM,
    1 AS orden, c.tipo AS tipo
    FROM historico h,concepto c, personal p
    WHERE h.id='100' #  AND h.fecha_pago BETWEEN '$fDesde' AND '$fHasta'
    AND substr(h.desperiodo,15,10) BETWEEN '$fDesde' AND '$fHasta'
    AND c.id = h.id
    AND p.id = h.id
    AND p.codigo = h.cedula
    AND c.codigo = h.concepto
    AND h.tipo IN ('A','D')
    UNION ALL
    SELECT #cesta ticket
    h.nomina AS columnaA,
    h.cedula AS columnaC,
    c.detalle AS columnaD,
    c.codigo AS columnaE,
    c.cuenta AS columnaF,
    c.subcuenta AS columnaG,
    IF(c.tipo = 'A',h.monto,0) as columnaH,
    IF(c.tipo = 'D',h.monto,0) as columnaI,
    c.detalle AS columnaJ,
    h.cedula AS columnaK,
    0 AS columnaL,
    p.departamento AS columnaM,
    2 AS orden, c.tipo AS tipo
    FROM historico_cestaticket h,concepto_especiales c, personal p
    WHERE h.id='100'
    AND h.fecha_pago BETWEEN '$fDesde' AND '$fHasta'
    AND c.id = h.id
    AND p.id = h.id
    AND p.codigo = h.cedula
    AND c.codigo = h.concepto
    AND c.tipo IN ('A','D')
    UNION ALL
    SELECT #nomina Especial
    h.nomina AS columnaA,
    h.cedula AS columnaC,
    c.detalle AS columnaD,
    c.codigo AS columnaE,
    c.cuenta AS columnaF,
    c.subcuenta AS columnaG,
    IF(c.tipo = 'A',h.monto,0) as columnaH,
    IF(c.tipo = 'D',h.monto,0) as columnaI,
    c.detalle AS columnaJ,
    h.cedula AS columnaK,
    0 AS columnaL,
    p.departamento AS columnaM,
    3 AS orden, c.tipo AS tipo
    FROM historico_nomina_especial h,concepto_especiales c, personal p
    WHERE h.id='100'
    AND h.fecha_pago >= '$fDesde' AND h.fecha_pago <= '$fHasta'
    AND c.id = h.id
    AND p.id = h.id
    AND p.codigo = h.cedula
    AND c.codigo = h.concepto
    AND c.tipo IN ('A','D')
    UNION ALL
    SELECT #utilidades
    u.nomina AS columnaA,
    u.cedula AS columnaC,
    CONCAT('Pago Utilidad ',u.detalle) AS columnaD,
    c.codigo AS columnaE,
    c.cuenta AS columnaF,
    c.subcuenta AS columnaG,
    IF(c.tipo = 'A',u.monto,0) as columnaH,
    IF(c.tipo = 'D',u.monto,0) as columnaI,
    c.detalle AS columnaJ,
    u.cedula AS columnaK,
    0 AS columnaL,
    p.departamento AS columnaM,
    4 AS orden, c.tipo AS tipo
    FROM utilidades u,concepto c, personal p
    WHERE u.id='100'
    AND u.fecha BETWEEN '$fDesde' AND '$fHasta'
    AND c.id = u.id
    AND p.id = u.id
    AND p.codigo = u.cedula
    AND c.codigo = u.concepto
    AND c.tipo IN ('A','D')
    UNION ALL
    SELECT #prestaciones_fideicomiso
    f.nomina AS columnaA,
    f.cedula AS columnaC,
    f.desperiodo AS columnaD,
    c.codigo AS columnaE,
    c.cuenta AS columnaF,
    c.subcuenta AS columnaG,
    f.prestacion_monto as columnaH,
    0 as columnaI,
    c.detalle AS columnaJ,
    f.cedula AS columnaK,
    0 AS columnaL,
    p.departamento AS columnaM,
    5 AS orden, c.tipo AS tipo
    FROM prestaciones_fideicomiso f, concepto c, personal p
    WHERE f.id='100'
    AND f.fecha_pago BETWEEN '$fDesde' AND '$fHasta'
    AND c.id = f.id
    AND p.id = f.id
    AND p.codigo = f.cedula
    AND c.codigo = f.concepto
    UNION ALL
    SELECT #vacacion
    p.nomina AS columnaA,
    v.cedula AS columnaC,
    if(p.nomina = '200',CONCAT('Vacaciones NM ',v.fdesde),CONCAT('Vacaciones ND ',v.fdesde)) AS columnaD,
    c.codigo AS columnaE,
    if(c.codigo = '1975', p.cuenta_labor,c.cuenta) AS columnaF,
    if(c.codigo = '1975', p.subcuenta_labor, c.subcuenta) AS columnaG,
    abs(if(p.nomina = '200',
    IF(c.codigo = '1970',v.valor_dvac,
    if(c.codigo = '1971',v.valor_dias_ext,
    if(c.codigo = '1972',v.valor_otros_dias,
    if(c.codigo = '1973',v.valor_dbon,
    if(c.codigo = '1974',v.valor_dias_dinero,
    if(c.codigo = '1983',v.aporte_emp_rpvh,
    if(c.codigo = '1985',v.aporte_emp_inces,
    if(c.codigo = '1975',v.valor_dias_sueldo,0)))))))),
    IF(c.codigo = '1960',v.valor_dvac,
    if(c.codigo = '1961',v.valor_dias_ext,
    if(c.codigo = '1962',v.valor_dbon,
    if(c.codigo = '1979',v.aporte_emp_rpvh,
    if(c.codigo = '1981',v.aporte_emp_inces,
    if(c.codigo = '1963',v.valor_otros_dias,0))))))))
    AS columnaH,
    abs(if(p.nomina = '200',
    IF(c.codigo = '1976',v.total_reserva,
    if(c.codigo = '1984',v.aporte_emp_rpvh_cxp,
    if(c.codigo = '1986',v.aporte_emp_inces_cxp,
    if(c.codigo = '1977',v.rpvh,0)))),
    if(c.codigo = '1964',v.total_reserva,
    if(c.codigo = '1980',v.aporte_emp_rpvh_cxp,
    if(c.codigo = '1982',v.aporte_emp_inces_cxp,
    if(c.codigo = '1965',v.rpvh,0))))))  AS columnaI,
    c.detalle AS columnaJ,
    v.cedula AS columnaK,
    0 AS columnaL,
    p.departamento AS columnaM,
    6 AS orden, c.tipo AS tipo
    FROM vacacion v,conceptos_vacaciones c, personal p
    WHERE v.id='100'
    AND v.fecha_pago BETWEEN '$fDesde' AND '$fHasta'
    AND c.id = v.id
    AND p.id = v.id
    AND p.codigo = v.cedula
    AND p.nomina = c.nomina
    order BY orden,1,3,2,tipo,4;";


    $resultados = mysqli_query($enlace,$queryData) or die ("No se pudo realizar la consulta: ".$consulta.'='.mysqli_error($enlace));

    $nFilas = mysqli_num_rows($resultados);
    $row = [];
    //$row=mysqli_fetch_array($resultados)
    if($nFilas > 0){
      $row=mysqli_fetch_array($resultados);
    }
    else{
      die("No se encontraron registros");
    }

    $objPHPExcel = new PHPExcel();

    PHPExcel_Shared_Font::setAutoSizeMethod(PHPExcel_Shared_Font::AUTOSIZE_METHOD_EXACT);

    // --------------------------Cabecera---------------------------------

      $objPHPExcel->getActiveSheet()->setCellValue("A1","Tipo documento");
      $objPHPExcel->getActiveSheet()->setCellValue("B1","Consecutivo");
      $objPHPExcel->getActiveSheet()->setCellValue("C1","Tercero");
      $objPHPExcel->getActiveSheet()->setCellValue("D1","Descripcion");
      $objPHPExcel->getActiveSheet()->setCellValue("E1","Concepto");
      $objPHPExcel->getActiveSheet()->setCellValue("F1","Cuenta");
      $objPHPExcel->getActiveSheet()->setCellValue("G1","SubCuenta");
      $objPHPExcel->getActiveSheet()->setCellValue("H1","Debito");
      $objPHPExcel->getActiveSheet()->setCellValue("I1","Credito");
      $objPHPExcel->getActiveSheet()->setCellValue("J1","Descripcion");
      $objPHPExcel->getActiveSheet()->setCellValue("K1","Cedula");
      $objPHPExcel->getActiveSheet()->setCellValue("L1","mmmm");
      $objPHPExcel->getActiveSheet()->setCellValue("M1","Departamento");
      $objPHPExcel->getActiveSheet()->setCellValue("N1","Cuenta & Sub Cta");
      $objPHPExcel->getActiveSheet()->setCellValue("O1","Cuenta Mayor");
      $objPHPExcel->getActiveSheet()->getStyle("A1:P1")->getFont()->setBold( true );

    // --------------------------Cabecera---------------------------------

    // ----------------------------Data-----------------------------------

      $position = 2;
      $cedula = $row["columnaK"];
      $acumuladorCredito = 0;
      $acumuladorDebito = 0;
      $colA = $row["columnaA"];
      $colC = $row["columnaC"];
      $colD = $row["columnaD"];
      $colL = $row["columnaL"];
      $colM = $row["columnaM"];
      $colOrden = $row["orden"];
      $colTipo = $row["tipo"];

      do{
        if($cedula !== $row["columnaK"]){
          $columnaB = $colA.$colD.$colM;
          $colI = $acumuladorDebito - $acumuladorCredito;
          if($colA=='200' ){
            $cuentaCierre="20C02";
            $subCuentaCierre ="0220";
            $nombreCuenta = "TOTAL NETO";
            if ($colOrden==5){
              $cuentaCierre="20C08";
              $subCuentaCierre ="GEHO";

            }
          }

          else{
            $cuentaCierre="20C01";
            $subCuentaCierre ="0210";
            $nombreCuenta = "TOTAL NETO";
            if ($colOrden==5){
              $cuentaCierre="20C08";
              $subCuentaCierre ="GESA";

            }
          }
          if ($colOrden==5){ $nombreCuenta = "DEPOSITO FIDEICOMISO"; }
          if ($colOrden==6){ $nombreCuenta = "NETO PAGADO VACACIONES"; }


          $objPHPExcel->getActiveSheet()->setCellValue("A".$position, $colA);
          $objPHPExcel->getActiveSheet()->setCellValue("B".$position, $columnaB);
          $objPHPExcel->getActiveSheet()->setCellValue("C".$position, $colC);
          $objPHPExcel->getActiveSheet()->setCellValueExplicit("D".$position, $colD, PHPExcel_Cell_DataType::TYPE_STRING);
          $objPHPExcel->getActiveSheet()->setCellValue("E".$position, "");
          $objPHPExcel->getActiveSheet()->setCellValueExplicit("F".$position, $cuentaCierre, PHPExcel_Cell_DataType::TYPE_STRING);
          $objPHPExcel->getActiveSheet()->setCellValueExplicit("G".$position, $subCuentaCierre,PHPExcel_Cell_DataType::TYPE_STRING);
          $objPHPExcel->getActiveSheet()->setCellValue("H".$position, "0");
          $objPHPExcel->getActiveSheet()->setCellValue("I".$position, $colI);
          $objPHPExcel->getActiveSheet()->setCellValueExplicit("J".$position, $nombreCuenta, PHPExcel_Cell_DataType::TYPE_STRING);
          $objPHPExcel->getActiveSheet()->setCellValue("K".$position, $cedula);
          $objPHPExcel->getActiveSheet()->setCellValueExplicit("L".$position, $colL, PHPExcel_Cell_DataType::TYPE_STRING);
          $objPHPExcel->getActiveSheet()->setCellValueExplicit("M".$position, $colM, PHPExcel_Cell_DataType::TYPE_STRING);
          $objPHPExcel->getActiveSheet()->setCellValueExplicit("N".$position, $cuentaCierre.$subCuentaCierre , PHPExcel_Cell_DataType::TYPE_STRING);
          $objPHPExcel->getActiveSheet()->setCellValueExplicit("O".$position, str_pad($cuentaCierre, 8, ' ', STR_PAD_RIGHT).$subCuentaCierre, PHPExcel_Cell_DataType::TYPE_STRING);


          $cedula = $row["columnaK"];
          $acumuladorCredito = 0;
          $acumuladorDebito = 0;
          $position++;

          $colA = $row["columnaA"];
          $colC = $row["columnaC"];
          $colD = $row["columnaD"];
          $colL = $row["columnaL"];
          $colM = $row["columnaM"];
          $colOrden = $row["orden"];
        }

        $acumuladorCredito = $acumuladorCredito + $row["columnaI"];
        $acumuladorDebito = $acumuladorDebito + $row["columnaH"];

        $columnaB = $row["columnaA"].$row["columnaD"].$row["columnaM"];
        if ($colTipo == 'D') { $columnaB = $columnaB.$row["columnaM"];}
        $objPHPExcel->getActiveSheet()->setCellValue("A".$position, $row["columnaA"]);
        $objPHPExcel->getActiveSheet()->setCellValue("B".$position, $columnaB);
        $objPHPExcel->getActiveSheet()->setCellValue("C".$position, $row["columnaC"]);
        $objPHPExcel->getActiveSheet()->setCellValueExplicit("D".$position, $row["columnaD"], PHPExcel_Cell_DataType::TYPE_STRING);
        $objPHPExcel->getActiveSheet()->setCellValue("E".$position, $row["columnaE"]);
        $objPHPExcel->getActiveSheet()->setCellValueExplicit("F".$position, $row["columnaF"], PHPExcel_Cell_DataType::TYPE_STRING); // cuenta
        $objPHPExcel->getActiveSheet()->setCellValueExplicit("G".$position, $row["columnaG"], PHPExcel_Cell_DataType::TYPE_STRING); // sub cuenta
        $objPHPExcel->getActiveSheet()->setCellValue("H".$position, $row["columnaH"]); // débito
        $objPHPExcel->getActiveSheet()->setCellValue("I".$position, $row["columnaI"]); // crédito
        $objPHPExcel->getActiveSheet()->setCellValueExplicit("J".$position, $row["columnaJ"], PHPExcel_Cell_DataType::TYPE_STRING);
        $objPHPExcel->getActiveSheet()->setCellValue("K".$position, $row["columnaK"]);
        $objPHPExcel->getActiveSheet()->setCellValueExplicit("L".$position, $row["columnaL"], PHPExcel_Cell_DataType::TYPE_STRING);
        $objPHPExcel->getActiveSheet()->setCellValueExplicit("M".$position, $row["columnaM"], PHPExcel_Cell_DataType::TYPE_STRING);
        $objPHPExcel->getActiveSheet()->setCellValueExplicit("N".$position, $row["columnaF"].$row["columnaG"], PHPExcel_Cell_DataType::TYPE_STRING);
        $objPHPExcel->getActiveSheet()->setCellValueExplicit("o".$position, str_pad($row["columnaF"], 8, ' ', STR_PAD_RIGHT).$row["columnaG"], PHPExcel_Cell_DataType::TYPE_STRING);

       if($row["columnaH"]>0 || $row["columnaI"]>0) {
        $position++;
       }
      } while($row=mysqli_fetch_array($resultados));

      $columnaB = $colA.$colD.$colM;
      $colI = $acumuladorDebito - $acumuladorCredito;
      if($colA=='200' ){
        $cuentaCierre="20C02";
        $subCuentaCierre ="0220";
        $nombreCuenta = "TOTAL NETO";
        if ($colOrden==5){
          $cuentaCierre="20C08";
          $subCuentaCierre ="GEHO";
        }

      }
      else{
        $cuentaCierre="20C01";
        $subCuentaCierre ="0210";
        $nombreCuenta = "TOTAL NETO";
        if ($colOrden==5){
          $cuentaCierre="20C08";
          $subCuentaCierre ="GESA";
        }
      }
      if ($colOrden==5){ $nombreCuenta = "DEPOSITO FIDEICOMISO"; }
      if ($colOrden==6){ $nombreCuenta = "NETO PAGADO VACACIONES"; }


      $objPHPExcel->getActiveSheet()->setCellValue("A".$position, $colA);
      $objPHPExcel->getActiveSheet()->setCellValue("B".$position, $columnaB);
      $objPHPExcel->getActiveSheet()->setCellValue("C".$position, $colC);
      $objPHPExcel->getActiveSheet()->setCellValueExplicit("D".$position, $colD, PHPExcel_Cell_DataType::TYPE_STRING);
      $objPHPExcel->getActiveSheet()->setCellValue("E".$position, "");
      $objPHPExcel->getActiveSheet()->setCellValueExplicit("F".$position, $cuentaCierre, PHPExcel_Cell_DataType::TYPE_STRING);
      $objPHPExcel->getActiveSheet()->setCellValueExplicit("G".$position, $subCuentaCierre,PHPExcel_Cell_DataType::TYPE_STRING);
      $objPHPExcel->getActiveSheet()->setCellValue("H".$position, "0");
      $objPHPExcel->getActiveSheet()->setCellValue("I".$position, $colI);
      $objPHPExcel->getActiveSheet()->setCellValueExplicit("J".$position, $nombreCuenta, PHPExcel_Cell_DataType::TYPE_STRING);
      $objPHPExcel->getActiveSheet()->setCellValue("K".$position, $cedula);
      $objPHPExcel->getActiveSheet()->setCellValueExplicit("L".$position, $colL, PHPExcel_Cell_DataType::TYPE_STRING);
      $objPHPExcel->getActiveSheet()->setCellValueExplicit("M".$position, $colM, PHPExcel_Cell_DataType::TYPE_STRING);
      $objPHPExcel->getActiveSheet()->setCellValueExplicit("N".$position, $cuentaCierre.$subCuentaCierre, PHPExcel_Cell_DataType::TYPE_STRING);
      $objPHPExcel->getActiveSheet()->setCellValueExplicit("O".$position, str_pad($cuentaCierre, 8, ' ', STR_PAD_RIGHT).$subCuentaCierre, PHPExcel_Cell_DataType::TYPE_STRING);

    // ----------------------------Data-----------------------------------

    // ---------------------------Auto Size-------------------------------------

      $objPHPExcel->getActiveSheet()->getColumnDimension("A")->setAutoSize(true);
      $objPHPExcel->getActiveSheet()->getColumnDimension("B")->setAutoSize(true);
      $objPHPExcel->getActiveSheet()->getColumnDimension("C")->setAutoSize(true);
      $objPHPExcel->getActiveSheet()->getColumnDimension("D")->setAutoSize(true);
      $objPHPExcel->getActiveSheet()->getColumnDimension("E")->setAutoSize(true);
      $objPHPExcel->getActiveSheet()->getColumnDimension("F")->setAutoSize(true);
      $objPHPExcel->getActiveSheet()->getColumnDimension("G")->setAutoSize(true);
      $objPHPExcel->getActiveSheet()->getColumnDimension("H")->setAutoSize(true);
      $objPHPExcel->getActiveSheet()->getColumnDimension("I")->setAutoSize(true);
      $objPHPExcel->getActiveSheet()->getColumnDimension("J")->setAutoSize(true);
      $objPHPExcel->getActiveSheet()->getColumnDimension("K")->setAutoSize(true);
      $objPHPExcel->getActiveSheet()->getColumnDimension("L")->setAutoSize(true);
      $objPHPExcel->getActiveSheet()->getColumnDimension("M")->setAutoSize(true);
      $objPHPExcel->getActiveSheet()->getColumnDimension("N")->setAutoSize(true);
      $objPHPExcel->getActiveSheet()->getColumnDimension("O")->setAutoSize(true);
      $objPHPExcel->getActiveSheet()->getColumnDimension("P")->setAutoSize(true);

    // ---------------------------Auto Size----------------------------------

    $objPHPExcel->getActiveSheet()->setTitle('CONTABILIDAD');
    $objPHPExcel->setActiveSheetIndex(0);

    $fileName = "ASIENTOS-NOMINA".$fecha_procesado.".xlsx";

    header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
    header('Content-Disposition: attachment;filename="'.$fileName.'"');
    header('Cache-Control: max-age=0');
    header('Cache-Control: max-age=1');
    header ('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
    header ('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
    header ('Cache-Control: cache, must-revalidate');
    header ('Pragma: public');
    $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
    $objWriter->save('php://output');
    exit;

  }

  if ($_POST['treporte']==1) {
    $mensaje = "";
    $exito = true;
    $fecha_procesado = date("d-m-Y");

    $fDesde = strtotime($_POST['fechaDesde']);
    $fHasta = strtotime($_POST['fechaHasta']);

    if ($fDesde && $fHasta) {
      $fechaDesde = date('Y-m-d', $fDesde);
      $fechaHasta = date('Y-m-d', $fHasta);
      $mesDesde = date('m', $fDesde);
      $mesHasta = date('m', $fHasta);
      if($fechaHasta < $fechaDesde){
        $mensaje = "Fecha hasta debe ser mayor que fecha desde";
        $exito = false;
      }
      else{
          generarReporteAsientosNomina($enlace);
          $exito = true;
          $mensaje = "Reporte generado correctamente";
        }

    } else {
      $exito = false;
      $mensaje = "Fechas invalidas";
    }
  }


  // IMPORTANTE, debe ir luego de todas las generaciones de archivos posibles
  menu();
  // IMPORTANTE, debe ir luego de todas las generaciones de archivos posibles

  ?>
		<br>
    <table border=0 cellpadding=0 cellspacing=0 width='100%'>
			<tr>
				<td  width='100%' align='left'><font size=2 color='black' face='verdana'>Empresa: <b><?echo $_SESSION['empresa_validar'];?></b>  - Per&iacute;odo: <b><font color=red><?echo $per;?></font></b>  -  Usuario: <b><?echo $_SESSION['nombre_validar'];?></b></font></td>
			</tr>
		</table>
    <hr>
    <font face='Verdana, Arial, Helvetica, sans-serif' size=4>Generar Reportes Contables</font>
    <font face='verdana' size=2>
      <br><br>
      <form name='entrada' action = '<?php echo $_SERVER['PHP_SELF']; ?>' method='POST' enctype='multipart/form-data'>

        <table align='center'>
          <?php
            if ($per!='') { ?>
              <tr>
                <td align='righta'>Per&iacute;odo Actual:</td>
                <td align='left'><font color=red> <?php echo $per; ?> </font></td>
              </tr>
              <?php
            }
          ?>

          <!-- Tipo de Reporte a Generar -->
          <tr id="filaTipoArchivo" class="">
            <td align='righta'>Tipo de Archivo:</td>
            <td align='left'>
              <select style='width:300px;' id="tipoReporte" onchange="onSelectChange()" name='treporte'>
                <option value='1'>ASIENTOS DE NOMINA (EXCEL)</option>
                <!-- <option value='2'>PRUEBA (EXCEL)</option>
                <option value='3'>OTRA PRUEBA (EXCEL)</option> -->
              </select>
            </td>
          </tr>

          <!-- Fecha Desde -->
          <tr id="filaFechaInicio" class="">
            <td align = ''> <font color=red>Fecha Desde </font></td>
            <td align = 'left'>
              <input type="date" style='width:300px;' name="fechaDesde">
            </td>
          </tr>

          <!-- Fecha Hasta -->
          <tr id="filaFechaFin" class="">
            <td align = ''> <font color=red>Fecha Hasta </font></td>
            <td align = 'left'>
              <input type="date" style='width:300px;' name="fechaHasta">
            </td>
          </tr>

          <!-- Periodo Desde -->
          <?php
            $consulta = mysqli_query($enlace,"SELECT * FROM periodo WHERE id='".$_SESSION['id_validar']."' order by nomina,periodo DESC") or die('No se pudo consultar los periodos (1): ' . mysqli_error($enlace));
            $numr = mysqli_num_rows($consulta);
          ?>
          <tr id="filaPeriodoDesde" class="hidden">
            <td align = ''> <font color=red>Per&iacute;odo Desde: </font></td>
            <td align = 'left'>
              <select style='width:300px;' name = 'per1'>
                <?php
                  for ($x=1;$x<=$numr;$x++) {
                    $row1 = mysqli_fetch_array($consulta);
                    if ($x!=1) {
                      echo "<option>".$row1['periodo']." - Nomina:".$row1['nomina']." - ".$row1['desde']." al ".$row1['hasta']."</option>";
                    }
                  }
                ?>
              </select>
            </td>
          </tr>

          <!-- Periodo Hasta -->
          <?php
            $consulta = mysqli_query($enlace,"SELECT * FROM periodo WHERE id='".$_SESSION['id_validar']."' order by nomina,periodo DESC") or die('No se pudo consultar los periodos (2): ' . mysqli_error($enlace));
            $numr = mysqli_num_rows($consulta);
          ?>
          <tr id="filaPeriodoHasta" class="hidden">
            <td align = ''> <font color=red>Per&iacute;odo Hasta: </font></td>
            <td align = 'left'>
              <select style='width:300px;' name = 'per2'>
                <?php
                  for ($x=1;$x<=$numr;$x++) {
                    $row1 = mysqli_fetch_array($consulta);
                    if ($x!=1) {
                      echo "<option>".$row1['periodo']." - Nomina:".$row1['nomina']." - ".$row1['desde']." al ".$row1['hasta']."</option>";
                    }
                  }
                ?>
              </select>
            </td>
          </tr>

          <!-- Gerencia -->
          <?php
            $idValidar=$_SESSION['id_validar'];
            $consulta = mysqli_query($enlace,"SELECT * FROM tablas WHERE tabla=ucase('GERENCIA') AND id = '$idValidar' ORDER BY codigo,detalle") or die('No se pudo consultar las gerencias: ' . mysqli_error($enlace));
            $resultado = mysqli_num_rows($consulta);
          ?>
          <tr id="filaGerencia" class="hidden">
            <td align = 'righta'> Gerencia: </td>
            <td align = 'left'>
              <select style='width:300px;' name = 'gerencia'>
                <option></option>
                <?php
                  if ($resultado != 0) {
                    for ($i=0;$i<$resultado;$i++) {
                      $row1 = mysqli_fetch_array($consulta);
                      echo "<option width = '30%'>".$row1['codigo']." - ".$row1['detalle']."</option>";
                    }
                  }
                ?>
              </select>
            </td>
          </tr>

          <!-- Division -->
          <?php
            $idValidar=$_SESSION['id_validar'];
            $consulta = mysqli_query($enlace,"SELECT * FROM tablas WHERE tabla=ucase('DIVISION') AND id='$id' ORDER BY codigo,detalle") or die('No se pudo consultar las divisiones: ' . mysqli_error($enlace));
            $resultado = mysqli_num_rows($consulta);
          ?>
          <tr id="filaDivision" class="hidden">
            <td align = 'righta'> Divisi&oacute;n: </td>
            <td align = 'left'>
              <select style='width:300px;' name = 'division'>
                <option></option>
                <?php
                  if ($resultado != 0) {
                    for ($i=0;$i<$resultado;$i++) {
                      $row1 = mysqli_fetch_array($consulta);
                      echo "<option width = '30%'>".$row1['codigo']." - ".$row1['detalle']."</option>";
                    }
                  }
                ?>
              </select>
            </td>
          </tr>

          <!-- Departamento -->
          <?php
            $id = $_SESSION["id_validar"];
            $consulta = mysqli_query($enlace,"SELECT * FROM tablas WHERE tabla=ucase('DEPARTAMENTO') AND id='$id' ORDER BY codigo,detalle") or die('No se pudo consultar los departamentos: ' . mysqli_error($enlace));
            $resultado = mysqli_num_rows($consulta);
          ?>
          <tr id="filaDepartamento" class="hidden">
            <td align = 'righta'> Departamento: </td>
            <td align = 'left'>
              <select style='width:300px;' name = 'departamento'>
                <option></option>
                <?php
                  if ($resultado != 0) {
                    for ($i=0;$i<$resultado;$i++) {
                      $row1 = mysqli_fetch_array($consulta);
                      echo "<option width = '30%'>".$row1['codigo']." - ".$row1['detalle']."</option>";
                    }
                  }
                ?>
              </select>
            </td>
          </tr>

          <?php
            if($mensaje != ""){
              $claseAlerta = $exito ? "alert-success" : "alert-danger";
              ?>
              <tr>
                <td colspan="4">
                  <div class="alert text-center <?php echo $claseAlerta; ?>" >
                    <?php echo $mensaje; ?>
                  </div>
              </tr>
            <?php
            }
          ?>
          <tr>
            <td colspan='4' align='center'>
              <input name='ver' type='submit' style='margin-left:5px; height:35px; width:200px' value='GENERAR REPORTE'>
            </td>
          </tr>
        </table>
      </form>
    </font>

    <script>
      const selectElement = document.querySelector('#tipoReporte');

      selectElement.addEventListener('change', (event) => {
        const filaFechaInicio = document.querySelector('#filaFechaInicio');
        const filaFechaFin = document.querySelector('#filaFechaFin');

        const filaPeriodoDesde = document.querySelector('#filaPeriodoDesde');
        const filaPeriodoHasta = document.querySelector('#filaPeriodoHasta');
        const filaGerencia = document.querySelector('#filaGerencia');
        const filaDivision = document.querySelector('#filaDivision');
        const filaDepartamento = document.querySelector('#filaDepartamento');

        if (event.target.value == "1"){
          filaPeriodoDesde.classList.add("hidden");
          filaPeriodoHasta.classList.add("hidden");
          filaGerencia.classList.add("hidden");
          filaDivision.classList.add("hidden");
          filaDepartamento.classList.add("hidden");
          filaFechaInicio.classList.remove("hidden");
          filaFechaFin.classList.remove("hidden");
        }
        else{
          filaPeriodoDesde.classList.remove("hidden");
          filaPeriodoHasta.classList.remove("hidden");
          filaGerencia.classList.remove("hidden");
          filaDivision.classList.remove("hidden");
          filaDepartamento.classList.remove("hidden");
          filaFechaInicio.classList.add("hidden");
          filaFechaFin.classList.add("hidden");
        }
      });
    </script>


  </body>
</html>
