Refactor data retrieval in filterData function

This commit is contained in:
Dede Fuji Abdul
2024-03-29 00:22:39 +07:00
parent c7bbf61878
commit b05b6f82bc
35 changed files with 1247 additions and 1427 deletions

View File

@ -317,7 +317,7 @@ import { exportDataGrid as exportToExcel } from 'devextreme/excel_exporter'
import { saveAs } from 'file-saver'
import { Workbook } from 'exceljs'
import { useQuery } from '@vue/apollo-composable'
import { queries } from '@/utils/api/api.graphql'
import { queries, requestGraphQl } from '@/utils/api/api.graphql'
import autoTable from 'jspdf-autotable'
const position = { of: '#data' }
@ -548,25 +548,13 @@ const onExporting = (e: any) => {
}
const data = ref<any[]>([])
const loading = ref(false)
const { onResult, onError, loading, refetch } = useQuery(
queries.keluhan.daftar.keluhanRecoveryTime,
{
dateFrom: new Date('2023-10-01').toISOString().slice(0, 10),
dateTo: new Date('2023-10-01').toISOString().slice(0, 10),
minDurasiRecoveryTime: 0,
maxDurasiRecoveryTime: 0,
idUlp: 0,
idUid: 0,
idUp3: 0
}
)
const filterData = (params: any) => {
const filterData = async (params: any) => {
const dateValue = params.periode.split(' s/d ')
const { ulp, uid, up3, minTime, maxTime } = params
refetch({
const query = {
dateFrom: dateValue[0]
? dateValue[0].split('-').reverse().join('-')
: new Date().toISOString().slice(0, 10),
@ -578,20 +566,25 @@ const filterData = (params: any) => {
idUlp: ulp ? ulp.id : 0,
idUid: uid ? uid.id : 0,
idUp3: up3 ? up3.id : 0
})
}
onResult((queryResult) => {
if (queryResult.data != undefined) {
data.value = queryResult.data.daftarKeluhanRecoveryTime
}
loading.value = true
await requestGraphQl(queries.keluhan.daftar.keluhanRecoveryTime, query)
.then((result) => {
if (result.data.data != undefined) {
data.value = result.data.data.daftarKeluhanRecoveryTime
} else {
data.value = []
}
reportMeta.value = filters.value
console.log(queryResult.data)
})
onError((error) => {
console.log(error)
})
reportMeta.value = filters.value
})
.catch((err) => {
console.error(err)
})
.finally(() => {
loading.value = false
})
}
const filters = ref()