Compare commits
4 Commits
457cb58256
...
c34d64d505
| Author | SHA1 | Date | |
|---|---|---|---|
| c34d64d505 | |||
| fdc2372288 | |||
| 216cf1fb73 | |||
| 0d58b0ad10 |
@ -91,9 +91,9 @@
|
|||||||
|
|
||||||
const emit = defineEmits(['update:modelValue', 'change', 'click'])
|
const emit = defineEmits(['update:modelValue', 'change', 'click'])
|
||||||
|
|
||||||
const localValue = ref<(string | number)[] | boolean | null | string | number|undefined>(
|
const localValue = ref<
|
||||||
props.modelValue
|
(string | number)[] | boolean | null | string | number | undefined
|
||||||
)
|
>(props.modelValue)
|
||||||
|
|
||||||
const InvalidMessageText = reactive<Record<string, any>>({})
|
const InvalidMessageText = reactive<Record<string, any>>({})
|
||||||
const InvalidMessages = computed<string>(() => {
|
const InvalidMessages = computed<string>(() => {
|
||||||
|
|||||||
@ -355,8 +355,6 @@
|
|||||||
const globalDataStore = useGlobalDataStore()
|
const globalDataStore = useGlobalDataStore()
|
||||||
import { useValidationStore } from '@/stores/validationStore'
|
import { useValidationStore } from '@/stores/validationStore'
|
||||||
const validationStore = useValidationStore()
|
const validationStore = useValidationStore()
|
||||||
import { useUsersStore } from '@/stores/usersStore'
|
|
||||||
const usersStore = useUsersStore()
|
|
||||||
import { useAuthValidationStore } from '../stores/authValidationStore'
|
import { useAuthValidationStore } from '../stores/authValidationStore'
|
||||||
const authValidationStore = useAuthValidationStore()
|
const authValidationStore = useAuthValidationStore()
|
||||||
import router from '@/router'
|
import router from '@/router'
|
||||||
@ -365,12 +363,6 @@
|
|||||||
const uyeBilgileriStore = useUyeBilgileriStore()
|
const uyeBilgileriStore = useUyeBilgileriStore()
|
||||||
uyeBilgileriStore.ResetStore()
|
uyeBilgileriStore.ResetStore()
|
||||||
|
|
||||||
interface IIl {
|
|
||||||
[key: string]: any
|
|
||||||
ad: string
|
|
||||||
id: number
|
|
||||||
}
|
|
||||||
|
|
||||||
const kvkkCheck = ref([
|
const kvkkCheck = ref([
|
||||||
{
|
{
|
||||||
label: '',
|
label: '',
|
||||||
|
|||||||
14
src/module/cekilisler/components/TabPiyangoDosyaKapama.vue
Normal file
14
src/module/cekilisler/components/TabPiyangoDosyaKapama.vue
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
<template>
|
||||||
|
<div class="form-content">
|
||||||
|
<div class="form-inner-content form-inner-content-left">
|
||||||
|
<form-piyango-dosya-kapama />
|
||||||
|
</div>
|
||||||
|
<div class="form-inner-content form-inner-content-left">
|
||||||
|
<form-piyango-dosya-kapama-ikramiye-listesi />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script setup lang="ts">
|
||||||
|
import FormPiyangoDosyaKapama from './form/FormPiyangoDosyaKapama.vue'
|
||||||
|
import FormPiyangoDosyaKapamaIkramiyeListesi from './form/FormPiyangoDosyaKapamaIkramiyeListesi.vue'
|
||||||
|
</script>
|
||||||
@ -39,7 +39,7 @@
|
|||||||
</panel-wrapper>
|
</panel-wrapper>
|
||||||
</template>
|
</template>
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { ref, reactive, computed, onBeforeMount } from 'vue'
|
import { ref, onBeforeMount } from 'vue'
|
||||||
import { usePDF } from 'vue3-pdfmake'
|
import { usePDF } from 'vue3-pdfmake'
|
||||||
import { useUsersStore } from '@/stores/usersStore'
|
import { useUsersStore } from '@/stores/usersStore'
|
||||||
const usersStore = useUsersStore()
|
const usersStore = useUsersStore()
|
||||||
|
|||||||
244
src/module/cekilisler/components/form/FormPiyangoDosyaKapama.vue
Normal file
244
src/module/cekilisler/components/form/FormPiyangoDosyaKapama.vue
Normal file
@ -0,0 +1,244 @@
|
|||||||
|
<template>
|
||||||
|
<div class="form-part form-title" v-if="piyangoDosyaKapamaStore.isNew">
|
||||||
|
<div class="form-title-buttons">
|
||||||
|
<div
|
||||||
|
class="button-c button-save"
|
||||||
|
@click="piyangoDosyaKapamaService.SaveDosyaKapama()">
|
||||||
|
Kaydet
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div
|
||||||
|
:class="[
|
||||||
|
'form-part',
|
||||||
|
piyangoDosyaKapamaStore.formChanged && !piyangoDosyaKapamaStore.isNew
|
||||||
|
? 'changed'
|
||||||
|
: ''
|
||||||
|
]">
|
||||||
|
<div class="form-part-title">
|
||||||
|
<h4>Teminat İade Evrak Kontrol</h4>
|
||||||
|
</div>
|
||||||
|
<div class="form-part-content" v-if="piyangoDosyaKapamaStore.loaded">
|
||||||
|
<form-input
|
||||||
|
modelKey="katilimSekli"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.katilimSekli"
|
||||||
|
label="1. Katılım Şekli"
|
||||||
|
placeholder="Katılım Şekli"
|
||||||
|
@keyup="OnKeyup" />
|
||||||
|
|
||||||
|
<form-checkbox
|
||||||
|
label="2. CD"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.cD"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="3. Kutu Mühürleme Tutanağı"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.kutuMuhurlemeTutanagi"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="4. Kutu Açma Tutanağı"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.kutuAcmaTutanagi"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
|
||||||
|
<div class="form-part-title">
|
||||||
|
<h4>5. Çekiliş Tutanağı</h4>
|
||||||
|
</div>
|
||||||
|
<form-checkbox
|
||||||
|
label="Çekiliş Tutanağı"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.cekilisTutanagi"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Çekiliş izin alınan tarih, saat, adreste yapılmış"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.cekilisIzinAlinanTarihSaatAdres"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Çekilişte önceden belirlenen ikramiyeler çekiliş"
|
||||||
|
v-model="
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaData.cekilisOncedenBelirlenenIkramiyeler
|
||||||
|
"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Çekilişte önceden belirlenen ikramiyeler çekiliş"
|
||||||
|
v-model="
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaData.cekilisOncedenBelirlenenIkramiyeler
|
||||||
|
"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Çekiliş numara üzerinden/isimden"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.cekilisNumaraUzerindenCekilis"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Dağıtılmayan kupon tespiti"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.dagitilmayanKuponTespiti"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
|
||||||
|
<div class="form-part-title">
|
||||||
|
<h4>6. Çekiliş Sonucu İlan</h4>
|
||||||
|
</div>
|
||||||
|
<form-checkbox
|
||||||
|
label="Çekiliş Sonucu İlan"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.cekilisSonucuIlani"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Taahhüt edilen tarih ve gazetede ilan"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.ilandaTarihGazete"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="İlanda toplam katılımcı sayısı"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.ilandaToplamKatilimci"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Çekiliş tutanağı ile uyumlu kazanan numara/isim"
|
||||||
|
v-model="
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaData.cekilisTutanagiIleUyumluKazananlar
|
||||||
|
"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="İlanda ikramiyeler son teslim süresi"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.ilanSonBasvuruTeslimSuresi"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
|
||||||
|
<form-input
|
||||||
|
modelKey="taahhutEdilenIkramiyeAdedi"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.taahhutEdilenIkramiyeAdedi"
|
||||||
|
label="7. Taahhüt Edilen İkramiye"
|
||||||
|
placeholder="Taahhüt Edilen İkramiye"
|
||||||
|
@keyup="OnKeyup" />
|
||||||
|
|
||||||
|
<div class="form-part-title">
|
||||||
|
<h4>8. Teslim Edilen İkramiye</h4>
|
||||||
|
</div>
|
||||||
|
<form-input
|
||||||
|
modelKey="teslimEdilenIkramiyeAdedi"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.teslimEdilenIkramiyeAdedi"
|
||||||
|
label="Teslim Edilen İkramiye"
|
||||||
|
placeholder="Teslim Edilen İkramiye"
|
||||||
|
@keyup="OnKeyup" />
|
||||||
|
<form-input
|
||||||
|
modelKey="asilIkramiyeSayisi"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.asilIkramiyeSayisi"
|
||||||
|
label="Teslim Edilen Asıl İkramiye"
|
||||||
|
placeholder="Teslim Edilen Asıl İkramiye"
|
||||||
|
@keyup="OnKeyup" />
|
||||||
|
<form-input
|
||||||
|
modelKey="yedekIkramiyeSayisi"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.yedekIkramiyeSayisi"
|
||||||
|
label="Teslim Edilen Yedek İkramiye"
|
||||||
|
placeholder="Teslim Edilen Yedek İkramiye"
|
||||||
|
@keyup="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Nüfus Cüzdanları"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.nufusCuzdani"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Kazanan numaralı noter onaylı ibraname"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.noterOnayliIbraname"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Teslim Belgesi"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.teslimBelgesi"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Fatura fotokopileri"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.faturaFotokopileri"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Tescile ait belgeler"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.tescileAitBelgeler"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<div class="form-part-title">
|
||||||
|
<h4>9. Süresi İçinde Alınmayan İkramiye</h4>
|
||||||
|
</div>
|
||||||
|
<form-input
|
||||||
|
modelKey="sureIcindesAlinmayanIkramiyeAdedi"
|
||||||
|
v-model="
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaData.sureIcindesAlinmayanIkramiyeAdedi
|
||||||
|
"
|
||||||
|
label="Süresi İçinde Alınmayan İkramiye"
|
||||||
|
placeholder="Süresi İçinde Alınmayan İkramiye"
|
||||||
|
@keyup="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Tebligat"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.tebligat"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Feragat"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.feragat"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Bağış"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.bagis"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
|
||||||
|
<div class="form-part-title">
|
||||||
|
<h4>10. Kupon (Aslı) ve Duyuru Örneği</h4>
|
||||||
|
</div>
|
||||||
|
<form-checkbox
|
||||||
|
label="Kupon Aslı"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.kuponAsli"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Duyuru Örneği"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.duyuruMateryali"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
|
||||||
|
<form-date
|
||||||
|
type="date"
|
||||||
|
modelKey="ikramiyelerinSonTeslimTarihi"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.ikramiyelerinSonTeslimTarihi"
|
||||||
|
label="11. İkramiyelerin Son Teslim Tarihi"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-date
|
||||||
|
type="date"
|
||||||
|
modelKey="teminatIadeTarihi"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.teminatIadeTarihi"
|
||||||
|
label="12. Teminat İade Tarihi"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
|
||||||
|
<div
|
||||||
|
class="form-item"
|
||||||
|
v-if="piyangoDosyaKapamaStore.formChanged && !piyangoDosyaKapamaStore.isNew">
|
||||||
|
<button
|
||||||
|
class="button-c button-save"
|
||||||
|
@click="piyangoDosyaKapamaService.SaveDosyaKapama()">
|
||||||
|
Kaydet
|
||||||
|
</button>
|
||||||
|
<button class="button-c button-cancel" @click="CancelSave">Vazgeç</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-part form-title" v-if="piyangoDosyaKapamaStore.isNew">
|
||||||
|
<div class="form-title-buttons">
|
||||||
|
<div
|
||||||
|
class="button-c button-save"
|
||||||
|
@click="piyangoDosyaKapamaService.SaveDosyaKapama()">
|
||||||
|
Kaydet
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { onBeforeMount } from 'vue'
|
||||||
|
|
||||||
|
import { usePiyangoDosyaKapamaStore } from '../../stores/piyangoDosyaKapamaStore'
|
||||||
|
const piyangoDosyaKapamaStore = usePiyangoDosyaKapamaStore()
|
||||||
|
import { usePiyangoDosyaKapamaService } from '../../service/piyangoDosyaKapamaService'
|
||||||
|
const piyangoDosyaKapamaService = usePiyangoDosyaKapamaService()
|
||||||
|
|
||||||
|
const OnKeyup = () => {
|
||||||
|
piyangoDosyaKapamaStore.formChanged = true
|
||||||
|
}
|
||||||
|
|
||||||
|
const CancelSave = () => {
|
||||||
|
piyangoDosyaKapamaStore.RestoreFormData()
|
||||||
|
piyangoDosyaKapamaStore.formChanged = false
|
||||||
|
}
|
||||||
|
|
||||||
|
onBeforeMount(async () => {
|
||||||
|
await piyangoDosyaKapamaService.GetDosyaKapama()
|
||||||
|
|
||||||
|
if (piyangoDosyaKapamaStore.isNew) {
|
||||||
|
piyangoDosyaKapamaStore.ResetFormData()
|
||||||
|
piyangoDosyaKapamaStore.loaded = true
|
||||||
|
}
|
||||||
|
})
|
||||||
|
</script>
|
||||||
@ -0,0 +1,78 @@
|
|||||||
|
<template>
|
||||||
|
<div class="form-part section-list" v-if="piyangoDosyaKapamaStore.loaded">
|
||||||
|
<list-table-content
|
||||||
|
title="Dosya Kapama İkramiye Listesi"
|
||||||
|
icon="draws"
|
||||||
|
:tableHeader="ikramiyeTableHeader"
|
||||||
|
:rowAction="EditIkramiye"
|
||||||
|
listText="İkramiye"
|
||||||
|
:addAction="NewIkramiye"
|
||||||
|
:apiList="'DosyaKapama/Ikramiye/' + piyangoStore.selectedLottery"
|
||||||
|
apiText="Dosya Kapama İkramiye Listesi"
|
||||||
|
v-model:refresh="piyangoDosyaKapamaStore.dosyaKapamaIkramiyeListesiRefresh"
|
||||||
|
rowNumber/>
|
||||||
|
</div>
|
||||||
|
<panel-wrapper
|
||||||
|
wide
|
||||||
|
v-if="piyangoDosyaKapamaStore.dosyaKapamaIkramiyePanel"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaIkramiyePanel"
|
||||||
|
:panel-title="piyangoDosyaKapamaStore.isDosyaKapamaIkramiyeUpdate ? 'İkramiye Düzenle' : 'İkramiye Ekle'">
|
||||||
|
<template #panelContent>
|
||||||
|
<panel-piyango-dosya-kapama-ikramiye />
|
||||||
|
</template>
|
||||||
|
<template #footerButton>
|
||||||
|
<div class="button-c button-save" @click="piyangoDosyaKapamaService.SaveDosyaKapamaIkramiye">
|
||||||
|
{{ piyangoDosyaKapamaStore.isDosyaKapamaIkramiyeUpdate ? 'Kaydet' : 'Ekle' }}
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</panel-wrapper>
|
||||||
|
</template>
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { ref } from 'vue'
|
||||||
|
import { usePiyangoStore } from '../../stores/piyangoStore'
|
||||||
|
const piyangoStore = usePiyangoStore()
|
||||||
|
|
||||||
|
import { usePiyangoDosyaKapamaStore } from '../../stores/piyangoDosyaKapamaStore'
|
||||||
|
const piyangoDosyaKapamaStore = usePiyangoDosyaKapamaStore()
|
||||||
|
import { usePiyangoDosyaKapamaService } from '../../service/piyangoDosyaKapamaService'
|
||||||
|
const piyangoDosyaKapamaService = usePiyangoDosyaKapamaService()
|
||||||
|
|
||||||
|
import PanelPiyangoDosyaKapamaIkramiye from '../panel/PanelPiyangoDosyaKapamaIkramiye.vue'
|
||||||
|
import PanelWrapper from '@/components/PanelWrapper.vue'
|
||||||
|
|
||||||
|
|
||||||
|
const ikramiyeTableHeader = ref<Record<string, any>[]>([
|
||||||
|
{
|
||||||
|
name: 'taahhutEdilenIkramiye',
|
||||||
|
title: 'Taahhüt Edilen İkramiye',
|
||||||
|
style: { width: '20%' }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'teslimEdilenIkramiye',
|
||||||
|
title: 'Teslim Edilen İkramiye',
|
||||||
|
style: { width: '20%' }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'alinmayanIkramiye',
|
||||||
|
title: 'Alınmayan İkramiye',
|
||||||
|
style: { width: '20%' }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'aciklama',
|
||||||
|
title: 'Açıklama'
|
||||||
|
}
|
||||||
|
])
|
||||||
|
|
||||||
|
|
||||||
|
const NewIkramiye = () => {
|
||||||
|
piyangoDosyaKapamaStore.ResetIkramiyeFormData()
|
||||||
|
piyangoDosyaKapamaStore.isDosyaKapamaIkramiyeUpdate = false
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyePanel = true
|
||||||
|
}
|
||||||
|
|
||||||
|
const EditIkramiye = (d: Record<string, any>) => {
|
||||||
|
Object.assign(piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData, d)
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyePanel = true
|
||||||
|
piyangoDosyaKapamaStore.isDosyaKapamaIkramiyeUpdate = true
|
||||||
|
}
|
||||||
|
</script>
|
||||||
@ -29,15 +29,9 @@
|
|||||||
</panel-wrapper>
|
</panel-wrapper>
|
||||||
</template>
|
</template>
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { ref, reactive, onBeforeMount, watch } from 'vue'
|
import { ref, onBeforeMount, watch } from 'vue'
|
||||||
import { useDateStore } from '@/stores/dateStore'
|
|
||||||
const dateStore = useDateStore()
|
|
||||||
import { useGlobalStore } from '@/stores/globalStore'
|
import { useGlobalStore } from '@/stores/globalStore'
|
||||||
const globalStore = useGlobalStore()
|
const globalStore = useGlobalStore()
|
||||||
import { useDataStore } from '@/stores/dataStore'
|
|
||||||
const dataStore = useDataStore()
|
|
||||||
import { useValidationStore } from '@/stores/validationStore'
|
|
||||||
const validationStore = useValidationStore()
|
|
||||||
import { useUsersStore } from '@/stores/usersStore'
|
import { useUsersStore } from '@/stores/usersStore'
|
||||||
const usersStore = useUsersStore()
|
const usersStore = useUsersStore()
|
||||||
import { usePiyangoStore } from '../../stores/piyangoStore'
|
import { usePiyangoStore } from '../../stores/piyangoStore'
|
||||||
|
|||||||
@ -0,0 +1,41 @@
|
|||||||
|
<template>
|
||||||
|
<form-input
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.taahhutEdilenIkramiye"
|
||||||
|
label="Taahhüt Edilen İkramiye"
|
||||||
|
modelKey="taahhutEdilenIkramiye"
|
||||||
|
minlength="2"
|
||||||
|
required
|
||||||
|
:invalidText="
|
||||||
|
piyangoDosyaKapamaValidationStore.ikramiyeInvalidTexts.taahhutEdilenIkramiye
|
||||||
|
" />
|
||||||
|
<form-input
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.teslimEdilenIkramiye"
|
||||||
|
label="Teslim Edilen İkramiye"
|
||||||
|
modelKey="teslimEdilenIkramiye"
|
||||||
|
minlength="2"
|
||||||
|
required
|
||||||
|
:invalidText="
|
||||||
|
piyangoDosyaKapamaValidationStore.ikramiyeInvalidTexts.teslimEdilenIkramiye
|
||||||
|
" />
|
||||||
|
<form-input
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.alinmayanIkramiye"
|
||||||
|
label="Alınmayan İkramiye"
|
||||||
|
modelKey="alinmayanIkramiye"
|
||||||
|
minlength="2"
|
||||||
|
required
|
||||||
|
:invalidText="
|
||||||
|
piyangoDosyaKapamaValidationStore.ikramiyeInvalidTexts.alinmayanIkramiye
|
||||||
|
" />
|
||||||
|
<form-input
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.aciklama"
|
||||||
|
label="Açıklama"
|
||||||
|
modelKey="aciklama" />
|
||||||
|
</template>
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { useValidationStore } from '@/stores/validationStore'
|
||||||
|
const validationStore = useValidationStore()
|
||||||
|
import { usePiyangoDosyaKapamaStore } from '../../stores/piyangoDosyaKapamaStore'
|
||||||
|
const piyangoDosyaKapamaStore = usePiyangoDosyaKapamaStore()
|
||||||
|
import { usePiyangoDosyaKapamaValidationStore } from '../../validation/piyangoDosyaKapamaValidationStore'
|
||||||
|
const piyangoDosyaKapamaValidationStore = usePiyangoDosyaKapamaValidationStore()
|
||||||
|
</script>
|
||||||
80
src/module/cekilisler/service/piyangoDosyaKapamaService.ts
Normal file
80
src/module/cekilisler/service/piyangoDosyaKapamaService.ts
Normal file
@ -0,0 +1,80 @@
|
|||||||
|
import { defineStore } from 'pinia'
|
||||||
|
import { useDataStore } from '@/stores/dataStore'
|
||||||
|
import { usePiyangoStore } from '../stores/piyangoStore'
|
||||||
|
import { usePiyangoDosyaKapamaStore } from '../stores/piyangoDosyaKapamaStore'
|
||||||
|
import { usePiyangoDosyaKapamaValidationStore } from '../validation/piyangoDosyaKapamaValidationStore'
|
||||||
|
|
||||||
|
export const usePiyangoDosyaKapamaService = defineStore(
|
||||||
|
'piyangoDosyaKapamaService',
|
||||||
|
() => {
|
||||||
|
const dataStore = useDataStore()
|
||||||
|
const piyangoStore = usePiyangoStore()
|
||||||
|
const piyangoDosyaKapamaStore = usePiyangoDosyaKapamaStore()
|
||||||
|
const piyangoDosyaKapamaValidationStore = usePiyangoDosyaKapamaValidationStore()
|
||||||
|
|
||||||
|
const GetDosyaKapama = async () => {
|
||||||
|
let data: Record<string, any> | any = await dataStore.dataGet(
|
||||||
|
'TeminatIadeEvrakKontrol/' + piyangoStore.selectedLottery
|
||||||
|
)
|
||||||
|
|
||||||
|
if (data !== 'errorfalse' || data.data.id === undefined) {
|
||||||
|
Object.assign(piyangoDosyaKapamaStore.dosyaKapamaData, data.data)
|
||||||
|
Object.assign(piyangoDosyaKapamaStore.safeDosyaKapamaData, data.data)
|
||||||
|
piyangoDosyaKapamaStore.isNew = false
|
||||||
|
setTimeout(() => {
|
||||||
|
piyangoDosyaKapamaStore.loaded = true
|
||||||
|
}, 30)
|
||||||
|
} else {
|
||||||
|
piyangoDosyaKapamaStore.isNew = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const SaveDosyaKapama = async () => {
|
||||||
|
let dt: any
|
||||||
|
if (!piyangoDosyaKapamaStore.isUpdate) {
|
||||||
|
dt = await dataStore.dataPost('TeminatIadeEvrakKontrol', {
|
||||||
|
data: piyangoDosyaKapamaStore.dosyaKapamaData
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
dt = await dataStore.dataPut(
|
||||||
|
'TeminatIadeEvrakKontrol/' + piyangoDosyaKapamaStore.dosyaKapamaData.id,
|
||||||
|
{
|
||||||
|
data: piyangoDosyaKapamaStore.dosyaKapamaData
|
||||||
|
}
|
||||||
|
)
|
||||||
|
}
|
||||||
|
if (dt !== 'errorfalse') {
|
||||||
|
piyangoDosyaKapamaStore.isUpdate = false
|
||||||
|
await GetDosyaKapama()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const SaveDosyaKapamaIkramiye = async () => {
|
||||||
|
if (piyangoDosyaKapamaValidationStore.IkramiyeFormCheck()) {
|
||||||
|
let dt: any
|
||||||
|
if (!piyangoDosyaKapamaStore.isDosyaKapamaIkramiyeUpdate) {
|
||||||
|
dt = await dataStore.dataPost('TeminatIadeEvrakKontrol', {
|
||||||
|
data: piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
dt = await dataStore.dataPut(
|
||||||
|
'TeminatIadeEvrakKontrol/' +
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.id,
|
||||||
|
{
|
||||||
|
data: piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData
|
||||||
|
}
|
||||||
|
)
|
||||||
|
}
|
||||||
|
if (dt !== 'errorfalse') {
|
||||||
|
piyangoDosyaKapamaStore.isDosyaKapamaIkramiyeUpdate = false
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyePanel = false
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeListesiRefresh = true
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
piyangoDosyaKapamaValidationStore.isIkramiyeFormValid = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return { GetDosyaKapama, SaveDosyaKapama, SaveDosyaKapamaIkramiye }
|
||||||
|
}
|
||||||
|
)
|
||||||
97
src/module/cekilisler/stores/piyangoDosyaKapamaStore.ts
Normal file
97
src/module/cekilisler/stores/piyangoDosyaKapamaStore.ts
Normal file
@ -0,0 +1,97 @@
|
|||||||
|
import { defineStore } from 'pinia'
|
||||||
|
import { ref, reactive } from 'vue'
|
||||||
|
import { useGlobalStore } from '@/stores/globalStore'
|
||||||
|
|
||||||
|
export const usePiyangoDosyaKapamaStore = defineStore('piyangoDosyaKapamaStore', () => {
|
||||||
|
const globalStore = useGlobalStore()
|
||||||
|
|
||||||
|
const baseDosyaKapamaData = reactive<Record<string, any>>({
|
||||||
|
katilimSekli: '',
|
||||||
|
cD: false,
|
||||||
|
kutuMuhurlemeTutanagi: false,
|
||||||
|
kutuAcmaTutanagi: false,
|
||||||
|
cekilisTutanagi: false,
|
||||||
|
cekilisIzinAlinanTarihSaatAdres: false,
|
||||||
|
oncedenBelirlenenIkramiyeCekilis: false,
|
||||||
|
cekilisNumaraUzerindenCekilis: false,
|
||||||
|
dagitilmayanKuponTespiti: false,
|
||||||
|
cekilisSonucuIlan: false,
|
||||||
|
ilandaTarihGazete: false,
|
||||||
|
ilandaToplamKatilimci: false,
|
||||||
|
cekilisTutanagiIleUyumluKazananlar: false,
|
||||||
|
ilanSonBasvuruTeslimSuresi: false,
|
||||||
|
taahhutEdilenIkramiyeAdedi: null,
|
||||||
|
teslimEdilenIkramiyeAdedi: null,
|
||||||
|
asilIkramiyeSayisi: null,
|
||||||
|
yedekIkramiyeSayisi: null,
|
||||||
|
nufusCuzdani: false,
|
||||||
|
noterOnayliIbraname: false,
|
||||||
|
teslimBelgesi: false,
|
||||||
|
faturaFotokopileri: false,
|
||||||
|
tescileAitBelgeler: false,
|
||||||
|
sureIcindesAlinmayanIkramiyeAdedi: null,
|
||||||
|
tebligat: false,
|
||||||
|
feragat: false,
|
||||||
|
bagis: false,
|
||||||
|
kuponAsli: false,
|
||||||
|
duyuruMateryali: false,
|
||||||
|
ikramiyelerinSonTeslimTarihi: '',
|
||||||
|
teminatIadeTarihi: ''
|
||||||
|
})
|
||||||
|
const baseDosyaKapamaIkramiyeData = reactive<Record<string, any>>({
|
||||||
|
taahhutEdilenIkramiye: '',
|
||||||
|
teslimEdilenIkramiye: '',
|
||||||
|
alinmayanIkramiye: '',
|
||||||
|
aciklama: ''
|
||||||
|
})
|
||||||
|
const dosyaKapamaData = reactive<Record<string, any>>({})
|
||||||
|
const safeDosyaKapamaData = reactive<Record<string, any>>({})
|
||||||
|
const isNew = ref<boolean>(false)
|
||||||
|
const isUpdate = ref<boolean>(false)
|
||||||
|
const formChanged = ref<boolean>(false)
|
||||||
|
const loaded = ref<boolean>(false)
|
||||||
|
|
||||||
|
const dosyaKapamaIkramiyeData = reactive<Record<string, any>>({})
|
||||||
|
const safeDosyaKapamaIkramiyeData = reactive<Record<string, any>>({})
|
||||||
|
const isDosyaKapamaIkramiyeUpdate = ref<boolean>(false)
|
||||||
|
const isDosyaKapamaIkramiyeFormChanged = ref<boolean>(false)
|
||||||
|
const isDosyaKapamaIkramiyeLoaded = ref<boolean>(false)
|
||||||
|
const dosyaKapamaIkramiyeListesiRefresh = ref<boolean>(false)
|
||||||
|
const dosyaKapamaIkramiyePanel = ref<boolean>(false)
|
||||||
|
|
||||||
|
const ResetFormData = () => {
|
||||||
|
globalStore.ResetObject(dosyaKapamaData, baseDosyaKapamaData)
|
||||||
|
Object.assign(dosyaKapamaData, baseDosyaKapamaData)
|
||||||
|
}
|
||||||
|
|
||||||
|
const RestoreFormData = () => {
|
||||||
|
globalStore.ResetObject(dosyaKapamaData, baseDosyaKapamaData)
|
||||||
|
Object.assign(dosyaKapamaData, safeDosyaKapamaData)
|
||||||
|
}
|
||||||
|
|
||||||
|
const ResetIkramiyeFormData = () => {
|
||||||
|
globalStore.ResetObject(dosyaKapamaIkramiyeData, baseDosyaKapamaIkramiyeData)
|
||||||
|
Object.assign(dosyaKapamaIkramiyeData, baseDosyaKapamaIkramiyeData)
|
||||||
|
}
|
||||||
|
|
||||||
|
return {
|
||||||
|
baseDosyaKapamaData,
|
||||||
|
dosyaKapamaData,
|
||||||
|
safeDosyaKapamaData,
|
||||||
|
isNew,
|
||||||
|
isUpdate,
|
||||||
|
formChanged,
|
||||||
|
loaded,
|
||||||
|
baseDosyaKapamaIkramiyeData,
|
||||||
|
dosyaKapamaIkramiyeData,
|
||||||
|
safeDosyaKapamaIkramiyeData,
|
||||||
|
isDosyaKapamaIkramiyeUpdate,
|
||||||
|
isDosyaKapamaIkramiyeFormChanged,
|
||||||
|
isDosyaKapamaIkramiyeLoaded,
|
||||||
|
dosyaKapamaIkramiyeListesiRefresh,
|
||||||
|
dosyaKapamaIkramiyePanel,
|
||||||
|
ResetFormData,
|
||||||
|
RestoreFormData,
|
||||||
|
ResetIkramiyeFormData
|
||||||
|
}
|
||||||
|
})
|
||||||
@ -0,0 +1,66 @@
|
|||||||
|
import { defineStore } from 'pinia'
|
||||||
|
import { ref, reactive } from 'vue'
|
||||||
|
import { useValidationStore } from '@/stores/validationStore'
|
||||||
|
import { usePiyangoDosyaKapamaStore } from '../stores/piyangoDosyaKapamaStore'
|
||||||
|
|
||||||
|
export const usePiyangoDosyaKapamaValidationStore = defineStore(
|
||||||
|
'piyangoDosyaKapamaValidationStore',
|
||||||
|
() => {
|
||||||
|
const piyangoDosyaKapamaStore = usePiyangoDosyaKapamaStore()
|
||||||
|
const validationStore = useValidationStore()
|
||||||
|
|
||||||
|
const isFormValid = ref<boolean>(true)
|
||||||
|
const invalidTexts = reactive<Record<string, any>>({})
|
||||||
|
const isIkramiyeFormValid = ref<boolean>(true)
|
||||||
|
const ikramiyeInvalidTexts = reactive<Record<string, any>>({})
|
||||||
|
|
||||||
|
const FormCheck = (): boolean => {
|
||||||
|
Object.assign(invalidTexts, {})
|
||||||
|
|
||||||
|
validationStore.IsFieldEmpty(
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaData,
|
||||||
|
invalidTexts,
|
||||||
|
'mecraAdi',
|
||||||
|
'Yayınlanacak mecranın adını yazınız.'
|
||||||
|
)
|
||||||
|
|
||||||
|
isFormValid.value = Object.keys(invalidTexts).length === 0
|
||||||
|
return isFormValid.value
|
||||||
|
}
|
||||||
|
|
||||||
|
const IkramiyeFormCheck = (): boolean => {
|
||||||
|
Object.assign(ikramiyeInvalidTexts, {})
|
||||||
|
|
||||||
|
validationStore.IsFieldEmpty(
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData,
|
||||||
|
ikramiyeInvalidTexts,
|
||||||
|
'taahhutEdilenIkramiye',
|
||||||
|
'Lütfen taahhüt edilen ikramiyeyi giriniz.'
|
||||||
|
)
|
||||||
|
validationStore.IsFieldEmpty(
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData,
|
||||||
|
ikramiyeInvalidTexts,
|
||||||
|
'teslimEdilenIkramiye',
|
||||||
|
'Lütfen teslim edilen ikramiyeyi giriniz.'
|
||||||
|
)
|
||||||
|
validationStore.IsFieldEmpty(
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData,
|
||||||
|
ikramiyeInvalidTexts,
|
||||||
|
'alinmayanIkramiye',
|
||||||
|
'Lütfen alınmayan ikramiyeyi giriniz.'
|
||||||
|
)
|
||||||
|
|
||||||
|
isIkramiyeFormValid.value = Object.keys(ikramiyeInvalidTexts).length === 0
|
||||||
|
return isIkramiyeFormValid.value
|
||||||
|
}
|
||||||
|
|
||||||
|
return {
|
||||||
|
isFormValid,
|
||||||
|
invalidTexts,
|
||||||
|
isIkramiyeFormValid,
|
||||||
|
ikramiyeInvalidTexts,
|
||||||
|
FormCheck,
|
||||||
|
IkramiyeFormCheck
|
||||||
|
}
|
||||||
|
}
|
||||||
|
)
|
||||||
@ -16,7 +16,7 @@
|
|||||||
<template #talihliler><tab-piyango-talihli-listesi /></template>
|
<template #talihliler><tab-piyango-talihli-listesi /></template>
|
||||||
<template #itirazsikayet><tab-piyango-itiraz /></template>
|
<template #itirazsikayet><tab-piyango-itiraz /></template>
|
||||||
<template #piyangologlari><tab-piyango-loglari /></template>
|
<template #piyangologlari><tab-piyango-loglari /></template>
|
||||||
<template #yetkilendirme>
|
<template #yetkilendirme v-if="usersStore.isPanelUser">
|
||||||
<tab-piyango-yetkilendirme />
|
<tab-piyango-yetkilendirme />
|
||||||
</template>
|
</template>
|
||||||
<template #onaydurumu>
|
<template #onaydurumu>
|
||||||
@ -26,6 +26,9 @@
|
|||||||
<template #teminatlistesi>
|
<template #teminatlistesi>
|
||||||
<tab-piyango-teminat-durumu />
|
<tab-piyango-teminat-durumu />
|
||||||
</template>
|
</template>
|
||||||
|
<template #dosyakapama v-if="usersStore.isPanelUser && piyangoStore.lotteryDrawState">
|
||||||
|
<tab-piyango-dosya-kapama />
|
||||||
|
</template>
|
||||||
</tabs>
|
</tabs>
|
||||||
</AdminLayout>
|
</AdminLayout>
|
||||||
</template>
|
</template>
|
||||||
@ -52,6 +55,7 @@
|
|||||||
import TabPiyangoBilgileri from '@/module/cekilisler/components/TabPiyangoBilgileri.vue'
|
import TabPiyangoBilgileri from '@/module/cekilisler/components/TabPiyangoBilgileri.vue'
|
||||||
import TabPiyangoBilgileriDisplay from '../components/TabPiyangoBilgileriDisplay.vue'
|
import TabPiyangoBilgileriDisplay from '../components/TabPiyangoBilgileriDisplay.vue'
|
||||||
import TabPiyangoItiraz from '@/module/cekilisler/components/TabPiyangoItiraz.vue'
|
import TabPiyangoItiraz from '@/module/cekilisler/components/TabPiyangoItiraz.vue'
|
||||||
|
import TabPiyangoDosyaKapama from '@/module/cekilisler/components/TabPiyangoDosyaKapama.vue'
|
||||||
|
|
||||||
const loaded = ref<boolean>(false)
|
const loaded = ref<boolean>(false)
|
||||||
const tabList = ref<Record<string, any>[]>([
|
const tabList = ref<Record<string, any>[]>([
|
||||||
@ -86,6 +90,10 @@
|
|||||||
if (piyangoStore.lotteryApprove !== 0 && piyangoStore.lotteryPurposeId !== 3) {
|
if (piyangoStore.lotteryApprove !== 0 && piyangoStore.lotteryPurposeId !== 3) {
|
||||||
tabList.value.push({ text: 'Teminat Listesi', id: 'teminatlistesi' })
|
tabList.value.push({ text: 'Teminat Listesi', id: 'teminatlistesi' })
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (usersStore.isPanelUser && piyangoStore.lotteryDrawState) {
|
||||||
|
tabList.value.push({ text: 'Dossya Kapama', id: 'dosyakapama' })
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
onBeforeMount(async () => {
|
onBeforeMount(async () => {
|
||||||
|
|||||||
@ -51,7 +51,7 @@
|
|||||||
</AdminLayout>
|
</AdminLayout>
|
||||||
</template>
|
</template>
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { ref, onMounted, computed } from 'vue'
|
import { ref, computed } from 'vue'
|
||||||
import AdminLayout from '@/layouts/AdminLayout.vue'
|
import AdminLayout from '@/layouts/AdminLayout.vue'
|
||||||
import { Breadcrumb } from '@/components/global'
|
import { Breadcrumb } from '@/components/global'
|
||||||
import router from '@/router'
|
import router from '@/router'
|
||||||
|
|||||||
Reference in New Issue
Block a user