fix: report ttd
This commit is contained in:
@@ -49,6 +49,10 @@ const formatMetaData = (reportMeta: any) => {
|
||||
|
||||
const exportToPDF = (reportMeta: any, data: any) => {
|
||||
const meta = formatMetaData(reportMeta)
|
||||
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 doc = new jsPDF({
|
||||
orientation: 'landscape'
|
||||
})
|
||||
@@ -178,7 +182,7 @@ const exportToPDF = (reportMeta: any, data: any) => {
|
||||
|
||||
autoTable(doc, {
|
||||
head: [
|
||||
[`${meta.dayTo}, ${meta.dateToFormat}`],
|
||||
[`${day}, ${date}-${month}-${year}`],
|
||||
[
|
||||
{
|
||||
content: '(.........................................)',
|
||||
@@ -213,25 +217,28 @@ const exportToXLSX = (reportMeta: any, e: any) => {
|
||||
worksheet,
|
||||
2,
|
||||
1,
|
||||
`DISTRIBUSI/WILAYAH : ${reportMeta.value.uid
|
||||
? reportMeta.value.uid.name.toUpperCase()
|
||||
: 'Semua Distribusi/Wilayah'.toUpperCase()
|
||||
`DISTRIBUSI/WILAYAH : ${
|
||||
reportMeta.value.uid
|
||||
? reportMeta.value.uid.name.toUpperCase()
|
||||
: 'Semua Distribusi/Wilayah'.toUpperCase()
|
||||
}`
|
||||
)
|
||||
setHeaderStyle(
|
||||
worksheet,
|
||||
3,
|
||||
1,
|
||||
`AREA : ${reportMeta.value.up3 ? reportMeta.value.up3.name.toUpperCase() : 'Semua Area'.toUpperCase()
|
||||
`AREA : ${
|
||||
reportMeta.value.up3 ? reportMeta.value.up3.name.toUpperCase() : 'Semua Area'.toUpperCase()
|
||||
}`
|
||||
)
|
||||
setHeaderStyle(
|
||||
worksheet,
|
||||
4,
|
||||
1,
|
||||
`POSKO : ${reportMeta.value.posko
|
||||
? reportMeta.value.posko.name.toUpperCase()
|
||||
: 'Semua Posko'.toUpperCase()
|
||||
`POSKO : ${
|
||||
reportMeta.value.posko
|
||||
? reportMeta.value.posko.name.toUpperCase()
|
||||
: 'Semua Posko'.toUpperCase()
|
||||
}`
|
||||
)
|
||||
|
||||
|
@@ -1,6 +1,9 @@
|
||||
|
||||
const company = "PT. PLN (Persero)";
|
||||
const company = 'PT. PLN (Persero)'
|
||||
const exportToWord = (reportMeta: any, rawData: any, filename: any, periode: any) => {
|
||||
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()
|
||||
var preHtml = `<html xmlns:o='urn:schemas-microsoft-com:office:office' xmlns:w='urn:schemas-microsoft-com:office:word' xmlns='http://www.w3.org/TR/REC-html40'><head><meta charset='utf-8'><title>${filename}</title>
|
||||
<style type="text/css" media="print">
|
||||
@page Section1 {
|
||||
@@ -30,24 +33,24 @@ const exportToWord = (reportMeta: any, rawData: any, filename: any, periode: any
|
||||
</style>
|
||||
</head><body>
|
||||
<div class="Section1">
|
||||
`;
|
||||
var tbody = ``;
|
||||
var column = '';
|
||||
`
|
||||
var tbody = ``
|
||||
var column = ''
|
||||
for (let i = 0; i < rawData.value.length; i++) {
|
||||
column += '<tr>';
|
||||
const item = rawData.value[i];
|
||||
column += `<td>${i + 1}</td>`;
|
||||
column += `<td>${item.kode}</td>`;
|
||||
column += `<td>${item.nama_material}</td>`;
|
||||
column += `<td>${item.satuan}</td>`;
|
||||
column += `<td>${item.sumber_material}</td>`;
|
||||
column += '<tr>'
|
||||
const item = rawData.value[i]
|
||||
column += `<td>${i + 1}</td>`
|
||||
column += `<td>${item.kode}</td>`
|
||||
column += `<td>${item.nama_material}</td>`
|
||||
column += `<td>${item.satuan}</td>`
|
||||
column += `<td>${item.sumber_material}</td>`
|
||||
for (let a = 1; a <= 31; a++) {
|
||||
column += `<td>${item[`tgl${a}`]}</td>`;
|
||||
column += `<td>${item[`tgl${a}`]}</td>`
|
||||
}
|
||||
column += `<td>${item.total}</td>`;
|
||||
column += '</tr>';
|
||||
column += `<td>${item.total}</td>`
|
||||
column += '</tr>'
|
||||
}
|
||||
tbody += column;
|
||||
tbody += column
|
||||
var body = `
|
||||
<table border=0 style="border:none">
|
||||
<tr>
|
||||
@@ -56,15 +59,19 @@ const exportToWord = (reportMeta: any, rawData: any, filename: any, periode: any
|
||||
<tr>
|
||||
<td> Distribusi/Wilayah </td>
|
||||
<td>:</td>
|
||||
<td> ${reportMeta.uid
|
||||
? reportMeta.uid.name.toUpperCase()
|
||||
: 'Semua Unit Induk Distribusi/Wilayah'.toUpperCase()}</td>
|
||||
<td> ${
|
||||
reportMeta.uid
|
||||
? reportMeta.uid.name.toUpperCase()
|
||||
: 'Semua Unit Induk Distribusi/Wilayah'.toUpperCase()
|
||||
}</td>
|
||||
<tr>
|
||||
<td> Area</td>
|
||||
<td>:</td>
|
||||
<td> ${reportMeta.up3
|
||||
? reportMeta.up3.name.toUpperCase()
|
||||
: 'Semua Unit Pelaksanaan Pelayanan Pelanggan'.toUpperCase()}</td>
|
||||
<td> ${
|
||||
reportMeta.up3
|
||||
? reportMeta.up3.name.toUpperCase()
|
||||
: 'Semua Unit Pelaksanaan Pelayanan Pelanggan'.toUpperCase()
|
||||
}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> Posko</td>
|
||||
@@ -97,32 +104,35 @@ const exportToWord = (reportMeta: any, rawData: any, filename: any, periode: any
|
||||
|
||||
var postHtml = `<br>
|
||||
<footer>
|
||||
<p style="text-align: right; font-size: 10px;">${periode.dayTo}, ${periode.dateToFormat}</p>
|
||||
<p style="text-align: right; font-size: 10px;">${day}, ${date}-${month}-${year}</p>
|
||||
<br>
|
||||
<p style="text-align: right; font-size: 10px;">(.........................................)</p>
|
||||
</footer></div></body></html>`;
|
||||
</footer></div></body></html>`
|
||||
|
||||
var html = preHtml + body + postHtml;
|
||||
var html = preHtml + body + postHtml
|
||||
|
||||
var url =
|
||||
"data:application/vnd.ms-word;charset=utf-8," + encodeURIComponent(html);
|
||||
var url = 'data:application/vnd.ms-word;charset=utf-8,' + encodeURIComponent(html)
|
||||
|
||||
filename = filename ? filename + ".doc" : "document.doc";
|
||||
filename = filename ? filename + '.doc' : 'document.doc'
|
||||
|
||||
var downloadLink = document.createElement("a");
|
||||
var downloadLink = document.createElement('a')
|
||||
|
||||
document.body.appendChild(downloadLink);
|
||||
document.body.appendChild(downloadLink)
|
||||
|
||||
downloadLink.href = url;
|
||||
downloadLink.href = url
|
||||
|
||||
downloadLink.download = filename;
|
||||
downloadLink.download = filename
|
||||
|
||||
downloadLink.click();
|
||||
downloadLink.click()
|
||||
|
||||
document.body.removeChild(downloadLink);
|
||||
document.body.removeChild(downloadLink)
|
||||
}
|
||||
|
||||
const exportDetailToWord = (reportMeta: any, rawData: any, filename: any, periode: any) => {
|
||||
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()
|
||||
var preHtml = `<html xmlns:o='urn:schemas-microsoft-com:office:office' xmlns:w='urn:schemas-microsoft-com:office:word' xmlns='http://www.w3.org/TR/REC-html40'><head><meta charset='utf-8'><title>${filename}</title>
|
||||
<style type="text/css" media="print">
|
||||
@page Section1 {
|
||||
@@ -152,32 +162,32 @@ const exportDetailToWord = (reportMeta: any, rawData: any, filename: any, period
|
||||
</style>
|
||||
</head><body>
|
||||
<div class="Section1">
|
||||
`;
|
||||
var tbody = ``;
|
||||
var cr = ``;
|
||||
`
|
||||
var tbody = ``
|
||||
var cr = ``
|
||||
rawData.map((item: any, i: any) => {
|
||||
cr += '<tr>';
|
||||
cr += `<td>${i + 1}</td>`;
|
||||
cr += `<td>${item.no_laporan}</td>`;
|
||||
cr += `<td>${item.waktu_lapor}</td>`;
|
||||
cr += `<td>${item.waktu_response}</td>`;
|
||||
cr += `<td>${item.waktu_recovery}</td>`;
|
||||
cr += `<td>${item.durasi_response_time}</td>`;
|
||||
cr += `<td>${item.durasi_recovery_time}</td>`;
|
||||
cr += `<td>${item.status_akhir}</td>`;
|
||||
cr += `<td>${item.idpel_nometer}</td>`;
|
||||
cr += `<td>${item.nama_pelapor}</td>`;
|
||||
cr += `<td>${item.alamat_pelapor}</td>`;
|
||||
cr += `<td>${item.no_telp_pelapor}</td>`;
|
||||
cr += `<td>${item.keterangan_pelapor}</td>`;
|
||||
cr += `<td>${item.nama_posko}</td>`;
|
||||
cr += `<td>${item.media}</td>`;
|
||||
cr += '<td></td>';
|
||||
cr += '<td></td>';
|
||||
cr += '<td></td>';
|
||||
cr += '</tr>';
|
||||
});
|
||||
tbody += cr;
|
||||
cr += '<tr>'
|
||||
cr += `<td>${i + 1}</td>`
|
||||
cr += `<td>${item.no_laporan}</td>`
|
||||
cr += `<td>${item.waktu_lapor}</td>`
|
||||
cr += `<td>${item.waktu_response}</td>`
|
||||
cr += `<td>${item.waktu_recovery}</td>`
|
||||
cr += `<td>${item.durasi_response_time}</td>`
|
||||
cr += `<td>${item.durasi_recovery_time}</td>`
|
||||
cr += `<td>${item.status_akhir}</td>`
|
||||
cr += `<td>${item.idpel_nometer}</td>`
|
||||
cr += `<td>${item.nama_pelapor}</td>`
|
||||
cr += `<td>${item.alamat_pelapor}</td>`
|
||||
cr += `<td>${item.no_telp_pelapor}</td>`
|
||||
cr += `<td>${item.keterangan_pelapor}</td>`
|
||||
cr += `<td>${item.nama_posko}</td>`
|
||||
cr += `<td>${item.media}</td>`
|
||||
cr += '<td></td>'
|
||||
cr += '<td></td>'
|
||||
cr += '<td></td>'
|
||||
cr += '</tr>'
|
||||
})
|
||||
tbody += cr
|
||||
|
||||
var body = `
|
||||
<table border=0 style="border:none">
|
||||
@@ -187,15 +197,19 @@ const exportDetailToWord = (reportMeta: any, rawData: any, filename: any, period
|
||||
<tr>
|
||||
<td> Unit Induk Distribusi/Wilayah </td>
|
||||
<td>:</td>
|
||||
<td> ${reportMeta.uid
|
||||
? reportMeta.uid.name.toUpperCase()
|
||||
: 'Semua Unit Induk Distribusi/Wilayah'.toUpperCase()}</td>
|
||||
<td> ${
|
||||
reportMeta.uid
|
||||
? reportMeta.uid.name.toUpperCase()
|
||||
: 'Semua Unit Induk Distribusi/Wilayah'.toUpperCase()
|
||||
}</td>
|
||||
<tr>
|
||||
<td> Unit Pelaksanaan Pelayanan Pelanggan</td>
|
||||
<td>:</td>
|
||||
<td> ${reportMeta.up3
|
||||
? reportMeta.up3.name.toUpperCase()
|
||||
: 'Semua Unit Pelaksanaan Pelayanan Pelanggan'.toUpperCase()}</td>
|
||||
<td> ${
|
||||
reportMeta.up3
|
||||
? reportMeta.up3.name.toUpperCase()
|
||||
: 'Semua Unit Pelaksanaan Pelayanan Pelanggan'.toUpperCase()
|
||||
}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> Posko</td>
|
||||
@@ -236,29 +250,28 @@ const exportDetailToWord = (reportMeta: any, rawData: any, filename: any, period
|
||||
|
||||
var postHtml = `<br>
|
||||
<footer>
|
||||
<p style="text-align: right; font-size: 10px;">${periode.dayTo}, ${periode.dateToFormat}</p>
|
||||
<p style="text-align: right; font-size: 10px;">${day}, ${date}-${month}-${year}</p>
|
||||
<br>
|
||||
<p style="text-align: right; font-size: 10px;">(.........................................)</p>
|
||||
</footer></div></body></html>`;
|
||||
</footer></div></body></html>`
|
||||
|
||||
var html = preHtml + body + postHtml;
|
||||
var html = preHtml + body + postHtml
|
||||
|
||||
var url =
|
||||
"data:application/vnd.ms-word;charset=utf-8," + encodeURIComponent(html);
|
||||
var url = 'data:application/vnd.ms-word;charset=utf-8,' + encodeURIComponent(html)
|
||||
|
||||
filename = filename ? filename + ".doc" : "document.doc";
|
||||
filename = filename ? filename + '.doc' : 'document.doc'
|
||||
|
||||
var downloadLink = document.createElement("a");
|
||||
var downloadLink = document.createElement('a')
|
||||
|
||||
document.body.appendChild(downloadLink);
|
||||
document.body.appendChild(downloadLink)
|
||||
|
||||
downloadLink.href = url;
|
||||
downloadLink.href = url
|
||||
|
||||
downloadLink.download = filename;
|
||||
downloadLink.download = filename
|
||||
|
||||
downloadLink.click();
|
||||
downloadLink.click()
|
||||
|
||||
document.body.removeChild(downloadLink);
|
||||
document.body.removeChild(downloadLink)
|
||||
}
|
||||
|
||||
export { exportToWord, exportDetailToWord }
|
||||
export { exportToWord, exportDetailToWord }
|
||||
|
Reference in New Issue
Block a user