<?php
include $_SERVER['DOCUMENT_ROOT'] . "/session.php";

// JSON 응답 헤더 설정
header('Content-Type: application/json; charset=utf-8');

// POST 데이터 확인
$input = json_decode(file_get_contents('php://input'), true);

if (!$input) {
    echo json_encode(['success' => 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 연결 종료
?>
