export const exportToWord = ( rawMeta: any, formattedMeta: any, rawData: any, reportName: String ) => { const day = new Date().toLocaleString('id-ID', { weekday: 'long' }) const date = new Date().getDate() const month = new Date().toLocaleString('id-ID', { month: 'long' }) const year = new Date().getFullYear() const filename = 'Laporan ' + reportName + '.doc' let tbody = '' for (let index = 0; index < rawData.length; index++) { const element = rawData[index] let column = `` let styleTotal = '' for (let i = 0; i < element.length; i++) { const content = element[i] const colSpan = content?.colSpan !== undefined ? `colspan="${content.colSpan}"` : '' if (content && (content.content === 'TOTAL' || content.content === 'GRAND TOTAL')) { styleTotal = 'style="background-color: #c0c0c0; font-weight: bold;"' } i === 0 ? (column += `${content.content || content}`) : (column += `${content}`) } column += `` tbody += column } let preHtml = ` ${reportName} ` const body = `
PT. PLN(Persero)
UNIT INDUK
:
${ rawMeta.uid ? rawMeta.uid.name.toUpperCase() : 'Semua Unit Induk Distribusi/Wilayah'.toUpperCase() }
UNIT PELAKSANA PELAYANAN PELANGGAN
:
${ rawMeta.up3 ? rawMeta.up3.name.toUpperCase() : 'Semua Unit Pelaksanaan Pelayanan Pelanggan'.toUpperCase() }
POSKO
:
${ rawMeta.posko ? rawMeta.posko.name.toUpperCase() : 'Semua Posko'.toUpperCase() }


${reportName.toUpperCase()}
${`PERIODE TANGGAL : ${formattedMeta.dateFromFormat} SD TGL ${formattedMeta.dateToFormat}`}

${tbody}
User Regu Personil Yantek Jumlah WO Gangguan Individual Rata-rata Durasi WO Gangguan Rata-rata RPT WO Gangguan Rata-rata RCT WO Gangguan Jumlah WO Penugasan Khusus Rata-rata WO Penugasan Khusus

` const postHtml = '' const html = preHtml + body + postHtml const url = 'data:application/vnd.ms-word;charset=utf-8,' + encodeURIComponent(html) const downloadLink = document.createElement('a') document.body.appendChild(downloadLink) downloadLink.href = url downloadLink.download = filename downloadLink.click() document.body.removeChild(downloadLink) } export const exportDetailToWord = (formattedMeta: any, rawData: any, reportName: String) => { const day = new Date().toLocaleString('id-ID', { weekday: 'long' }) const date = new Date().getDate() const month = new Date().toLocaleString('id-ID', { month: 'long' }) const year = new Date().getFullYear() const filename = 'Laporan Detail ' + reportName + '.doc' let preHtml = ` Daftar Detail ${reportName} ` const body = `
PT. PLN(Persero)

${'DAFTAR DETAIL ' + reportName.toUpperCase()}
${`PERIODE TANGGAL : ${formattedMeta.dateFromFormat} SD TGL ${formattedMeta.dateToFormat}`}

${rawData .map( (item: any, i: any) => ` ` ) .join('')}
No UID/UIW UP3 Posko Sumber Lapor Create By Dispacth By User Regu Nama Regu Nama Petugas Shift Check In Petugas No Laporan Tgl Lapor Tgl Penugasan Baru Tgl Dalam Perjalanan Tgl Pengerjaan Tgl Nyala Sementara Tgl Nyala Tgl Selesai Durasi Perjalanan Durasi WO Check Out Petugas RPT RCT Rating Jml Pelanggan Padam Fasilitas Sub Fasilitas Peralatan Dampak Kerusakan Penyebab Kelompok Penyebab Cuaca Keterangan Pelapor Keterangan Penyebab Padam Tindakan APKT Status Referensi Marking BLTH
${i + 1} ${item.nama_uid} ${item.nama_up3} ${item.nama_posko} ${item.media} ${item.pembuat_laporan} ${item.dispacth_by} ${item.waktu_dispacth} ${item.user_regu} ${item.nama_regu} ${item.personil_yantek} ${item.shift} ${item.check_in_petugas} ${item.no_laporan} ${item.waktu_lapor} ${item.waktu_dispacth} ${item.waktu_perjalanan} ${item.waktu_response} ${item.waktu_nyala_sementara} ${item.waktu_nyala} ${item.waktu_selesai} ${item.durasi_waktu_response} ${item.durasi_wo} ${item.check_out_petugas} ${item.durasi_menit_response} ${item.durasi_menit_recovery} ${item.rating} ${item.jml_pelanggan_padam} ${item.fasilitas} ${item.sub_fasilitas} ${item.peralatan} ${item.dampak_kerusakan} ${item.penyebab} ${item.kelompok_penyebab} ${item.cuaca} ${item.keterangan_pelapor} ${item.keterangan} ${item.penyebab_padam} ${item.tindakan} ${item.status_akhir} ${item.referensi_marking} ${item.blth}

` const postHtml = '' const html = preHtml + body + postHtml const url = 'data:application/vnd.ms-word;charset=utf-8,' + encodeURIComponent(html) const downloadLink = document.createElement('a') document.body.appendChild(downloadLink) downloadLink.href = url downloadLink.download = filename downloadLink.click() document.body.removeChild(downloadLink) }