46 lines
1.7 KiB
PHP
46 lines
1.7 KiB
PHP
<?php
|
|
include_once('./_common.php');
|
|
|
|
// JSON 응답 헤더 설정
|
|
header('Content-Type: application/json');
|
|
|
|
// POST 요청 확인
|
|
if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
|
|
echo json_encode(['success' => false, 'message' => '잘못된 요청입니다.']);
|
|
exit;
|
|
}
|
|
|
|
// ReservationManager 클래스 로드
|
|
if (!file_exists(G5_ADMIN_PATH . '/consultant_manage/classes/ReservationManager.class.php')) {
|
|
echo json_encode(['success' => false, 'message' => '예약 관리 시스템을 찾을 수 없습니다.']);
|
|
exit;
|
|
}
|
|
|
|
require_once(G5_ADMIN_PATH . '/consultant_manage/classes/ReservationManager.class.php');
|
|
require_once(G5_ADMIN_PATH . '/consultant_manage/functions.php'); // 헬퍼 함수 로드
|
|
|
|
try {
|
|
$reservationManager = new ReservationManager();
|
|
|
|
// 데이터 준비
|
|
$data = [
|
|
'customer_name' => $member['mb_name'] ?? '비회원', // 로그인한 경우 회원 이름 사용
|
|
'customer_phone' => $_POST['consultation_phone'],
|
|
'customer_email' => $member['mb_email'] ?? '',
|
|
'reservation_date' => substr($_POST['consultation_date'], 0, 10),
|
|
'reservation_time' => substr($_POST['consultation_date'], 11, 5),
|
|
'request_memo' => $_POST['consultation_content'],
|
|
'wr_id' => 0, // 게시글 ID가 있다면 연동 가능
|
|
'consultation_type' => 'expert_visit', // 전문가 방문 상담
|
|
'resource_id' => !empty($_POST['consultation_resource']) ? (int)$_POST['consultation_resource'] : null // 💡 [추가] 리소스 ID 저장
|
|
];
|
|
|
|
// 예약 생성
|
|
$result = $reservationManager->createReservation($data);
|
|
|
|
echo json_encode($result);
|
|
|
|
} catch (Exception $e) {
|
|
echo json_encode(['success' => false, 'message' => '서버 오류: ' . $e->getMessage()]);
|
|
}
|