fix: report ttd

This commit is contained in:
kur0nek-o
2024-04-09 15:22:49 +07:00
parent 0eed5109c5
commit 4f0aa93d1f
92 changed files with 3800 additions and 2786 deletions

View File

@@ -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()
}`
)

View File

@@ -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 }