Add Monalisa dispatching time gangguan queries
This commit is contained in:
@ -93,7 +93,7 @@
|
||||
data-type="number"
|
||||
:caption="`${getMonthName(lastMonth)} ${lastYearMoM}`"
|
||||
css-class="custom-table-column"
|
||||
cell-template="formatNumber"
|
||||
cell-template="formatNumberMomLastMonthLastYear"
|
||||
/>
|
||||
<DxColumn
|
||||
:width="150"
|
||||
@ -102,7 +102,7 @@
|
||||
data-type="number"
|
||||
:caption="`${getMonthName(currentMonth)} ${currentYear}`"
|
||||
css-class="custom-table-column"
|
||||
cell-template="formatNumber"
|
||||
cell-template="formatNumberMomCurrentMonthCurrentYear"
|
||||
/>
|
||||
<DxColumn
|
||||
:width="70"
|
||||
@ -122,7 +122,7 @@
|
||||
data-type="number"
|
||||
:caption="`s.d ${getMonthName(currentMonth)} ${lastYear}`"
|
||||
css-class="custom-table-column"
|
||||
cell-template="formatNumber"
|
||||
cell-template="formatNumberYoyCurrentMonthLastYear"
|
||||
/>
|
||||
<DxColumn
|
||||
:width="150"
|
||||
@ -131,7 +131,7 @@
|
||||
data-type="number"
|
||||
:caption="`s.d ${getMonthName(currentMonth)} ${currentYear}`"
|
||||
css-class="custom-table-column"
|
||||
cell-template="formatNumber"
|
||||
cell-template="formatNumberYoyCurrentMonthCurrentYear"
|
||||
/>
|
||||
<DxColumn
|
||||
:width="70"
|
||||
@ -253,7 +253,67 @@
|
||||
</DxSummary>
|
||||
|
||||
<template #formatNumber="{ data }">
|
||||
<p class="text-right cursor-pointer">
|
||||
<p class="text-right cursor-pointer" @click="setRequirements('', 0, 0)">
|
||||
{{
|
||||
isNumber(data.text)
|
||||
? data.column.caption == '%'
|
||||
? formatPercentage(data.text)
|
||||
: formatNumber(data.text)
|
||||
: data.text
|
||||
}}
|
||||
</p>
|
||||
</template>
|
||||
|
||||
<template #formatNumberMomLastMonthLastYear="{ data }">
|
||||
<p
|
||||
class="text-right cursor-pointer"
|
||||
@click="setRequirements('mom', lastMonth, lastYearMoM)"
|
||||
>
|
||||
{{
|
||||
isNumber(data.text)
|
||||
? data.column.caption == '%'
|
||||
? formatPercentage(data.text)
|
||||
: formatNumber(data.text)
|
||||
: data.text
|
||||
}}
|
||||
</p>
|
||||
</template>
|
||||
|
||||
<template #formatNumberMomCurrentMonthCurrentYear="{ data }">
|
||||
<p
|
||||
class="text-right cursor-pointer"
|
||||
@click="setRequirements('mom', currentMonth, currentYear)"
|
||||
>
|
||||
{{
|
||||
isNumber(data.text)
|
||||
? data.column.caption == '%'
|
||||
? formatPercentage(data.text)
|
||||
: formatNumber(data.text)
|
||||
: data.text
|
||||
}}
|
||||
</p>
|
||||
</template>
|
||||
|
||||
<template #formatNumberYoyCurrentMonthLastYear="{ data }">
|
||||
<p
|
||||
class="text-right cursor-pointer"
|
||||
@click="setRequirements('yoy', currentMonth, lastYear)"
|
||||
>
|
||||
{{
|
||||
isNumber(data.text)
|
||||
? data.column.caption == '%'
|
||||
? formatPercentage(data.text)
|
||||
: formatNumber(data.text)
|
||||
: data.text
|
||||
}}
|
||||
</p>
|
||||
</template>
|
||||
|
||||
<template #formatNumberYoyCurrentMonthCurrentYear="{ data }">
|
||||
<p
|
||||
class="text-right cursor-pointer"
|
||||
@click="setRequirements('yoy', currentMonth, currentYear)"
|
||||
>
|
||||
{{
|
||||
isNumber(data.text)
|
||||
? data.column.caption == '%'
|
||||
@ -265,7 +325,7 @@
|
||||
</template>
|
||||
|
||||
<template #formatText="{ data }">
|
||||
<p class="!text-left cursor-pointer">
|
||||
<p class="!text-left cursor-pointer" @click="setRequirements('', 0, 0)">
|
||||
{{ data.text }}
|
||||
</p>
|
||||
</template>
|
||||
@ -748,6 +808,9 @@ const dialogDetail = ref(false)
|
||||
const closedialogDetail = () => (dialogDetail.value = false)
|
||||
const loadingData = ref(false)
|
||||
const loadingSubData = ref(false)
|
||||
const dataType = ref('')
|
||||
const dataYear = ref(new Date().getFullYear())
|
||||
const dataMonth = ref(new Date().getMonth())
|
||||
const reportMeta = ref({
|
||||
regional: { id: 0, name: 'Semua Regional' },
|
||||
uid: { id: 0, name: 'Semua Unit Induk Distribusi/Wilayah' },
|
||||
@ -763,6 +826,12 @@ const reportMeta = ref({
|
||||
lastYear: new Date().getFullYear() - 1
|
||||
})
|
||||
|
||||
const setRequirements = (type: string, month: number, year: number) => {
|
||||
dataType.value = type
|
||||
dataYear.value = year
|
||||
dataMonth.value = month
|
||||
}
|
||||
|
||||
const onExporting = (e: any) => {
|
||||
if (e.format === 'pdf') {
|
||||
exportToPDF(reportMeta.value, data.value)
|
||||
@ -835,32 +904,30 @@ const filterData = async (params: any) => {
|
||||
}
|
||||
|
||||
const getDetail = async () => {
|
||||
const dateValue = filters.value.periode.split(' s/d ')
|
||||
const selected = dataSelected.value
|
||||
|
||||
const query = {
|
||||
dateFrom: dateValue[0]
|
||||
? dateValue[0].split('-').reverse().join('-')
|
||||
: new Date().toISOString().slice(0, 10),
|
||||
dateTo: dateValue[1]
|
||||
? dateValue[1].split('-').reverse().join('-')
|
||||
: new Date().toISOString().slice(0, 10),
|
||||
posko: selected?.id_ulp ? selected?.id_ulp : 0,
|
||||
idUid: selected?.id_uid ? selected?.id_uid : 0,
|
||||
idUp3: selected?.id_up3 ? selected?.id_up3 : 0,
|
||||
idRegu: selected?.id_regu ? selected?.id_regu : 0,
|
||||
bulan: dataMonth.value,
|
||||
tahun: dataYear.value,
|
||||
idUlp: selected?.id_ulp ? selected?.id_ulp : 0,
|
||||
namaRegional: selected?.nama_regional ? selected?.nama_regional : '',
|
||||
media: selected?.media ? selected?.media : '',
|
||||
isSelesai: 0,
|
||||
tanggal: ''
|
||||
idUid: selected?.id_uid ? selected?.id_uid : 0,
|
||||
idUp3: selected?.id_up3 ? selected?.id_up3 : 0
|
||||
}
|
||||
|
||||
loadingSubData.value = true
|
||||
await requestGraphQl(queries.gangguan.rekap.gangguanAllDetail, query)
|
||||
await requestGraphQl(
|
||||
dataType.value == 'yoy'
|
||||
? queries.monalisa.gangguan.rekap.dispatchingTimeGangguanDetailYoy
|
||||
: queries.monalisa.gangguan.rekap.dispatchingTimeGangguanDetailMom,
|
||||
query
|
||||
)
|
||||
.then((result) => {
|
||||
if (result.data.data != undefined) {
|
||||
dataSub.value = result.data.data.detailGangguan
|
||||
if (dataType.value == 'yoy') {
|
||||
dataSub.value = result.data.data.detailMonalisaDispatchingTimeGangguanYoy
|
||||
} else {
|
||||
dataSub.value = result.data.data.detailMonalisaDispatchingTimeGangguanMoM
|
||||
}
|
||||
} else {
|
||||
dataSub.value = []
|
||||
}
|
||||
@ -882,7 +949,9 @@ const clearSelection = () => {
|
||||
const showDetail = () => {
|
||||
clearSelection()
|
||||
dataSubSelected.value = null
|
||||
getDetail()
|
||||
if (dataType.value == 'yoy' || dataType.value == 'mom') {
|
||||
getDetail()
|
||||
}
|
||||
}
|
||||
const onDataSelectionChanged = ({ selectedRowsData }: any) => {
|
||||
if (selectedRowsData[0] != undefined) {
|
||||
|
Reference in New Issue
Block a user