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

@ -310,7 +310,7 @@ import {
DxSelection
} from 'devextreme-vue/data-grid'
import { useQuery } from '@vue/apollo-composable'
import { queries } from '@/utils/api/api.graphql'
import { queries, requestGraphQl } from '@/utils/api/api.graphql'
import { exportToPDF, exportToDOCX, exportToXLSX } from '@/report/Gangguan/Daftar/DGangguan_BM'
const position = { of: '#data' }
@ -321,6 +321,7 @@ const data = ref<any[]>([])
const dataSelected = ref<any>({})
const dialogDetail = ref(false)
const dataGridRef = ref<DxDataGrid | null>(null)
const loading = ref(false)
const clearSelection = () => {
const dataGrid = dataGridRef.value!.instance!
dataGrid.clearSelection()
@ -337,20 +338,11 @@ const showDetail = () => (dialogDetail.value = true)
const closeDialog = () => (dialogDetail.value = false)
const { onResult, onError, loading, refetch } = useQuery(queries.gangguan.daftar.berdasarkanMedia, {
dateFrom: new Date().toISOString().slice(0, 10),
dateTo: new Date().toISOString().slice(0, 10),
posko: 0,
idUid: 0,
idUp3: 0,
media: 'Twitter'
})
const filterData = (params: any) => {
const filterData = async (params: any) => {
const { posko, uid, up3, media } = params
const dateValue = params.periode.split(' s/d ')
refetch({
const query = {
dateFrom: dateValue[0]
? dateValue[0].split('-').reverse().join('-')
: new Date().toISOString().slice(0, 10),
@ -361,20 +353,25 @@ const filterData = (params: any) => {
idUid: uid ? uid.id : 0,
idUp3: up3 ? up3.id : 0,
media: media ? media.id : ''
})
}
onResult((queryResult) => {
if (queryResult.data != undefined) {
data.value = queryResult.data.daftarGangguanBerdasarkanMedia
}
loading.value = true
await requestGraphQl(queries.gangguan.daftar.berdasarkanMedia, query)
.then((result) => {
if (result.data.data != undefined) {
data.value = result.data.data.daftarGangguanBerdasarkanMedia
} 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 onExporting = (e: any) => {