« Back to History
gray_stock.php
|
20260721_154032.php
Initial Bulk Import
Copy Code
<?php require_once __DIR__ . '/modules/auth/page_acl.php'; $ctx = page_require_access('gray_stock'); $pdo = $ctx['pdo']; $company_id = (int)$ctx['company_id']; require_once __DIR__ . '/partials/header.php'; /* ===== LEDGER BASED STOCK ===== */ $sql = " SELECT fq.id AS quality_id, fq.quality_name, -- TOTAL IN SUM(CASE WHEN gsl.type = 'IN' THEN gsl.meter ELSE 0 END) AS total_in, -- TOTAL OUT SUM(CASE WHEN gsl.type = 'OUT' THEN gsl.meter ELSE 0 END) AS total_out, -- BALANCE (NO NEGATIVE) GREATEST( SUM(CASE WHEN gsl.type = 'IN' THEN gsl.meter ELSE 0 END) - SUM(CASE WHEN gsl.type = 'OUT' THEN gsl.meter ELSE 0 END), 0 ) AS balance FROM gray_stock_ledger gsl LEFT JOIN gray_receive gr ON gr.id = gsl.gray_id AND gr.company_id = gsl.company_id LEFT JOIN fabric_quality_master fq ON fq.id = gr.quality_id AND fq.company_id = gsl.company_id WHERE gsl.company_id = :cid GROUP BY fq.id, fq.quality_name ORDER BY fq.quality_name "; $stmt = $pdo->prepare($sql); $stmt->execute([':cid'=>$company_id]); $data = $stmt->fetchAll(PDO::FETCH_ASSOC); ?> <div class="container mt-4"> <div class="card p-3"> <h4>Gray Stock (Ledger Based)</h4> <table class="table table-bordered table-sm"> <thead> <tr> <th>Quality</th> <th>Total In</th> <th>Total Out</th> <th>Balance</th> </tr> </thead> <tbody> <?php foreach($data as $r): ?> <tr> <td><?= htmlspecialchars($r['quality_name']) ?></td> <td><?= number_format($r['total_in'],2) ?></td> <td><?= number_format($r['total_out'],2) ?></td> <td><b><?= number_format($r['balance'],2) ?></b></td> </tr> <?php endforeach; ?> </tbody> </table> </div> </div> <?php require_once __DIR__ . '/partials/footer.php'; ?>