Add min-width utility classes and format table cells

This commit is contained in:
Dede Fuji Abdul
2024-03-13 22:15:20 +07:00
parent 6af6066b7f
commit 6852a8cb84
6 changed files with 475 additions and 185 deletions

View File

@@ -51,6 +51,7 @@
css-class="custom-table-column"
data-type="number"
data-field="no"
cell-template="formatNumber"
/>
<DxColumn
:width="170"
@@ -77,6 +78,7 @@
data-type="number"
caption="Total"
css-class="custom-table-column"
cell-template="formatNumber"
/>
<DxColumn alignment="center" caption="Sudah Selesai" css-class="custom-table-column">
<DxColumn
@@ -86,6 +88,7 @@
data-type="number"
caption="Jml"
css-class="custom-table-column"
cell-template="formatNumber"
/>
<DxColumn
:width="70"
@@ -94,7 +97,7 @@
data-type="number"
caption="%"
css-class="custom-table-column"
cell-template="percent"
cell-template="formatNumber"
/>
</DxColumn>
<DxColumn alignment="center" caption="Belum Selesai" css-class="custom-table-column">
@@ -105,6 +108,7 @@
data-type="number"
caption="Jml"
css-class="custom-table-column"
cell-template="formatNumber"
/>
<DxColumn
:width="70"
@@ -113,7 +117,7 @@
data-type="number"
caption="%"
css-class="custom-table-column"
cell-template="percent"
cell-template="formatNumber"
/>
</DxColumn>
</DxColumn>
@@ -126,6 +130,7 @@
data-type="number"
caption="Total"
css-class="custom-table-column"
cell-template="formatNumber"
/>
<DxColumn
:width="150"
@@ -134,6 +139,7 @@
data-type="number"
caption="Rata-Rata"
css-class="custom-table-column"
cell-template="formatNumber"
/>
<DxColumn
:width="150"
@@ -162,6 +168,7 @@
data-type="number"
caption=">SLA"
css-class="custom-table-column"
cell-template="formatNumber"
/>
<DxColumn
:width="150"
@@ -170,6 +177,7 @@
data-type="number"
caption="SLA"
css-class="custom-table-column"
cell-template="formatNumber"
/>
</DxColumn>
</DxColumn>
@@ -182,6 +190,7 @@
data-type="number"
caption="Total"
css-class="custom-table-column"
cell-template="formatNumber"
/>
<DxColumn
:width="150"
@@ -190,6 +199,7 @@
data-type="number"
caption="Rata-Rata"
css-class="custom-table-column"
cell-template="formatNumber"
/>
<DxColumn
:width="150"
@@ -218,6 +228,7 @@
data-type="number"
caption=">SLA"
css-class="custom-table-column"
cell-template="formatNumber"
/>
<DxColumn
:width="150"
@@ -226,6 +237,7 @@
data-type="number"
caption="SLA"
css-class="custom-table-column"
cell-template="formatNumber"
/>
</DxColumn>
</DxColumn>
@@ -235,114 +247,131 @@
summary-type="sum"
display-format="Total"
show-in-column="no"
css-class="text-white"
css-class="text-white !text-left"
/>
<DxTotalItem
summary-type="sum"
display-format="{0}"
column="total"
css-class="text-white"
css-class="text-white !text-right"
:customize-text="(e: any) => formatNumber(parseFloat(e.value.toString()))"
/>
<DxTotalItem
summary-type="sum"
display-format="{0}"
column="total_selesai"
css-class="text-white"
css-class="text-white !text-right"
:customize-text="(e: any) => formatNumber(parseFloat(e.value.toString()))"
/>
<DxTotalItem
summary-type="sum"
display-format="{0}%"
summary-type="avg"
display-format="{0}"
column="persen_selesai"
css-class="text-white"
css-class="text-white !text-right"
:customize-text="(e: any) => formatPercentage(parseFloat(e.value.toString()))"
/>
<DxTotalItem
summary-type="sum"
display-format="{0}"
column="total_inproses"
css-class="text-white"
css-class="text-white !text-right"
:customize-text="(e: any) => formatNumber(parseFloat(e.value.toString()))"
/>
<DxTotalItem
summary-type="sum"
display-format="{0}%"
summary-type="avg"
display-format="{0}"
column="persen_inproses"
css-class="text-white"
css-class="text-white !text-right"
:customize-text="(e: any) => formatPercentage(parseFloat(e.value.toString()))"
/>
<DxTotalItem
summary-type="sum"
display-format="{0}"
column="total_durasi_response"
css-class="text-white"
css-class="text-white !text-right"
:customize-text="(e: any) => formatNumber(parseFloat(e.value.toString()))"
/>
<DxTotalItem
summary-type="sum"
summary-type="avg"
display-format="{0}"
column="avg_durasi_response"
css-class="text-white"
css-class="text-white !text-right"
:customize-text="(e: any) => formatNumber(parseFloat(e.value.toString()))"
/>
<DxTotalItem
summary-type="sum"
summary-type="min"
display-format="{0}"
column="min_durasi_response"
css-class="text-white"
css-class="text-white !text-right"
:customize-text="(e: any) => (parseInt(e.value) ? formatWaktu(e.value) : '-')"
/>
<DxTotalItem
summary-type="sum"
summary-type="max"
display-format="{0}"
column="max_durasi_response"
css-class="text-white"
css-class="text-white !text-right"
:customize-text="(e: any) => (parseInt(e.value) ? formatWaktu(e.value) : '-')"
/>
<DxTotalItem
summary-type="sum"
display-format="{0}"
column="total_diatas_sla_response"
css-class="text-white"
css-class="text-white !text-right"
:customize-text="(e: any) => formatNumber(parseFloat(e.value.toString()))"
/>
<DxTotalItem
summary-type="sum"
display-format="{0}"
column="total_dibawah_sla_response"
css-class="text-white"
css-class="text-white !text-right"
:customize-text="(e: any) => formatNumber(parseFloat(e.value.toString()))"
/>
<DxTotalItem
summary-type="sum"
display-format="{0}"
column="total_durasi_recovery"
css-class="text-white"
css-class="text-white !text-right"
:customize-text="(e: any) => formatNumber(parseFloat(e.value.toString()))"
/>
<DxTotalItem
summary-type="sum"
summary-type="avg"
display-format="{0}"
column="avg_durasi_recovery"
css-class="text-white"
css-class="text-white !text-right"
:customize-text="(e: any) => formatNumber(parseFloat(e.value.toString()))"
/>
<DxTotalItem
summary-type="sum"
summary-type="min"
display-format="{0}"
column="min_durasi_recovery"
css-class="text-white"
css-class="text-white !text-right"
:customize-text="(e: any) => (parseInt(e.value) ? formatWaktu(e.value) : '-')"
/>
<DxTotalItem
summary-type="sum"
summary-type="max"
display-format="{0}"
column="max_durasi_recovery"
css-class="text-white"
css-class="text-white !text-right"
:customize-text="(e: any) => (parseInt(e.value) ? formatWaktu(e.value) : '-')"
/>
<DxTotalItem
summary-type="sum"
display-format="{0}"
column="total_diatas_sla_recovery"
css-class="text-white"
css-class="text-white !text-right"
:customize-text="(e: any) => formatNumber(parseFloat(e.value.toString()))"
/>
<DxTotalItem
summary-type="sum"
display-format="{0}"
column="total_dibawah_sla_recovery"
css-class="text-white"
css-class="text-white !text-right"
:customize-text="(e: any) => formatNumber(parseFloat(e.value.toString()))"
/>
</DxSummary>
<template #formatTime="{ data }">
<p class="cursor-pointer !text-right" @click="showDialogDataSelected()">
<p class="!text-right cursor-pointer" @click="showDialogDataSelected()">
{{ parseInt(data.text) ? formatWaktu(data.text) : '-' }}
</p>
</template>
@@ -351,6 +380,18 @@
<p class="cursor-pointer" @click="showDialogDataSelected()">{{ data.text }}%</p>
</template>
<template #formatNumber="{ data }">
<p class="text-right cursor-pointer" @click="showDialogDataSelected()">
{{
isNumber(data.text)
? data.column.caption == '%'
? formatPercentage(data.text)
: formatNumber(data.text)
: data.text
}}
</p>
</template>
<template #formatText="{ data }">
<p class="text-left cursor-pointer" @click="showDialogDataSelected()">
{{ data.text }}
@@ -729,6 +770,7 @@ import { useQuery } from '@vue/apollo-composable'
import { formatWaktu } from '@/components/Form/FiltersType/reference'
import { queries } from '@/utils/api/api.graphql'
import { dummyData } from '@/utils/dummy'
import { formatNumber, formatPercentage, isNumber } from '@/utils/numbers'
const position = { of: '#data' }
const showIndicator = ref(true)