From fdc23722887a6be6e9c3f5ff3251aff7da5cde11 Mon Sep 17 00:00:00 2001 From: "M. Bestami" Date: Fri, 5 Sep 2025 17:20:29 +0300 Subject: [PATCH] =?UTF-8?q?-=20Dosya=20Kapama=20=C4=B0kramiye=20Listesi=20?= =?UTF-8?q?komponentleri=20eklendi=20-=20Formlar=20i=C3=A7in=20service,=20?= =?UTF-8?q?store,=20validasyon=20fonksiyonlar=C4=B1/de=C4=9Fi=C5=9Fkenleri?= =?UTF-8?q?=20eklendi?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/TabPiyangoDosyaKapama.vue | 6 +- .../FormPiyangoDosyaKapamaIkramiyeListesi.vue | 78 +++++++++++++++++++ .../form/FormPiyangoIkramiyeListesi.vue | 8 +- .../panel/PanelPiyangoDosyaKapamaIkramiye.vue | 41 ++++++++++ .../service/piyangoDosyaKapamaService.ts | 31 +++++++- .../stores/piyangoDosyaKapamaStore.ts | 29 ++++++- .../piyangoDosyaKapamaValidationStore.ts | 35 ++++++++- 7 files changed, 213 insertions(+), 15 deletions(-) create mode 100644 src/module/cekilisler/components/form/FormPiyangoDosyaKapamaIkramiyeListesi.vue create mode 100644 src/module/cekilisler/components/panel/PanelPiyangoDosyaKapamaIkramiye.vue diff --git a/src/module/cekilisler/components/TabPiyangoDosyaKapama.vue b/src/module/cekilisler/components/TabPiyangoDosyaKapama.vue index 81fddf0..8a3d9ac 100644 --- a/src/module/cekilisler/components/TabPiyangoDosyaKapama.vue +++ b/src/module/cekilisler/components/TabPiyangoDosyaKapama.vue @@ -1,10 +1,14 @@ diff --git a/src/module/cekilisler/components/form/FormPiyangoDosyaKapamaIkramiyeListesi.vue b/src/module/cekilisler/components/form/FormPiyangoDosyaKapamaIkramiyeListesi.vue new file mode 100644 index 0000000..317be9a --- /dev/null +++ b/src/module/cekilisler/components/form/FormPiyangoDosyaKapamaIkramiyeListesi.vue @@ -0,0 +1,78 @@ + + diff --git a/src/module/cekilisler/components/form/FormPiyangoIkramiyeListesi.vue b/src/module/cekilisler/components/form/FormPiyangoIkramiyeListesi.vue index fec3c4a..f01183d 100644 --- a/src/module/cekilisler/components/form/FormPiyangoIkramiyeListesi.vue +++ b/src/module/cekilisler/components/form/FormPiyangoIkramiyeListesi.vue @@ -29,15 +29,9 @@ diff --git a/src/module/cekilisler/service/piyangoDosyaKapamaService.ts b/src/module/cekilisler/service/piyangoDosyaKapamaService.ts index a7bf627..499df81 100644 --- a/src/module/cekilisler/service/piyangoDosyaKapamaService.ts +++ b/src/module/cekilisler/service/piyangoDosyaKapamaService.ts @@ -31,9 +31,6 @@ export const usePiyangoDosyaKapamaService = defineStore( const SaveDosyaKapama = async () => { let dt: any - dataStore.panelData.yayinlanacagiTarih = new Date( - dataStore.panelData.yayinlanacagiTarih - ) if (!piyangoDosyaKapamaStore.isUpdate) { dt = await dataStore.dataPost('TeminatIadeEvrakKontrol', { data: piyangoDosyaKapamaStore.dosyaKapamaData @@ -52,6 +49,32 @@ export const usePiyangoDosyaKapamaService = defineStore( } } - return { GetDosyaKapama, SaveDosyaKapama } + 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 } } ) diff --git a/src/module/cekilisler/stores/piyangoDosyaKapamaStore.ts b/src/module/cekilisler/stores/piyangoDosyaKapamaStore.ts index 0462f0f..d2e5b8b 100644 --- a/src/module/cekilisler/stores/piyangoDosyaKapamaStore.ts +++ b/src/module/cekilisler/stores/piyangoDosyaKapamaStore.ts @@ -38,6 +38,12 @@ export const usePiyangoDosyaKapamaStore = defineStore('piyangoDosyaKapamaStore', ikramiyelerinSonTeslimTarihi: '', teminatIadeTarihi: '' }) + const baseDosyaKapamaIkramiyeData = reactive>({ + taahhutEdilenIkramiye: '', + teslimEdilenIkramiye: '', + alinmayanIkramiye: '', + aciklama: '' + }) const dosyaKapamaData = reactive>({}) const safeDosyaKapamaData = reactive>({}) const isNew = ref(false) @@ -45,6 +51,13 @@ export const usePiyangoDosyaKapamaStore = defineStore('piyangoDosyaKapamaStore', const formChanged = ref(false) const loaded = ref(false) + const dosyaKapamaIkramiyeData = reactive>({}) + const safeDosyaKapamaIkramiyeData = reactive>({}) + const isDosyaKapamaIkramiyeUpdate = ref(false) + const isDosyaKapamaIkramiyeFormChanged = ref(false) + const isDosyaKapamaIkramiyeLoaded = ref(false) + const dosyaKapamaIkramiyeListesiRefresh = ref(false) + const dosyaKapamaIkramiyePanel = ref(false) const ResetFormData = () => { globalStore.ResetObject(dosyaKapamaData, baseDosyaKapamaData) @@ -56,6 +69,11 @@ export const usePiyangoDosyaKapamaStore = defineStore('piyangoDosyaKapamaStore', Object.assign(dosyaKapamaData, safeDosyaKapamaData) } + const ResetIkramiyeFormData = () => { + globalStore.ResetObject(dosyaKapamaIkramiyeData, baseDosyaKapamaIkramiyeData) + Object.assign(dosyaKapamaIkramiyeData, baseDosyaKapamaIkramiyeData) + } + return { baseDosyaKapamaData, dosyaKapamaData, @@ -64,7 +82,16 @@ export const usePiyangoDosyaKapamaStore = defineStore('piyangoDosyaKapamaStore', isUpdate, formChanged, loaded, + baseDosyaKapamaIkramiyeData, + dosyaKapamaIkramiyeData, + safeDosyaKapamaIkramiyeData, + isDosyaKapamaIkramiyeUpdate, + isDosyaKapamaIkramiyeFormChanged, + isDosyaKapamaIkramiyeLoaded, + dosyaKapamaIkramiyeListesiRefresh, + dosyaKapamaIkramiyePanel, ResetFormData, - RestoreFormData + RestoreFormData, + ResetIkramiyeFormData } }) diff --git a/src/module/cekilisler/validation/piyangoDosyaKapamaValidationStore.ts b/src/module/cekilisler/validation/piyangoDosyaKapamaValidationStore.ts index aa45908..7ad1f69 100644 --- a/src/module/cekilisler/validation/piyangoDosyaKapamaValidationStore.ts +++ b/src/module/cekilisler/validation/piyangoDosyaKapamaValidationStore.ts @@ -8,9 +8,11 @@ export const usePiyangoDosyaKapamaValidationStore = defineStore( () => { const piyangoDosyaKapamaStore = usePiyangoDosyaKapamaStore() const validationStore = useValidationStore() - + const isFormValid = ref(true) const invalidTexts = reactive>({}) + const isIkramiyeFormValid = ref(true) + const ikramiyeInvalidTexts = reactive>({}) const FormCheck = (): boolean => { Object.assign(invalidTexts, {}) @@ -26,10 +28,39 @@ export const usePiyangoDosyaKapamaValidationStore = defineStore( 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, - FormCheck + isIkramiyeFormValid, + ikramiyeInvalidTexts, + FormCheck, + IkramiyeFormCheck } } )