Refactor form layout and styling

This commit is contained in:
Dede Fuji Abdul 2024-03-05 09:17:26 +07:00
parent 748b981e63
commit 664b5a1d90
17 changed files with 440 additions and 571 deletions

View File

@ -55,45 +55,32 @@ onMounted(() => {
</script> </script>
<template> <template>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="grid grid-cols-1 gap-4 md:grid-cols-2">
<label class="filter-input-label" <div class="flex flex-col flex-1 space-y-2">
>Unit Induk Distribusi/Wilayah:</label <label class="filter-input-label">Unit Induk Distribusi/Wilayah:</label>
>
<Select @update:selected="setUid($event)" :data="itemsUid" :placeholder="uidPlaceholder" /> <Select @update:selected="setUid($event)" :data="itemsUid" :placeholder="uidPlaceholder" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label" <label class="filter-input-label">Unit Pelaksanaan Pelayanan Pelanggan:</label>
>Unit Pelaksanaan Pelayanan Pelanggan:</label
>
<Select <Select @update:selected="setUp3($event)" :data="itemsUp3" :selected="up3" :placeholder="up3Placeholder" />
@update:selected="setUp3($event)"
:data="itemsUp3"
:selected="up3"
:placeholder="up3Placeholder"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Unit Layanan Pelanggan:</label> <label class="filter-input-label">Unit Layanan Pelanggan:</label>
<Select <Select @update:selected="setUlp($event)" :data="itemsUlp" :selected="ulp" :placeholder="ulpPlaceholder" />
@update:selected="setUlp($event)"
:data="itemsUlp"
:selected="ulp"
:placeholder="ulpPlaceholder"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Periode Tanggal:</label> <label class="filter-input-label">Periode Tanggal:</label>
<DatePicker @update:date-value="(value) => (data.periode = value)" /> <DatePicker @update:date-value="(value) => (data.periode = value)" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Lapor Ulang:</label> <label class="filter-input-label">Lapor Ulang:</label>
<div class="grid grid-flow-col auto-cols-auto gap-x-1.5"> <div class="grid grid-flow-col auto-cols-auto gap-x-1.5">
@ -102,4 +89,6 @@ onMounted(() => {
<InputNumber @update:time-value="(value) => (data.maxJmlLapor = value)" /> <InputNumber @update:time-value="(value) => (data.maxJmlLapor = value)" />
</div> </div>
</div> </div>
</div>
</template> </template>

View File

@ -102,31 +102,32 @@ onMounted(() => {
</script> </script>
<template> <template>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="grid grid-cols-1 gap-4 md:grid-cols-2">
<div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Unit Induk Distribusi/Wilayah:</label> <label class="filter-input-label">Unit Induk Distribusi/Wilayah:</label>
<Select @update:selected="setUid($event)" :data="itemsUid" :placeholder="uidPlaceholder" /> <Select @update:selected="setUid($event)" :data="itemsUid" :placeholder="uidPlaceholder" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Unit Pelaksanaan Pelayanan Pelanggan:</label> <label class="filter-input-label">Unit Pelaksanaan Pelayanan Pelanggan:</label>
<Select @update:selected="setUp3($event)" :data="itemsUp3" :selected="up3" :placeholder="up3Placeholder" /> <Select @update:selected="setUp3($event)" :data="itemsUp3" :selected="up3" :placeholder="up3Placeholder" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Unit Layanan Pelanggan:</label> <label class="filter-input-label">Unit Layanan Pelanggan:</label>
<Select @update:selected="setUlp($event)" :data="itemsUlp" :placeholder="ulpPlaceholder" :selected="ulp" /> <Select @update:selected="setUlp($event)" :data="itemsUlp" :placeholder="ulpPlaceholder" :selected="ulp" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Periode Tanggal:</label> <label class="filter-input-label">Periode Tanggal:</label>
<DatePicker @update:date-value="(value) => (data.periode = value)" /> <DatePicker @update:date-value="(value) => (data.periode = value)" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Durasi:</label> <label class="filter-input-label">Durasi:</label>
<div class="flex flex-col gap-y-1"> <div class="flex flex-col gap-y-1">
@ -138,4 +139,6 @@ onMounted(() => {
</div> </div>
</div> </div>
</div> </div>
</div>
</template> </template>

View File

@ -79,69 +79,46 @@ onMounted(() => {
</script> </script>
<template> <template>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="grid grid-cols-1 gap-4 md:grid-cols-2">
<div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Unit Induk Distribusi/Wilayah:</label> <label class="filter-input-label">Unit Induk Distribusi/Wilayah:</label>
<Select <Select @update:selected="setUid($event)" :data="itemsUid" :placeholder="uidPlaceholder" />
@update:selected="setUid($event)"
:data="itemsUid"
:placeholder="uidPlaceholder"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label" <label class="filter-input-label">Unit Pelaksanaan Pelayanan Pelanggan:</label>
>Unit Pelaksanaan Pelayanan Pelanggan:</label
>
<Select <Select @update:selected="setUp3($event)" :data="itemsUp3" :placeholder="up3Placeholder" />
@update:selected="setUp3($event)"
:data="itemsUp3"
:placeholder="up3Placeholder"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label" <label class="filter-input-label">Unit Layanan Pelanggan:</label>
>Unit Layanan Pelanggan:</label
>
<Select <Select @update:selected="setUlp($event)" :data="itemsUlp" :placeholder="ulpPlaceholder" />
@update:selected="setUlp($event)"
:data="itemsUlp"
:placeholder="ulpPlaceholder"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Periode Tanggal:</label> <label class="filter-input-label">Periode Tanggal:</label>
<DatePicker @update:date-value="(value) => data.periode = value" /> <DatePicker @update:date-value="(value) => data.periode = value" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Durasi:</label> <label class="filter-input-label">Durasi:</label>
<div class="flex flex-col gap-y-1"> <div class="flex flex-col gap-y-1">
<Select <Select @update:selected="changeDuration($event)" :data="sla" placeholder="Durasi Menit" />
@update:selected="changeDuration($event)"
:data="sla"
placeholder="Durasi Menit"
/>
<div class="grid grid-flow-col auto-cols-auto gap-x-1.5"> <div class="flex flex-1 justify-between gap-x-1.5">
<InputWithSuffix <InputWithSuffix @update:minute-value="(value: any) => data.minDurasiResponseTime = value" @value="data.minDurasiResponseTime" :disabled=triggerInput
@update:minute-value=" class="flex flex-1" />
(value :any)=> data.minDurasiResponseTime =value"
@value="data.minDurasiResponseTime"
:disabled=triggerInput />
<small class="flex items-center">s/d</small> <small class="flex items-center">s/d</small>
<InputWithSuffix <InputWithSuffix @update:minute-value="(value: any) => data.maxDurasiResponseTime = value" @value="data.maxDurasiResponseTime"
@update:minute-value=" :disabled="triggerInput" class="flex flex-1" />
(value :any)=> data.maxDurasiResponseTime = value"
@value="data.maxDurasiResponseTime"
:disabled="triggerInput" />
</div> </div>
</div> </div>
</div> </div>
</div>
</template> </template>

View File

@ -57,53 +57,37 @@ onMounted(() => {
</script> </script>
<template> <template>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="grid grid-cols-1 gap-4 md:grid-cols-2">
<label class="filter-input-label" <div class="flex flex-col flex-1 space-y-2">
>Unit Induk Distribusi/Wilayah:</label <label class="filter-input-label">Unit Induk Distribusi/Wilayah:</label>
>
<Select @update:selected="setUid($event)" :data="itemsUid" :placeholder="uidPlaceholder" /> <Select @update:selected="setUid($event)" :data="itemsUid" :placeholder="uidPlaceholder" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label" <label class="filter-input-label">Unit Pelaksanaan Pelayanan Pelanggan:</label>
>Unit Pelaksanaan Pelayanan Pelanggan:</label
>
<Select <Select @update:selected="setUp3($event)" :data="itemsUp3" :selected="up3" :placeholder="up3Placeholder" />
@update:selected="setUp3($event)"
:data="itemsUp3"
:selected="up3"
:placeholder="up3Placeholder"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Unit Layanan Pelanggan:</label> <label class="filter-input-label">Unit Layanan Pelanggan:</label>
<Select <Select @update:selected="setUlp($event)" :data="itemsUlp" :selected="ulp" :placeholder="ulpPlaceholder" />
@update:selected="setUlp($event)"
:data="itemsUlp"
:selected="ulp"
:placeholder="ulpPlaceholder"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Periode Tanggal:</label> <label class="filter-input-label">Periode Tanggal:</label>
<DatePicker @update:date-value="(value) => (data.periode = value)" /> <DatePicker @update:date-value="(value) => (data.periode = value)" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label" <label class="filter-input-label">Group By Kode Unit Distribusi:</label>
>Group By Kode Unit Distribusi:</label
>
<InlineRadioGroup <InlineRadioGroup @update:group-value="(value) => (data.groupBy = value.id === 2)" :radio-items="[
@update:group-value="(value) => (data.groupBy = value.id === 2)"
:radio-items="[
{ id: 1, title: 'Tidak' }, { id: 1, title: 'Tidak' },
{ id: 2, title: 'Ya, Grupkan' } { id: 2, title: 'Ya, Grupkan' }
]" ]" />
/>
</div> </div>
</div>
</template> </template>

View File

@ -43,26 +43,30 @@ onMounted(() => {
<template> <template>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="grid grid-cols-1 gap-4 md:grid-cols-2">
<div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Distribusi/Wilayah:</label> <label class="filter-input-label">Distribusi/Wilayah:</label>
<Select :data="itemsUid" @update:selected="setUid($event)" :placeholder="uidPlaceholder" :selected="uid" /> <Select :data="itemsUid" @update:selected="setUid($event)" :placeholder="uidPlaceholder" :selected="uid" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Area:</label> <label class="filter-input-label">Area:</label>
<Select @update:selected="setUp3($event)" :data="itemsUp3" :selected="up3" :placeholder="up3Placeholder" /> <Select @update:selected="setUp3($event)" :data="itemsUp3" :selected="up3" :placeholder="up3Placeholder" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Posko:</label> <label class="filter-input-label">Posko:</label>
<Select @update:selected="setPosko($event)" :data="itemsPosko" :selected="posko" :placeholder="poskoPlaceholder" /> <Select @update:selected="setPosko($event)" :data="itemsPosko" :selected="posko"
:placeholder="poskoPlaceholder" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Periode Tanggal:</label> <label class="filter-input-label">Periode Tanggal:</label>
<DatePicker @update:date-value="(value) => data.periode = value" /> <DatePicker @update:date-value="(value) => data.periode = value" />
</div> </div>
</div>
</template> </template>

View File

@ -20,21 +20,24 @@ const data = ref({
</script> </script>
<template> <template>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="grid grid-cols-1 gap-4 md:grid-cols-2">
<div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Jenis Pengaduan:</label> <label class="filter-input-label">Jenis Pengaduan:</label>
<InlineRadioGroup :radio-items="[{ id: 1, title: 'Gangguan', checked: true }, { id: 2, title: 'Keluhan' }]" /> <InlineRadioGroup :radio-items="[{ id: 1, title: 'Gangguan', checked: true }, { id: 2, title: 'Keluhan' }]" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Cari Report Number:</label> <label class="filter-input-label">Cari Report Number:</label>
<InputWithFilter placeholder="cari report" :filters="[{ id: 1, title: 'Nama Pelapor' }]" /> <InputWithFilter placeholder="cari report" :filters="[{ id: 1, title: 'Nama Pelapor' }]" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Periode Tanggal:</label> <label class="filter-input-label">Periode Tanggal:</label>
<DatePicker @update:date-value="(value) => data.periode = value" /> <DatePicker @update:date-value="(value) => data.periode = value" />
</div> </div>
</div>
</template> </template>

View File

@ -68,57 +68,38 @@ onMounted(() => {
</script> </script>
<template> <template>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="grid grid-cols-1 gap-4 md:grid-cols-2">
<label class="filter-input-label" <div class="flex flex-col flex-1 space-y-2">
>Unit Induk Distribusi/Wilayah:</label <label class="filter-input-label">Unit Induk Distribusi/Wilayah:</label>
>
<Select <Select :data="itemsUid" @update:selected="setUid($event)" :placeholder="uidPlaceholder" :selected="uid" />
:data="itemsUid"
@update:selected="setUid($event)"
:placeholder="uidPlaceholder"
:selected="uid"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label" <label class="filter-input-label">Unit Pelaksanaan Pelayanan Pelanggan:</label>
>Unit Pelaksanaan Pelayanan Pelanggan:</label
>
<Select <Select :data="itemsUp3" @update:selected="setUp3($event)" :placeholder="up3Placeholder" :selected="up3" />
:data="itemsUp3"
@update:selected="setUp3($event)"
:placeholder="up3Placeholder"
:selected="up3"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Posko:</label> <label class="filter-input-label">Posko:</label>
<Select <Select :data="itemsPosko" @update:selected="setPosko($event)" :placeholder="poskoPlaceholder"
:data="itemsPosko" :selected="posko" />
@update:selected="setPosko($event)"
:placeholder="poskoPlaceholder"
:selected="posko"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Media:</label> <label class="filter-input-label">Media:</label>
<Select <Select :selected="media" @update:selected="setMedia($event)" :placeholder="mediaPlaceholder"
:selected="media" :data="itemsMedia" />
@update:selected="setMedia($event)"
:placeholder="mediaPlaceholder"
:data="itemsMedia"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Periode Tanggal:</label> <label class="filter-input-label">Periode Tanggal:</label>
<DatePicker @update:date-value="(value) => (data.periode = value)" /> <DatePicker @update:date-value="(value) => (data.periode = value)" />
</div> </div>
</div>
</template> </template>

View File

@ -9,13 +9,14 @@ import { ref } from 'vue';
</script> </script>
<template> <template>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="grid grid-cols-1 gap-4 md:grid-cols-2">
<div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Periode Tanggal:</label> <label class="filter-input-label">Periode Tanggal:</label>
<DatePicker @update:date-value="(value) => data.periode = value" /> <DatePicker @update:date-value="(value) => data.periode = value" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Unit PLN:</label> <label class="filter-input-label">Unit PLN:</label>
<div class="flex flex-col gap-y-1"> <div class="flex flex-col gap-y-1">
@ -28,23 +29,23 @@ import { ref } from 'vue';
</div> </div>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Status:</label> <label class="filter-input-label">Status:</label>
<Select placeholder="Pilih Status" /> <Select placeholder="Pilih Status" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label" <label class="filter-input-label">SLA:</label>
>SLA:</label
>
<Select placeholder="Pilih Durasi SLA" /> <Select placeholder="Pilih Durasi SLA" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Pencarian:</label> <label class="filter-input-label">Pencarian:</label>
<InputWithFilter placeholder="cari report" :filters="[{ id: 1, title: 'Pilih Jenis' }]" /> <InputWithFilter placeholder="cari report" :filters="[{ id: 1, title: 'Pilih Jenis' }]" />
</div> </div>
</div>
</template> </template>

View File

@ -34,35 +34,35 @@ onMounted(() => {
</script> </script>
<template> <template>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="grid grid-cols-1 gap-4 md:grid-cols-2">
<div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Unit Induk Distribusi/Wilayah:</label> <label class="filter-input-label">Unit Induk Distribusi/Wilayah:</label>
<Select @update:selected="selectedUid($event)" :data="itemsUid" placeholder="Semua Unit Induk Distribusi/Wilayah" /> <Select @update:selected="selectedUid($event)" :data="itemsUid"
placeholder="Semua Unit Induk Distribusi/Wilayah" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Unit Pelaksanaan Pelayanan Pelanggan:</label> <label class="filter-input-label">Unit Pelaksanaan Pelayanan Pelanggan:</label>
<Select @update:selected="selectedUp3Posko($event)" :data="itemsUp3" :selected="up3" placeholder="Semua Unit Pelaksanaan Pelayanan Pelanggan" /> <Select @update:selected="selectedUp3Posko($event)" :data="itemsUp3" :selected="up3"
placeholder="Semua Unit Pelaksanaan Pelayanan Pelanggan" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Posko:</label> <label class="filter-input-label">Posko:</label>
<Select @update:selected="selectedPosko($event)" :data="itemsPosko" :selected="posko" placeholder="Semua Posko" /> <Select @update:selected="selectedPosko($event)" :data="itemsPosko" :selected="posko" placeholder="Semua Posko" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Jenis Transaksi:</label> <label class="filter-input-label">Jenis Transaksi:</label>
<SelectMulti <SelectMulti :tags="jenisTransakasi" placeholder="Semua Jenis Transaksi" useLabel label="Jenis Transaksi" />
:tags="jenisTransakasi"
placeholder="Semua Jenis Transaksi"
useLabel
label="Jenis Transaksi"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Periode Tanggal:</label> <label class="filter-input-label">Periode Tanggal:</label>
<DatePicker @update:date-value="(value) => data.periode = value" /> <DatePicker @update:date-value="(value) => data.periode = value" />
</div> </div>
</div>
</template> </template>

View File

@ -99,31 +99,32 @@ onMounted(() => {
</script> </script>
<template> <template>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="grid grid-cols-1 gap-4 md:grid-cols-2">
<div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Regional:</label> <label class="filter-input-label">Regional:</label>
<Select @update:selected="setRegional($event)" :data="itemsRegional" :placeholder="regionalPlaceholder" /> <Select @update:selected="setRegional($event)" :data="itemsRegional" :placeholder="regionalPlaceholder" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Unit Induk Distribusi/Wilayah:</label> <label class="filter-input-label">Unit Induk Distribusi/Wilayah:</label>
<Select @update:selected="setUid($event)" :data="itemsUid" :selected="uid" :placeholder="uidPlaceholder" /> <Select @update:selected="setUid($event)" :data="itemsUid" :selected="uid" :placeholder="uidPlaceholder" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Unit Pelaksanaan Pelayanan Pelanggan:</label> <label class="filter-input-label">Unit Pelaksanaan Pelayanan Pelanggan:</label>
<Select @update:selected="setUp3($event)" :selected="uppp" :data="itemsUp3" :placeholder="up3Placholder" /> <Select @update:selected="setUp3($event)" :selected="uppp" :data="itemsUp3" :placeholder="up3Placholder" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Unit Layanan Pelanggan:</label> <label class="filter-input-label">Unit Layanan Pelanggan:</label>
<Select @update:selected="setUlp($event)" :data="itemsUlp" :selected="ulp" :placeholder="ulpPlaceholder" /> <Select @update:selected="setUlp($event)" :data="itemsUlp" :selected="ulp" :placeholder="ulpPlaceholder" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Periode</label> <label class="filter-input-label">Periode</label>
<div class="grid grid-cols-2 gap-x-2"> <div class="grid grid-cols-2 gap-x-2">
@ -131,4 +132,6 @@ onMounted(() => {
<Select @update:selected="setYear($event)" :data="years" :placeholder="tahunPlaceholder" /> <Select @update:selected="setYear($event)" :data="years" :placeholder="tahunPlaceholder" />
</div> </div>
</div> </div>
</div>
</template> </template>

View File

@ -59,41 +59,30 @@ onMounted(() => {
</script> </script>
<template> <template>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="grid grid-cols-1 gap-4 md:grid-cols-2">
<label class="filter-input-label" <div class="flex flex-col flex-1 space-y-2">
>Unit Induk Distribusi/Wilayah:</label <label class="filter-input-label">Unit Induk Distribusi/Wilayah:</label>
>
<Select @update:selected="setUid($event)" :data="itemsUid" :placeholder="uidPlaceholder" /> <Select @update:selected="setUid($event)" :data="itemsUid" :placeholder="uidPlaceholder" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label" <label class="filter-input-label">Unit Pelaksanaan Pelayanan Pelanggan:</label>
>Unit Pelaksanaan Pelayanan Pelanggan:</label
>
<Select <Select @update:selected="setUp3($event)" :data="itemsUp3" :selected="up3" :placeholder="up3Placeholder" />
@update:selected="setUp3($event)"
:data="itemsUp3"
:selected="up3"
:placeholder="up3Placeholder"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Unit Layanan Pelanggan:</label> <label class="filter-input-label">Unit Layanan Pelanggan:</label>
<Select <Select @update:selected="setUlp($event)" :data="itemsUlp" :selected="ulp" :placeholder="ulpPlaceholder" />
@update:selected="setUlp($event)"
:data="itemsUlp"
:selected="ulp"
:placeholder="ulpPlaceholder"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Periode Tanggal:</label> <label class="filter-input-label">Periode Tanggal:</label>
<DatePicker @update:date-value="(value) => (data.periode = value)" /> <DatePicker @update:date-value="(value) => (data.periode = value)" />
</div> </div>
</div>
</template> </template>

View File

@ -43,59 +43,39 @@ onMounted(() => {
</script> </script>
<template> <template>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="grid grid-cols-1 gap-4 md:grid-cols-2">
<div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Unit Induk Distribusi/Wilayah:</label> <label class="filter-input-label">Unit Induk Distribusi/Wilayah:</label>
<Select <Select @update:selected="setUid($event)" :data="itemsUid" :placeholder="uidPlaceholder" />
@update:selected="setUid($event)"
:data="itemsUid"
:placeholder="uidPlaceholder"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label" <label class="filter-input-label">Unit Pelaksanaan Pelayanan Pelanggan:</label>
>Unit Pelaksanaan Pelayanan Pelanggan:</label
>
<Select <Select @update:selected="setUp3($event)" :data="itemsUp3" :placeholder="up3Placeholder" />
@update:selected="setUp3($event)"
:data="itemsUp3"
:placeholder="up3Placeholder"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label" <label class="filter-input-label">Unit Layanan Pelanggan:</label>
>Unit Layanan Pelanggan:</label
>
<Select <Select @update:selected="setUlp($event)" :data="itemsUlp" :placeholder="ulpPlaceholder" />
@update:selected="setUlp($event)"
:data="itemsUlp"
:placeholder="ulpPlaceholder"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label" <label class="filter-input-label">Jenis Laporan:</label>
>Jenis Laporan:</label
>
<Select <Select @update:selected="(value) => data.jenisLaporan = value" :data="[
@update:selected="(value) => data.jenisLaporan = value"
:data="[
{ id: 1, name: 'Laporan Berulang Unit' }, { id: 1, name: 'Laporan Berulang Unit' },
{ id: 2, name: 'Laporan Berulang Pelanggan' }, { id: 2, name: 'Laporan Berulang Pelanggan' },
{ id: 3, name: 'Laporan Berulang Pelanggan dan Unit' }, { id: 3, name: 'Laporan Berulang Pelanggan dan Unit' },
]" ]" :placeholder="'Semua Jenis Laporan'" />
:placeholder="'Semua Jenis Laporan'"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Periode Tanggal:</label> <label class="filter-input-label">Periode Tanggal:</label>
<DatePicker @update:date-value="(value) => data.periode = value" /> <DatePicker @update:date-value="(value) => data.periode = value" />
</div> </div>
</div>
</template> </template>

View File

@ -57,30 +57,30 @@ onMounted(() => {
</script> </script>
<template> <template>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="grid grid-cols-1 gap-4 md:grid-cols-2">
<label class="filter-input-label" <div class="flex flex-col flex-1 space-y-2">
>Unit Induk Distribusi/Wilayah:</label <label class="filter-input-label">Unit Induk Distribusi/Wilayah:</label>
>
<Select :data="itemsUid" @update:selected="setUid($event)" :placeholder="uidPlaceholder" :selected="uid" /> <Select :data="itemsUid" @update:selected="setUid($event)" :placeholder="uidPlaceholder" :selected="uid" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label" <label class="filter-input-label">Unit Pelaksanaan Pelayanan Pelanggan:</label>
>Unit Pelaksanaan Pelayanan Pelanggan:</label
>
<Select @update:selected="setUp3($event)" :data="itemsUp3" :selected="uppp" :placeholder="uppPlaceholder" /> <Select @update:selected="setUp3($event)" :data="itemsUp3" :selected="uppp" :placeholder="uppPlaceholder" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Posko:</label> <label class="filter-input-label">Posko:</label>
<Select @update:selected="setPosko($event)" :data="itemsPosko" :selected="posko" :placeholder="poskoPlaceholder" /> <Select @update:selected="setPosko($event)" :data="itemsPosko" :selected="posko"
:placeholder="poskoPlaceholder" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Periode Tanggal:</label> <label class="filter-input-label">Periode Tanggal:</label>
<DatePicker @update:date-value="(value) => data.periode = value" /> <DatePicker @update:date-value="(value) => data.periode = value" />
</div> </div>
</div>
</template> </template>

View File

@ -56,57 +56,43 @@ onMounted(() => {
</script> </script>
<template> <template>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="grid grid-cols-1 gap-4 md:grid-cols-2">
<label class="filter-input-label" <div class="flex flex-col flex-1 space-y-2">
>Unit Induk Distribusi/Wilayah:</label <label class="filter-input-label">Unit Induk Distribusi/Wilayah:</label>
>
<Select @update:selected="setUid($event)" :data="itemsUid" :placeholder="uidPlaceholder" /> <Select @update:selected="setUid($event)" :data="itemsUid" :placeholder="uidPlaceholder" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label" <label class="filter-input-label">Unit Pelaksanaan Pelayanan Pelanggan:</label>
>Unit Pelaksanaan Pelayanan Pelanggan:</label
>
<Select <Select @update:selected="setUp3($event)" :data="itemsUp3" :selected="up3" :placeholder="up3Placeholder" />
@update:selected="setUp3($event)"
:data="itemsUp3"
:selected="up3"
:placeholder="up3Placeholder"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Posko:</label> <label class="filter-input-label">Posko:</label>
<Select <Select @update:selected="setPosko($event)" :data="itemsPosko" :selected="posko"
@update:selected="setPosko($event)" :placeholder="poskoPlaceholder" />
:data="itemsPosko"
:selected="posko"
:placeholder="poskoPlaceholder"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Periode Tanggal:</label> <label class="filter-input-label">Periode Tanggal:</label>
<DatePicker @update:date-value="(value) => (data.periode = value)" /> <DatePicker @update:date-value="(value) => (data.periode = value)" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Lapor Ulang:</label> <label class="filter-input-label">Lapor Ulang:</label>
<div class="grid grid-flow-col auto-cols-auto gap-x-1.5"> <div class="flex flex-1 justify-between gap-x-1.5">
<InputNumber <InputNumber :value="data.minJmlLapor" @update:time-value="(value) => (data.minJmlLapor = value)"
:value="data.minJmlLapor" class="flex flex-1" />
@update:time-value="(value) => (data.minJmlLapor = value)"
/>
<small class="flex items-center">s/d</small> <small class="flex items-center">s/d</small>
<InputNumber <InputNumber :value="data.maxJmlLapor" @update:time-value="(value) => (data.maxJmlLapor = value)"
:value="data.maxJmlLapor" class="flex flex-1" />
@update:time-value="(value) => (data.maxJmlLapor = value)"
/>
</div> </div>
</div> </div>
</div>
</template> </template>

View File

@ -133,55 +133,45 @@ onMounted(() => {
</script> </script>
<template> <template>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="grid grid-cols-1 gap-4 md:grid-cols-2">
<label class="filter-input-label" <div class="flex flex-col flex-1 space-y-2">
>Unit Induk Distribusi/Wilayah:</label <label class="filter-input-label">Unit Induk Distribusi/Wilayah:</label>
>
<Select @update:selected="setUid($event)" :data="itemsUid" :placeholder="uidPlaceholder" /> <Select @update:selected="setUid($event)" :data="itemsUid" :placeholder="uidPlaceholder" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label" <label class="filter-input-label">Unit Pelaksanaan Pelayanan Pelanggan:</label>
>Unit Pelaksanaan Pelayanan Pelanggan:</label
>
<Select <Select @update:selected="setUp3($event)" :data="itemsUp3" :selected="up3" :placeholder="up3Placeholder" />
@update:selected="setUp3($event)"
:data="itemsUp3"
:selected="up3"
:placeholder="up3Placeholder"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Posko:</label> <label class="filter-input-label">Posko:</label>
<Select <Select @update:selected="setPosko($event)" :data="itemsPosko" :selected="posko"
@update:selected="setPosko($event)" :placeholder="poskoPlaceholder" />
:data="itemsPosko"
:selected="posko"
:placeholder="poskoPlaceholder"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Periode Tanggal:</label> <label class="filter-input-label">Periode Tanggal:</label>
<DatePicker @update:date-value="(value) => (data.periode = value)" /> <DatePicker @update:date-value="(value) => (data.periode = value)" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Durasi:</label> <label class="filter-input-label">Durasi:</label>
<div class="flex flex-col gap-y-1"> <div class="flex flex-col gap-y-1">
<Select @update:selected="changeDuration($event)" :data="sla" placeholder="Durasi Menit" /> <Select @update:selected="changeDuration($event)" :data="sla" placeholder="Durasi Menit" />
<div class="grid grid-flow-col auto-cols-auto gap-x-1.5" :class="[isHidden ? 'hidden' : '']"> <div class="flex flex-1 justify-between gap-x-1.5" :class="[isHidden ? 'hidden' : '']">
<InputWithSuffix :value="`${data.minTime} Menit`" @update:text="setMin($event)" /> <InputWithSuffix :value="`${data.minTime} Menit`" @update:text="setMin($event)" class="flex flex-1" />
<small class="flex items-center">s/d</small> <small class="flex items-center">s/d</small>
<InputWithSuffix :value="`${data.maxTime} Menit`" @update:text="setMax($event)" /> <InputWithSuffix :value="`${data.maxTime} Menit`" @update:text="setMax($event)" class="flex flex-1" />
</div> </div>
</div> </div>
</div> </div>
</div>
</template> </template>

View File

@ -42,30 +42,24 @@ onMounted(() => {
</script> </script>
<template> <template>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="grid grid-cols-1 gap-4 md:grid-cols-2">
<label class="filter-input-label" <div class="flex flex-col flex-1 space-y-2">
>Unit Induk Distribusi/Wilayah:</label <label class="filter-input-label">Unit Induk Distribusi/Wilayah:</label>
>
<Select @update:selected="setUid($event)" :data="itemsUid" :placeholder="uidPlaceholder" /> <Select @update:selected="setUid($event)" :data="itemsUid" :placeholder="uidPlaceholder" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label" <label class="filter-input-label">Unit Pelaksanaan Pelayanan Pelanggan:</label>
>Unit Pelaksanaan Pelayanan Pelanggan:</label
>
<Select <Select @update:selected="setUp3($event)" :data="itemsUp3" :selected="uppp" :placeholder="uppPlaceholder" />
@update:selected="setUp3($event)"
:data="itemsUp3"
:selected="uppp"
:placeholder="uppPlaceholder"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Periode Tanggal:</label> <label class="filter-input-label">Periode Tanggal:</label>
<DatePicker @update:date-value="(value) => (data.periode = value)" /> <DatePicker @update:date-value="(value) => (data.periode = value)" />
</div> </div>
</div>
</template> </template>

View File

@ -60,55 +60,40 @@ onMounted(() => {
</script> </script>
<template> <template>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="grid grid-cols-1 gap-4 md:grid-cols-2">
<label class="filter-input-label" <div class="flex flex-col flex-1 space-y-2">
>Unit Induk Distribusi/Wilayah:</label <label class="filter-input-label">Unit Induk Distribusi/Wilayah:</label>
>
<Select @update:selected="setUid($event)" :data="itemsUid" :placeholder="uidPlaceholder" /> <Select @update:selected="setUid($event)" :data="itemsUid" :placeholder="uidPlaceholder" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label" <label class="filter-input-label">Unit Pelaksanaan Pelayanan Pelanggan:</label>
>Unit Pelaksanaan Pelayanan Pelanggan:</label
>
<Select <Select @update:selected="setUp3($event)" :data="itemsUp3" :placeholder="uppPlaceholder" :selected="uppp" />
@update:selected="setUp3($event)"
:data="itemsUp3"
:placeholder="uppPlaceholder"
:selected="uppp"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Posko:</label> <label class="filter-input-label">Posko:</label>
<Select <Select @update:selected="setPosko($event)" :data="itemsPosko" :placeholder="poskoPlaceholder"
@update:selected="setPosko($event)" :selected="posko" />
:data="itemsPosko"
:placeholder="poskoPlaceholder"
:selected="posko"
/>
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label">Periode Tanggal:</label> <label class="filter-input-label">Periode Tanggal:</label>
<DatePicker @update:date-value="(value) => (data.periode = value)" /> <DatePicker @update:date-value="(value) => (data.periode = value)" />
</div> </div>
<div class="sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:items-center"> <div class="flex flex-col flex-1 space-y-2">
<label class="filter-input-label" <label class="filter-input-label">Group By Kode Unit Distribusi:</label>
>Group By Kode Unit Distribusi:</label
>
<InlineRadioGroup <InlineRadioGroup @update:group-value="(value) => (data.groupBy = value.id === 2)" :radio-items="[
@update:group-value="(value) => (data.groupBy = value.id === 2)"
:radio-items="[
{ id: 1, title: 'Tidak', checked: true }, { id: 1, title: 'Tidak', checked: true },
{ id: 2, title: 'Ya, Grupkan' } { id: 2, title: 'Ya, Grupkan' }
]" ]" />
/>
</div> </div>
</div>
</template> </template>