Dosya kapama talihli listesi asil, yedek adet alanları eklendi
This commit is contained in:
@ -7,7 +7,7 @@
|
|||||||
:rowAction="EditIkramiye"
|
:rowAction="EditIkramiye"
|
||||||
listText="İkramiye"
|
listText="İkramiye"
|
||||||
:addAction="NewIkramiye"
|
:addAction="NewIkramiye"
|
||||||
:apiList="'DosyaKapama/Ikramiye/' + piyangoStore.selectedLottery"
|
:apiList="'TeminatIadeEvrak/ByPiyangoId/' + piyangoStore.selectedLottery"
|
||||||
apiText="Dosya Kapama İkramiye Listesi"
|
apiText="Dosya Kapama İkramiye Listesi"
|
||||||
v-model:refresh="piyangoDosyaKapamaStore.dosyaKapamaIkramiyeListesiRefresh"
|
v-model:refresh="piyangoDosyaKapamaStore.dosyaKapamaIkramiyeListesiRefresh"
|
||||||
rowNumber />
|
rowNumber />
|
||||||
@ -16,12 +16,18 @@
|
|||||||
wide
|
wide
|
||||||
v-if="piyangoDosyaKapamaStore.dosyaKapamaIkramiyePanel"
|
v-if="piyangoDosyaKapamaStore.dosyaKapamaIkramiyePanel"
|
||||||
v-model="piyangoDosyaKapamaStore.dosyaKapamaIkramiyePanel"
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaIkramiyePanel"
|
||||||
:panel-title="piyangoDosyaKapamaStore.isDosyaKapamaIkramiyeUpdate ? 'İkramiye Düzenle' : 'İkramiye Ekle'">
|
:panel-title="
|
||||||
|
piyangoDosyaKapamaStore.isDosyaKapamaIkramiyeUpdate
|
||||||
|
? 'İkramiye Düzenle'
|
||||||
|
: 'İkramiye Ekle'
|
||||||
|
">
|
||||||
<template #panelContent>
|
<template #panelContent>
|
||||||
<panel-piyango-dosya-kapama-ikramiye />
|
<panel-piyango-dosya-kapama-ikramiye />
|
||||||
</template>
|
</template>
|
||||||
<template #footerButton>
|
<template #footerButton>
|
||||||
<div class="button-c button-save" @click="piyangoDosyaKapamaService.SaveDosyaKapamaIkramiye">
|
<div
|
||||||
|
class="button-c button-save"
|
||||||
|
@click="piyangoDosyaKapamaService.SaveDosyaKapamaIkramiye">
|
||||||
{{ piyangoDosyaKapamaStore.isDosyaKapamaIkramiyeUpdate ? 'Kaydet' : 'Ekle' }}
|
{{ piyangoDosyaKapamaStore.isDosyaKapamaIkramiyeUpdate ? 'Kaydet' : 'Ekle' }}
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@ -40,17 +46,46 @@
|
|||||||
import PanelPiyangoDosyaKapamaIkramiye from '../panel/PanelPiyangoDosyaKapamaIkramiye.vue'
|
import PanelPiyangoDosyaKapamaIkramiye from '../panel/PanelPiyangoDosyaKapamaIkramiye.vue'
|
||||||
import PanelWrapper from '@/components/PanelWrapper.vue'
|
import PanelWrapper from '@/components/PanelWrapper.vue'
|
||||||
|
|
||||||
|
|
||||||
const ikramiyeTableHeader = ref<Record<string, any>[]>([
|
const ikramiyeTableHeader = ref<Record<string, any>[]>([
|
||||||
{
|
{
|
||||||
name: 'taahhutEdilenIkramiye',
|
name: 'tahhutEdilenIkramiye',
|
||||||
title: 'Taahhüt Edilen İkramiye',
|
title: 'Taahhüt Edilen İkramiye',
|
||||||
style: { width: '20%' }
|
style: { width: '20%' },
|
||||||
|
computeHtml: (v: Record<string, any>) => {
|
||||||
|
return `<span>${v.tahhutEdilenIkramiyeAdet} ${v.tahhutEdilenIkramiye}</span>`
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'teslimEdilenIkramiye',
|
name: 'teslimEdilenIkramiye',
|
||||||
title: 'Teslim Edilen İkramiye',
|
title: 'Teslim Edilen İkramiye',
|
||||||
style: { width: '20%' }
|
style: { width: '20%' },
|
||||||
|
computeHtml: (v: Record<string, any>) => {
|
||||||
|
let asil: string = ''
|
||||||
|
let yedek: string = ''
|
||||||
|
if (
|
||||||
|
v.teslimEdilenIkramiyeAsil &&
|
||||||
|
v.teslimEdilenIkramiyeAsil !== null &&
|
||||||
|
v.teslimEdilenIkramiyeAsil !== 0 &&
|
||||||
|
v.teslimEdilenIkramiyeAsil !== ''
|
||||||
|
) {
|
||||||
|
asil = `<span >${v.teslimEdilenIkramiyeAsil} ASIL</span>`
|
||||||
|
}
|
||||||
|
if (
|
||||||
|
v.teslimEdilenIkramiyeYedek &&
|
||||||
|
v.teslimEdilenIkramiyeYedek !== null &&
|
||||||
|
v.teslimEdilenIkramiyeYedek !== 0 &&
|
||||||
|
v.teslimEdilenIkramiyeYedek !== ''
|
||||||
|
) {
|
||||||
|
yedek = `<span >${v.teslimEdilenIkramiyeYedek} YEDEK</span>`
|
||||||
|
}
|
||||||
|
return asil !== ''
|
||||||
|
? yedek !== ''
|
||||||
|
? asil + '<br/>' + yedek
|
||||||
|
: asil
|
||||||
|
: yedek !== ''
|
||||||
|
? yedek
|
||||||
|
: ''
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'alinmayanIkramiye',
|
name: 'alinmayanIkramiye',
|
||||||
@ -63,7 +98,6 @@
|
|||||||
}
|
}
|
||||||
])
|
])
|
||||||
|
|
||||||
|
|
||||||
const NewIkramiye = () => {
|
const NewIkramiye = () => {
|
||||||
piyangoDosyaKapamaStore.ResetIkramiyeFormData()
|
piyangoDosyaKapamaStore.ResetIkramiyeFormData()
|
||||||
piyangoDosyaKapamaStore.isDosyaKapamaIkramiyeUpdate = false
|
piyangoDosyaKapamaStore.isDosyaKapamaIkramiyeUpdate = false
|
||||||
|
|||||||
@ -1,28 +1,64 @@
|
|||||||
<template>
|
<template>
|
||||||
<form-input
|
<form-select
|
||||||
v-model="piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.taahhutEdilenIkramiye"
|
@change="OnIkramiyeChanged"
|
||||||
label="Taahhüt Edilen İkramiye"
|
modelKey="ikramiyeId"
|
||||||
modelKey="taahhutEdilenIkramiye"
|
clearable
|
||||||
minlength="2"
|
label="Kazandığı İkramiye"
|
||||||
required
|
:listData="piyangoIkramiyeStore.piyangoAllIkramiyeData"
|
||||||
|
listText="cinsi"
|
||||||
|
listVal="id"
|
||||||
|
v-model="selectedIkramiye"
|
||||||
:invalidText="
|
:invalidText="
|
||||||
piyangoDosyaKapamaValidationStore.ikramiyeInvalidTexts.taahhutEdilenIkramiye
|
piyangoDosyaKapamaValidationStore.ikramiyeInvalidTexts.taahhutEdilenIkramiye
|
||||||
" />
|
">
|
||||||
|
<template #activator="data">
|
||||||
|
{{
|
||||||
|
data.activatorData !== undefined &&
|
||||||
|
Object.keys(data.activatorData).length > 0 &&
|
||||||
|
selectedIkramiye !== null
|
||||||
|
? data.activatorData.cinsi +
|
||||||
|
', ' +
|
||||||
|
data.activatorData.marka +
|
||||||
|
', ' +
|
||||||
|
data.activatorData.model
|
||||||
|
: 'Lütfen Seçim Yapınız'
|
||||||
|
}}
|
||||||
|
</template>
|
||||||
|
<template #option="data">
|
||||||
|
{{
|
||||||
|
data.optionData.cinsi +
|
||||||
|
', ' +
|
||||||
|
data.optionData.marka +
|
||||||
|
', ' +
|
||||||
|
data.optionData.model
|
||||||
|
}}
|
||||||
|
</template>
|
||||||
|
</form-select>
|
||||||
<form-input
|
<form-input
|
||||||
v-model="piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.teslimEdilenIkramiye"
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.teslimEdilenIkramiyeAsil"
|
||||||
label="Teslim Edilen İkramiye"
|
label="Teslim Edilen İkramiye Asil"
|
||||||
modelKey="teslimEdilenIkramiye"
|
modelKey="teslimEdilenIkramiyeAsil"
|
||||||
minlength="2"
|
|
||||||
required
|
required
|
||||||
:invalidText="
|
:invalidText="
|
||||||
piyangoDosyaKapamaValidationStore.ikramiyeInvalidTexts.teslimEdilenIkramiye
|
piyangoDosyaKapamaValidationStore.ikramiyeInvalidTexts.teslimEdilenIkramiyeAsil
|
||||||
" />
|
"
|
||||||
|
@keydown="validationStore.allowNumbersWithKeys"
|
||||||
|
@keyup="CalculateAlinmayanIkramiye" />
|
||||||
<form-input
|
<form-input
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.teslimEdilenIkramiyeYedek"
|
||||||
|
label="Teslim Edilen İkramiye Yedek"
|
||||||
|
modelKey="teslimEdilenIkramiyeYedek"
|
||||||
|
required
|
||||||
|
:invalidText="
|
||||||
|
piyangoDosyaKapamaValidationStore.ikramiyeInvalidTexts.teslimEdilenIkramiyeYedek
|
||||||
|
"
|
||||||
|
@keydown="validationStore.allowNumbersWithKeys"
|
||||||
|
@keyup="CalculateAlinmayanIkramiye" />
|
||||||
|
<form-input
|
||||||
|
disabled
|
||||||
v-model="piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.alinmayanIkramiye"
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.alinmayanIkramiye"
|
||||||
label="Alınmayan İkramiye"
|
label="Alınmayan İkramiye"
|
||||||
modelKey="alinmayanIkramiye"
|
modelKey="alinmayanIkramiye"
|
||||||
minlength="2"
|
|
||||||
required
|
|
||||||
:invalidText="
|
:invalidText="
|
||||||
piyangoDosyaKapamaValidationStore.ikramiyeInvalidTexts.alinmayanIkramiye
|
piyangoDosyaKapamaValidationStore.ikramiyeInvalidTexts.alinmayanIkramiye
|
||||||
" />
|
" />
|
||||||
@ -32,10 +68,65 @@
|
|||||||
modelKey="aciklama" />
|
modelKey="aciklama" />
|
||||||
</template>
|
</template>
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
|
import { onBeforeMount, ref } from 'vue'
|
||||||
import { useValidationStore } from '@/stores/validationStore'
|
import { useValidationStore } from '@/stores/validationStore'
|
||||||
const validationStore = useValidationStore()
|
const validationStore = useValidationStore()
|
||||||
import { usePiyangoDosyaKapamaStore } from '../../stores/piyangoDosyaKapamaStore'
|
import { usePiyangoDosyaKapamaStore } from '../../stores/piyangoDosyaKapamaStore'
|
||||||
const piyangoDosyaKapamaStore = usePiyangoDosyaKapamaStore()
|
const piyangoDosyaKapamaStore = usePiyangoDosyaKapamaStore()
|
||||||
import { usePiyangoDosyaKapamaValidationStore } from '../../validation/piyangoDosyaKapamaValidationStore'
|
import { usePiyangoDosyaKapamaValidationStore } from '../../validation/piyangoDosyaKapamaValidationStore'
|
||||||
const piyangoDosyaKapamaValidationStore = usePiyangoDosyaKapamaValidationStore()
|
const piyangoDosyaKapamaValidationStore = usePiyangoDosyaKapamaValidationStore()
|
||||||
|
import { usePiyangoIkramiyeService } from '../../service/piyangoIkramiyeService'
|
||||||
|
const piyangoIkramiyeService = usePiyangoIkramiyeService()
|
||||||
|
import { usePiyangoIkramiyeStore } from '../../stores/piyangoIkramiyeStore'
|
||||||
|
const piyangoIkramiyeStore = usePiyangoIkramiyeStore()
|
||||||
|
|
||||||
|
const selectedIkramiye = ref<string | number | null>(null)
|
||||||
|
const totalIkramiye = ref<number | null>(null)
|
||||||
|
|
||||||
|
const CalculateAlinmayanIkramiye = () => {
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.alinmayanIkramiye =
|
||||||
|
Number(totalIkramiye.value) -
|
||||||
|
Number(
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.teslimEdilenIkramiyeAsil || 0
|
||||||
|
) -
|
||||||
|
Number(
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.teslimEdilenIkramiyeYedek || 0
|
||||||
|
)
|
||||||
|
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.teslimEdilenIkramiye =
|
||||||
|
Number(
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.teslimEdilenIkramiyeAsil || 0
|
||||||
|
) +
|
||||||
|
Number(
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.teslimEdilenIkramiyeYedek || 0
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
const OnIkramiyeChanged = (e: Event, val: any, item: Record<string, any>) => {
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.tahhutEdilenIkramiye = `${
|
||||||
|
item.cinsi
|
||||||
|
}, ${item.marka} ${item.model !== null ? ', ' + item.model : ''}`
|
||||||
|
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.tahhutEdilenIkramiyeAdet =
|
||||||
|
item.asilTalihliAdedi
|
||||||
|
}
|
||||||
|
|
||||||
|
onBeforeMount(async () => {
|
||||||
|
if (piyangoIkramiyeStore.piyangoAllIkramiyeData.length === 0)
|
||||||
|
await piyangoIkramiyeService.GetAllIkramiyeler()
|
||||||
|
|
||||||
|
piyangoIkramiyeStore.piyangoAllIkramiyeData.forEach((item) => {
|
||||||
|
if (
|
||||||
|
`${item.cinsi}, ${item.marka} ${item.model !== null ? ', ' + item.model : ''}` ===
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.taahhutEdilenIkramiye
|
||||||
|
) {
|
||||||
|
selectedIkramiye.value = item.id
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
totalIkramiye.value = piyangoIkramiyeStore.piyangoAllIkramiyeData.reduce(
|
||||||
|
(acc, item) => acc + (item.asilTalihliAdedi || 0),
|
||||||
|
0
|
||||||
|
)
|
||||||
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@ -53,12 +53,12 @@ export const usePiyangoDosyaKapamaService = defineStore(
|
|||||||
if (piyangoDosyaKapamaValidationStore.IkramiyeFormCheck()) {
|
if (piyangoDosyaKapamaValidationStore.IkramiyeFormCheck()) {
|
||||||
let dt: any
|
let dt: any
|
||||||
if (!piyangoDosyaKapamaStore.isDosyaKapamaIkramiyeUpdate) {
|
if (!piyangoDosyaKapamaStore.isDosyaKapamaIkramiyeUpdate) {
|
||||||
dt = await dataStore.dataPost('TeminatIadeEvrakKontrol', {
|
dt = await dataStore.dataPost('TeminatIadeEvrak', {
|
||||||
data: piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData
|
data: piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
dt = await dataStore.dataPut(
|
dt = await dataStore.dataPut(
|
||||||
'TeminatIadeEvrakKontrol/' +
|
'TeminatIadeEvrak/' +
|
||||||
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.id,
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.id,
|
||||||
{
|
{
|
||||||
data: piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData
|
data: piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData
|
||||||
|
|||||||
@ -40,6 +40,9 @@ export const usePiyangoDosyaKapamaStore = defineStore('piyangoDosyaKapamaStore',
|
|||||||
})
|
})
|
||||||
const baseDosyaKapamaIkramiyeData = reactive<Record<string, any>>({
|
const baseDosyaKapamaIkramiyeData = reactive<Record<string, any>>({
|
||||||
taahhutEdilenIkramiye: '',
|
taahhutEdilenIkramiye: '',
|
||||||
|
tahhutEdilenIkramiyeAdet: '',
|
||||||
|
teslimEdilenIkramiyeAsil: '',
|
||||||
|
teslimEdilenIkramiyeYedek: '',
|
||||||
teslimEdilenIkramiye: '',
|
teslimEdilenIkramiye: '',
|
||||||
alinmayanIkramiye: '',
|
alinmayanIkramiye: '',
|
||||||
aciklama: ''
|
aciklama: ''
|
||||||
|
|||||||
@ -34,20 +34,46 @@ export const usePiyangoDosyaKapamaValidationStore = defineStore(
|
|||||||
validationStore.IsFieldEmpty(
|
validationStore.IsFieldEmpty(
|
||||||
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData,
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData,
|
||||||
ikramiyeInvalidTexts,
|
ikramiyeInvalidTexts,
|
||||||
'taahhutEdilenIkramiye',
|
'tahhutEdilenIkramiye',
|
||||||
'Lütfen taahhüt edilen ikramiyeyi giriniz.'
|
'Lütfen taahhüt edilen ikramiyeyi seçiniz.'
|
||||||
)
|
)
|
||||||
|
if (
|
||||||
|
validationStore.checkEmpty(
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.tahhutEdilenIkramiyeAdet
|
||||||
|
)
|
||||||
|
) {
|
||||||
|
isIkramiyeFormValid.value = false
|
||||||
|
ikramiyeInvalidTexts.tahhutEdilenIkramiye =
|
||||||
|
'Lütfen taahhüt edilen ikramiyeyi seçiniz.'
|
||||||
|
}
|
||||||
|
|
||||||
validationStore.IsFieldEmpty(
|
validationStore.IsFieldEmpty(
|
||||||
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData,
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData,
|
||||||
ikramiyeInvalidTexts,
|
ikramiyeInvalidTexts,
|
||||||
'teslimEdilenIkramiye',
|
'teslimEdilenIkramiyeAsil',
|
||||||
'Lütfen teslim edilen ikramiyeyi giriniz.'
|
'Lütfen teslim edilen ikramiyeyi giriniz.'
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if (
|
||||||
|
validationStore.checkEmpty(
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.teslimEdilenIkramiyeAsil
|
||||||
|
) &&
|
||||||
|
validationStore.checkEmpty(
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.teslimEdilenIkramiyeAsil
|
||||||
|
)
|
||||||
|
) {
|
||||||
|
isIkramiyeFormValid.value = false
|
||||||
|
ikramiyeInvalidTexts.teslimEdilenIkramiyeAsil =
|
||||||
|
'En az 1 asil veya yedek talihli adedi girmelisiniz'
|
||||||
|
ikramiyeInvalidTexts.teslimEdilenIkramiyeYedek =
|
||||||
|
'En az 1 asil veya yedek talihli adedi girmelisiniz'
|
||||||
|
}
|
||||||
|
|
||||||
validationStore.IsFieldEmpty(
|
validationStore.IsFieldEmpty(
|
||||||
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData,
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData,
|
||||||
ikramiyeInvalidTexts,
|
ikramiyeInvalidTexts,
|
||||||
'alinmayanIkramiye',
|
'alinmayanIkramiye',
|
||||||
'Lütfen alınmayan ikramiyeyi giriniz.'
|
'Alınmayan ikramiye adedi boş olamaz. En az 1 asil veya yedek ikramiye adedi giriniz.'
|
||||||
)
|
)
|
||||||
|
|
||||||
isIkramiyeFormValid.value = Object.keys(ikramiyeInvalidTexts).length === 0
|
isIkramiyeFormValid.value = Object.keys(ikramiyeInvalidTexts).length === 0
|
||||||
|
|||||||
Reference in New Issue
Block a user