10 Commits

Author SHA1 Message Date
ed8b6fd3eb - Kapsam dışı piyango detayında bazı tablar kaldırıldı
- piyango liste kapsam dışı ise çekiliş tarihi olmayacak
2025-07-28 19:07:55 +03:00
f4c0511afb - dev ve prod için env ayarları yapıldı.
- test sunucusu iin build script eklendi
2025-07-28 17:14:07 +03:00
7998b7bd6c Merge pull request 'Piyango Teminat iade seçeneği için alanlar eklendi.' (#2) from Teminat-İade-Seçeneği-Geliştirmesi into main
Reviewed-on: #2
2025-07-28 13:51:32 +00:00
6ff319cb1d Merge pull request '- FormDisplay size props eklendi' (#1) from piyango-Id-geliştirmesi into main
Reviewed-on: #1
2025-07-28 13:50:43 +00:00
10011eacd6 site yönetimi sadece süperadmin 2025-07-28 10:15:48 +03:00
36d646e0bf piyangoid 2025-07-25 17:51:18 +03:00
908e63b896 popup liste slider liste 2025-07-25 17:10:36 +03:00
0e130eafff piyango liste piyango id 2025-07-25 16:29:29 +03:00
f6850853b2 - FormDisplay size props eklendi
- PiyangoId alanları eklendi
2025-07-25 06:24:35 +03:00
ff0304b4d9 Piyango Teminat iade seçeneği için alanlar eklendi. 2025-07-25 05:50:27 +03:00
25 changed files with 172 additions and 275 deletions

1
.env.development Normal file
View File

@ -0,0 +1 @@
VITE_API_URL=https://panelapi.cekilisevitest.gov.tr/

1
.env.localdev Normal file
View File

@ -0,0 +1 @@
VITE_API_URL=https://localhost:7241/

1
.env.production Normal file
View File

@ -0,0 +1 @@
VITE_API_URL=https://panelapi.cekilisevi.gov.tr/

7
env.d.ts vendored
View File

@ -1,2 +1,9 @@
/// <reference types="vite/client" /> /// <reference types="vite/client" />
interface ImportMetaEnv {
readonly VITE_API_URL: string;
}
interface ImportMeta {
readonly env: ImportMetaEnv;
}

View File

@ -5,9 +5,12 @@
"type": "module", "type": "module",
"scripts": { "scripts": {
"dev": "vite", "dev": "vite",
"localdev": "vite",
"build": "run-p type-check \"build-only {@}\" --", "build": "run-p type-check \"build-only {@}\" --",
"buildtest": "run-p type-check \"build-only-test {@}\" --",
"preview": "vite preview", "preview": "vite preview",
"build-only": "vite build", "build-only": "vite build",
"build-only-test": "vite build --mode development",
"type-check": "vue-tsc --build --force" "type-check": "vue-tsc --build --force"
}, },
"dependencies": { "dependencies": {

View File

@ -14,7 +14,9 @@
</span> </span>
<template v-if="modelText !== undefined && modelText !== ''"> <template v-if="modelText !== undefined && modelText !== ''">
<template v-if="typeof modelText === 'string'"> <template v-if="typeof modelText === 'string'">
<span>{{ price ? globalStore.toTrLocale(modelText) : modelText }}</span> <span :class="[size ? 'form-item-size form-item-size-' + size : '']">
{{ price ? globalStore.toTrLocale(modelText) : modelText }}
</span>
</template> </template>
<template v-if="typeof modelText === 'object'"> <template v-if="typeof modelText === 'object'">
<ul> <ul>
@ -25,7 +27,9 @@
</template> </template>
</template> </template>
<template v-else> <template v-else>
<span>{{ price ? globalStore.toTrLocale(localValue) : localValue }}</span> <span :class="[size ? 'form-item-size form-item-size-' + size : '']">
{{ price ? globalStore.toTrLocale(localValue) : localValue }}
</span>
</template> </template>
<span <span
class="form-item-alert" class="form-item-alert"
@ -64,6 +68,7 @@
modelText?: any modelText?: any
invalidText?: string invalidText?: string
price?: boolean price?: boolean
size?: number | string
} }
const props = withDefaults(defineProps<Props>(), { const props = withDefaults(defineProps<Props>(), {
half: false, half: false,
@ -71,13 +76,23 @@
}) })
const localValue = ref<any>(props.modelValue) const localValue = ref<any>(props.modelValue)
if (props.type === 'date' && props.modelValue !== null && props.modelValue !== undefined && props.modelValue !== '') if (
props.type === 'date' &&
props.modelValue !== null &&
props.modelValue !== undefined &&
props.modelValue !== ''
)
localValue.value = dateStore.dateFormat({ localValue.value = dateStore.dateFormat({
date: props.modelValue as Date, date: props.modelValue as Date,
pattern: 'dd-mm-yy' pattern: 'dd-mm-yy'
}) })
if (props.type === 'datetime' && props.modelValue !== null && props.modelValue !== undefined && props.modelValue !== '') if (
props.type === 'datetime' &&
props.modelValue !== null &&
props.modelValue !== undefined &&
props.modelValue !== ''
)
localValue.value = dateStore.dateFormat({ localValue.value = dateStore.dateFormat({
date: props.modelValue as Date, date: props.modelValue as Date,
pattern: 'dd-mm-yy-t' pattern: 'dd-mm-yy-t'
@ -108,3 +123,14 @@
} }
) )
</script> </script>
<style scoped>
.form-item-size {
font-weight: 600;
}
.form-item-size-1 {
font-size: 1.2em;
}
.form-item-size-2 {
font-size: 1.5em;
}
</style>

View File

@ -2,7 +2,7 @@ import axios from 'axios'
import { useUsersStore } from '@/stores/usersStore' import { useUsersStore } from '@/stores/usersStore'
import router from '@/router' import router from '@/router'
axios.defaults.baseURL = 'https://panelapi.cekilisevi.gov.tr/' axios.defaults.baseURL = import.meta.env.VITE_API_URL
//axios.defaults.timeout = 2000; //axios.defaults.timeout = 2000;
axios.defaults.headers['Content-Type'] = 'application/json; charset=utf-8' axios.defaults.headers['Content-Type'] = 'application/json; charset=utf-8'
import { useDataStore } from '@/stores/dataStore' import { useDataStore } from '@/stores/dataStore'

View File

@ -109,7 +109,7 @@
{ {
title: 'Site Yönetimi', title: 'Site Yönetimi',
ico: 'sitemanagement', ico: 'sitemanagement',
show: usersStore.isPanelUser && !usersStore.isAccounting, show: usersStore.isSuperAdmin,
sub: [ sub: [
{ {
title: 'Yeni Sayfa', title: 'Yeni Sayfa',

View File

@ -3,6 +3,10 @@
<lottery-states <lottery-states
:piyangoAmac="piyangoStore.lotteryData.amacpiyangoId" :piyangoAmac="piyangoStore.lotteryData.amacpiyangoId"
v-if="!isPreview" /> v-if="!isPreview" />
<form-display
v-model="piyangoStore.lotteryData.piyangoId"
label="Piyango ID"
size="1" />
<template <template
v-if=" v-if="
usersStore.isPanelUser && usersStore.isPanelUser &&

View File

@ -1,102 +0,0 @@
<template>
<div class="form-part form-title" v-if="usersStore.isPanelUser">
<div class="form-title-buttons">
<button
class="button-c button-save"
@click="piyangoTeminatService.SaveTeminatDurum"
:disabled="!piyangoTeminatValidationStore.formChanged">
Kaydet
</button>
<button
v-if="piyangoTeminatValidationStore.formChanged"
class="button-c button-cancel panel-close"
@click="piyangoTeminatStore.ResetFormData">
Vazgeç
</button>
</div>
</div>
<div :class="['form-part', piyangoTeminatValidationStore.formChanged ? 'changed' : '']"> <div
class="form-part-content"
v-if="piyangoTeminatStore.loaded">
<form-select
v-if="usersStore.isPanelUser"
label="İşlem"
:listData="piyangoDataStore.piyangoTeminatDurumlari"
listText="value"
listVal="id"
v-model="piyangoTeminatStore.piyangoTeminatFormData.state"
required
:invalidText="piyangoTeminatValidationStore.invalidTexts.state"
@change="OnKeyup" />
<form-display
v-model="piyangoTeminatStore.piyangoTeminatFormData.amount"
half
label="Tutarı" />
<form-display
v-model="piyangoTeminatStore.piyangoTeminatFormData.teminatParentTypeText"
half
label="Para Birimi" />
<form-display
label="Teminat Türü"
half
v-model="piyangoTeminatStore.piyangoTeminatFormData.teminantChildTypeText" />
<form-display
type="date"
half
v-model="piyangoTeminatStore.piyangoTeminatFormData.teminantDate"
label="Tarih" />
<form-display
v-model="piyangoTeminatStore.piyangoTeminatFormData.teminantNo"
half
label="No" />
<div class="form-item form-item-half"></div>
<form-display
v-model="piyangoTeminatStore.piyangoTeminatFormData.bankName"
half
label="Banka Adı" />
<form-display
v-model="piyangoTeminatStore.piyangoTeminatFormData.bankBranch"
half
label="Banka Şubesi" />
<!--form-display
label="İşlem"
v-model="piyangoTeminatStore.piyangoTeminatFormData.stateText" /-->
<file-list-item
title="Dosya"
:data="piyangoTeminatStore.piyangoTeminatFormData"
:editable="false"
:filePath="piyangoTeminatStore.piyangoTeminatFormData.teminantDocumentUrl"
:usePath="true"
:onlyPreview="true" />
<form-display
v-model="piyangoTeminatStore.piyangoTeminatFormData.description"
label="Açıklama" />
</div></div>
</template>
<script setup lang="ts">
import { usePiyangoTeminatStore } from '../../stores/piyangoTeminatStore'
const piyangoTeminatStore = usePiyangoTeminatStore()
import { useUsersStore } from '@/stores/usersStore'
const usersStore = useUsersStore()
import { usePiyangoDataStore } from '../../stores/piyangoDataStore'
const piyangoDataStore = usePiyangoDataStore()
import { usePiyangoTeminatValidationStore } from '../../validation/piyangoTeminatValidationStore'
const piyangoTeminatValidationStore = usePiyangoTeminatValidationStore()
import { usePiyangoTeminatService } from '../../service/piyangoTeminatService'
const piyangoTeminatService = usePiyangoTeminatService()
const OnKeyup = () => {
piyangoTeminatValidationStore.formChanged = true
}
</script>

View File

@ -23,6 +23,13 @@
<strong style="font-size: 10pt; margin-bottom: 12px"> <strong style="font-size: 10pt; margin-bottom: 12px">
PİYANGO İLE İLGİLİ BİLGİLER PİYANGO İLE İLGİLİ BİLGİLER
</strong> </strong>
<br />
<br />
<strong style="font-size: 10pt; margin-bottom: 12px">
PİYANGO ID: {{ piyangoStore.lotteryData.piyangoId }}
</strong>
<br />
<br />
<table <table
cellspacing="0" cellspacing="0"
class="table-no-line" class="table-no-line"

View File

@ -12,6 +12,12 @@
Bahisler ve Oyunlar Dairesi Başkanlığına Bahisler ve Oyunlar Dairesi Başkanlığına
</strong> </strong>
<br /> <br />
<br />
<strong style="font-size: 10pt; margin-bottom: 12px">
PİYANGO ID: {{ piyangoStore.lotteryData.piyangoId }}
</strong>
<br />
<br />
<table <table
cellspacing="0" cellspacing="0"
class="table-no-line" class="table-no-line"

View File

@ -31,7 +31,17 @@
</div> </div>
<div class="form-part-content" v-if="loaded"> <div class="form-part-content" v-if="loaded">
<lottery-states :piyangoAmac="piyangoStore.lotteryData.amacpiyangoId" /> <lottery-states :piyangoAmac="piyangoStore.lotteryData.amacpiyangoId" />
<template
v-if="
!piyangoStore.isNew &&
piyangoStore.lotteryData.piyangoId !== undefined &&
piyangoStore.lotteryData.piyangoId !== null
">
<form-display
v-model="piyangoStore.lotteryData.piyangoId"
label="Piyango ID"
size="1" />
</template>
<form-input <form-input
modelKey="cekilisBaslik" modelKey="cekilisBaslik"
v-model="piyangoStore.lotteryData.baslik" v-model="piyangoStore.lotteryData.baslik"
@ -602,7 +612,7 @@
let list = await dataStore.dataGet('Auth/userbyuserChildList/' + id) let list = await dataStore.dataGet('Auth/userbyuserChildList/' + id)
childUsers.value = list.data.filter((p:Record<string,any>) => { childUsers.value = list.data.filter((p: Record<string, any>) => {
return p.islemTipId === 4 || p.islemTipi === 'Üyelik Onaylandı' return p.islemTipId === 4 || p.islemTipi === 'Üyelik Onaylandı'
}) })

View File

@ -1,135 +0,0 @@
<template>
<div class="form-part form-title">
<div class="form-title-buttons">
<button
class="button-c button-save"
@click="piyangoTeminatService.SaveTeminatDurum"
:disabled="!piyangoTeminatValidationStore.formChanged">
Kaydet
</button>
<button
v-if="piyangoTeminatValidationStore.formChanged"
class="button-c button-cancel panel-close"
@click="piyangoTeminatStore.ResetFormData">
Vazgeç
</button>
</div>
</div>
<div :class="['form-part', piyangoTeminatValidationStore.formChanged ? 'changed' : '']">
<div class="form-part-title">
<h4>Teminat Durumu</h4>
</div>
<div class="form-part-content" v-if="piyangoTeminatStore.loaded">
<form-input
modelKey="amount"
v-model="piyangoTeminatStore.piyangoTeminatFormData.amount"
required
half
label="Tutarı"
minlength="2"
@keyup="OnKeyup"
@keydown="validationStore.allowPrice"
:invalidText="piyangoTeminatValidationStore.invalidTexts.amount" />
<form-select
modelKey="teminatParentType"
v-model="piyangoTeminatStore.piyangoTeminatFormData.teminatParentType"
required
half
label="Para Birimi"
:invalidText="piyangoTeminatValidationStore.invalidTexts.teminatParentType"
:listData="piyangoDataStore.piyangoTeminatParaBirimleri"
listVal="id"
listText="value"
@change="OnKeyup" />
<form-select
label="Teminat Türü"
:listData="piyangoDataStore.piyangoTeminatTurleri"
listText="value"
listVal="id"
half
v-model="piyangoTeminatStore.piyangoTeminatFormData.teminantChildType"
required
:invalidText="piyangoTeminatValidationStore.invalidTexts.teminantChildType"
@change="OnKeyup" />
<form-date
type="date"
half
required
modelKey="teminantDate"
v-model="piyangoTeminatStore.piyangoTeminatFormData.teminantDate"
label="Tarih"
:invalidText="piyangoTeminatValidationStore.invalidTexts.teminantDate"
@change="OnKeyup" />
<form-input
modelKey="teminantNo"
v-model="piyangoTeminatStore.piyangoTeminatFormData.teminantNo"
required
half
label="No"
minlength="2"
:invalidText="piyangoTeminatValidationStore.invalidTexts.teminantNo"
@keyup="OnKeyup" />
<div class="form-item form-item-half"></div>
<form-input
modelKey="bankName"
v-model="piyangoTeminatStore.piyangoTeminatFormData.bankName"
required
half
label="Banka Adı"
minlength="2"
:invalidText="piyangoTeminatValidationStore.invalidTexts.bankName"
@keyup="OnKeyup" />
<form-input
modelKey="bankBranch"
v-model="piyangoTeminatStore.piyangoTeminatFormData.bankBranch"
required
half
label="Banka Şubesi"
minlength="2"
:invalidText="piyangoTeminatValidationStore.invalidTexts.bankBranch"
@keyup="OnKeyup" />
<form-display :disabled="!usersStore.isPanelUser"
label="İşlem Durumu"
v-model="piyangoTeminatStore.piyangoTeminatFormData.stateText" />
<form-file
v-model="piyangoTeminatStore.piyangoTeminatFormData.file"
elclass="panel-documents-item"
:invalidText="piyangoTeminatValidationStore.invalidTexts.file"
@change="OnKeyup" />
<form-textarea
v-model="piyangoTeminatStore.piyangoTeminatFormData.description"
:invalidText="piyangoTeminatValidationStore.invalidTexts.description"
label="Açıklama"
@keyup="OnKeyup" />
</div>
</div>
</template>
<script setup lang="ts">
import { usePiyangoDataStore } from '../../stores/piyangoDataStore'
const piyangoDataStore = usePiyangoDataStore()
import { usePiyangoServices } from '../../service/piyangoServices'
const piyangoServices = usePiyangoServices()
import { useValidationStore } from '@/stores/validationStore'
const validationStore = useValidationStore()
import { usePiyangoTeminatStore } from '../../stores/piyangoTeminatStore'
const piyangoTeminatStore = usePiyangoTeminatStore()
import { usePiyangoTeminatValidationStore } from '../../validation/piyangoTeminatValidationStore'
const piyangoTeminatValidationStore = usePiyangoTeminatValidationStore()
import { usePiyangoTeminatService } from '../../service/piyangoTeminatService'
const piyangoTeminatService = usePiyangoTeminatService()
import { useUsersStore } from '@/stores/usersStore'
const usersStore = useUsersStore()
const OnKeyup = () => {
piyangoTeminatValidationStore.formChanged = true
}
</script>

View File

@ -9,9 +9,24 @@
v-model="piyangoTeminatStore.piyangoTeminatFormData.state" v-model="piyangoTeminatStore.piyangoTeminatFormData.state"
required required
:invalidText="piyangoTeminatValidationStore.invalidTexts.state" :invalidText="piyangoTeminatValidationStore.invalidTexts.state"
@change="OnKeyup" @change="OnKeyup"
:disabled="!usersStore.isPanelUser"/> :disabled="!usersStore.isPanelUser" />
<template v-if="piyangoTeminatStore.piyangoTeminatFormData.state === 2">
<form-date
type="date"
modelKey="iadeTarihi"
v-model="piyangoTeminatStore.piyangoTeminatFormData.iadeTarihi"
label="İlan Tarihi"
:invalidText="piyangoTeminatValidationStore.invalidTexts.iadeTarihi"
@change="OnKeyup" />
<form-file
v-model="piyangoTeminatStore.piyangoTeminatFormData.iadeFile"
elclass="panel-documents-item"
:invalidText="piyangoTeminatValidationStore.invalidTexts.iadeFile"
@change="OnKeyup" />
</template>
<form-display <form-display
v-model="piyangoTeminatStore.piyangoTeminatFormData.amount" v-model="piyangoTeminatStore.piyangoTeminatFormData.amount"
half half
@ -51,7 +66,10 @@
label="Banka Şubesi" /> label="Banka Şubesi" />
<file-list-item <file-list-item
v-if="piyangoTeminatStore.piyangoTeminatFormData.teminantDocumentUrl !== null && piyangoTeminatStore.piyangoTeminatFormData.teminantDocumentUrl !== undefined" v-if="
piyangoTeminatStore.piyangoTeminatFormData.teminantDocumentUrl !== null &&
piyangoTeminatStore.piyangoTeminatFormData.teminantDocumentUrl !== undefined
"
title="Dosya" title="Dosya"
:data="piyangoTeminatStore.piyangoTeminatFormData" :data="piyangoTeminatStore.piyangoTeminatFormData"
:editable="false" :editable="false"

View File

@ -18,9 +18,12 @@ export const usePiyangoTeminatService = defineStore('piyangoTeminatService', ()
if (piyangoTeminatValidationStore.FormCheck()) { if (piyangoTeminatValidationStore.FormCheck()) {
let form: any let form: any
let dataForm = new FormData() let dataForm = new FormData()
dataForm.append('state', piyangoTeminatStore.piyangoTeminatFormData.state) dataForm.append('state', piyangoTeminatStore.piyangoTeminatFormData.state)
dataForm.append('amount', globalStore.floatEnLocale(piyangoTeminatStore.piyangoTeminatFormData.amount)) dataForm.append(
'amount',
globalStore.floatEnLocale(piyangoTeminatStore.piyangoTeminatFormData.amount)
)
dataForm.append('bankName', piyangoTeminatStore.piyangoTeminatFormData.bankName) dataForm.append('bankName', piyangoTeminatStore.piyangoTeminatFormData.bankName)
dataForm.append('bankBranch', piyangoTeminatStore.piyangoTeminatFormData.bankBranch) dataForm.append('bankBranch', piyangoTeminatStore.piyangoTeminatFormData.bankBranch)
dataForm.append( dataForm.append(
@ -43,6 +46,19 @@ export const usePiyangoTeminatService = defineStore('piyangoTeminatService', ()
'description', 'description',
piyangoTeminatStore.piyangoTeminatFormData.description piyangoTeminatStore.piyangoTeminatFormData.description
) )
if (usersStore.isPanelUser) {
if (piyangoTeminatStore.piyangoTeminatFormData.state !== 2) {
piyangoTeminatStore.piyangoTeminatFormData.iadeTarihi = ''
piyangoTeminatStore.piyangoTeminatFormData.iadeFile = ''
}
dataForm.append(
'iadeTarihi',
String(piyangoTeminatStore.piyangoTeminatFormData.iadeTarihi)
)
dataForm.append('iadeFile', piyangoTeminatStore.piyangoTeminatFormData.iadeFile)
}
if (piyangoTeminatStore.isNew) { if (piyangoTeminatStore.isNew) {
form = await dataStore.dataPost('TeminantStates/', { form = await dataStore.dataPost('TeminantStates/', {
data: dataForm, data: dataForm,
@ -61,8 +77,8 @@ export const usePiyangoTeminatService = defineStore('piyangoTeminatService', ()
} }
if (form !== 'errorfalse') { if (form !== 'errorfalse') {
piyangoTeminatStore.isNew = false piyangoTeminatStore.isNew = false
piyangoTeminatValidationStore.formChanged = false piyangoTeminatValidationStore.formChanged = false
piyangoTeminatStore.refreshList = true piyangoTeminatStore.refreshList = true
piyangoTeminatStore.teminatPanel = false piyangoTeminatStore.teminatPanel = false
} }
@ -80,7 +96,7 @@ export const usePiyangoTeminatService = defineStore('piyangoTeminatService', ()
if (form !== 'errorfalse') { if (form !== 'errorfalse') {
piyangoTeminatStore.isNew = false piyangoTeminatStore.isNew = false
await Object.assign(piyangoTeminatStore.piyangoTeminatFormData, form) await Object.assign(piyangoTeminatStore.piyangoTeminatFormData, form)
} else { } else {
await piyangoTeminatStore.ResetFormData() await piyangoTeminatStore.ResetFormData()
await piyangoTeminatStore.RestoreFormData() await piyangoTeminatStore.RestoreFormData()

View File

@ -23,7 +23,9 @@ export const usePiyangoTeminatStore = defineStore('piyangoTeminatStore', () => {
cekilisId: piyangoStore.selectedLottery, cekilisId: piyangoStore.selectedLottery,
kisiId: usersStore.userId, kisiId: usersStore.userId,
description: '', description: '',
file: '' file: '',
iadeTarihi: '',
iadeFile: ''
}) })
const piyangoTeminatFormData = reactive<Record<string, any>>({}) const piyangoTeminatFormData = reactive<Record<string, any>>({})
@ -31,7 +33,7 @@ export const usePiyangoTeminatStore = defineStore('piyangoTeminatStore', () => {
const loaded = ref<boolean>(false) const loaded = ref<boolean>(false)
const isNew = ref<boolean>(false) const isNew = ref<boolean>(false)
const teminatPanel = ref<boolean>(false) const teminatPanel = ref<boolean>(false)
const selectedTeminatId = ref<number|null>(null) const selectedTeminatId = ref<number | null>(null)
const refreshList = ref<boolean>(false) const refreshList = ref<boolean>(false)
const ResetFormData = () => { const ResetFormData = () => {
@ -42,7 +44,7 @@ export const usePiyangoTeminatStore = defineStore('piyangoTeminatStore', () => {
loaded.value = true loaded.value = true
}, 30) }, 30)
} }
const RestoreFormData = () => { const RestoreFormData = () => {
Object.assign(piyangoTeminatFormData, piyangoTeminatSafeFormData) Object.assign(piyangoTeminatFormData, piyangoTeminatSafeFormData)
} }
return { return {

View File

@ -24,6 +24,12 @@ export const usePiyangoTeminatValidationStore = defineStore(
'state', 'state',
'Lütfen işlem tipini seçiniz.' 'Lütfen işlem tipini seçiniz.'
) )
validationStore.IsFieldEmpty(
piyangoTeminatStore.piyangoTeminatFormData,
invalidTexts,
'iadeTarihi',
'Lütfen iade tarihini seçiniz.'
)
} }
validationStore.IsFieldEmpty( validationStore.IsFieldEmpty(

View File

@ -60,13 +60,14 @@
const CreateTabs = () => { const CreateTabs = () => {
if ( if (
piyangoStore.lotteryApprove === 4 || (piyangoStore.lotteryApprove === 4 ||
piyangoStore.lotteryApprove === 10 || piyangoStore.lotteryApprove === 10 ||
piyangoStore.lotteryApprove === 11 || piyangoStore.lotteryApprove === 11 ||
piyangoStore.lotteryApprove === 12 || piyangoStore.lotteryApprove === 12 ||
piyangoStore.lotteryApprove === 13 || piyangoStore.lotteryApprove === 13 ||
piyangoStore.lotteryApprove === 14 || piyangoStore.lotteryApprove === 14 ||
usersStore.isPanelUser usersStore.isPanelUser) &&
piyangoStore.lotteryPurposeId !== 3
) { ) {
tabList.value.push( tabList.value.push(
{ text: 'Katılım Listesi', id: 'katilimcilistesi' }, { text: 'Katılım Listesi', id: 'katilimcilistesi' },
@ -82,7 +83,7 @@
} }
tabList.value.push({ text: 'Onay Durumu', id: 'onaydurumu' }) tabList.value.push({ text: 'Onay Durumu', id: 'onaydurumu' })
if (piyangoStore.lotteryApprove !== 0) { if (piyangoStore.lotteryApprove !== 0 && piyangoStore.lotteryPurposeId !== 3) {
tabList.value.push({ text: 'Teminat Listesi', id: 'teminatlistesi' }) tabList.value.push({ text: 'Teminat Listesi', id: 'teminatlistesi' })
} }
} }

View File

@ -67,11 +67,25 @@
const tableHeader = computed<Record<string, any>[]>(() => { const tableHeader = computed<Record<string, any>[]>(() => {
let header: Record<string, any>[] = [] let header: Record<string, any>[] = []
header.push({
name: 'piyangoId',
title: 'Piyango Id',
sort: true,
style: { width: '10%' }
})
if (usersStore.isAraciFirma || usersStore.isPanelUser) { if (usersStore.isAraciFirma || usersStore.isPanelUser) {
header.push({ name: 'duzenleyen', title: 'Düzenleyen' }) header.push({ name: 'duzenleyen', title: 'Düzenleyen' })
} }
header.push( header.push(
{
name: 'piyangoId',
title: 'Piyango ID',
sort: true,
style: { width: '10%' }
},
{ {
name: 'baslik', name: 'baslik',
title: 'Başlık', title: 'Başlık',
@ -101,14 +115,16 @@
type: 'date', type: 'date',
range: true range: true
} }
}) }
)
if (usersStore.isVakifDernek || usersStore.isPanelUser) { if (usersStore.isVakifDernek || usersStore.isPanelUser) {
header.push({ header.push({
name: 'cekilisTarihi', name: 'cekilisTarihi',
title: 'Çekiliş Tarihi', title: 'Çekiliş Tarihi',
compute: (v: Record<string, any>): string => { compute: (v: Record<string, any>): string => {
return dateStore.dateFormat({ date: v.cekilisTarihi }) if(v.piyangoAmacId === 3) return ''
else return dateStore.dateFormat({ date: v.cekilisTarihi })
}, },
sort: true, sort: true,
filter: { filter: {
@ -146,7 +162,7 @@
} }
} }
) )
} }
header.push( header.push(
{ {

View File

@ -54,6 +54,12 @@
} }
header.push( header.push(
{
name: 'piyangoId',
title: 'Piyango ID',
sort: true,
style: { width: '10%' }
},
{ {
name: 'baslik', name: 'baslik',
title: 'Başlık', title: 'Başlık',

View File

@ -87,7 +87,7 @@
title: 'Resim Url', title: 'Resim Url',
computeHtml: (v: Record<string, any>) => { computeHtml: (v: Record<string, any>) => {
if (v.resimUrl !== null && v.resimUrl !== undefined) { if (v.resimUrl !== null && v.resimUrl !== undefined) {
return globalStore.TableCellDocument(v.resimUrl) return `<a href="${ v.resimUrl }" target="_blank" onclick="event.stopPropagation()"><img class="table-cell-image" src="${ v.resimUrl }" /></a>`
} }
} }
}, },

View File

@ -78,7 +78,7 @@
title: 'Resim Url', title: 'Resim Url',
computeHtml: (v: Record<string, any>) => { computeHtml: (v: Record<string, any>) => {
if (v.resimUrl !== null && v.resimUrl !== undefined) { if (v.resimUrl !== null && v.resimUrl !== undefined) {
return globalStore.TableCellDocument(v.resimUrl) return `<a href="${ v.resimUrl }" target="_blank" onclick="event.stopPropagation()"><img class="table-cell-image" src="${ v.resimUrl }" /></a>`
} }
} }
}, },

View File

@ -8,7 +8,7 @@ export const useDataStore = defineStore('dataStore', () => {
const globalDataStore = useGlobalDataStore() const globalDataStore = useGlobalDataStore()
const toastStore = useToastStore() const toastStore = useToastStore()
const siteBase = ref<string>('https://panelapi.cekilisevi.gov.tr/') const siteBase = ref<string>(import.meta.env.VITE_API_URL)
const apiBase = ref<string>('api/') const apiBase = ref<string>('api/')
const panelData = reactive<Record<string, any>>({}) const panelData = reactive<Record<string, any>>({})
const pageData = reactive<Record<string, any>>({}) const pageData = reactive<Record<string, any>>({})
@ -40,7 +40,7 @@ export const useDataStore = defineStore('dataStore', () => {
} }
const response = await axios.get(apiBase.value + api, sendData) const response = await axios.get(apiBase.value + api, sendData)
//console.log('response --', api, response) console.log('response --', api, response)
if (data.full !== undefined && data.full) { if (data.full !== undefined && data.full) {
return response return response
@ -49,7 +49,7 @@ export const useDataStore = defineStore('dataStore', () => {
} }
} catch (error: any) { } catch (error: any) {
CheckApiError(error.response.status, error.response.data) CheckApiError(error.response.status, error.response.data)
//console.error('Hata oluştu -:', error) console.error('Hata oluştu -:', error)
return 'errorfalse' return 'errorfalse'
} }
} }
@ -86,7 +86,7 @@ export const useDataStore = defineStore('dataStore', () => {
} catch (error: any) { } catch (error: any) {
CheckApiError(error.response.status, error.response.data) CheckApiError(error.response.status, error.response.data)
//console.error('Hata oluştu:', error) console.error('Hata oluştu:', error)
return Promise.resolve('errorfalse') return Promise.resolve('errorfalse')
} }
} }
@ -122,7 +122,7 @@ export const useDataStore = defineStore('dataStore', () => {
} catch (error: any) { } catch (error: any) {
CheckApiError(error.response.status, error.response.data) CheckApiError(error.response.status, error.response.data)
//console.error('Hata oluştu:', error) console.error('Hata oluştu:', error)
return Promise.resolve('errorfalse') return Promise.resolve('errorfalse')
} }
} }
@ -156,7 +156,7 @@ export const useDataStore = defineStore('dataStore', () => {
} }
} catch (error: any) { } catch (error: any) {
CheckApiError(error.response.status, error.response.data) CheckApiError(error.response.status, error.response.data)
//console.error('Hata oluştu:', error) console.error('Hata oluştu:', error)
return Promise.resolve('errorfalse') return Promise.resolve('errorfalse')
} }
} }

View File

@ -11,5 +11,8 @@ export default defineConfig({
alias: { alias: {
'@': fileURLToPath(new URL('./src', import.meta.url)) '@': fileURLToPath(new URL('./src', import.meta.url))
} }
},
esbuild: {
drop: process.env.NODE_ENV === 'production' ? ['console', 'debugger'] : []
} }
}) })