Files
2026-09-16 23:20:08 +07:00

57 lines
2.2 KiB
PHP

<?php
session_start();
require_once '../includes/db.php';
require_once '../includes/api_helper.php';
require_once '../includes/logger.php';
require_once '../includes/notifier.php';
if (!isset($_SESSION['user_id'])) {
jsonResponse(false, 'Unauthorized', [], 401);
}
if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
jsonResponse(false, 'Invalid request method');
}
$id = $_POST['id'] ?? '';
if (empty($id)) {
jsonResponse(false, 'ไม่พบข้อมูลที่ต้องการลบ');
}
try {
// ตรวจสอบว่ามีการจองผูกอยู่หรือไม่
$stmt = $pdo->prepare("SELECT id FROM schedules WHERE vehicle_id = ? LIMIT 1");
$stmt->execute([$id]);
if ($stmt->fetch()) {
jsonResponse(false, 'ไม่สามารถลบได้ เนื่องจากรถคันนี้มีการจองอยู่ในระบบ');
}
// ตรวจสอบสถานะจำหน่าย
$stmt = $pdo->prepare("SELECT status FROM vehicles WHERE id = ?");
$stmt->execute([$id]);
$vehicle = $stmt->fetch();
if ($vehicle && $vehicle['status'] === 'disposed') {
jsonResponse(false, 'ไม่สามารถลบได้ เนื่องจากรถคันนี้อยู่ในสถานะจำหน่ายแล้ว');
}
$stmt = $pdo->prepare("SELECT license_plate FROM vehicles WHERE id = ?");
$stmt->execute([$id]);
$vehicleInfo = $stmt->fetch();
$license_plate = $vehicleInfo ? $vehicleInfo['license_plate'] : $id;
$stmt = $pdo->prepare("DELETE FROM vehicles WHERE id = ?");
$stmt->execute([$id]);
if ($stmt->rowCount() > 0) {
logActivity("Delete Vehicle ({$license_plate})", 'vehicles', $id);
notifyEvent('vehicle', "🚗 แจ้งเตือนยานพาหนะ\nลบข้อมูลรถออกจากระบบ: {$license_plate}");
jsonResponse(true, 'ลบข้อมูลสำเร็จ');
} else {
jsonResponse(false, 'ไม่พบข้อมูลในฐานข้อมูล');
}
} catch (PDOException $e) {
jsonResponse(false, 'Database Error: ' . $e->getMessage());
}
?>