importScripts("/js/xlsx-0.18.12.min.js");
// importScripts("/js/jquery-3.7.0.min.js");

self.onmessage = function(e) {
    const { data, sheetName, fileName } = e.data;
    const columns =  [ "ID", "교차로명", "카메라방향", "방향", "통계시각", "좌회전(소형)", "좌회전(중형)", "좌회전(대형)", "직진(소형)",
        "직진(중형)", "직진(대형)", "우회전(소형)", "우회전(중형)", "우회전(대형)", "유턴(소형)", "유턴(중형)", "유턴(대형)", "합계"];
    const keys = [
        "ixr_id",
        "ixr_nm",
        "cmra_nm",
        "drct_dvsn_cd_r",
        "clct_dt",
        "smal_left_tfvl",
        "mddl_left_tfvl",
        "lrg_left_tfvl",
        "smal_go_tfvl",
        "mddl_go_tfvl",
        "lrg_go_tfvl",
        "smal_rght_tfvl",
        "mddl_rght_tfvl",
        "lrg_rght_tfvl",
        "smal_uturntfvl",
        "mddl_uturntfvl",
        "lrg_uturntfvl",
        "tot_tfvl"
    ];
    const sheetData = [columns];

    console.log(data);
    // 데이터 -> 워크시트 변환
    const wb = XLSX.utils.book_new();
    const ws = XLSX.utils.table_to_sheet(data);
    XLSX.utils.book_append_sheet(wb, ws, sheetName); // step 3. workbook에 새로만든 워크시트에 이름을 주고 붙인다.
    const wbout = XLSX.write(wb, {bookType:'xlsx',  type: 'base64'}); // step 4. 엑셀 파일 만들기
    //saveAs(new Blob([s2ab(wbout)],{type:"application/octet-stream"}), fileName); // step 5. 엑셀 파일 내보내기
    self.postMessage({ status: "done", wbout, fileName });

};
