<?php
session_start();
require("clases/Desembolso.class.php");
require("clases/Proyecto.class.php");
require("clases/Beneficiario.class.php");

$obj = new Desembolso();
$objProyecto = new Proyecto();
$objBenef = new Beneficiario();

$accion = "R";
$titulo = "Registrar Desembolso";

// Si viene por editar
if(isset($_GET["id"])){
    if($obj->BuscarPorCodigo($_GET["id"])){
        $accion = "M";
        $titulo = "Modificar Desembolso";

        $iddesembolso  = $obj->getId();
        $idproyecto    = $obj->getProyectoId();
        $idbenef       = $obj->getBeneficiarioId();
        $monto         = $obj->getMonto();
        $descripcion   = $obj->getObservaciones();
        $fecha         = $obj->getFecha();
    }
}
?>
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Gesti�n de Desembolsos</title>

    <!-- Bootstrap 3 -->
    <link rel="stylesheet" 
          href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css">

    <style>
        body { background: #f5f5f5; }
        .panel { border-radius: 12px; }
        .panel-heading { font-size: 17px; font-weight: bold; }
        .table th { background: #222; color: #fff; }
        .btn { border-radius: 20px; }
    </style>
	<style>
        body { 
            background: #f3f3f3; 
            font-family: "Arial", sans-serif;
        }

        .reporte-container {
            background: white;
            padding: 25px;
            margin-top: 20px;
            border-radius: 10px;
            box-shadow: 0 0 10px rgba(0,0,0,0.1);
        }

        h2 {
            font-weight: 700;
            margin-bottom: 5px;
        }

        .titulo-seccion {
            font-size: 18px;
            font-weight: bold;
            margin-bottom: 15px;
        }

        .table > thead > tr > th {
            background: #1f2937;
            color: white;
            font-size: 13px;
            text-transform: uppercase;
        }

        /* Botón imprimir */
        .btn-print {
            margin-bottom: 15px;
        }

        /* Estilos solo para impresión */
        
        @media print {
            body {
                background: white !important;
            }

            .btn,
            .panel-heading,
            .volver-btn {
                display: none !important;
            }

            .reporte-container {
                box-shadow: none !important;
                margin-top: 0;
            }

            .table {
                border: 1px solid #000;
            }
        }
        
        @media print {
    .table {
        border: 1px solid black !important;
    }
    .table th, .table td {
        border: 1px solid black !important;
        padding: 6px !important;
    }

    .hidden-xs {
        display: block !important;
    }
    .visible-xs {
        display: none !important;
    }
}
		
		.btn-print, .volver-btn {
    border-radius: 25px;
    padding: 10px 20px;
    font-size: 16px;
    vertical-align: middle !important;
}

@media print {
    .volver-btn,
    .btn-print {
        display: none !important;
    }
}
    </style>
</head>

<body>

<div class="container reporte-container">

    <!-- TITULO -->
    <div class="row">
        <div class="col-md-12 text-center">
            <h2>Reporte de Desembolsos</h2>
            <p style="font-size:14px; color:#444;">Agrupados por Proyecto y Colaborador</p>
            <hr>
        </div>
    </div>

    <!-- BOTONES -->
<div class="row" style="margin-bottom: 20px;">
    <div class="col-md-12 text-right">

        <a href="mandesembolso.php" class="btn btn-default btn-lg volver-btn" >
            <span class="glyphicon glyphicon-chevron-left"></span> Regresar
        </a>

        <button onClick="window.print();" class="btn btn-primary btn-lg btn-print">
            <span class="glyphicon glyphicon-print"></span> Imprimir
        </button>

    </div>
</div>

    <!-- TABLA -->
    <div class="row">
        <div class="col-md-12">
            <div class="titulo-seccion">Listado de Desembolsos</div>
              <div class="table-responsive hidden-xs">
                <table class="table table-bordered table-striped table-hover">
                    <thead>
                        <tr>
                            <th>Proyecto</th>
                            <th>Colaborador</th>
                            <th>Desembolsos</th>
                            <th>Total Desembolsado</th>
                            <th>Obs</th>
                            
                        </tr>
                    </thead>
                    <tbody>

                    <?php
$lista = $obj->Listar("");

$proyectoActual = null;
$totalProyecto  = 0;
$costoProyecto  = 0;

if ($lista != null) {

    foreach ($lista as $d) {

        // Si cambia el proyecto, mostramos totales del anterior
        if ($proyectoActual != null && $proyectoActual != $d['proyecto_id']) {

            $saldo = $costoProyecto - $totalProyecto;

            echo "<tr class='info'>
                    <td colspan='3'><strong>Total desembolsado</strong></td>
                    <td colspan='2'><strong>S/. ".number_format($totalProyecto,2)."</strong></td>
                  </tr>";

            echo "<tr class='success'>
                    <td colspan='3'><strong>Saldo disponible</strong></td>
                    <td colspan='2'><strong>S/. ".number_format($saldo,2)."</strong></td>
                  </tr>";

            // Reset
            $totalProyecto = 0;
        }

        // Si es nuevo proyecto
        if ($proyectoActual != $d['proyecto_id']) {
            $proyectoActual = $d['proyecto_id'];
            $costoProyecto  = $d['costo_total'];

            // Fila título del proyecto
            echo "<tr class='active'>
                    <td colspan='5'>
                        <strong>PROYECTO:</strong> ".$d['proyecto']."
                        &nbsp; | &nbsp;
                        <strong>Costo:</strong> S/. ".number_format($costoProyecto,2)."
                    </td>
                  </tr>";
        }

        // Fila normal de desembolso
        echo "<tr>";
        echo "<td>".$d['proyecto']."</td>";
        echo "<td>".$d['beneficiario']."</td>";
        echo "<td>".$d['lista_desembolsos']."</td>";
        echo "<td>S/. ".number_format($d['total_desembolsado'],2)."</td>";
        echo "<td>".$d['obs']."</td>";
        echo "</tr>";

        $totalProyecto += $d['total_desembolsado'];
    }

    // Totales del último proyecto
    $saldoFinal = $costoProyecto - $totalProyecto;

    echo "<tr class='info'>
            <td colspan='3'><strong>Total desembolsado</strong></td>
            <td colspan='2'><strong>S/. ".number_format($totalProyecto,2)."</strong></td>
          </tr>";

    echo "<tr class='success'>
            <td colspan='3'><strong>Saldo disponible</strong></td>
            <td colspan='2'><strong>S/. ".number_format($saldoFinal,2)."</strong></td>
          </tr>";
}
?>


                    </tbody>
                </table>
            </div>
        </div>
    </div>
</div>

<!-- Acorde�n m�vil -->
<div class="visible-xs">
  <div class="panel-group" id="accordionMobile">

<?php
$totales = [];
$costos  = [];
$proyectos = [];

if ($lista != null) {
    foreach ($lista as $d) {

        $pid = $d['proyecto_id'];

        // Inicializar acumuladores por proyecto
        if (!isset($totales[$pid])) {
            $totales[$pid] = 0;
            $costos[$pid]  = $d['costo_total'];
            $proyectos[$pid] = $d['proyecto'];
        }

        $totales[$pid] += $d['total_desembolsado'];

        $idAcc = "des_p".$pid."_b".$d['beneficiario_id'];

        echo "
        <div class='panel panel-default'>
            <div class='panel-heading'>
                <h4 class='panel-title'>
                    <a data-toggle='collapse'
                       data-parent='#accordionMobile'
                       href='#$idAcc'>
                       ".$d['proyecto']." - ".$d['beneficiario']."
                    </a>
                </h4>
            </div>

            <div id='$idAcc' class='panel-collapse collapse'>
                <div class='panel-body'>
                    <p><strong>Proyecto:</strong> ".$d['proyecto']."</p>
                    <p><strong>Costo del Proyecto:</strong> S/. ".number_format($d['costo_total'],2)."</p>
                    <p><strong>Beneficiario:</strong> ".$d['beneficiario']."</p>

                    <p><strong>Desembolsos realizados:</strong><br>
                        ".$d['lista_desembolsos']."
                    </p>

                    <p><strong>Total desembolsado:</strong>
                        S/. ".number_format($d['total_desembolsado'],2)."
                    </p>

                    <p><strong>Observaciones:</strong><br>
                        ".$d['obs']."
                    </p>
                </div>
            </div>
        </div>";
    }
}
?>

<!-- RESUMEN POR PROYECTO -->
<?php
foreach ($totales as $pid => $total) {
    $saldo = $costos[$pid] - $total;

    echo "
    <div class='panel panel-info'>
        <div class='panel-heading'>
            <strong>Resumen del Proyecto: ".$proyectos[$pid]."</strong>
        </div>
        <div class='panel-body'>
            <p><strong>Total desembolsado:</strong> S/. ".number_format($total,2)."</p>
            <p><strong>Saldo disponible:</strong> S/. ".number_format($saldo,2)."</p>
        </div>
    </div>";
}
?>

  </div>
</div>


               
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js"></script>

</body>
</html>

