6 Commits

Author SHA1 Message Date
f8a3940643 Enhance PiyangoListe and MuhasebePiyangoListesi components by adding "Oluşturma Tarihi", "Sevk Durumu", and "Muhasebeleştirme Durumu" columns. Update date formatting and conditional rendering for improved data presentation. Remove redundant code for special columns to streamline component structure. 2025-12-18 16:20:08 +03:00
078a5a020a 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. 2025-12-18 15:01:55 +03:00
edb1d23d71 Implement custom scrollbar for DataTable component. Refactor structure to include a scrollable wrapper and synchronize scroll positions between the table and the custom scrollbar. Update styles for improved visibility and functionality of the scrollbar. 2025-12-18 12:36:51 +03:00
bf9c2b25f9 Add conditional rendering for "Müdürlük" and "Çekiliş Görevlisi" fields in PiyangoOnay components. Update validation logic to require these fields based on "onayDurumuIslemTipiId". Enhance service layer to handle new fields and ensure proper data submission. 2025-12-17 16:04:20 +03:00
4f29c18dab Enhance date formatting in PiyangoListe and MuhasebePiyangoListesi components. Update date handling to include specific patterns and split options for improved readability. Add new columns for "Oluşturma Tarihi" and "Sevk Durumu" in MuhasebePiyangoListesi, while removing redundant code for special columns. 2025-12-17 15:38:07 +03:00
8cfda2449e Refactor row action handling in FormPiyangoOnayDurum component. Replace EditOnay with adminRowAction and update rowActions to adminRowActions based on user role, enhancing access control and functionality. 2025-12-12 14:36:26 +03:00
10 changed files with 406 additions and 123 deletions

View File

@ -164,3 +164,4 @@ FROM Cekilisler c LEFT JOIN
paraBirimi.ParaBirimiSembol, ts .TeminantDate, ts .TeminantNo, ts .BankName, ts .Amount, ts .RefundDate, ts .RefundCount, odlast.Mudurluk, odlast.CekilisGorevlisi; paraBirimi.ParaBirimiSembol, ts .TeminantDate, ts .TeminantNo, ts .BankName, ts .Amount, ts .RefundDate, ts .RefundCount, odlast.Mudurluk, odlast.CekilisGorevlisi;

View File

@ -1246,6 +1246,44 @@ section {
padding: 10px; padding: 10px;
} }
.list-wrapper-container {
width: 100%;
position: relative;
}
.list-wrapper-scrollbar-top {
width: 100%;
overflow-x: auto;
overflow-y: hidden;
height: 17px;
margin-bottom: 0;
display: none;
position: relative;
z-index: 10;
}
.list-wrapper-scrollbar-top .scrollbar-content {
height: 1px;
width: 0;
}
.list-wrapper-scrollbar-top::-webkit-scrollbar {
height: 17px;
}
.list-wrapper-scrollbar-top::-webkit-scrollbar-track {
background: transparent;
}
.list-wrapper-scrollbar-top::-webkit-scrollbar-thumb {
background: rgba(0, 0, 0, 0.2);
border-radius: 10px;
}
.list-wrapper-scrollbar-top::-webkit-scrollbar-thumb:hover {
background: rgba(0, 0, 0, 0.3);
}
.list-wrapper { .list-wrapper {
width: 100%; width: 100%;
position: relative; position: relative;
@ -2374,6 +2412,14 @@ section {
width: 100% !important; width: 100% !important;
} }
.list-wrapper-container {
overflow: visible;
}
.list-wrapper-scrollbar-top {
display: none !important;
}
.list-wrapper { .list-wrapper {
overflow: visible; overflow: visible;
overflow-x: visible; overflow-x: visible;

View File

@ -1,6 +1,10 @@
<template> <template>
<div class="list-wrapper"> <div class="list-wrapper-container">
<table class="table-border table-colored table-list"> <div class="list-wrapper-scrollbar-top" ref="scrollbarTopRef">
<div class="scrollbar-content"></div>
</div>
<div class="list-wrapper" ref="listWrapperRef" @scroll="onScroll">
<table class="table-border table-colored table-list">
<thead> <thead>
<tr> <tr>
<th class="table-head-row-number" v-if="rowNumber"> <th class="table-head-row-number" v-if="rowNumber">
@ -135,6 +139,7 @@
</template> </template>
</tbody> </tbody>
</table> </table>
</div>
</div> </div>
<data-table-pagination <data-table-pagination
v-if="pagination !== undefined && showPagination && !isPreview" v-if="pagination !== undefined && showPagination && !isPreview"
@ -142,7 +147,7 @@
:isUseRoute="isUseRoute" /> :isUseRoute="isUseRoute" />
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import { ref, reactive, computed, watch } from 'vue' import { ref, reactive, computed, watch, onMounted, onUnmounted, nextTick } from 'vue'
import type { Ref } from 'vue' import type { Ref } from 'vue'
import { useGlobalStore } from '@/stores/globalStore' import { useGlobalStore } from '@/stores/globalStore'
import icourl from '@/assets/images/icons.svg' import icourl from '@/assets/images/icons.svg'
@ -172,7 +177,7 @@
} }
export interface Props { export interface Props {
tableHeader: ITableHead[] tableHeader: ITableHead[]
tableData: Record<string, any> tableData: Record<string, any>[]
rowAction?: Function | string rowAction?: Function | string
pagination?: IPagination pagination?: IPagination
sortData?: ISort sortData?: ISort
@ -285,6 +290,95 @@
}, },
{ deep: true } { deep: true }
) )
watch(
() => props.tableData,
() => {
// Tablo verisi değiştiğinde scrollbar'ı güncelle
setTimeout(() => {
syncScrollbars()
}, 100)
},
{ deep: true }
)
const listWrapperRef = ref<HTMLElement | null>(null)
const scrollbarTopRef = ref<HTMLElement | null>(null)
const onScroll = (e: Event) => {
const target = e.target as HTMLElement
if (scrollbarTopRef.value) {
scrollbarTopRef.value.scrollLeft = target.scrollLeft
}
}
const syncScrollbars = () => {
if (listWrapperRef.value && scrollbarTopRef.value) {
const table = listWrapperRef.value.querySelector('table')
if (table) {
const tableWidth = table.scrollWidth
const wrapperWidth = listWrapperRef.value.clientWidth
if (tableWidth > wrapperWidth) {
scrollbarTopRef.value.style.display = 'block'
scrollbarTopRef.value.scrollLeft = listWrapperRef.value.scrollLeft
// Scrollbar wrapper'ın içeriğinin genişliğini tablo genişliğine eşitle
const scrollbarContent = scrollbarTopRef.value.querySelector('.scrollbar-content') as HTMLElement | null
if (scrollbarContent) {
scrollbarContent.style.width = tableWidth + 'px'
scrollbarContent.style.height = '1px'
}
} else {
scrollbarTopRef.value.style.display = 'none'
}
}
}
}
const onTopScroll = (e: Event) => {
const target = e.target as HTMLElement
if (listWrapperRef.value) {
listWrapperRef.value.scrollLeft = target.scrollLeft
}
}
onMounted(async () => {
await nextTick()
if (scrollbarTopRef.value) {
scrollbarTopRef.value.addEventListener('scroll', onTopScroll)
}
// İlk scrollbar senkronizasyonu
setTimeout(() => {
syncScrollbars()
}, 100)
const resizeObserver = new ResizeObserver(() => {
syncScrollbars()
})
if (listWrapperRef.value) {
resizeObserver.observe(listWrapperRef.value)
}
const tableObserver = new MutationObserver(() => {
syncScrollbars()
})
if (listWrapperRef.value) {
const table = listWrapperRef.value.querySelector('table')
if (table) {
tableObserver.observe(table, { childList: true, subtree: true, attributes: true })
}
}
})
onUnmounted(() => {
if (scrollbarTopRef.value) {
scrollbarTopRef.value.removeEventListener('scroll', onTopScroll)
}
})
</script> </script>
<style scoped> <style scoped>
.action-fixed { .action-fixed {

View File

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

View File

@ -2,14 +2,14 @@
<list-table-content <list-table-content
v-if="loaded" v-if="loaded"
:tableHeader="tableHeader" :tableHeader="tableHeader"
:rowAction="EditOnay" :rowAction="adminRowAction"
formTitle="Piyango Onay Durumları" formTitle="Piyango Onay Durumları"
listText="Kayıt" listText="Kayıt"
:apiList="'OnayDurumu/GetSonOnayDurumlariList/' + piyangoStore.selectedLottery" :apiList="'OnayDurumu/GetSonOnayDurumlariList/' + piyangoStore.selectedLottery"
apiText="Piyango Onay Log Listesi" apiText="Piyango Onay Log Listesi"
page="form" page="form"
:refresh="piyangoOnayStore.refreshList" :refresh="piyangoOnayStore.refreshList"
:rowActions="rowActions" /> :rowActions="adminRowActions" />
<panel-wrapper <panel-wrapper
v-if="piyangoOnayStore.onayFormPanel" v-if="piyangoOnayStore.onayFormPanel"
v-model="piyangoOnayStore.onayFormPanel" v-model="piyangoOnayStore.onayFormPanel"
@ -45,6 +45,8 @@
const dialogStore = useDialogStore() const dialogStore = useDialogStore()
import { useDataStore } from '@/stores/dataStore' import { useDataStore } from '@/stores/dataStore'
const dataStore = useDataStore() const dataStore = useDataStore()
import { useUsersStore } from '@/stores/usersStore'
const usersStore = useUsersStore()
const loaded = ref<boolean>(false) const loaded = ref<boolean>(false)
@ -214,6 +216,14 @@
} }
]) ])
const adminRowAction = computed(() => {
return usersStore.isPanelUser ? EditOnay : undefined
})
const adminRowActions = computed(() => {
return usersStore.isPanelUser ? rowActions.value : []
})
onBeforeMount(async () => { onBeforeMount(async () => {
loaded.value = true loaded.value = true
}) })

View File

@ -50,6 +50,26 @@
label="İzin Açıklaması" label="İzin Açıklaması"
@keyup="OnKeyup" /> @keyup="OnKeyup" />
</template> </template>
<form-select
v-if="showIzinVerildiFields || showMudurlukFields"
label="Müdürlük"
:listData="mudurlukListesi"
listText="name"
listVal="id"
v-model="piyangoOnayStore.piyangoPanelOnayForm.mudurlukId"
required
:invalidText="piyangoOnayValidationStore.invalidTextsPanel.mudurlukId"
@change="OnKeyup" />
<form-select
v-if="showIzinVerildiFields"
label="Çekiliş Görevlisi"
:listData="cekilisGorevlisiListesi"
listText="name"
listVal="id"
v-model="piyangoOnayStore.piyangoPanelOnayForm.cekilisGorevlisiId"
required
:invalidText="piyangoOnayValidationStore.invalidTextsPanel.cekilisGorevlisiId"
@change="OnKeyup" />
<form-select <form-select
v-if="showKapsamDisiSebebi" v-if="showKapsamDisiSebebi"
label="Kapsam Dışı Sebebi" label="Kapsam Dışı Sebebi"
@ -98,6 +118,14 @@
) )
}) })
const showIzinVerildiFields = computed<boolean>(() => {
return piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId === 4
})
const showMudurlukFields = computed<boolean>(() => {
return piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId === kapsamDisiId.value
})
const showKapsamDisiSebebi = computed<boolean>(() => { const showKapsamDisiSebebi = computed<boolean>(() => {
return piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId === kapsamDisiId.value return piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId === kapsamDisiId.value
}) })
@ -114,6 +142,24 @@
{ id: 'Diğer', name: 'Diğer' } { id: 'Diğer', name: 'Diğer' }
]) ])
const cekilisGorevlisiListesi = ref<Record<string, any>[]>([
{ id: 1, name: 'Antalya Şube Müdürlüğü' },
{ id: 2, name: 'Gaziantep Şube Müdürlüğü' },
{ id: 3, name: 'Aksaray Şube Müdürlüğü' },
{ id: 4, name: 'Kadıköy Şube Müdürlüğü' },
{ id: 5, name: 'Karşıyaka Şube Müdürlüğü' },
{ id: 6, name: 'Muğla Şube Müdürlüğü' },
{ id: 7, name: 'Trabzon Şube Müdürlüğü' },
{ id: 8, name: 'Noter' },
{ id: 9, name: 'Başkanlık Personeli' }
])
const mudurlukListesi = ref<Record<string, any>[]>([
{ id: 1, name: '1 No\'lu Özel Çekilişler İzin ve Takip Şubesi Müdürlüğü' },
{ id: 2, name: '2 No\'lu Özel Çekilişler İzin ve Takip Şubesi Müdürlüğü' },
{ id: 3, name: '3 No\'lu Özel Çekilişler İzin ve Takip Şubesi Müdürlüğü' }
])
const OnKeyup = () => { const OnKeyup = () => {
piyangoOnayValidationStore.formChanged = true piyangoOnayValidationStore.formChanged = true
} }

View File

@ -39,8 +39,13 @@ export const usePiyangoOnayService = defineStore('piyangoOnayService', () => {
if (piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId !== getKapsamDisiId()) { if (piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId !== getKapsamDisiId()) {
piyangoOnayStore.piyangoOnayForm.kapsamDisiSebebi = null piyangoOnayStore.piyangoOnayForm.kapsamDisiSebebi = null
} }
if (piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId !== 4) { if (
piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId !== 4 &&
piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId !== getKapsamDisiId()
) {
piyangoOnayStore.piyangoOnayForm.mudurlukId = null piyangoOnayStore.piyangoOnayForm.mudurlukId = null
}
if (piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId !== 4) {
piyangoOnayStore.piyangoOnayForm.cekilisGorevlisiId = null piyangoOnayStore.piyangoOnayForm.cekilisGorevlisiId = null
} }
dataForm.append( dataForm.append(
@ -109,6 +114,15 @@ export const usePiyangoOnayService = defineStore('piyangoOnayService', () => {
if (piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId !== getKapsamDisiId()) { if (piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId !== getKapsamDisiId()) {
piyangoOnayStore.piyangoPanelOnayForm.kapsamDisiSebebi = null piyangoOnayStore.piyangoPanelOnayForm.kapsamDisiSebebi = null
} }
if (
piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId !== 4 &&
piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId !== getKapsamDisiId()
) {
piyangoOnayStore.piyangoPanelOnayForm.mudurlukId = null
}
if (piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId !== 4) {
piyangoOnayStore.piyangoPanelOnayForm.cekilisGorevlisiId = null
}
dataForm.append('onayDurumuIslemTipiId', piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId) dataForm.append('onayDurumuIslemTipiId', piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId)
dataForm.append('id', piyangoOnayStore.piyangoPanelOnayForm.id) dataForm.append('id', piyangoOnayStore.piyangoPanelOnayForm.id)
dataForm.append('onayCekilisId', String(piyangoStore.selectedLottery)) dataForm.append('onayCekilisId', String(piyangoStore.selectedLottery))
@ -129,6 +143,18 @@ export const usePiyangoOnayService = defineStore('piyangoOnayService', () => {
? String(piyangoOnayStore.piyangoPanelOnayForm.kapsamDisiSebebi) ? String(piyangoOnayStore.piyangoPanelOnayForm.kapsamDisiSebebi)
: '' : ''
) )
dataForm.append(
'mudurluk',
piyangoOnayStore.piyangoPanelOnayForm.mudurlukId != null
? String(piyangoOnayStore.piyangoPanelOnayForm.mudurlukId)
: ''
)
dataForm.append(
'cekilisGorevlisi',
piyangoOnayStore.piyangoPanelOnayForm.cekilisGorevlisiId != null
? String(piyangoOnayStore.piyangoPanelOnayForm.cekilisGorevlisiId)
: ''
)
form = await dataStore.dataPut( form = await dataStore.dataPut(
'OnayDurumu/' + piyangoOnayStore.piyangoPanelOnayForm.id, 'OnayDurumu/' + piyangoOnayStore.piyangoPanelOnayForm.id,

View File

@ -51,13 +51,18 @@ export const usePiyangoOnayValidationStore = defineStore(
'İzin tarihi seçmelisiniz.' 'İzin tarihi seçmelisiniz.'
) )
} }
if (piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId === 4) { if (
piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId === 4 ||
piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId === kapsamDisiId.value
) {
validationStore.IsFieldEmpty( validationStore.IsFieldEmpty(
piyangoOnayStore.piyangoOnayForm, piyangoOnayStore.piyangoOnayForm,
invalidTexts, invalidTexts,
'mudurlukId', 'mudurlukId',
'Müdürlük seçmelisiniz.' 'Müdürlük seçmelisiniz.'
) )
}
if (piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId === 4) {
validationStore.IsFieldEmpty( validationStore.IsFieldEmpty(
piyangoOnayStore.piyangoOnayForm, piyangoOnayStore.piyangoOnayForm,
invalidTexts, invalidTexts,
@ -100,6 +105,25 @@ export const usePiyangoOnayValidationStore = defineStore(
'İzin tarihi seçmelisiniz.' 'İzin tarihi seçmelisiniz.'
) )
} }
if (
piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId === 4 ||
piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId === kapsamDisiId.value
) {
validationStore.IsFieldEmpty(
piyangoOnayStore.piyangoPanelOnayForm,
invalidTextsPanel,
'mudurlukId',
'Müdürlük seçmelisiniz.'
)
}
if (piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId === 4) {
validationStore.IsFieldEmpty(
piyangoOnayStore.piyangoPanelOnayForm,
invalidTextsPanel,
'cekilisGorevlisiId',
'Çekiliş görevlisi seçmelisiniz.'
)
}
if (piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId === kapsamDisiId.value) { if (piyangoOnayStore.piyangoPanelOnayForm.onayDurumuIslemTipiId === kapsamDisiId.value) {
validationStore.IsFieldEmpty( validationStore.IsFieldEmpty(
piyangoOnayStore.piyangoPanelOnayForm, piyangoOnayStore.piyangoPanelOnayForm,

View File

@ -78,7 +78,58 @@
style: { width: '10%' } style: { width: '10%' }
}) })
// 2. MÜDÜRLÜK // 2. OLUŞTURMA TARİHİ
header.push({
name: 'olusturmaTarihi',
title: 'Oluşturma Tarihi',
compute: (v: Record<string, any>): string => {
if (!v.olusturmaTarihi || v.olusturmaTarihi === null || v.olusturmaTarihi.includes('0001-')) return ''
return dateStore.dateFormat({ date: v.olusturmaTarihi, pattern: 'dd-mm-yy', splitDate: '/' })
},
sort: true,
filter: {
type: 'date',
between: true
}
})
// 3. SEVK DURUMU (Panel User için)
if (usersStore.isPanelUser) {
header.push({
name: 'atanmis',
title: 'Sevk Durumu',
computeHtml: (v: Record<string, any>): string => {
if (v.atanmis) {
return `<strong class="back-grad back-grad-sevk-ok">
${v.atananlar}
</strong>`
} else {
return `<span class="back-grad back-grad-sevk">
Sevk Edilmemiş</span>`
}
}
})
// 4. MUHASEBELEŞTİRME DURUMU (Panel User için)
header.push({
name: 'basvuruBedelNo',
title: 'Muhasebeleştirme Durumu',
computeHtml: (v: Record<string, any>): string => {
let durum = ''
if (v.basvuruBedelNo !== null) {
durum += `<strong">Başvuru Bedel No: </strong>
${v.basvuruBedelNo}<br>`
}
if (v.izinBedelNo !== null) {
durum += `<strong">İzin Bedel No: </strong>
${v.izinBedelNo}`
}
return durum
}
})
}
// 5. MÜDÜRLÜK
header.push({ header.push({
name: 'mudurluk', name: 'mudurluk',
title: 'Müdürlük', title: 'Müdürlük',
@ -90,7 +141,7 @@
} }
}) })
// 3. PİYANGO AMACI // 6. PİYANGO AMACI
header.push({ header.push({
name: 'piyangoamac', name: 'piyangoamac',
title: 'Piyango Amacı', title: 'Piyango Amacı',
@ -104,7 +155,7 @@
} }
}) })
// 4. DÜZENLEYEN (koşullu) // 7. DÜZENLEYEN (koşullu)
if (usersStore.isAraciFirma || usersStore.isPanelUser) { if (usersStore.isAraciFirma || usersStore.isPanelUser) {
header.push({ header.push({
name: 'duzenleyen', name: 'duzenleyen',
@ -115,10 +166,10 @@
}) })
} }
// 5. ARACI FİRMA // 8. ARACI FİRMA
header.push({ header.push({
name: 'araciFirma', name: 'araciFirma',
title: 'Araci Firma', title: 'Aracı Firma',
compute: (v: Record<string, any>): string => { compute: (v: Record<string, any>): string => {
return v.araciFirma || '' return v.araciFirma || ''
}, },
@ -152,7 +203,7 @@
title: 'İzin Tarihi', title: 'İzin Tarihi',
compute: (v: Record<string, any>): string => { compute: (v: Record<string, any>): string => {
if (!v.izinTarihi || v.izinTarihi === null) return '' if (!v.izinTarihi || v.izinTarihi === null) return ''
return dateStore.dateFormat({ date: v.izinTarihi }) return dateStore.dateFormat({ date: v.izinTarihi, pattern: 'dd-mm-yy', splitDate: '/' })
}, },
sort: true, sort: true,
filter: { filter: {
@ -181,7 +232,7 @@
title: 'Başlangıç Tarihi', title: 'Başlangıç Tarihi',
compute: (v: Record<string, any>): string => { compute: (v: Record<string, any>): string => {
if (!v.baslangicTarihi || v.baslangicTarihi.includes('0001-')) return '' if (!v.baslangicTarihi || v.baslangicTarihi.includes('0001-')) return ''
return dateStore.dateFormat({ date: v.baslangicTarihi }) return dateStore.dateFormat({ date: v.baslangicTarihi, pattern: 'dd-mm-yy', splitDate: '/' })
}, },
sort: true, sort: true,
filter: { filter: {
@ -196,7 +247,7 @@
title: 'Bitiş Tarihi', title: 'Bitiş Tarihi',
compute: (v: Record<string, any>): string => { compute: (v: Record<string, any>): string => {
if (!v.bitisTarihi || v.bitisTarihi.includes('0001-')) return '' if (!v.bitisTarihi || v.bitisTarihi.includes('0001-')) return ''
return dateStore.dateFormat({ date: v.bitisTarihi }) return dateStore.dateFormat({ date: v.bitisTarihi, pattern: 'dd-mm-yy', splitDate: '/' })
}, },
sort: true, sort: true,
filter: { filter: {
@ -212,7 +263,7 @@
compute: (v: Record<string, any>): string => { compute: (v: Record<string, any>): string => {
if (!v.cekilisTarihi || v.cekilisTarihi.includes('0001-')) return '' if (!v.cekilisTarihi || v.cekilisTarihi.includes('0001-')) return ''
if (v.piyangoAmacId === 3) return '' if (v.piyangoAmacId === 3) return ''
return dateStore.dateFormat({ date: v.cekilisTarihi }) return dateStore.dateFormat({ date: v.cekilisTarihi, pattern: 'dd-mm-yy', splitDate: '/' })
}, },
sort: true, sort: true,
filter: { filter: {
@ -239,7 +290,7 @@
title: 'Gazete İlan Tarihi', title: 'Gazete İlan Tarihi',
compute: (v: Record<string, any>): string => { compute: (v: Record<string, any>): string => {
if (!v.gazeteIlanTarihi || v.gazeteIlanTarihi === null) return '' if (!v.gazeteIlanTarihi || v.gazeteIlanTarihi === null) return ''
return dateStore.dateFormat({ date: v.gazeteIlanTarihi }) return dateStore.dateFormat({ date: v.gazeteIlanTarihi, pattern: 'dd-mm-yy', splitDate: '/' })
}, },
sort: true, sort: true,
filter: { filter: {
@ -285,7 +336,7 @@
title: 'Teminat Tarihi', title: 'Teminat Tarihi',
compute: (v: Record<string, any>): string => { compute: (v: Record<string, any>): string => {
if (!v.teminatTarihi || v.teminatTarihi === null) return '' if (!v.teminatTarihi || v.teminatTarihi === null) return ''
return dateStore.dateFormat({ date: v.teminatTarihi }) return dateStore.dateFormat({ date: v.teminatTarihi, pattern: 'dd-mm-yy', splitDate: '/' })
}, },
sort: true sort: true
}) })
@ -335,7 +386,7 @@
title: 'T. İade Tarihi', title: 'T. İade Tarihi',
compute: (v: Record<string, any>): string => { compute: (v: Record<string, any>): string => {
if (!v.teminatIadeTarihi || v.teminatIadeTarihi === null) return '' if (!v.teminatIadeTarihi || v.teminatIadeTarihi === null) return ''
return dateStore.dateFormat({ date: v.teminatIadeTarihi }) return dateStore.dateFormat({ date: v.teminatIadeTarihi, pattern: 'dd-mm-yy', splitDate: '/' })
}, },
sort: true sort: true
}) })
@ -360,41 +411,6 @@
} }
}) })
// Panel User için ek sütunlar
if (usersStore.isPanelUser) {
header.push({
name: 'atanmis',
title: 'Sevk Durumu',
computeHtml: (v: Record<string, any>): string => {
if (v.atanmis) {
return `<strong class="back-grad back-grad-sevk-ok">
${v.atananlar}
</strong>`
} else {
return `<span class="back-grad back-grad-sevk">
Sevk Edilmemiş</span>`
}
}
})
header.push({
name: 'basvuruBedelNo',
title: 'Muhasebeleştirme Durumu',
computeHtml: (v: Record<string, any>): string => {
let durum = ''
if (v.basvuruBedelNo !== null) {
durum += `<strong">Başvuru Bedel No: </strong>
${v.basvuruBedelNo}<br>`
}
if (v.izinBedelNo !== null) {
durum += `<strong">İzin Bedel No: </strong>
${v.izinBedelNo}`
}
return durum
}
})
}
return header return header
}) })

View File

@ -9,7 +9,7 @@
icon="draws" icon="draws"
title="Piyangolar" title="Piyangolar"
listText="Piyango" listText="Piyango"
:apiList="'Cekilis/GetCekilislerListAtanan/' + usersStore.userId" :apiList="'Cekilis/GetCekilislerListMuhasebe/'"
apiText="Piyango Listesi" apiText="Piyango Listesi"
isUseRoute /> isUseRoute />
</section> </section>
@ -60,7 +60,56 @@
style: { width: '10%' } style: { width: '10%' }
}) })
// 2. MÜDÜRLÜK // 2. OLUŞTURMA TARİHİ
header.push({
name: 'olusturmaTarihi',
title: 'Oluşturma Tarihi',
compute: (v: Record<string, any>): string => {
if (!v.olusturmaTarihi || v.olusturmaTarihi === null || v.olusturmaTarihi.includes('0001-')) return ''
return dateStore.dateFormat({ date: v.olusturmaTarihi, pattern: 'dd-mm-yy', splitDate: '/' })
},
sort: true,
filter: {
type: 'date',
between: true
}
})
// 3. SEVK DURUMU
header.push({
name: 'atanmis',
title: 'Sevk Durumu',
computeHtml: (v: Record<string, any>): string => {
if (v.atanmis) {
return `<strong class="back-grad back-grad-sevk-ok">
${v.atananlar}
</strong>`
} else {
return `<span class="back-grad back-grad-sevk">
Sevk Edilmemiş</span>`
}
}
})
// 4. MUHASEBELEŞTİRME DURUMU
header.push({
name: 'basvuruBedelNo',
title: 'Muhasebeleştirme Durumu',
computeHtml: (v: Record<string, any>): string => {
let durum = ''
if (v.basvuruBedelNo !== null) {
durum += `<strong">Başvuru Bedel No: </strong>
${v.basvuruBedelNo}<br>`
}
if (v.izinBedelNo !== null) {
durum += `<strong">İzin Bedel No: </strong>
${v.izinBedelNo}`
}
return durum
}
})
// 5. MÜDÜRLÜK
header.push({ header.push({
name: 'mudurluk', name: 'mudurluk',
title: 'Müdürlük', title: 'Müdürlük',
@ -69,7 +118,7 @@
} }
}) })
// 3. PİYANGO AMACI // 6. PİYANGO AMACI
header.push({ header.push({
name: 'piyangoamac', name: 'piyangoamac',
title: 'Piyango Amacı', title: 'Piyango Amacı',
@ -83,15 +132,15 @@
} }
}) })
// 4. DÜZENLEYEN (koşullu) // 7. DÜZENLEYEN (koşullu)
if (usersStore.isAraciFirma || usersStore.isPanelUser) { if (usersStore.isAraciFirma || usersStore.isPanelUser) {
header.push({ name: 'duzenleyen', title: 'Düzenleyen' }) header.push({ name: 'duzenleyen', title: 'Düzenleyen' })
} }
// 5. ARACI FİRMA // 8. ARACI FİRMA
header.push({ header.push({
name: 'araciFirma', name: 'araciFirma',
title: 'Araci Firma', title: 'Aracı Firma',
compute: (v: Record<string, any>): string => { compute: (v: Record<string, any>): string => {
return v.araciFirma || '' return v.araciFirma || ''
} }
@ -122,7 +171,7 @@
title: 'İzin Tarihi', title: 'İzin Tarihi',
compute: (v: Record<string, any>): string => { compute: (v: Record<string, any>): string => {
if (!v.izinTarihi || v.izinTarihi === null) return '' if (!v.izinTarihi || v.izinTarihi === null) return ''
return dateStore.dateFormat({ date: v.izinTarihi }) return dateStore.dateFormat({ date: v.izinTarihi, pattern: 'dd-mm-yy', splitDate: '/' })
}, },
sort: true, sort: true,
filter: { filter: {
@ -147,7 +196,7 @@
title: 'Başlangıç Tarihi', title: 'Başlangıç Tarihi',
compute: (v: Record<string, any>): string => { compute: (v: Record<string, any>): string => {
if (!v.baslangicTarihi || v.baslangicTarihi.includes('0001-')) return '' if (!v.baslangicTarihi || v.baslangicTarihi.includes('0001-')) return ''
return dateStore.dateFormat({ date: v.baslangicTarihi }) return dateStore.dateFormat({ date: v.baslangicTarihi, pattern: 'dd-mm-yy', splitDate: '/' })
}, },
sort: true, sort: true,
filter: { filter: {
@ -162,7 +211,7 @@
title: 'Bitiş Tarihi', title: 'Bitiş Tarihi',
compute: (v: Record<string, any>): string => { compute: (v: Record<string, any>): string => {
if (!v.bitisTarihi || v.bitisTarihi.includes('0001-')) return '' if (!v.bitisTarihi || v.bitisTarihi.includes('0001-')) return ''
return dateStore.dateFormat({ date: v.bitisTarihi }) return dateStore.dateFormat({ date: v.bitisTarihi, pattern: 'dd-mm-yy', splitDate: '/' })
}, },
sort: true, sort: true,
filter: { filter: {
@ -178,7 +227,7 @@
compute: (v: Record<string, any>): string => { compute: (v: Record<string, any>): string => {
if (!v.cekilisTarihi || v.cekilisTarihi.includes('0001-')) return '' if (!v.cekilisTarihi || v.cekilisTarihi.includes('0001-')) return ''
if (v.piyangoAmacId === 3) return '' if (v.piyangoAmacId === 3) return ''
return dateStore.dateFormat({ date: v.cekilisTarihi }) return dateStore.dateFormat({ date: v.cekilisTarihi, pattern: 'dd-mm-yy', splitDate: '/' })
}, },
sort: true, sort: true,
filter: { filter: {
@ -187,6 +236,7 @@
} }
}) })
// 12. ÇEKİLİŞ GÖREVLİSİ // 12. ÇEKİLİŞ GÖREVLİSİ
header.push({ header.push({
name: 'cekilisGorevlisi', name: 'cekilisGorevlisi',
@ -202,7 +252,7 @@
title: 'Gazete İlan Tarihi', title: 'Gazete İlan Tarihi',
compute: (v: Record<string, any>): string => { compute: (v: Record<string, any>): string => {
if (!v.gazeteIlanTarihi || v.gazeteIlanTarihi === null) return '' if (!v.gazeteIlanTarihi || v.gazeteIlanTarihi === null) return ''
return dateStore.dateFormat({ date: v.gazeteIlanTarihi }) return dateStore.dateFormat({ date: v.gazeteIlanTarihi, pattern: 'dd-mm-yy', splitDate: '/' })
}, },
sort: true, sort: true,
filter: { filter: {
@ -248,7 +298,7 @@
title: 'Teminat Tarihi', title: 'Teminat Tarihi',
compute: (v: Record<string, any>): string => { compute: (v: Record<string, any>): string => {
if (!v.teminatTarihi || v.teminatTarihi === null) return '' if (!v.teminatTarihi || v.teminatTarihi === null) return ''
return dateStore.dateFormat({ date: v.teminatTarihi }) return dateStore.dateFormat({ date: v.teminatTarihi, pattern: 'dd-mm-yy', splitDate: '/' })
}, },
sort: true sort: true
}) })
@ -298,7 +348,7 @@
title: 'T. İade Tarihi', title: 'T. İade Tarihi',
compute: (v: Record<string, any>): string => { compute: (v: Record<string, any>): string => {
if (!v.teminatIadeTarihi || v.teminatIadeTarihi === null) return '' if (!v.teminatIadeTarihi || v.teminatIadeTarihi === null) return ''
return dateStore.dateFormat({ date: v.teminatIadeTarihi }) return dateStore.dateFormat({ date: v.teminatIadeTarihi, pattern: 'dd-mm-yy', splitDate: '/' })
}, },
sort: true sort: true
}) })
@ -323,38 +373,6 @@
} }
}) })
// Muhasebe özel sütunlar
header.push({
name: 'atanmis',
title: 'Sevk Durumu',
computeHtml: (v: Record<string, any>): string => {
if (v.atanmis) {
return `<strong class="back-grad back-grad-sevk-ok">
${v.atananlar}
</strong>`
} else {
return `<span class="back-grad back-grad-sevk">
Sevk Edilmemiş</span>`
}
}
})
header.push({
name: 'basvuruBedelNo',
title: 'Muhasebeleştirme Durumu',
computeHtml: (v: Record<string, any>): string => {
let durum = ''
if (v.basvuruBedelNo !== null) {
durum += `<strong">Başvuru Bedel No: </strong>
${v.basvuruBedelNo}<br>`
}
if (v.izinBedelNo !== null) {
durum += `<strong">İzin Bedel No: </strong>
${v.izinBedelNo}`
}
return durum
}
})
return header return header
}) })