feat: create export pdf in rekapitulasi gangguan per jenis gangguan

This commit is contained in:
kur0nek-o
2024-03-22 14:48:50 +07:00
parent fa6e11f25a
commit 0487301697
4 changed files with 498 additions and 33 deletions

View File

@ -3,6 +3,7 @@
:report-button="true"
@reset-form="data = []"
@run-search="() => filterData(filters)"
@run-report="() => exportToPDF(reportMeta, data, true)"
class="mb-4"
>
<Type1 @update:filters="(value) => (filters = value)" />
@ -1243,7 +1244,7 @@ const showDetail = () => {
const onExporting = (e: any) => {
if (e.format === 'pdf') {
exportToPDF(reportMeta, data)
exportToPDF(reportMeta.value, data.value)
} else {
const workbook = new Workbook()
const worksheet = workbook.addWorksheet('Employees')

View File

@ -5,6 +5,7 @@
:report-button="true"
@reset-form="data = []"
@run-search="() => filterData(filters)"
@run-report="() => exportToPDF(reportMeta, data, true)"
class="mb-4"
>
<Type1 @update:filters="(value) => (filters = value)" />
@ -446,8 +447,6 @@ import {
DxSelection,
DxSummary
} from 'devextreme-vue/data-grid'
import { jsPDF } from 'jspdf'
import { exportDataGrid as exportToPdf } from 'devextreme/pdf_exporter'
import { exportDataGrid as exportToExcel } from 'devextreme/excel_exporter'
import { saveAs } from 'file-saver'
import { Workbook } from 'exceljs'
@ -455,12 +454,19 @@ import { useQuery } from '@vue/apollo-composable'
import { queries } from '@/utils/api/api.graphql'
import { dummyData } from '@/utils/dummy'
import { formatNumber, formatPercentage, isNumber } from '@/utils/numbers'
import { exportToPDF } from '@/report/Gangguan/Rekap/RGangguan_JenisGangguan'
const position = { of: '#data' }
const showIndicator = ref(true)
const shading = ref(true)
const showPane = ref(true)
const data = ref<any[]>([])
const reportMeta = ref({
uid: { id: 0, name: 'Semua Unit Induk Distribusi/Wilayah' },
up3: { id: 0, name: 'Semua Unit Pelaksanaan Pelayanan Pelanggan' },
posko: { id: 0, name: 'Semua Posko' },
periode: ''
})
const { onResult, onError, loading, refetch } = useQuery(queries.gangguan.rekap.jenisGangguan, {
dateFrom: new Date().toISOString().slice(0, 10),
@ -472,15 +478,7 @@ const { onResult, onError, loading, refetch } = useQuery(queries.gangguan.rekap.
const onExporting = (e: any) => {
if (e.format === 'pdf') {
const doc = new jsPDF()
exportToPdf({
jsPDFDocument: doc,
component: e.component,
indent: 5
}).then(() => {
doc.save(`.pdf`)
})
exportToPDF(reportMeta.value, data.value)
} else {
const workbook = new Workbook()
const worksheet = workbook.addWorksheet('Employees')
@ -569,6 +567,8 @@ const filterData = (params: any) => {
}
})
}
reportMeta.value = filters.value
})
onError((queryError) => {
console.log(queryError)