Merge branch 'develop' into NiceDev
This commit is contained in:
commit
e9fc98bcd0
23 changed files with 117 additions and 47 deletions
|
|
@ -121,11 +121,11 @@ function onValidate() {
|
|||
props.onSubmit(formData)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* check ว่าลาได้ไหม จาก api
|
||||
* @param formData
|
||||
*/
|
||||
const leaveEndDateRules = ref([val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`])
|
||||
const isLeave = ref<boolean>(true)
|
||||
async function fetchCheck() {
|
||||
await http
|
||||
|
|
@ -139,8 +139,10 @@ async function fetchCheck() {
|
|||
isLeave.value = data.isLeave
|
||||
if (data.isLeave === true) {
|
||||
formDataSick.leaveTotal = data.totalDate - data.sumDateWork - data.sumDateHoliday
|
||||
this.leaveEndDateRules = [val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`]
|
||||
} else {
|
||||
fails($q, "ไม่สามารถลาได้")
|
||||
this.leaveEndDateRules = [val => false || `${"ไม่สามารถลาได้"}`]
|
||||
}
|
||||
})
|
||||
.catch((e: any) => {
|
||||
|
|
@ -306,7 +308,7 @@ onMounted(() => {
|
|||
:class="inputEdit(isReadOnly)"
|
||||
:model-value="formDataSick.leaveEndDate != null ? date2Thai(formDataSick.leaveEndDate) : null"
|
||||
:label="`${'ลาถึงวันที่'}`"
|
||||
:rules="[val => !!val || `${'กรุณาเลือกลาถึงวันที่'}`]"
|
||||
:rules="leaveEndDateRules"
|
||||
>
|
||||
<template v-slot:prepend>
|
||||
<q-icon name="event" class="cursor-pointer" style="color: var(--q-primary)"> </q-icon>
|
||||
|
|
@ -393,18 +395,15 @@ onMounted(() => {
|
|||
<q-icon name="attach_file" color="primary" />
|
||||
</template>
|
||||
</q-file>
|
||||
<div class="col-12" v-if="leaveDocumentList">
|
||||
<q-card class="q-pa-md" bordered> ไม่มีรายการเอกสารประกอบ </q-card>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-12" v-if="data">
|
||||
<div class="col-12 col-md-12 col-sm-12">
|
||||
<q-card bordered>
|
||||
<q-card bordered flat>
|
||||
<!-- <div class="col-12">
|
||||
<q-card class="q-pa-md" bordered> ไม่มีรายการเอกสารประกอบ{{ leaveDocumentList }} </q-card>
|
||||
</div> -->
|
||||
<q-list separator>
|
||||
<q-list separator v-if="leaveDocumentList && leaveDocumentList.length > 0">
|
||||
<q-item v-for="(document, index) in leaveDocumentList" :key="index" class="q-my-xs">
|
||||
<q-item-section>
|
||||
<q-item-label class="row items-baseline">
|
||||
|
|
@ -418,6 +417,9 @@ onMounted(() => {
|
|||
</q-item-section>
|
||||
</q-item>
|
||||
</q-list>
|
||||
<div class="col-12" v-else>
|
||||
<q-card class="q-pa-md" bordered> ไม่มีรายการเอกสารประกอบ </q-card>
|
||||
</div>
|
||||
</q-card>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -107,6 +107,7 @@ function onValidate() {
|
|||
}
|
||||
}
|
||||
|
||||
const leaveEndDateRules = ref([val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`])
|
||||
/**
|
||||
* check ว่าลาได้ไหม จาก api
|
||||
* @param formData
|
||||
|
|
@ -124,8 +125,10 @@ async function fetchCheck() {
|
|||
isLeave.value = data.isLeave
|
||||
if (data.isLeave === true) {
|
||||
formDataBirth.leaveTotal = data.totalDate
|
||||
this.leaveEndDateRules = [val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`]
|
||||
// formDataBirth.leaveLast = data.sumDateWork
|
||||
} else {
|
||||
this.leaveEndDateRules = [val => false || `${"ไม่สามารถลาได้"}`]
|
||||
fails($q, "ไม่สามารถลาได้")
|
||||
}
|
||||
})
|
||||
|
|
@ -247,7 +250,7 @@ onMounted(() => {
|
|||
class="full-width datepicker"
|
||||
:model-value="formDataBirth.leaveEndDate != null ? date2Thai(formDataBirth.leaveEndDate) : null"
|
||||
:label="`${'ลาถึงวันที่'}`"
|
||||
:rules="[val => !!val || `${'กรุณาเลือกลาถึงวันที่'}`]"
|
||||
:rules="leaveEndDateRules"
|
||||
>
|
||||
<template v-slot:prepend>
|
||||
<q-icon name="event" class="cursor-pointer" style="color: var(--q-primary)"> </q-icon>
|
||||
|
|
@ -368,7 +371,7 @@ onMounted(() => {
|
|||
<div class="q-pl-sm text-weight-bold text-dark">เอกสารเพิ่มเติม</div>
|
||||
</div> -->
|
||||
<q-card bordered flat class="full-width">
|
||||
<q-list separator>
|
||||
<q-list separator v-if="leaveDocumentList && leaveDocumentList.length > 0">
|
||||
<q-item v-for="(document, index) in leaveDocumentList" :key="index" class="q-my-xs">
|
||||
<q-item-section>
|
||||
<q-item-label class="row items-baseline">
|
||||
|
|
@ -382,6 +385,9 @@ onMounted(() => {
|
|||
</q-item-section>
|
||||
</q-item>
|
||||
</q-list>
|
||||
<div class="col-12" v-else>
|
||||
<q-card class="q-pa-md" bordered> ไม่มีรายการเอกสารประกอบ </q-card>
|
||||
</div>
|
||||
</q-card>
|
||||
</div>
|
||||
<div class="col-12 col-sm-6 row" v-if="!edit">
|
||||
|
|
|
|||
|
|
@ -125,6 +125,7 @@ function updateLeaveTotal() {
|
|||
* check ว่าลาได้ไหม จาก api
|
||||
* @param formData
|
||||
*/
|
||||
const leaveEndDateRules = ref([val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`])
|
||||
const isLeave = ref<boolean>(true)
|
||||
async function fetchCheck() {
|
||||
await http
|
||||
|
|
@ -138,9 +139,11 @@ async function fetchCheck() {
|
|||
isLeave.value = data.isLeave
|
||||
if (data.isLeave === true) {
|
||||
formDataHelpWife.leaveTotal = data.totalDate - data.sumDateWork - data.sumDateHoliday
|
||||
this.leaveEndDateRules = [val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`]
|
||||
// formDataHelpWife.leaveLast = data.totalDate
|
||||
} else {
|
||||
fails($q, "ไม่สามารถลาได้")
|
||||
this.leaveEndDateRules = [val => false || `${"ไม่สามารถลาได้"}`]
|
||||
}
|
||||
})
|
||||
.catch((e: any) => {
|
||||
|
|
@ -263,7 +266,7 @@ onMounted(() => {
|
|||
class="full-width datepicker"
|
||||
:model-value="formDataHelpWife.leaveEndDate != null ? date2Thai(formDataHelpWife.leaveEndDate) : null"
|
||||
:label="`${'ลาถึงวันที่'}`"
|
||||
:rules="[val => !!val || `${'กรุณาเลือกลาถึงวันที่'}`]"
|
||||
:rules="leaveEndDateRules"
|
||||
>
|
||||
<template v-slot:prepend>
|
||||
<q-icon name="event" class="cursor-pointer" style="color: var(--q-primary)"> </q-icon>
|
||||
|
|
@ -409,7 +412,7 @@ onMounted(() => {
|
|||
<!-- <div class="col-12">
|
||||
<q-card class="q-pa-md" bordered> ไม่มีรายการเอกสารประกอบ{{ leaveDocumentList }} </q-card>
|
||||
</div> -->
|
||||
<q-list separator>
|
||||
<q-list separator v-if="leaveDocumentList && leaveDocumentList.length > 0">
|
||||
<q-item v-for="(document, index) in leaveDocumentList" :key="index" class="q-my-xs">
|
||||
<q-item-section>
|
||||
<q-item-label class="row items-baseline">
|
||||
|
|
@ -423,6 +426,9 @@ onMounted(() => {
|
|||
</q-item-section>
|
||||
</q-item>
|
||||
</q-list>
|
||||
<div class="col-12" v-else>
|
||||
<q-card class="q-pa-md" bordered> ไม่มีรายการเอกสารประกอบ </q-card>
|
||||
</div>
|
||||
</q-card>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -119,6 +119,7 @@ function onValidate() {
|
|||
* check ว่าลาได้ไหม จาก api
|
||||
* @param formData
|
||||
*/
|
||||
const leaveEndDateRules = ref([val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`])
|
||||
const isLeave = ref<boolean>(true)
|
||||
async function fetchCheck() {
|
||||
await http
|
||||
|
|
@ -133,8 +134,10 @@ async function fetchCheck() {
|
|||
if (data.isLeave === true) {
|
||||
formDataVacation.leaveTotal = data.totalDate - data.sumDateWork - data.sumDateHoliday
|
||||
// formDataVacation.leaveLast = data.totalDate
|
||||
this.leaveEndDateRules = [val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`]
|
||||
} else {
|
||||
fails($q, "ไม่สามารถลาได้")
|
||||
this.leaveEndDateRules = [val => false || `${"ไม่สามารถลาได้"}`]
|
||||
}
|
||||
})
|
||||
.catch((e: any) => {
|
||||
|
|
@ -311,7 +314,7 @@ onMounted(() => {
|
|||
:readonly="isReadOnly"
|
||||
:model-value="formDataVacation.leaveEndDate != null ? date2Thai(formDataVacation.leaveEndDate) : null"
|
||||
:label="`${'ลาถึงวันที่'}`"
|
||||
:rules="[val => !!val || `${'กรุณาเลือกลาถึงวันที่'}`]"
|
||||
:rules="leaveEndDateRules"
|
||||
>
|
||||
<template v-slot:prepend>
|
||||
<q-icon name="event" class="cursor-pointer" style="color: var(--q-primary)"> </q-icon>
|
||||
|
|
@ -407,7 +410,7 @@ onMounted(() => {
|
|||
<!-- <div class="col-12">
|
||||
<q-card class="q-pa-md" bordered> ไม่มีรายการเอกสารประกอบ{{ leaveDocumentList }} </q-card>
|
||||
</div> -->
|
||||
<q-list separator>
|
||||
<q-list separator v-if="leaveDocumentList && leaveDocumentList.length > 0">
|
||||
<q-item v-for="(document, index) in leaveDocumentList" :key="index" class="q-my-xs">
|
||||
<q-item-section>
|
||||
<q-item-label class="row items-baseline">
|
||||
|
|
@ -421,6 +424,9 @@ onMounted(() => {
|
|||
</q-item-section>
|
||||
</q-item>
|
||||
</q-list>
|
||||
<div class="col-12" v-else>
|
||||
<q-card class="q-pa-md" bordered> ไม่มีรายการเอกสารประกอบ </q-card>
|
||||
</div>
|
||||
</q-card>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -131,6 +131,7 @@ function onValidate() {
|
|||
* check ว่าลาได้ไหม จาก api
|
||||
* @param formData
|
||||
*/
|
||||
const leaveEndDateRules = ref([val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`])
|
||||
const isLeave = ref<boolean>(true)
|
||||
async function fetchCheck() {
|
||||
await http
|
||||
|
|
@ -145,8 +146,10 @@ async function fetchCheck() {
|
|||
if (data.isLeave === true) {
|
||||
// formDataOrdination.leaveTotal = data.totalDate - data.sumDateWork - data.sumDateHoliday
|
||||
formDataOrdination.leaveTotal = data.totalDate
|
||||
this.leaveEndDateRules = [val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`]
|
||||
} else {
|
||||
fails($q, "ไม่สามารถลาได้")
|
||||
this.leaveEndDateRules = [val => false || `${"ไม่สามารถลาได้"}`]
|
||||
}
|
||||
})
|
||||
.catch((e: any) => {
|
||||
|
|
@ -276,7 +279,7 @@ onMounted(() => {
|
|||
:model-value="formDataOrdination.leaveEndDate != null ? date2Thai(formDataOrdination.leaveEndDate) : null"
|
||||
:label="`${'ลาถึงวันที่'}`"
|
||||
:readonly="!formDataOrdination.leaveStartDate || statusCheck === 'NEW'"
|
||||
:rules="[val => !!val || `${'กรุณาเลือกลาถึงวันที่'}`]"
|
||||
:rules="leaveEndDateRules"
|
||||
>
|
||||
<template v-slot:prepend>
|
||||
<q-icon name="event" class="cursor-pointer" style="color: var(--q-primary)"> </q-icon>
|
||||
|
|
@ -519,7 +522,7 @@ onMounted(() => {
|
|||
<!-- <div class="col-12">
|
||||
<q-card class="q-pa-md" bordered> ไม่มีรายการเอกสารประกอบ{{ leaveDocumentList }} </q-card>
|
||||
</div> -->
|
||||
<q-list separator>
|
||||
<q-list separator v-if="leaveDocumentList && leaveDocumentList.length > 0">
|
||||
<q-item v-for="(document, index) in leaveDocumentList" :key="index" class="q-my-xs">
|
||||
<q-item-section>
|
||||
<q-item-label class="row items-baseline">
|
||||
|
|
@ -533,6 +536,9 @@ onMounted(() => {
|
|||
</q-item-section>
|
||||
</q-item>
|
||||
</q-list>
|
||||
<div class="col-12" v-else>
|
||||
<q-card class="q-pa-md" bordered> ไม่มีรายการเอกสารประกอบ </q-card>
|
||||
</div>
|
||||
</q-card>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -102,8 +102,10 @@ function onValidate() {
|
|||
* check ว่าลาได้ไหม จาก api
|
||||
* @param formData
|
||||
*/
|
||||
const leaveEndDateRules = ref([val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`])
|
||||
const isLeave = ref<boolean>(true)
|
||||
async function fetchCheck() {
|
||||
console.log("check")
|
||||
await http
|
||||
.post(config.API.leaveCheck(), {
|
||||
type: dataStore.typeId ?? null,
|
||||
|
|
@ -116,8 +118,10 @@ async function fetchCheck() {
|
|||
if (data.isLeave === true) {
|
||||
// formDataHaji.leaveTotal = data.totalDate - data.sumDateWork - data.sumDateHoliday
|
||||
formDataHaji.leaveTotal = data.totalDate
|
||||
this.leaveEndDateRules = [val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`]
|
||||
} else {
|
||||
fails($q, "ไม่สามารถลาได้")
|
||||
this.leaveEndDateRules = [val => false || `${"ไม่สามารถลาได้"}`]
|
||||
}
|
||||
})
|
||||
.catch((e: any) => {
|
||||
|
|
@ -222,7 +226,7 @@ onMounted(() => {
|
|||
week-start="0"
|
||||
:enableTimePicker="false"
|
||||
:locale="'th'"
|
||||
@update:model-value="updateLeaveTotal"
|
||||
@update:model-value="updateLeaveTotal(), fetchCheck()"
|
||||
:readonly="!formDataHaji.leaveStartDate || statusCheck === 'NEW'"
|
||||
:min-date="formDataHaji.leaveStartDate"
|
||||
>
|
||||
|
|
@ -242,9 +246,9 @@ onMounted(() => {
|
|||
:readonly="!formDataHaji.leaveStartDate || statusCheck === 'NEW'"
|
||||
hide-bottom-space
|
||||
:label="`${'ลาถึงวันที่'}`"
|
||||
@update:model-value="fetchCheck()"
|
||||
:model-value="formDataHaji.leaveEndDate != null ? date2Thai(formDataHaji.leaveEndDate) : null"
|
||||
:rules="[val => !!val || `${'กรุณาเลือกลาถึงวันที่'}`]"
|
||||
:rules="leaveEndDateRules"
|
||||
@update:model-value="fetchCheck()"
|
||||
>
|
||||
<template v-slot:prepend>
|
||||
<q-icon name="event" class="cursor-pointer" style="color: var(--q-primary)"> </q-icon>
|
||||
|
|
@ -329,7 +333,7 @@ onMounted(() => {
|
|||
<!-- <div class="col-12">
|
||||
<q-card class="q-pa-md" bordered> ไม่มีรายการเอกสารประกอบ{{ leaveDocumentList }} </q-card>
|
||||
</div> -->
|
||||
<q-list separator>
|
||||
<q-list separator v-if="leaveDocumentList && leaveDocumentList.length > 0">
|
||||
<q-item v-for="(document, index) in leaveDocumentList" :key="index" class="q-my-xs">
|
||||
<q-item-section>
|
||||
<q-item-label class="row items-baseline">
|
||||
|
|
@ -343,6 +347,10 @@ onMounted(() => {
|
|||
</q-item-section>
|
||||
</q-item>
|
||||
</q-list>
|
||||
|
||||
<div class="col-12" v-else>
|
||||
<q-card class="q-pa-md" bordered> ไม่มีรายการเอกสารประกอบ </q-card>
|
||||
</div>
|
||||
</q-card>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -118,6 +118,7 @@ function onValidate() {
|
|||
* check ว่าลาได้ไหม จาก api
|
||||
* @param formData
|
||||
*/
|
||||
const leaveEndDateRules = ref([val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`])
|
||||
const isLeave = ref<boolean>(true)
|
||||
async function fetchCheck() {
|
||||
await http
|
||||
|
|
@ -132,8 +133,10 @@ async function fetchCheck() {
|
|||
if (data.isLeave === true) {
|
||||
// formDataMilitary.leaveTotal = data.totalDate - data.sumDateWork - data.sumDateHoliday
|
||||
formDataMilitary.leaveTotal = data.totalDate
|
||||
this.leaveEndDateRules = [val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`]
|
||||
} else {
|
||||
fails($q, "ไม่สามารถลาได้")
|
||||
this.leaveEndDateRules = [val => false || `${"ไม่สามารถลาได้"}`]
|
||||
}
|
||||
})
|
||||
.catch((e: any) => {
|
||||
|
|
@ -261,7 +264,7 @@ onMounted(() => {
|
|||
class="full-width datepicker"
|
||||
:model-value="formDataMilitary.leaveEndDate != null ? date2Thai(formDataMilitary.leaveEndDate) : null"
|
||||
:label="`${'ลาถึงวันที่'}`"
|
||||
:rules="[val => !!val || `${'กรุณาเลือกลาถึงวันที่'}`]"
|
||||
:rules="leaveEndDateRules"
|
||||
>
|
||||
<template v-slot:prepend>
|
||||
<q-icon name="event" class="cursor-pointer" style="color: var(--q-primary)"> </q-icon>
|
||||
|
|
@ -406,7 +409,7 @@ onMounted(() => {
|
|||
<!-- <div class="col-12">
|
||||
<q-card class="q-pa-md" bordered> ไม่มีรายการเอกสารประกอบ{{ leaveDocumentList }} </q-card>
|
||||
</div> -->
|
||||
<q-list separator>
|
||||
<q-list separator v-if="leaveDocumentList && leaveDocumentList.length > 0">
|
||||
<q-item v-for="(document, index) in leaveDocumentList" :key="index" class="q-my-xs">
|
||||
<q-item-section>
|
||||
<q-item-label class="row items-baseline">
|
||||
|
|
@ -420,6 +423,9 @@ onMounted(() => {
|
|||
</q-item-section>
|
||||
</q-item>
|
||||
</q-list>
|
||||
<div class="col-12" v-else>
|
||||
<q-card class="q-pa-md" bordered> ไม่มีรายการเอกสารประกอบ </q-card>
|
||||
</div>
|
||||
</q-card>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -136,6 +136,8 @@ function onValidate() {
|
|||
* @param formData
|
||||
*/
|
||||
const isLeave = ref<boolean>(true)
|
||||
const leaveEndDateRules = ref([val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`])
|
||||
|
||||
async function fetchCheck() {
|
||||
await http
|
||||
.post(config.API.leaveCheck(), {
|
||||
|
|
@ -149,8 +151,10 @@ async function fetchCheck() {
|
|||
if (data.isLeave === true) {
|
||||
// formDataStudy.leaveTotal = data.totalDate - data.sumDateWork - data.sumDateHoliday;
|
||||
formDataStudy.leaveTotal = data.totalDate
|
||||
this.leaveEndDateRules = [val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`]
|
||||
} else {
|
||||
fails($q, "ไม่สามารถลาได้")
|
||||
this.leaveEndDateRules = [val => false || `${"ไม่สามารถลาได้"}`]
|
||||
}
|
||||
})
|
||||
.catch((e: any) => {
|
||||
|
|
@ -162,7 +166,6 @@ async function fetchCheck() {
|
|||
* function อัพเดทค่า LeaveTotal
|
||||
*/
|
||||
function updateLeaveTotal() {
|
||||
fetchCheck()
|
||||
const newLeaveTotal = calculateDurationYmd(formDataStudy.leaveStartDate, formDataStudy.leaveEndDate)
|
||||
formDataStudy.leaveTotal = newLeaveTotal
|
||||
}
|
||||
|
|
@ -265,7 +268,7 @@ onMounted(async () => {
|
|||
borderless
|
||||
week-start="0"
|
||||
:locale="'th'"
|
||||
@update:model-value="updateLeaveTotal()"
|
||||
@update:model-value="updateLeaveTotal(), fetchCheck()"
|
||||
:readonly="!formDataStudy.leaveStartDate || statusCheck === 'NEW'"
|
||||
:enableTimePicker="false"
|
||||
:min-date="formDataStudy.leaveStartDate"
|
||||
|
|
@ -288,7 +291,7 @@ onMounted(async () => {
|
|||
:label="`${'ลาถึงวันที่'}`"
|
||||
:readonly="!formDataStudy.leaveStartDate || statusCheck === 'NEW'"
|
||||
:model-value="formDataStudy.leaveEndDate != null ? date2Thai(formDataStudy.leaveEndDate) : null"
|
||||
:rules="[val => !!val || `${'กรุณาเลือกลาถึงวันที่'}`]"
|
||||
:rules="leaveEndDateRules"
|
||||
>
|
||||
<template v-slot:prepend>
|
||||
<q-icon name="event" class="cursor-pointer" style="color: var(--q-primary)"> </q-icon>
|
||||
|
|
@ -507,7 +510,7 @@ onMounted(async () => {
|
|||
<!-- <div class="col-12">
|
||||
<q-card class="q-pa-md" bordered> ไม่มีรายการเอกสารประกอบ{{ leaveDocumentList }} </q-card>
|
||||
</div> -->
|
||||
<q-list separator>
|
||||
<q-list separator v-if="leaveDocumentList && leaveDocumentList.length > 0">
|
||||
<q-item v-for="(document, index) in leaveDocumentList" :key="index" class="q-my-xs">
|
||||
<q-item-section>
|
||||
<q-item-label class="row items-baseline">
|
||||
|
|
@ -521,6 +524,9 @@ onMounted(async () => {
|
|||
</q-item-section>
|
||||
</q-item>
|
||||
</q-list>
|
||||
<div class="col-12" v-else>
|
||||
<q-card class="q-pa-md" bordered> ไม่มีรายการเอกสารประกอบ </q-card>
|
||||
</div>
|
||||
</q-card>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -133,6 +133,8 @@ function onValidate() {
|
|||
* check ว่าลาได้ไหม จาก api
|
||||
* @param formData
|
||||
*/
|
||||
const leaveEndDateRules = ref([val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`])
|
||||
|
||||
const isLeave = ref<boolean>(true)
|
||||
async function fetchCheck() {
|
||||
await http
|
||||
|
|
@ -147,8 +149,10 @@ async function fetchCheck() {
|
|||
if (data.isLeave === true) {
|
||||
// formDataTrain.leaveTotal = data.totalDate - data.sumDateWork - data.sumDateHoliday
|
||||
formDataTrain.leaveTotal = data.totalDate
|
||||
this.leaveEndDateRules = [val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`]
|
||||
} else {
|
||||
fails($q, "ไม่สามารถลาได้")
|
||||
this.leaveEndDateRules = [val => false || `${"ไม่สามารถลาได้"}`]
|
||||
}
|
||||
})
|
||||
.catch((e: any) => {
|
||||
|
|
@ -160,7 +164,6 @@ async function fetchCheck() {
|
|||
* function อัพเดทค่า LeaveTotal
|
||||
*/
|
||||
function updateLeaveTotal() {
|
||||
fetchCheck()
|
||||
const newLeaveTotal = calculateDurationYmd(formDataTrain.leaveStartDate, formDataTrain.leaveEndDate)
|
||||
formDataTrain.leaveTotal = newLeaveTotal
|
||||
}
|
||||
|
|
@ -267,7 +270,7 @@ onMounted(async () => {
|
|||
menu-class-name="modalfix"
|
||||
autoApply
|
||||
borderless
|
||||
@update:model-value="updateLeaveTotal()"
|
||||
@update:model-value="updateLeaveTotal(), fetchCheck()"
|
||||
week-start="0"
|
||||
:readonly="!formDataTrain.leaveStartDate || statusCheck === 'NEW'"
|
||||
:locale="'th'"
|
||||
|
|
@ -292,7 +295,7 @@ onMounted(async () => {
|
|||
:label="`${'ลาถึงวันที่'}`"
|
||||
:readonly="!formDataTrain.leaveStartDate || statusCheck === 'NEW'"
|
||||
:model-value="formDataTrain.leaveEndDate != null ? date2Thai(formDataTrain.leaveEndDate) : null"
|
||||
:rules="[val => !!val || `${'กรุณาเลือกลาถึงวันที่'}`]"
|
||||
:rules="leaveEndDateRules"
|
||||
>
|
||||
<template v-slot:prepend>
|
||||
<q-icon name="event" class="cursor-pointer" style="color: var(--q-primary)"> </q-icon>
|
||||
|
|
@ -507,7 +510,7 @@ onMounted(async () => {
|
|||
<!-- <div class="col-12">
|
||||
<q-card class="q-pa-md" bordered> ไม่มีรายการเอกสารประกอบ{{ leaveDocumentList }} </q-card>
|
||||
</div> -->
|
||||
<q-list separator>
|
||||
<q-list separator v-if="leaveDocumentList && leaveDocumentList.length > 0">
|
||||
<q-item v-for="(document, index) in leaveDocumentList" :key="index" class="q-my-xs">
|
||||
<q-item-section>
|
||||
<q-item-label class="row items-baseline">
|
||||
|
|
@ -521,6 +524,9 @@ onMounted(async () => {
|
|||
</q-item-section>
|
||||
</q-item>
|
||||
</q-list>
|
||||
<div class="col-12" v-else>
|
||||
<q-card class="q-pa-md" bordered> ไม่มีรายการเอกสารประกอบ </q-card>
|
||||
</div>
|
||||
</q-card>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -128,6 +128,7 @@ async function onClickDownloadFile(id: string, fileName: string) {
|
|||
* check ว่าลาได้ไหม จาก api
|
||||
* @param formData
|
||||
*/
|
||||
const leaveEndDateRules = ref([val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`])
|
||||
const isLeave = ref<boolean>(true)
|
||||
async function FetchCheck() {
|
||||
await http
|
||||
|
|
@ -142,8 +143,10 @@ async function FetchCheck() {
|
|||
if (data.isLeave === true) {
|
||||
formDataWorkInternational.leaveTotal = data.totalDate - data.sumDateWork - data.sumDateHoliday
|
||||
// formDataWorkInternational.leaveLast = data.totalDate
|
||||
this.leaveEndDateRules = [val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`]
|
||||
} else {
|
||||
fails($q, "ไม่สามารถลาได้")
|
||||
this.leaveEndDateRules = [val => false || `${"ไม่สามารถลาได้"}`]
|
||||
}
|
||||
})
|
||||
.catch((e: any) => {
|
||||
|
|
@ -263,7 +266,7 @@ onMounted(() => {
|
|||
class="full-width datepicker"
|
||||
:model-value="formDataWorkInternational.leaveEndDate != null ? date2Thai(formDataWorkInternational.leaveEndDate) : null"
|
||||
:label="`${'ลาถึงวันที่'}`"
|
||||
:rules="[val => !!val || `${'กรุณาเลือกลาถึงวันที่'}`]"
|
||||
:rules="leaveEndDateRules"
|
||||
>
|
||||
<template v-slot:prepend>
|
||||
<q-icon name="event" class="cursor-pointer" style="color: var(--q-primary)"> </q-icon>
|
||||
|
|
@ -349,7 +352,7 @@ onMounted(() => {
|
|||
<div class="q-pl-sm text-weight-bold text-dark">เอกสารเพิ่มเติม</div>
|
||||
</div>
|
||||
<q-card bordered flat class="full-width">
|
||||
<q-list separator>
|
||||
<q-list separator v-if="leaveDocumentList && leaveDocumentList.length > 0">
|
||||
<q-item v-for="(file, index) in leaveDocumentList" :key="index" class="q-my-xs">
|
||||
<q-item-section>
|
||||
<q-item-label class="full-width ellipsis">
|
||||
|
|
@ -359,6 +362,9 @@ onMounted(() => {
|
|||
</q-item-section>
|
||||
</q-item>
|
||||
</q-list>
|
||||
<div class="col-12" v-else>
|
||||
<q-card class="q-pa-md" bordered> ไม่มีรายการเอกสารประกอบ </q-card>
|
||||
</div>
|
||||
</q-card>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -142,6 +142,7 @@ function onValidate() {
|
|||
* check ว่าลาได้ไหม จาก api
|
||||
* @param formData
|
||||
*/
|
||||
const leaveEndDateRules = ref([val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`])
|
||||
const isLeave = ref<boolean>(true)
|
||||
async function fetchCheck() {
|
||||
await http
|
||||
|
|
@ -156,8 +157,10 @@ async function fetchCheck() {
|
|||
if (data.isLeave === true) {
|
||||
// formDataFollowSpouse.leaveTotal = data.totalDate - data.sumDateWork - data.sumDateHoliday;
|
||||
// formDataFollowSpouse.leaveTotal = data.totalDate;
|
||||
this.leaveEndDateRules = [val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`]
|
||||
} else {
|
||||
fails($q, "ไม่สามารถลาได้")
|
||||
this.leaveEndDateRules = [val => false || `${"ไม่สามารถลาได้"}`]
|
||||
}
|
||||
})
|
||||
.catch((e: any) => {
|
||||
|
|
@ -286,7 +289,7 @@ onMounted(async () => {
|
|||
hide-bottom-space
|
||||
:enableTimePicker="false"
|
||||
week-start="0"
|
||||
@update:model-value="updateLeaveTotal()"
|
||||
@update:model-value="updateLeaveTotal(), fetchCheck()"
|
||||
:readonly="!formDataFollowSpouse.leaveStartDate || statusCheck === 'NEW'"
|
||||
:min-date="formDataFollowSpouse.leaveStartDate"
|
||||
>
|
||||
|
|
@ -308,7 +311,7 @@ onMounted(async () => {
|
|||
class="full-width datepicker"
|
||||
:model-value="formDataFollowSpouse.leaveEndDate != null ? date2Thai(formDataFollowSpouse.leaveEndDate) : null"
|
||||
:label="`${'ลาถึงวันที่'}`"
|
||||
:rules="[val => !!val || `${'กรุณาเลือกลาถึงวันที่'}`]"
|
||||
:rules="leaveEndDateRules"
|
||||
>
|
||||
<template v-slot:prepend>
|
||||
<q-icon name="event" class="cursor-pointer" style="color: var(--q-primary)"> </q-icon>
|
||||
|
|
@ -566,7 +569,7 @@ onMounted(async () => {
|
|||
<!-- <div class="col-12">
|
||||
<q-card class="q-pa-md" bordered> ไม่มีรายการเอกสารประกอบ{{ leaveDocumentList }} </q-card>
|
||||
</div> -->
|
||||
<q-list separator>
|
||||
<q-list separator v-if="leaveDocumentList && leaveDocumentList.length > 0">
|
||||
<q-item v-for="(document, index) in leaveDocumentList" :key="index" class="q-my-xs">
|
||||
<q-item-section>
|
||||
<q-item-label class="row items-baseline">
|
||||
|
|
@ -580,6 +583,9 @@ onMounted(async () => {
|
|||
</q-item-section>
|
||||
</q-item>
|
||||
</q-list>
|
||||
<div class="col-12" v-else>
|
||||
<q-card class="q-pa-md" bordered> ไม่มีรายการเอกสารประกอบ </q-card>
|
||||
</div>
|
||||
</q-card>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -107,6 +107,7 @@ const fileUploadDoc = async (files: any) => {
|
|||
* check ว่าลาได้ไหม จาก api
|
||||
* @param formData
|
||||
*/
|
||||
const leaveEndDateRules = ref([val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`])
|
||||
const isLeave = ref<boolean>(true)
|
||||
async function FetchCheck() {
|
||||
await http
|
||||
|
|
@ -119,10 +120,12 @@ async function FetchCheck() {
|
|||
const data = res.data.result
|
||||
isLeave.value = data.isLeave
|
||||
if (data.isLeave === true) {
|
||||
this.leaveEndDateRules = [val => !!val || `${"กรุณาเลือกลาถึงวันที่"}`]
|
||||
// formDataRehabilitation.leaveTotal = data.totalDate - data.sumDateWork - data.sumDateHoliday
|
||||
// formDataRehabilitation.leaveTotal = data.totalDate
|
||||
} else {
|
||||
fails($q, "ไม่สามารถลาได้")
|
||||
this.leaveEndDateRules = [val => false || `${"ไม่สามารถลาได้"}`]
|
||||
}
|
||||
})
|
||||
.catch((e: any) => {
|
||||
|
|
@ -256,7 +259,7 @@ onMounted(() => {
|
|||
:readonly="!formDataRehabilitation.leaveStartDate || statusCheck === 'NEW'"
|
||||
:model-value="formDataRehabilitation.leaveEndDate != null ? date2Thai(formDataRehabilitation.leaveEndDate) : null"
|
||||
:label="`${'ลาถึงวันที่'}`"
|
||||
:rules="[val => !!val || `${'กรุณาเลือกลาถึงวันที่'}`]"
|
||||
:rules="leaveEndDateRules"
|
||||
>
|
||||
<template v-slot:prepend>
|
||||
<q-icon name="event" class="cursor-pointer" style="color: var(--q-primary)"> </q-icon>
|
||||
|
|
@ -316,7 +319,7 @@ onMounted(() => {
|
|||
<div class="q-pl-sm text-weight-bold text-dark">เอกสารเพิ่มเติม</div>
|
||||
</div>
|
||||
<q-card bordered flat class="full-width">
|
||||
<q-list separator>
|
||||
<q-list separator v-if="leaveDocumentList && leaveDocumentList.length > 0">
|
||||
<q-item v-for="(file, index) in leaveDocumentList" :key="index" class="q-my-xs">
|
||||
<q-item-section>
|
||||
<q-item-label class="full-width ellipsis">
|
||||
|
|
@ -326,6 +329,9 @@ onMounted(() => {
|
|||
</q-item-section>
|
||||
</q-item>
|
||||
</q-list>
|
||||
<div class="col-12" v-else>
|
||||
<q-card class="q-pa-md" bordered> ไม่มีรายการเอกสารประกอบ </q-card>
|
||||
</div>
|
||||
</q-card>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -63,7 +63,7 @@ console.log(props)
|
|||
<div class="col text-grey-8">เอกสารแนบ</div>
|
||||
<div class="col">
|
||||
<div v-if="props.data.leaveDocument && props.data.leaveDocument.length > 0">
|
||||
<div v-for="(document, index) in props.data.leaveDocument" :key="index">
|
||||
<div v-for="(document, index) in props.data.leaveDocument" :key="index" :style="{ marginBottom: '10px' }">
|
||||
<div>
|
||||
{{ "เอกสารแนบฉบับที่" + (index + 1) }}
|
||||
<q-btn :href="document" target="_blank" outline color="blue" label="ดาวน์โหลด" size="12px">
|
||||
|
|
|
|||
|
|
@ -57,7 +57,7 @@ const props = defineProps({
|
|||
<div class="col text-grey-8">เอกสารแนบ</div>
|
||||
<div class="col">
|
||||
<div v-if="props.data.leaveDocument && props.data.leaveDocument.length > 0">
|
||||
<div v-for="(document, index) in props.data.leaveDocument" :key="index">
|
||||
<div v-for="(document, index) in props.data.leaveDocument" :key="index" :style="{ marginBottom: '11px' }">
|
||||
<div>
|
||||
{{ "เอกสารแนบฉบับที่" + (index + 1) }}
|
||||
<q-btn :href="document" target="_blank" outline color="blue" label="ดาวน์โหลด" size="12px">
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ const props = defineProps({
|
|||
<div class="col text-grey-8">เอกสารแนบ</div>
|
||||
<div class="col">
|
||||
<div v-if="props.data.leaveDocument && props.data.leaveDocument.length > 0">
|
||||
<div v-for="(document, index) in props.data.leaveDocument" :key="index">
|
||||
<div v-for="(document, index) in props.data.leaveDocument" :key="index" :style="{ marginBottom: '10px' }">
|
||||
<div>
|
||||
{{ "เอกสารแนบฉบับที่" + (index + 1) }}
|
||||
<q-btn :href="document" target="_blank" outline color="blue" label="ดาวน์โหลด" size="12px">
|
||||
|
|
|
|||
|
|
@ -62,7 +62,7 @@ const props = defineProps({
|
|||
<div class="col text-grey-8">เอกสารแนบ</div>
|
||||
<div class="col">
|
||||
<div v-if="props.data.leaveDocument && props.data.leaveDocument.length > 0">
|
||||
<div v-for="(document, index) in props.data.leaveDocument" :key="index">
|
||||
<div v-for="(document, index) in props.data.leaveDocument" :key="index" :style="{ marginBottom: '10px' }">
|
||||
<div>
|
||||
{{ "เอกสารแนบฉบับที่" + (index + 1) }}
|
||||
<q-btn :href="document" target="_blank" outline color="blue" label="ดาวน์โหลด" size="12px">
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@ const props = defineProps({
|
|||
<div class="col text-grey-8">เอกสารแนบ</div>
|
||||
<div class="col">
|
||||
<div v-if="props.data.leaveDocument && props.data.leaveDocument.length > 0">
|
||||
<div v-for="(document, index) in props.data.leaveDocument" :key="index">
|
||||
<div v-for="(document, index) in props.data.leaveDocument" :key="index" :style="{ marginBottom: '10px' }">
|
||||
<div>
|
||||
{{ "เอกสารแนบฉบับที่" + (index + 1) }}
|
||||
<q-btn :href="document" target="_blank" outline color="blue" label="ดาวน์โหลด" size="12px">
|
||||
|
|
|
|||
|
|
@ -79,7 +79,7 @@ const props = defineProps({
|
|||
<div class="col text-grey-8">เอกสารแนบ</div>
|
||||
<div class="col">
|
||||
<div v-if="props.data.leaveDocument && props.data.leaveDocument.length > 0">
|
||||
<div v-for="(document, index) in props.data.leaveDocument" :key="index">
|
||||
<div v-for="(document, index) in props.data.leaveDocument" :key="index" :style="{ marginBottom: '10px' }">
|
||||
<div>
|
||||
{{ "เอกสารแนบฉบับที่" + (index + 1) }}
|
||||
<q-btn :href="document" target="_blank" outline color="blue" label="ดาวน์โหลด" size="12px">
|
||||
|
|
|
|||
|
|
@ -44,7 +44,7 @@ const props = defineProps({
|
|||
<div class="col text-grey-8">เอกสารแนบ</div>
|
||||
<div class="col">
|
||||
<div v-if="props.data.leaveDocument && props.data.leaveDocument.length > 0">
|
||||
<div v-for="(document, index) in props.data.leaveDocument" :key="index">
|
||||
<div v-for="(document, index) in props.data.leaveDocument" :key="index" :style="{ marginBottom: '10px' }">
|
||||
<div>
|
||||
{{ "เอกสารแนบฉบับที่" + (index + 1) }}
|
||||
<q-btn :href="document" target="_blank" outline color="blue" label="ดาวน์โหลด" size="12px">
|
||||
|
|
|
|||
|
|
@ -86,7 +86,7 @@ const props = defineProps({
|
|||
<div class="col text-grey-8">เอกสารแนบ</div>
|
||||
<div class="col">
|
||||
<div v-if="props.data.leaveDocument && props.data.leaveDocument.length > 0">
|
||||
<div v-for="(document, index) in props.data.leaveDocument" :key="index">
|
||||
<div v-for="(document, index) in props.data.leaveDocument" :key="index" :style="{ marginBottom: '10px' }">
|
||||
<div>
|
||||
{{ "เอกสารแนบฉบับที่" + (index + 1) }}
|
||||
<q-btn :href="document" target="_blank" outline color="blue" label="ดาวน์โหลด" size="12px">
|
||||
|
|
|
|||
|
|
@ -82,7 +82,7 @@ const props = defineProps({
|
|||
<div class="col text-grey-8">เอกสารแนบ</div>
|
||||
<div class="col">
|
||||
<div v-if="props.data.leaveDocument && props.data.leaveDocument.length > 0">
|
||||
<div v-for="(document, index) in props.data.leaveDocument" :key="index">
|
||||
<div v-for="(document, index) in props.data.leaveDocument" :key="index" :style="{ marginBottom: '10px' }">
|
||||
<div>
|
||||
{{ "เอกสารแนบฉบับที่" + (index + 1) }}
|
||||
<q-btn :href="document" target="_blank" outline color="blue" label="ดาวน์โหลด" size="12px">
|
||||
|
|
|
|||
|
|
@ -75,7 +75,7 @@ const props = defineProps({
|
|||
<div class="col text-grey-8">เอกสารแนบ</div>
|
||||
<div class="col">
|
||||
<div v-if="props.data.leaveDocument && props.data.leaveDocument.length > 0">
|
||||
<div v-for="(document, index) in props.data.leaveDocument" :key="index">
|
||||
<div v-for="(document, index) in props.data.leaveDocument" :key="index" :style="{ marginBottom: '10px' }">
|
||||
<div>
|
||||
{{ "เอกสารแนบฉบับที่" + (index + 1) }}
|
||||
<q-btn :href="document" target="_blank" outline color="blue" label="ดาวน์โหลด" size="12px">
|
||||
|
|
|
|||
|
|
@ -44,7 +44,7 @@ const props = defineProps({
|
|||
<div class="col text-grey-8">เอกสารแนบ</div>
|
||||
<div class="col">
|
||||
<div v-if="props.data.leaveDocument && props.data.leaveDocument.length > 0">
|
||||
<div v-for="(document, index) in props.data.leaveDocument" :key="index">
|
||||
<div v-for="(document, index) in props.data.leaveDocument" :key="index" :style="{ marginBottom: '10px' }">
|
||||
<div>
|
||||
{{ "เอกสารแนบฉบับที่" + (index + 1) }}
|
||||
<q-btn :href="document" target="_blank" outline color="blue" label="ดาวน์โหลด" size="12px">
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue