File manager - Edit - /home/webapp69.cm.in.th/u69319090028/Shop/app/Controllers/AdminReportController.php
Back
<?php /** * AdminReportController * Report queue: list, detail, review, resolve, reject */ require_once __DIR__ . '/../Core/Controller.php'; require_once __DIR__ . '/../Services/AdminReportService.php'; require_once __DIR__ . '/../Middleware/AdminMiddleware.php'; require_once __DIR__ . '/../Helpers/Auth.php'; require_once __DIR__ . '/../Helpers/Session.php'; class AdminReportController extends Controller { private AdminReportService $reportService; public function __construct() { $this->reportService = new AdminReportService(); } public function index(): void { AdminMiddleware::requirePermission('report.manage'); $filters = [ 'q' => trim($_GET['q'] ?? ''), 'status' => $_GET['status'] ?? 'all', 'report_type' => $_GET['report_type'] ?? 'all', ]; $page = max(1, (int)($_GET['page'] ?? 1)); $data = $this->reportService->getReports($filters, $page); $this->render('admin/reports/index', array_merge($data, [ 'filters' => $filters, 'pageTitle' => 'รายงานจากผู้ใช้งาน — CARGOO Admin', 'activeNav' => 'reports', ]), 'admin'); } public function show(string $id): void { AdminMiddleware::requirePermission('report.manage'); $report = $this->reportService->getReportDetail((int)$id); if (!$report) { Session::setFlash('danger', 'ไม่พบรายงาน'); $this->redirect('/admin/reports'); } $this->render('admin/reports/show', [ 'report' => $report, 'pageTitle' => 'รายงาน #' . (int)$id . ' — CARGOO Admin', 'activeNav' => 'reports', ], 'admin'); } public function review(string $id): void { AdminMiddleware::requirePermission('report.manage'); $result = $this->reportService->assignAndReview((int)$id, Auth::id()); Session::setFlash($result['success'] ? 'success' : 'danger', $result['message']); $this->redirect('/admin/reports/' . $id); } public function resolve(string $id): void { AdminMiddleware::requirePermission('report.manage'); $note = trim($_POST['resolution_note'] ?? ''); $result = $this->reportService->resolve((int)$id, $note, Auth::id()); Session::setFlash($result['success'] ? 'success' : 'danger', $result['message']); $this->redirect('/admin/reports/' . $id); } public function reject(string $id): void { AdminMiddleware::requirePermission('report.manage'); $note = trim($_POST['resolution_note'] ?? ''); $result = $this->reportService->reject((int)$id, $note, Auth::id()); Session::setFlash($result['success'] ? 'success' : 'danger', $result['message']); $this->redirect('/admin/reports/' . $id); } }
| ver. 1.4 |
Github
|
.
| PHP 7.4.33 | Generation time: 0.24 |
proxy
|
phpinfo
|
Settings