2023-03-15 14:20:18 +07:00
|
|
|
<template>
|
|
|
|
|
<div>
|
|
|
|
|
<q-tabs
|
|
|
|
|
v-model="tab"
|
|
|
|
|
dense
|
|
|
|
|
class=""
|
|
|
|
|
active-color="primary"
|
|
|
|
|
indicator-color="primary"
|
|
|
|
|
align="justify"
|
|
|
|
|
>
|
2023-03-16 00:35:08 +07:00
|
|
|
<q-tab name="profile" label="ข้อมูลส่วนบุคคล" />
|
|
|
|
|
<q-tab name="education" label="ประวัติการศีกษา" />
|
|
|
|
|
<q-tab name="career" label="ประวัติการทำงาน/ฝึกงาน" />
|
|
|
|
|
<!-- <q-tab name="document" label="เอกสาร" /> -->
|
2023-03-15 14:20:18 +07:00
|
|
|
</q-tabs>
|
|
|
|
|
<q-tab-panels v-model="tab" animated class="bg-white">
|
2023-03-16 00:35:08 +07:00
|
|
|
<!-- ข้อมูลส่วนบุคคล -->
|
|
|
|
|
<q-tab-panel name="profile"> <Profile /></q-tab-panel>
|
2023-03-15 14:20:18 +07:00
|
|
|
|
2023-03-16 00:35:08 +07:00
|
|
|
<!-- ประวัติการศีกษา -->
|
|
|
|
|
<q-tab-panel name="education"><Education :loader="loader" /> </q-tab-panel>
|
2023-03-15 14:20:18 +07:00
|
|
|
|
2023-03-16 00:35:08 +07:00
|
|
|
<!-- ประวัติการทำงาน/ฝึกงาน -->
|
2023-03-16 13:52:21 +07:00
|
|
|
<q-tab-panel name="career"> <Career :loader="loader" /></q-tab-panel>
|
2023-03-15 14:20:18 +07:00
|
|
|
|
|
|
|
|
<!-- ไฟล์ -->
|
2023-03-16 00:35:08 +07:00
|
|
|
<!-- <q-tab-panel name="document">
|
2023-03-15 14:20:18 +07:00
|
|
|
<div class="row justify-center">
|
|
|
|
|
<div class="q-mt-md" style="width: 100%; min-width: 300px; max-width: 900px">
|
|
|
|
|
<q-select
|
|
|
|
|
:disable="!allowEdit"
|
|
|
|
|
filled
|
|
|
|
|
v-model="filePictureUpload"
|
|
|
|
|
:options="filePictureCurrent"
|
|
|
|
|
option-label="fileName"
|
|
|
|
|
option-value="id"
|
|
|
|
|
emit-value
|
|
|
|
|
map-options
|
|
|
|
|
label="รูปถ่าย (File.png)"
|
|
|
|
|
>
|
|
|
|
|
<template v-slot:append>
|
|
|
|
|
<q-icon
|
|
|
|
|
v-if="filePictureUpload !== null"
|
|
|
|
|
name="close"
|
|
|
|
|
@click.stop.prevent="filePictureUpload = null"
|
|
|
|
|
class="cursor-pointer"
|
|
|
|
|
/>
|
|
|
|
|
</template>
|
|
|
|
|
</q-select>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="q-mt-md" style="width: 100%; min-width: 300px; max-width: 900px">
|
|
|
|
|
<q-select
|
|
|
|
|
:disable="!allowEdit"
|
|
|
|
|
filled
|
|
|
|
|
v-model="fileAddressUpload"
|
|
|
|
|
:options="fileAddressCurrent"
|
|
|
|
|
option-label="fileName"
|
|
|
|
|
option-value="id"
|
|
|
|
|
emit-value
|
|
|
|
|
map-options
|
|
|
|
|
label="สำเนาทะเบียนบ้าน"
|
|
|
|
|
>
|
|
|
|
|
<template v-slot:append>
|
|
|
|
|
<q-icon
|
|
|
|
|
v-if="fileAddressUpload !== null"
|
|
|
|
|
name="close"
|
|
|
|
|
@click.stop.prevent="fileAddressUpload = null"
|
|
|
|
|
class="cursor-pointer"
|
|
|
|
|
/>
|
|
|
|
|
</template>
|
|
|
|
|
</q-select>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="q-mt-md" style="width: 100%; min-width: 300px; max-width: 900px">
|
|
|
|
|
<q-select
|
|
|
|
|
:disable="!allowEdit"
|
|
|
|
|
filled
|
|
|
|
|
v-model="fileCitizenIdUpload"
|
|
|
|
|
:options="fileCitizenIdCurrent"
|
|
|
|
|
option-label="fileName"
|
|
|
|
|
option-value="id"
|
|
|
|
|
emit-value
|
|
|
|
|
map-options
|
|
|
|
|
label="สำเนาบัตรประจำตัวประชาชน"
|
|
|
|
|
>
|
|
|
|
|
<template v-slot:append>
|
|
|
|
|
<q-icon
|
|
|
|
|
v-if="fileCitizenIdUpload !== null"
|
|
|
|
|
name="close"
|
|
|
|
|
@click.stop.prevent="fileCitizenIdUpload = null"
|
|
|
|
|
class="cursor-pointer"
|
|
|
|
|
/>
|
|
|
|
|
</template>
|
|
|
|
|
</q-select>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="q-mt-md" style="width: 100%; min-width: 300px; max-width: 900px">
|
|
|
|
|
<q-select
|
|
|
|
|
:disable="!allowEdit"
|
|
|
|
|
filled
|
|
|
|
|
v-model="fileProfessionalLicenseUpload"
|
|
|
|
|
:options="fileProfessionalLicenseCurrent"
|
|
|
|
|
option-label="fileName"
|
|
|
|
|
option-value="id"
|
|
|
|
|
emit-value
|
|
|
|
|
map-options
|
|
|
|
|
label="ใบอนุญาตประกอบวิชาชีพ"
|
|
|
|
|
>
|
|
|
|
|
<template v-slot:append>
|
|
|
|
|
<q-icon
|
|
|
|
|
v-if="fileProfessionalLicenseUpload !== null"
|
|
|
|
|
name="close"
|
|
|
|
|
@click.stop.prevent="fileProfessionalLicenseUpload = null"
|
|
|
|
|
class="cursor-pointer"
|
|
|
|
|
/>
|
|
|
|
|
</template>
|
|
|
|
|
</q-select>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="q-mt-md" style="width: 100%; min-width: 300px; max-width: 900px">
|
|
|
|
|
<q-select
|
|
|
|
|
:disable="!allowEdit"
|
|
|
|
|
filled
|
|
|
|
|
v-model="fileOtherUpload"
|
|
|
|
|
multiple
|
|
|
|
|
:options="fileOtherCurrent"
|
|
|
|
|
option-label="fileName"
|
|
|
|
|
option-value="id"
|
|
|
|
|
emit-value
|
|
|
|
|
map-options
|
|
|
|
|
label="เอกสารอื่น ๆ"
|
|
|
|
|
>
|
|
|
|
|
<template v-slot:append>
|
|
|
|
|
<q-icon
|
|
|
|
|
v-if="fileOtherUpload.length !== 0"
|
|
|
|
|
name="close"
|
|
|
|
|
@click.stop.prevent="fileOtherUpload = []"
|
|
|
|
|
class="cursor-pointer"
|
|
|
|
|
/>
|
|
|
|
|
</template>
|
|
|
|
|
</q-select>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
2023-03-16 00:35:08 +07:00
|
|
|
</q-tab-panel> -->
|
2023-03-15 14:20:18 +07:00
|
|
|
</q-tab-panels>
|
|
|
|
|
|
2023-03-16 00:35:08 +07:00
|
|
|
<!-- <div>
|
2023-03-15 14:20:18 +07:00
|
|
|
<q-checkbox
|
|
|
|
|
v-if="allowEditProp"
|
|
|
|
|
v-model="acceptTermOfUse"
|
|
|
|
|
:disable="!allowEdit"
|
|
|
|
|
:label="formLabel.acceptTermOfUse"
|
|
|
|
|
/>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="row justify-center q-pa-md">
|
|
|
|
|
<q-btn color="warning" label="บันทึก" @click="saveForm" :disable="applyState === 3" />
|
|
|
|
|
<q-btn
|
|
|
|
|
color="primary"
|
|
|
|
|
class="q-ml-md"
|
|
|
|
|
label="สมัครสอบ"
|
|
|
|
|
@click="applyCandidate"
|
|
|
|
|
:disable="!acceptTermOfUse || applyState === 3"
|
|
|
|
|
/>
|
2023-03-16 00:35:08 +07:00
|
|
|
</div> -->
|
2023-03-15 14:20:18 +07:00
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
|
2023-03-16 00:35:08 +07:00
|
|
|
<script setup lang="ts">
|
|
|
|
|
import { ref } from 'vue'
|
|
|
|
|
import Profile from './Profile.vue'
|
|
|
|
|
import Education from './Education.vue'
|
|
|
|
|
import Career from './Career.vue'
|
2023-03-15 14:20:18 +07:00
|
|
|
|
2023-03-16 00:35:08 +07:00
|
|
|
const tab = ref<string>('profile')
|
|
|
|
|
const loader = ref<boolean>(false)
|
2023-03-15 14:20:18 +07:00
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
<style lang="scss" scoped></style>
|