49 lines
1.9 KiB
PHP
49 lines
1.9 KiB
PHP
<?php
|
|
include_once('./_common.php');
|
|
|
|
header('Content-Type: application/json');
|
|
|
|
$mode = $_POST['mode'] ?? '';
|
|
|
|
if ($mode === 'enter') {
|
|
$ct_id = intval($_POST['ct_id']);
|
|
if ($ct_id) {
|
|
sql_query("UPDATE {$g5['g5_shop_cart_table']} SET ct_in_cnt = ct_in_cnt + 1 WHERE ct_id = '{$ct_id}'");
|
|
echo json_encode(['status' => 'ok', 'message' => '입장 횟수가 증가되었습니다.']);
|
|
} else {
|
|
echo json_encode(['status' => 'error', 'message' => '잘못된 요청입니다.']);
|
|
}
|
|
exit;
|
|
}
|
|
|
|
if ($mode === 'complete') {
|
|
$ct_id = get_text($_POST['ct_id']);
|
|
|
|
if ($ct_id) {
|
|
// 먼저 해당 ct_id의 od_id 값을 가져온다
|
|
$cart = sql_fetch("SELECT od_id FROM {$g5['g5_shop_cart_table']} WHERE ct_id = '{$ct_id}'");
|
|
$od_id = $cart['od_id'];
|
|
|
|
if ($od_id) {
|
|
// 1. 해당 ct_id만 완료로 변경
|
|
sql_query("UPDATE {$g5['g5_shop_cart_table']} SET ct_status = '완료' WHERE ct_id = '{$ct_id}'");
|
|
|
|
// 2. 동일 od_id의 남은 미완료 건수 확인
|
|
$not_completed = sql_fetch("SELECT COUNT(*) AS cnt FROM {$g5['g5_shop_cart_table']} WHERE od_id = '{$od_id}' AND ct_status != '완료'");
|
|
|
|
// 3. 모두 완료된 경우에만 주문서 상태도 완료 처리
|
|
if ((int)$not_completed['cnt'] === 0) {
|
|
sql_query("UPDATE {$g5['g5_shop_order_table']} SET od_status = '완료' WHERE od_id = '{$od_id}'");
|
|
}
|
|
|
|
echo json_encode(['status' => 'ok', 'message' => '이용권이 완료 처리되었습니다.']);
|
|
} else {
|
|
echo json_encode(['status' => 'error', 'message' => 'od_id를 찾을 수 없습니다.']);
|
|
}
|
|
} else {
|
|
echo json_encode(['status' => 'error', 'message' => '잘못된 요청입니다.']);
|
|
}
|
|
exit;
|
|
}
|
|
|
|
echo json_encode(['status' => 'error', 'message' => '유효하지 않은 접근입니다.']); |