feat(vip): 新增VIP客户管理功能及预约系统

- 添加VIP客户搜索功能
- 实现VIP客户信息编辑功能
- 新增VIP客户预约记录查看功能
- 添加为VIP客户快速创建预约功能
- 新增预约处理API接口
- 优化移动端交互体验
This commit is contained in:
2025-11-20 11:47:09 +08:00
parent 39d9525a6b
commit 34d8d6181e
3 changed files with 982 additions and 2 deletions
+101
View File
@@ -0,0 +1,101 @@
<?php
// 配置数据库连接参数
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "car_wash_db";
// 设置响应头为JSON
header('Content-Type: application/json');
// 获取请求参数
$phone = $_GET['phone'] ?? '';
// 验证参数
if (empty($phone)) {
echo json_encode([
'success' => false,
'message' => '缺少必要的参数',
'total' => 0,
'pending' => 0,
'completed' => 0,
'bookings' => []
]);
exit;
}
// 创建数据库连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接
if ($conn->connect_error) {
echo json_encode([
'success' => false,
'message' => '数据库连接失败',
'total' => 0,
'pending' => 0,
'completed' => 0,
'bookings' => []
]);
exit;
}
// 准备SQL查询 - 查询用户的预约记录
// 假设预约表名为bookings,套餐表名为packages
$sql = "SELECT b.*, p.package_name
FROM bookings b
LEFT JOIN packages p ON b.package_id = p.id
WHERE b.phone = ?
ORDER BY b.booking_date DESC, b.id DESC";
$stmt = $conn->prepare($sql);
$stmt->bind_param("s", $phone);
$stmt->execute();
$result = $stmt->get_result();
$bookings = [];
$pending = 0;
$completed = 0;
// 处理查询结果
while ($row = $result->fetch_assoc()) {
$booking = [
'id' => $row['id'],
'booking_date' => $row['booking_date'],
'phone' => $row['phone'],
'car_number' => $row['car_number'] ?? '',
'car_model' => $row['car_model'] ?? '',
'time_slot' => $row['time_slot'] ?? '',
'status' => $row['status'] ?? '未知',
'package_name' => $row['package_name'] ?? '',
'notes' => $row['notes'] ?? ''
];
// 统计不同状态的预约数量
if ($booking['status'] === '待服务') {
$pending++;
} elseif ($booking['status'] === '已完成') {
$completed++;
}
$bookings[] = $booking;
}
// 计算总预约数
$total = count($bookings);
// 构建响应数据
$response = [
'success' => true,
'total' => $total,
'pending' => $pending,
'completed' => $completed,
'bookings' => $bookings
];
// 返回JSON数据
echo json_encode($response);
// 关闭数据库连接
$stmt->close();
$conn->close();