import axios from 'axios'

/**
 * (임시) 전자결재 저장(테스트용) 결재중 상태 저장
 * @param {object} params
 * @property {string} params.contNo - 계약번호
 * @returns
 */
export async function signStart(params = {}) {
    console.log(params)
    try {
        const result = await axios.post(`/api/sign/start/`,params)
        return result
    } catch (e) {
        const serverError = e.response?.data;

        const message = typeof serverError?.body === 'string'
            ? serverError.body
            : 'Unknown error occurred';

        const error = new Error(message); // ✅ 반드시 string만 넣기! 아니면 객체가 문자열로 나옴
        error.code = serverError?.code;
        error.errTime = serverError?.errTime;
        throw error;
    }
}

/**
 * 전자결재 반려 상태변경
 * @param {object} params
 * @property {string} params.contNo - 계약번호
 * @returns
 */
export async function signReturn(params = {}) {
    console.log(params)
    try {
        const result = await axios.post(`/api/sign/return/`,params)
        return result
    } catch (e) {
        const serverError = e.response?.data;

        const message = typeof serverError?.body === 'string'
            ? serverError.body
            : 'Unknown error occurred';

        const error = new Error(message); // ✅ 반드시 string만 넣기! 아니면 객체가 문자열로 나옴
        error.code = serverError?.code;
        error.errTime = serverError?.errTime;
        throw error;
    }
}

/**
 * 전자결재 회수 상태 변경
 * @param {object} params
 * @property {string} params.contNo - 계약번호
 * @returns
 */
export async function signStart(params = {}) {
    console.log(params)
    try {
        const result = await axios.post(`/api/sign/recovery/`,params)
        return result
    } catch (e) {
        const serverError = e.response?.data;

        const message = typeof serverError?.body === 'string'
            ? serverError.body
            : 'Unknown error occurred';

        const error = new Error(message); // ✅ 반드시 string만 넣기! 아니면 객체가 문자열로 나옴
        error.code = serverError?.code;
        error.errTime = serverError?.errTime;
        throw error;
    }
}

/**
 * 전자결재 결재완료 상태 변경
 * @param {object} params
 * @property {string} params.contNo - 계약번호
 * @returns
 */
export async function signStart(params = {}) {
    console.log(params)
    try {
        const result = await axios.post(`/api/sign/confirm/`,params)
        return result
    } catch (e) {
        const serverError = e.response?.data;

        const message = typeof serverError?.body === 'string'
            ? serverError.body
            : 'Unknown error occurred';

        const error = new Error(message); // ✅ 반드시 string만 넣기! 아니면 객체가 문자열로 나옴
        error.code = serverError?.code;
        error.errTime = serverError?.errTime;
        throw error;
    }
}

