File manager - Edit - /var/www/order.cmtc.ac.th/admin/orders_summary.php
Back
<?php session_start(); if(!isset($_SESSION['admin'])) { header('Location: index.php'); exit; } include('../config/db.php'); date_default_timezone_set('Asia/Bangkok'); // รับค่ากรองช่วงวันที่ $today = date('Y-m-d'); $default_from = date('Y-m-d', strtotime('-6 days', strtotime($today))); $date_from = $_GET['date_from'] ?? $default_from; $date_to = $_GET['date_to'] ?? $today; // ✅ ดึงข้อมูลสรุปยอดรายวัน (รวมทั้ง order ปกติและ Free Order) $sql = " SELECT DATE(o.created_at) AS order_date, SUM(CASE WHEN o.receive_method='รับสินค้าด้วยตนเอง' THEN o.total ELSE 0 END) AS self_total, SUM(CASE WHEN o.receive_method='จัดส่งทางไปรษณีย์' THEN o.total ELSE 0 END) AS post_total, SUM(o.total) AS total_all, SUM(CASE WHEN o.status LIKE '%Free Order%' THEN o.total ELSE 0 END) AS free_total FROM orders o WHERE DATE(o.created_at) BETWEEN ? AND ? GROUP BY DATE(o.created_at) ORDER BY DATE(o.created_at) DESC "; $stmt = $conn->prepare($sql); $stmt->bind_param('ss', $date_from, $date_to); $stmt->execute(); $res = $stmt->get_result(); ?> <!DOCTYPE html> <html lang="th"> <head> <meta charset="UTF-8"> <title>📅 สรุปยอดรายวัน</title> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet"> <link href="https://fonts.googleapis.com/css2?family=Kanit:wght@300;400;600&display=swap" rel="stylesheet"> <style> body,*{font-family:'Kanit',sans-serif!important;} .table th,.table td{vertical-align:middle!important;} </style> </head> <body class="bg-light"> <?php include("menu.php"); ?> <div class="container py-4"> <div class="d-flex justify-content-between align-items-center mb-3"> <h3>📅 รายงานสรุปยอดรายวัน (Order ปกติ + Free Order)</h3> </div> <!-- ✅ ฟอร์มเลือกช่วงวันที่ --> <div class="card mb-3 shadow-sm"> <div class="card-body"> <form class="row g-2 align-items-end"> <div class="col-md-4"> <label class="form-label">จากวันที่</label> <input type="date" name="date_from" value="<?=htmlspecialchars($date_from)?>" class="form-control"> </div> <div class="col-md-4"> <label class="form-label">ถึงวันที่</label> <input type="date" name="date_to" value="<?=htmlspecialchars($date_to)?>" class="form-control"> </div> <div class="col-md-2"> <button class="btn btn-primary w-100">แสดง</button> </div> <div class="col-md-2 text-end"> <a href="orders_summary_export.php?date_from=<?=$date_from?>&date_to=<?=$date_to?>" class="btn btn-outline-success w-100">📊 Export Excel</a> </div> </form> </div> </div> <!-- ✅ ตารางสรุป --> <div class="card shadow-sm"> <div class="card-header bg-dark text-white fw-bold"> สรุปยอดรายวัน (<?=htmlspecialchars($date_from)?> ถึง <?=htmlspecialchars($date_to)?>) </div> <div class="card-body p-0"> <div class="table-responsive"> <table class="table table-bordered text-center mb-0"> <thead class="table-light"> <tr> <th>วันที่</th> <th>รับสินค้าด้วยตนเอง (บาท)</th> <th>จัดส่งทางไปรษณีย์ (บาท)</th> <th>รวมยอดต่อวัน (บาท)</th> <th>ยอด Free Order (บาท)</th> </tr> </thead> <tbody> <?php $sum_self=0; $sum_post=0; $sum_all=0; $sum_free=0; if($res->num_rows > 0): while($r=$res->fetch_assoc()): $sum_self += $r['self_total']; $sum_post += $r['post_total']; $sum_all += $r['total_all']; $sum_free += $r['free_total']; ?> <tr> <td><?=htmlspecialchars($r['order_date'])?></td> <td><?=number_format($r['self_total'],2)?></td> <td><?=number_format($r['post_total'],2)?></td> <td><b><?=number_format($r['total_all'],2)?></b></td> <td class="text-warning fw-bold"><?=number_format($r['free_total'],2)?></td> </tr> <?php endwhile; else: ?> <tr><td colspan="5" class="text-center text-muted py-4">ไม่พบข้อมูลในช่วงวันที่เลือก</td></tr> <?php endif; ?> </tbody> <tfoot class="fw-bold table-secondary"> <tr> <td>รวมทั้งหมด</td> <td><?=number_format($sum_self,2)?></td> <td><?=number_format($sum_post,2)?></td> <td><?=number_format($sum_all,2)?></td> <td class="text-warning"><?=number_format($sum_free,2)?></td> </tr> </tfoot> </table> </div> </div> </div> </div> </body> </html>
| ver. 1.4 |
Github
|
.
| PHP 7.4.33 | Generation time: 0.41 |
proxy
|
phpinfo
|
Settings