From 6041f5c4bfb9741325f1e364a941018fcf4e476a Mon Sep 17 00:00:00 2001 From: Dede Fuji Abdul Date: Fri, 5 Apr 2024 15:45:58 +0700 Subject: [PATCH] Update API and Form FiltersType components --- src/components/Form/FiltersType/Type17.vue | 168 +++++++++++++++++-- src/components/Pages/Transaksi/Transaksi.vue | 85 +++++++--- src/utils/api/api.graphql.ts | 19 ++- 3 files changed, 235 insertions(+), 37 deletions(-) diff --git a/src/components/Form/FiltersType/Type17.vue b/src/components/Form/FiltersType/Type17.vue index 1784c06..9a8f212 100755 --- a/src/components/Form/FiltersType/Type17.vue +++ b/src/components/Form/FiltersType/Type17.vue @@ -1,10 +1,128 @@ @@ -13,18 +131,28 @@ const data = ref({
- +
-
- +
@@ -32,20 +160,34 @@ const data = ref({
-
-
- +
- diff --git a/src/components/Pages/Transaksi/Transaksi.vue b/src/components/Pages/Transaksi/Transaksi.vue index b6bd0e7..0020436 100755 --- a/src/components/Pages/Transaksi/Transaksi.vue +++ b/src/components/Pages/Transaksi/Transaksi.vue @@ -63,87 +63,123 @@ + + + + + + @@ -171,6 +207,8 @@ import { Type17 } from '@/components/Form/FiltersType' import Filters from '@/components/Form/Filters.vue' import BufferDialog from '@/components/Dialogs/BufferDialog.vue' import { queries, requestGraphQl } from '@/utils/api/api.graphql' +import { formatNumber, formatPercentage, isNumber } from '@/utils/numbers' +import { formatWaktu } from '@/components/Form/FiltersType/reference' const position = { of: '#data' } const showIndicator = ref(true) const shading = ref(true) @@ -182,6 +220,7 @@ const dataSubSelected = ref() const dialogDetail = ref(false) const loadingData = ref(false) const tab = ref('gangguan') + const onExporting = (e: any) => { if (e.format === 'pdf') { const doc = new jsPDF() @@ -252,7 +291,7 @@ const resetData = () => { const filterData = async (params: any) => { resetData() const dateValue = params.periode.split(' s/d ') - const { posko, idUid, idUp3 } = params + const { ulp, uid, up3, status, keyword, searchBy, sla } = params const query = { dateFrom: dateValue[0] ? dateValue[0].split('-').reverse().join('-') @@ -260,16 +299,24 @@ const filterData = async (params: any) => { dateTo: dateValue[1] ? dateValue[1].split('-').reverse().join('-') : new Date().toISOString().slice(0, 10), - idUid: idUid ? idUid.id : 0, - idUp3: idUp3 ? idUp3.id : 0, - posko: posko ? posko.id : 0 + idPosko: 0, + idUid: uid ? uid.id : 0, + idUp3: up3 ? up3.id : 0, + idUlp: ulp ? ulp.id : 0, + tipe_sla: sla ? sla.id : 0, + operator_sla: '', + status_akhir: status ? status.name : '', + no_laporan: searchBy == 'No Lapor' ? keyword : '', + nama_pelapor: searchBy == 'Nama Pelapor' ? keyword : '', + permasalahan: searchBy == 'Permasalahan' ? keyword : '', + tipe_laporan: tab.value == 'gangguan' ? 'G' : 'K' } loadingData.value = true await requestGraphQl(queries.transaksi.transaksiAPKT, query) .then((result) => { if (result.data.data != undefined) { - data.value = result.data.data.rekapitulasiPemakaianMaterial + data.value = result.data.data.transaksiApkt } else { data.value = [] } diff --git a/src/utils/api/api.graphql.ts b/src/utils/api/api.graphql.ts index 6ce1759..c3a84f5 100755 --- a/src/utils/api/api.graphql.ts +++ b/src/utils/api/api.graphql.ts @@ -4479,35 +4479,44 @@ export const queries = { $dateFrom: Date! $dateTo: Date! $idPosko: Int! + $idUlp: Int! $idUid: Int! $idUp3: Int! $tipe_sla: Int! $operator_sla: String! - $is_sla: Int! $status_akhir: String! $no_laporan: String! + $nama_pelapor: String! + $permasalahan: String! + $tipe_laporan: String! ) { transaksiApkt( dateFrom: $dateFrom dateTo: $dateTo idPosko: $idPosko + idUlp: $idUlp idUid: $idUid idUp3: $idUp3 tipe_sla: $tipe_sla operator_sla: $operator_sla - is_sla: $is_sla status_akhir: $status_akhir no_laporan: $no_laporan + nama_pelapor: $nama_pelapor + permasalahan: $permasalahan + tipe_laporan: $tipe_laporan ) { no_laporan issuetype nama_pelapor - nama_posko + nama_ulp no_telp_pelapor - penyebab - keterangan_pelapor + permasalahan + deskripsi waktu_lapor jumlah_lapor + keterangan_lapor_ulang + status_akhir + durasi tipe_sla operator_sla is_sla