Refactor PiyangoOnay components to consolidate conditional rendering for "Müdürlük" and "Çekiliş Görevlisi" fields. Update validation and service logic to ensure proper handling based on "onayDurumuIslemTipiId". This enhances the user experience by streamlining form interactions and data management.

This commit is contained in:
burakovec
2025-12-18 15:01:55 +03:00
parent edb1d23d71
commit 078a5a020a
4 changed files with 58 additions and 48 deletions

View File

@ -61,8 +61,8 @@
label="İzin Açıklaması"
@keyup="OnKeyup" />
</template>
<template v-if="showIzinVerildiFields">
<form-select
v-if="showIzinVerildiFields || showMudurlukFields"
label="Müdürlük"
:listData="mudurlukListesi"
listText="name"
@ -72,6 +72,7 @@
:invalidText="piyangoOnayValidationStore.invalidTexts.mudurlukId"
@change="OnKeyup" />
<form-select
v-if="showIzinVerildiFields"
label="Çekiliş Görevlisi"
:listData="cekilisGorevlisiListesi"
listText="name"
@ -80,7 +81,6 @@
required
:invalidText="piyangoOnayValidationStore.invalidTexts.cekilisGorevlisiId"
@change="OnKeyup" />
</template>
<form-select
v-if="showKapsamDisiSebebi"
label="Kapsam Dışı Sebebi"
@ -133,10 +133,11 @@
})
const showIzinVerildiFields = computed<boolean>(() => {
return (
piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId === 4 ||
piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId === kapsamDisiId.value
)
return piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId === 4
})
const showMudurlukFields = computed<boolean>(() => {
return piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId === kapsamDisiId.value
})
const showKapsamDisiSebebi = computed<boolean>(() => {

View File

@ -50,8 +50,8 @@
label="İzin Açıklaması"
@keyup="OnKeyup" />
</template>
<template v-if="showIzinVerildiFields">
<form-select
v-if="showIzinVerildiFields || showMudurlukFields"
label="Müdürlük"
:listData="mudurlukListesi"
listText="name"
@ -61,6 +61,7 @@
:invalidText="piyangoOnayValidationStore.invalidTextsPanel.mudurlukId"
@change="OnKeyup" />
<form-select
v-if="showIzinVerildiFields"
label="Çekiliş Görevlisi"
:listData="cekilisGorevlisiListesi"
listText="name"
@ -69,7 +70,6 @@
required
:invalidText="piyangoOnayValidationStore.invalidTextsPanel.cekilisGorevlisiId"
@change="OnKeyup" />
</template>
<form-select
v-if="showKapsamDisiSebebi"
label="Kapsam Dışı Sebebi"
@ -119,10 +119,11 @@
})
const showIzinVerildiFields = computed<boolean>(() => {
return (
piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId === 4 ||
piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId === kapsamDisiId.value
)
return piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId === 4
})
const showMudurlukFields = computed<boolean>(() => {
return piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId === kapsamDisiId.value
})
const showKapsamDisiSebebi = computed<boolean>(() => {

View File

@ -44,6 +44,8 @@ export const usePiyangoOnayService = defineStore('piyangoOnayService', () => {
piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId !== getKapsamDisiId()
) {
piyangoOnayStore.piyangoOnayForm.mudurlukId = null
}
if (piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId !== 4) {
piyangoOnayStore.piyangoOnayForm.cekilisGorevlisiId = null
}
dataForm.append(
@ -117,6 +119,8 @@ export const usePiyangoOnayService = defineStore('piyangoOnayService', () => {
piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId !== getKapsamDisiId()
) {
piyangoOnayStore.piyangoPanelOnayForm.mudurlukId = null
}
if (piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId !== 4) {
piyangoOnayStore.piyangoPanelOnayForm.cekilisGorevlisiId = null
}
dataForm.append('onayDurumuIslemTipiId', piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId)

View File

@ -61,6 +61,8 @@ export const usePiyangoOnayValidationStore = defineStore(
'mudurlukId',
'Müdürlük seçmelisiniz.'
)
}
if (piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId === 4) {
validationStore.IsFieldEmpty(
piyangoOnayStore.piyangoOnayForm,
invalidTexts,
@ -113,6 +115,8 @@ export const usePiyangoOnayValidationStore = defineStore(
'mudurlukId',
'Müdürlük seçmelisiniz.'
)
}
if (piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId === 4) {
validationStore.IsFieldEmpty(
piyangoOnayStore.piyangoPanelOnayForm,
invalidTextsPanel,