true, "updated_count" => $updated_count, "error_count" => $error_count ); header("Content-Type: application/json"); echo json_encode($data); exit; } } // 1회성 실행 모드 (GET/POST 쿼리 파라미터) if(isset($_REQUEST['confirm']) && $_REQUEST['confirm'] == 'yes') { $datetime = date("Y-m-d H:i:s"); $is_executed = true; // 모든 VIP 정상 상태 데이터 조회 $squery = "SELECT * FROM {$fg['vip_list_table']} WHERE status='정상'"; $result_list = sql_query($squery); $updated_count = 0; $error_count = 0; $details = array(); while($list = sql_fetch_array($result_list)) { $ent_count = $list['ent_count']; // 만료일 설정 로직 if ($ent_count == 0) { // 방문횟수가 0: 등록일 + 1년 $vip_date = date("Y-m-d", strtotime($list['join_datetime'] . " +1 year")); $logic_type = "등록일 기준"; } else { // 방문횟수가 1 이상: 최종이용일 + 1년 $vip_date = date("Y-m-d", strtotime($list['last_ent_date'] . " +1 year")); $logic_type = "최종이용일 기준"; } // 만료 여부 확인 (만료일이 오늘 이전이면 상태를 '만료'로 변경) $today = date('Y-m-d'); $new_status = (strtotime($vip_date) < strtotime($today)) ? '만료' : '정상'; // DB 업데이트 $updateQuery = "UPDATE {$fg['vip_list_table']} SET vip_date='{$vip_date}', status='{$new_status}' WHERE idx='{$list['idx']}'"; $update_result = sql_query($updateQuery); if ($update_result) { $updated_count++; $details[] = array( 'card_no' => $list['vip_card_no'], 'name' => $list['vip_name'], 'old_date' => $list['vip_date'], 'new_date' => $vip_date, 'logic' => $logic_type, 'ent_count' => $ent_count, 'new_status' => $new_status, 'status_changed' => ($new_status !== $list['status']) ? 'O' : 'X' ); } else { $error_count++; } // log 기록 $work = "VIP만료일일괄설정"; $work_detail = "카드번호 : ".$list['vip_card_no']." 만료일 : ".$vip_date." (" . $logic_type . ") 상태 : ".$new_status." 처리자 : ".$_SESSION['user_name']; $logUpdate = log_update($work, $work_detail, $_SESSION['user_id'], $datetime); } $result_message = "처리 완료: 업데이트 성공 {$updated_count}건, 실패 {$error_count}건"; $result_data = $details; } ?>
| 카드번호 | 성명 | 이전 만료일 | 신규 만료일 | 설정 기준 | 방문횟수 | 신규 상태 | 상태변경 |
|---|---|---|---|---|---|---|---|
| = $item['card_no'] ?> | = $item['name'] ?> | = ($item['old_date'] == '9999-12-31') ? '평생' : $item['old_date'] ?> | = $item['new_date'] ?> | = $item['logic'] ?> | = $item['ent_count'] ?> | = $item['new_status'] ?> | = ($item['status_changed'] === 'O') ? '변경됨' : '-' ?> |