false, 'message' => '데이터를 받지 못했습니다.']); exit; } // 데이터베이스 연결 (PDO 사용) require_once($_SERVER['DOCUMENT_ROOT'] . "/lib/mydb.php"); $pdo = db_connect(); try { // 필수 필드 검증 if (empty($input['handover_num'])) { throw new Exception('인수인계 번호가 필요합니다.'); } $handover_num = $input['handover_num']; // 권한 확인 (작성자 또는 관리자만 삭제 가능) $sql = "SELECT regist_user FROM work_handover WHERE num = ? AND is_deleted = 'N'"; $stmh = $pdo->prepare($sql); $stmh->bindValue(1, $handover_num, PDO::PARAM_INT); $stmh->execute(); if ($stmh->rowCount() === 0) { throw new Exception('해당 인수인계 보고서를 찾을 수 없습니다.'); } $handover_data = $stmh->fetch(PDO::FETCH_ASSOC); // 권한 확인 (작성자 또는 QC 관리자만 삭제 가능) $QCadmin = false; if($user_name=='이세희' || $user_name=='개발자' || $user_name=='함신옥') { $QCadmin = true; } if ($handover_data['regist_user'] !== $user_name && !$QCadmin) { throw new Exception('삭제 권한이 없습니다.'); } // Soft Delete 실행 (실제 삭제하지 않고 is_deleted 플래그만 변경) $sql = "UPDATE work_handover SET is_deleted = 'Y', update_day = ?, update_user = ? WHERE num = ?"; $stmh = $pdo->prepare($sql); $today = date('Y-m-d'); $stmh->bindValue(1, $today, PDO::PARAM_STR); $stmh->bindValue(2, $user_name, PDO::PARAM_STR); $stmh->bindValue(3, $handover_num, PDO::PARAM_INT); if ($stmh->execute()) { echo json_encode([ 'success' => true, 'message' => '인수인계 보고서가 삭제되었습니다.' ]); } else { throw new Exception('삭제 중 오류가 발생했습니다.'); } } catch (Exception $e) { echo json_encode([ 'success' => false, 'message' => $e->getMessage() ]); } $pdo = null; // PDO 연결 종료 ?>