From d544d031c3829195fda94eaaa60a6598a729adce Mon Sep 17 00:00:00 2001 From: riefive Date: Thu, 2 Oct 2025 14:34:19 +0700 Subject: [PATCH] fix: list with params error --- app/components/content/division/list.vue | 6 +++++- app/components/content/equipment/list.vue | 1 + app/components/content/installation/list.vue | 6 +++++- app/components/content/specialist/list.vue | 7 ++++++- app/composables/usePaginatedList.ts | 3 +++ app/services/division-position.service.ts | 2 +- app/services/division.service.ts | 2 +- app/services/installation.service.ts | 2 +- app/services/medicine-group.service.ts | 2 +- app/services/medicine-method.service.ts | 2 +- app/services/specialist.service.ts | 2 +- app/services/subspecialist.service.ts | 2 +- app/services/unit.service.ts | 2 +- app/services/uom.service.ts | 2 +- 14 files changed, 29 insertions(+), 12 deletions(-) diff --git a/app/components/content/division/list.vue b/app/components/content/division/list.vue index 9da83819..0529e77a 100644 --- a/app/components/content/division/list.vue +++ b/app/components/content/division/list.vue @@ -45,7 +45,11 @@ const { fetchData: getDivisionList, } = usePaginatedList({ fetchFn: async (params: any) => { - const result = await getDivisions({ search: params.search, page: params['page-number'] || 0 }) + // TODO: use pagination params + const result = await getDivisions({ + search: params.search, + // page: params['page-number'] || 0, + }) return { success: result.success || false, body: result.body || {} } }, entityName: 'division', diff --git a/app/components/content/equipment/list.vue b/app/components/content/equipment/list.vue index 5587858f..501b64b5 100644 --- a/app/components/content/equipment/list.vue +++ b/app/components/content/equipment/list.vue @@ -46,6 +46,7 @@ const { fetchData: getEquipmentList, } = usePaginatedList({ fetchFn: async (params: any) => { + // TODO: use pagination params const result = await getMaterials({ search: params.search, page: params['page-number'] || 0 }) return { success: result.success || false, body: result.body || {} } }, diff --git a/app/components/content/installation/list.vue b/app/components/content/installation/list.vue index f8494ba8..6adba2e2 100644 --- a/app/components/content/installation/list.vue +++ b/app/components/content/installation/list.vue @@ -45,7 +45,11 @@ const { fetchData: getInstallationList, } = usePaginatedList({ fetchFn: async (params: any) => { - const result = await getInstallations({ search: params.search, page: params['page-number'] || 0 }) + // TODO: use pagination params + const result = await getInstallations({ + search: params.search, + // page: params['page-number'] || 0, + }) return { success: result.success || false, body: result.body || {} } }, entityName: 'installation', diff --git a/app/components/content/specialist/list.vue b/app/components/content/specialist/list.vue index c157642b..27b25e6b 100644 --- a/app/components/content/specialist/list.vue +++ b/app/components/content/specialist/list.vue @@ -46,7 +46,12 @@ const { fetchData: getSpecialistList, } = usePaginatedList({ fetchFn: async (params: any) => { - const result = await getSpecialists({ search: params.search, page: params['page-number'] || 0 }) + // TODO: use pagination params + const result = await getSpecialists({ + search: params.search, + // page: params['page-number'] || 0, + includes: 'unit', + }) return { success: result.success || false, body: result.body || {} } }, entityName: 'specialist', diff --git a/app/composables/usePaginatedList.ts b/app/composables/usePaginatedList.ts index 379d2eb6..1940589b 100644 --- a/app/composables/usePaginatedList.ts +++ b/app/composables/usePaginatedList.ts @@ -2,6 +2,7 @@ import type { DataTableLoader } from '~/components/pub/base/data-table/type' import type { PaginationMeta } from '~/components/pub/custom-ui/pagination/pagination.type' import { refDebounced, useUrlSearchParams } from '@vueuse/core' import * as z from 'zod' +import { is } from "date-fns/locale" // Default query schema yang bisa digunakan semua list export const defaultQuerySchema = z.object({ @@ -75,6 +76,8 @@ export function usePaginatedList(options: UsePaginatedListOptions) { // Functions async function fetchData() { + if (isLoading.isTableLoading) return + isLoading.isTableLoading = true try { diff --git a/app/services/division-position.service.ts b/app/services/division-position.service.ts index 07cfbd15..1c1855af 100644 --- a/app/services/division-position.service.ts +++ b/app/services/division-position.service.ts @@ -15,7 +15,7 @@ export async function getDivisionPositions(params: any = null) { const queryString = searchParams.toString() if (queryString) url += `?${queryString}` } - const resp = await xfetch(mainUrl, 'GET') + const resp = await xfetch(url, 'GET') const result: any = {} result.success = resp.success result.body = (resp.body as Record) || {} diff --git a/app/services/division.service.ts b/app/services/division.service.ts index 38cd6118..e58af288 100644 --- a/app/services/division.service.ts +++ b/app/services/division.service.ts @@ -15,7 +15,7 @@ export async function getDivisions(params: any = null) { const queryString = searchParams.toString() if (queryString) url += `?${queryString}` } - const resp = await xfetch(mainUrl, 'GET') + const resp = await xfetch(url, 'GET') const result: any = {} result.success = resp.success result.body = (resp.body as Record) || {} diff --git a/app/services/installation.service.ts b/app/services/installation.service.ts index 8fd9e858..aaa38c03 100644 --- a/app/services/installation.service.ts +++ b/app/services/installation.service.ts @@ -15,7 +15,7 @@ export async function getInstallations(params: any = null) { const queryString = searchParams.toString() if (queryString) url += `?${queryString}` } - const resp = await xfetch(mainUrl, 'GET') + const resp = await xfetch(url, 'GET') const result: any = {} result.success = resp.success result.body = (resp.body as Record) || {} diff --git a/app/services/medicine-group.service.ts b/app/services/medicine-group.service.ts index e1f06863..cd2be9f0 100644 --- a/app/services/medicine-group.service.ts +++ b/app/services/medicine-group.service.ts @@ -15,7 +15,7 @@ export async function getMedicineGroups(params: any = null) { const queryString = searchParams.toString() if (queryString) url += `?${queryString}` } - const resp = await xfetch(mainUrl, 'GET') + const resp = await xfetch(url, 'GET') const result: any = {} result.success = resp.success result.body = (resp.body as Record) || {} diff --git a/app/services/medicine-method.service.ts b/app/services/medicine-method.service.ts index 3050671c..44f17f34 100644 --- a/app/services/medicine-method.service.ts +++ b/app/services/medicine-method.service.ts @@ -23,7 +23,7 @@ export async function getMedicineMethods(params: any = null) { const queryString = searchParams.toString() if (queryString) url += `?${queryString}` } - const resp = await xfetch(mainUrl, 'GET') + const resp = await xfetch(url, 'GET') const result: any = {} result.success = resp.success result.body = (resp.body as Record) || {} diff --git a/app/services/specialist.service.ts b/app/services/specialist.service.ts index bd359918..4e1c2634 100644 --- a/app/services/specialist.service.ts +++ b/app/services/specialist.service.ts @@ -15,7 +15,7 @@ export async function getSpecialists(params: any = null) { const queryString = searchParams.toString() if (queryString) url += `?${queryString}` } - const resp = await xfetch(mainUrl, 'GET') + const resp = await xfetch(url, 'GET') const result: any = {} result.success = resp.success result.body = (resp.body as Record) || {} diff --git a/app/services/subspecialist.service.ts b/app/services/subspecialist.service.ts index c218b748..a5356353 100644 --- a/app/services/subspecialist.service.ts +++ b/app/services/subspecialist.service.ts @@ -15,7 +15,7 @@ export async function getSubspecialists(params: any = null) { const queryString = searchParams.toString() if (queryString) url += `?${queryString}` } - const resp = await xfetch(mainUrl, 'GET') + const resp = await xfetch(url, 'GET') const result: any = {} result.success = resp.success result.body = (resp.body as Record) || {} diff --git a/app/services/unit.service.ts b/app/services/unit.service.ts index 82d565db..052fb707 100644 --- a/app/services/unit.service.ts +++ b/app/services/unit.service.ts @@ -15,7 +15,7 @@ export async function getUnits(params: any = null) { const queryString = searchParams.toString() if (queryString) url += `?${queryString}` } - const resp = await xfetch(mainUrl, 'GET') + const resp = await xfetch(url, 'GET') const result: any = {} result.success = resp.success result.body = (resp.body as Record) || {} diff --git a/app/services/uom.service.ts b/app/services/uom.service.ts index f7b2eec1..e01b59b3 100644 --- a/app/services/uom.service.ts +++ b/app/services/uom.service.ts @@ -15,7 +15,7 @@ export async function getUoms(params: any = null) { const queryString = searchParams.toString() if (queryString) url += `?${queryString}` } - const resp = await xfetch(mainUrl, 'GET') + const resp = await xfetch(url, 'GET') const result: any = {} result.success = resp.success result.body = (resp.body as Record) || {}