val:string

This commit is contained in:
STW_TTTY\stwtt 2024-09-20 15:30:46 +07:00
parent f5bd486cbe
commit a221721037
20 changed files with 133 additions and 182 deletions

View file

@ -1148,7 +1148,7 @@ onMounted(async () => {
<div class="col-xs-12 col-sm-4">
<q-select
:rules="[(val) => !!val || 'กรุณาเลือกระยะเวลา']"
:rules="[(val:string) => !!val || 'กรุณาเลือกระยะเวลา']"
hide-bottom-space
:options="monthOp"
:readonly="editStatus != true"
@ -1185,7 +1185,7 @@ onMounted(async () => {
borderless
:readonly="editStatus != true"
:outlined="editStatus == true"
:rules="[(val) => !!val || 'กรุณาเลือกวันที่']"
:rules="[(val:string) => !!val || 'กรุณาเลือกวันที่']"
hide-bottom-space
class="full-width datepicker"
:model-value="
@ -1244,7 +1244,7 @@ onMounted(async () => {
</div>
<div class="col-xs-12 col-sm-6">
<q-select
:rules="[(val) => !!val || 'กรุณาเลือกผู้ดูเเล']"
:rules="[(val:string) => !!val || 'กรุณาเลือกผู้ดูเเล']"
option-value="id"
:options="optionCaretaker"
:readonly="editStatus != true"
@ -1328,7 +1328,7 @@ onMounted(async () => {
<div class="col-12 row q-col-gutter-sm">
<div class="col-xs-12 col-sm-6">
<q-input
:rules="index < 2 ? [(val) => !!val || 'กรุณากรอกข้อมูล'] : []"
:rules="index < 2 ? [(val:string) => !!val || 'กรุณากรอกข้อมูล'] : []"
hide-bottom-space
:readonly="editStatus != true"
dense
@ -1342,7 +1342,7 @@ onMounted(async () => {
</div>
<div class="col-xs-12 col-sm-5">
<q-input
:rules="index < 2 ? [(val) => !!val || 'กรุณากรอกข้อมูล'] : []"
:rules="index < 2 ? [(val:string) => !!val || 'กรุณากรอกข้อมูล'] : []"
hide-bottom-space
:readonly="editStatus != true"
dense
@ -1400,11 +1400,11 @@ onMounted(async () => {
>
<div class="col-xs-12 col-sm-11 q-my-xs">
<q-select
:option-label="(item) => `${item.title}-${item.description}`"
:option-label="(item:any) => `${item.title}-${item.description}`"
option-value="id"
map-options
:rules="
index < 3 ? [(val) => !!val || 'กรุณาเลือกความสามารถ'] : []
index < 3 ? [(val:string) => !!val || 'กรุณาเลือกความสามารถ'] : []
"
hide-bottom-space
:options="OPknowledge"
@ -1697,11 +1697,11 @@ onMounted(async () => {
<div class="col-xs-12 col-sm-6">
<q-select
:option-label="
(item) => `${item.title} - ${item.level_description}`
(item:any) => `${item.title} - ${item.level_description}`
"
option-value="id"
hide-bottom-space
:rules="[(val) => !!val || 'กรุณาเลือกความรู้ความสามารถ']"
:rules="[(val:string) => !!val || 'กรุณาเลือกความรู้ความสามารถ']"
:options="OPcomputer"
class="bg-white"
:readonly="editStatus != true"
@ -1725,12 +1725,12 @@ onMounted(async () => {
<q-select
ellipsis-2-lines
:option-label="
(item) => `${item.title} - ${item.level_description}`
(item:any) => `${item.title} - ${item.level_description}`
"
option-value="id"
map-options
hide-bottom-space
:rules="[(val) => !!val || 'กรุณาเลือกความรู้ความสามารถ']"
:rules="[(val:string) => !!val || 'กรุณาเลือกความรู้ความสามารถ']"
:options="OPenglish"
class="bg-white"
:readonly="editStatus != true"
@ -1752,11 +1752,11 @@ onMounted(async () => {
<div class="col-xs-12 col-sm-6">
<q-select
:option-label="
(item) => `${item.title} - ${item.level_description}`
(item:any) => `${item.title} - ${item.level_description}`
"
option-value="id"
hide-bottom-space
:rules="[(val) => !!val || 'กรุณาเลือกความรู้ความสามารถ']"
:rules="[(val:string) => !!val || 'กรุณาเลือกความรู้ความสามารถ']"
:options="OPinfomation"
class="bg-white"
:readonly="editStatus != true"
@ -1779,11 +1779,11 @@ onMounted(async () => {
<div class="col-xs-12 col-sm-6">
<q-select
:option-label="
(item) => `${item.title} - ${item.level_description}`
(item:any) => `${item.title} - ${item.level_description}`
"
option-value="id"
hide-bottom-space
:rules="[(val) => !!val || 'กรุณาเลือกความรู้ความสามารถ']"
:rules="[(val:string) => !!val || 'กรุณาเลือกความรู้ความสามารถ']"
:options="OPresourse"
class="bg-white"
:readonly="editStatus != true"
@ -1820,11 +1820,11 @@ onMounted(async () => {
<q-select
:options-html="true"
:option-label="
(item) => `${item.name} - ระดับ:๑ ${item.description}`
(item:any) => `${item.name} - ระดับ:๑ ${item.description}`
"
option-value="id"
hide-bottom-space
:rules="[(val) => !!val || 'กรุณาเลือกสมรรถนะ']"
:rules="[(val:string) => !!val || 'กรุณาเลือกสมรรถนะ']"
:options="filterMain(OPmain, [main2, main3, main4, main5])"
class="bg-white"
:readonly="editStatus != true"
@ -1835,12 +1835,6 @@ onMounted(async () => {
v-model="main"
label="ตัวที่ 1"
>
<!-- <template v-slot:selected-item="scope">
<div class="ellipsis-2-lines">
{{ scope.opt.title }} -
{{ scope.opt.description }}
</div>
</template> -->
</q-select>
</div>
@ -1848,11 +1842,11 @@ onMounted(async () => {
<q-select
:options-html="true"
:option-label="
(item) => `${item.name} - ระดับ:๑ ${item.description}`
(item:any) => `${item.name} - ระดับ:๑ ${item.description}`
"
option-value="id"
hide-bottom-space
:rules="[(val) => !!val || 'กรุณาเลือกสมรรถนะ']"
:rules="[(val:string) => !!val || 'กรุณาเลือกสมรรถนะ']"
:options="filterMain(OPmain, [main, main3, main4, main5])"
class="bg-white"
:readonly="editStatus != true"
@ -1863,12 +1857,6 @@ onMounted(async () => {
v-model="main2"
label="ตัวที่ 2"
>
<!-- <template v-slot:selected-item="scope">
<div class="ellipsis-2-lines">
{{ scope.opt.title }} -
{{ scope.opt.description }}
</div>
</template> -->
</q-select>
</div>
@ -1876,11 +1864,11 @@ onMounted(async () => {
<q-select
:options-html="true"
:option-label="
(item) => `${item.name} - ระดับ:๑ ${item.description}`
(item:any) => `${item.name} - ระดับ:๑ ${item.description}`
"
option-value="id"
hide-bottom-space
:rules="[(val) => !!val || 'กรุณาเลือกสมรรถนะ']"
:rules="[(val:string) => !!val || 'กรุณาเลือกสมรรถนะ']"
:options="filterMain(OPmain, [main, main2, main4, main5])"
class="bg-white"
:readonly="editStatus != true"
@ -1891,12 +1879,6 @@ onMounted(async () => {
v-model="main3"
label="ตัวที่ 3"
>
<!-- <template v-slot:selected-item="scope">
<div class="ellipsis-2-lines">
{{ scope.opt.title }} -
{{ scope.opt.description }}
</div>
</template> -->
</q-select>
</div>
@ -1904,11 +1886,11 @@ onMounted(async () => {
<q-select
:options-html="true"
:option-label="
(item) => `${item.name} - ระดับ:๑ ${item.description}`
(item:any) => `${item.name} - ระดับ:๑ ${item.description}`
"
option-value="id"
hide-bottom-space
:rules="[(val) => !!val || 'กรุณาเลือกสมรรถนะ']"
:rules="[(val:string) => !!val || 'กรุณาเลือกสมรรถนะ']"
:options="filterMain(OPmain, [main, main2, main3, main5])"
class="bg-white"
:readonly="editStatus != true"
@ -1919,22 +1901,16 @@ onMounted(async () => {
v-model="main4"
label="ตัวที่ 4"
>
<!-- <template v-slot:selected-item="scope">
<div class="ellipsis-2-lines">
{{ scope.opt.title }} -
{{ scope.opt.description }}
</div>
</template> -->
</q-select>
</div>
<div class="col-xs-12 col-sm-6">
<q-select
hide-bottom-space
:rules="[(val) => !!val || 'กรุณาเลือกสมรรถนะ']"
:rules="[(val:string) => !!val || 'กรุณาเลือกสมรรถนะ']"
:options="filterMain(OPmain, [main, main2, main3, main4])"
:options-html="true"
:option-label="
(item) => `${item.name} - ระดับ:๑ ${item.description}`
(item:any) => `${item.name} - ระดับ:๑ ${item.description}`
"
option-value="id"
class="bg-white"
@ -1946,12 +1922,6 @@ onMounted(async () => {
v-model="main5"
label="ตัวที่ 5"
>
<!-- <template v-slot:selected-item="scope">
<div class="ellipsis-2-lines">
{{ scope.opt.title }} -
{{ scope.opt.description }}
</div>
</template> -->
</q-select>
</div>
<div class="col-12 text-top2">สมรรถนะประจากลมงาน</div>
@ -1960,11 +1930,11 @@ onMounted(async () => {
<q-select
:options-html="true"
:option-label="
(item) => `${item.name} - ระดับ:๒ ${item.description}`
(item:any) => `${item.name} - ระดับ:๒ ${item.description}`
"
option-value="id"
hide-bottom-space
:rules="[(val) => !!val || 'กรุณาเลือกสมรรถนะประจํากลุ่มงาน']"
:rules="[(val:string) => !!val || 'กรุณาเลือกสมรรถนะประจํากลุ่มงาน']"
:options="filterData(OPgroup, [group2, group3])"
class="bg-white"
:readonly="editStatus != true"
@ -1975,12 +1945,6 @@ onMounted(async () => {
v-model="group"
label="ตัวที่ 1"
>
<!-- <template v-slot:selected-item="scope">
<div class="ellipsis-2-lines">
{{ scope.opt.title }} -
{{ scope.opt.description }}
</div>
</template> -->
</q-select>
</div>
@ -1988,11 +1952,11 @@ onMounted(async () => {
<q-select
:options-html="true"
:option-label="
(item) => `${item.name} - ระดับ:๒ ${item.description}`
(item:any) => `${item.name} - ระดับ:๒ ${item.description}`
"
option-value="id"
hide-bottom-space
:rules="[(val) => !!val || 'กรุณาเลือกสมรรถนะประจํากลุ่มงาน']"
:rules="[(val:string) => !!val || 'กรุณาเลือกสมรรถนะประจํากลุ่มงาน']"
:options="filterData(OPgroup, [group, group3])"
class="bg-white"
:readonly="editStatus != true"
@ -2003,12 +1967,6 @@ onMounted(async () => {
v-model="group2"
label="ตัวที่ 2"
>
<!-- <template v-slot:selected-item="scope">
<div class="ellipsis-2-lines">
{{ scope.opt.title }} -
{{ scope.opt.description }}
</div>
</template> -->
</q-select>
</div>
@ -2016,12 +1974,12 @@ onMounted(async () => {
<q-select
:options-html="true"
:option-label="
(item) => `${item.name} - ระดับ:๒ ${item.description}`
(item:any) => `${item.name} - ระดับ:๒ ${item.description}`
"
option-value="id"
map-options
hide-bottom-space
:rules="[(val) => !!val || 'กรุณาเลือกสมรรถนะประจํากลุ่มงาน']"
:rules="[(val:string) => !!val || 'กรุณาเลือกสมรรถนะประจํากลุ่มงาน']"
:options="filterData(OPgroup, [group, group2])"
class="bg-white"
:readonly="editStatus != true"
@ -2031,12 +1989,6 @@ onMounted(async () => {
v-model="group3"
label="ตัวที่ 3"
>
<!-- <template v-slot:selected-item="scope">
<div class="ellipsis-2-lines">
{{ scope.opt.title }} -
{{ scope.opt.description }}
</div>
</template> -->
</q-select>
</div>
</div>
@ -2157,7 +2109,7 @@ onMounted(async () => {
<q-input
hide-bottom-space
:rules="
index < 1 ? [(val) => !!val || 'กรุณากรอกข้อมูล'] : []
index < 1 ? [(val:string) => !!val || 'กรุณากรอกข้อมูล'] : []
"
type="textarea"
:readonly="editStatus != true"
@ -2173,7 +2125,7 @@ onMounted(async () => {
<div class="col-xs-12 col-sm-5">
<q-input
:rules="
index < 1 ? [(val) => !!val || 'กรุณากรอกข้อมูล'] : []
index < 1 ? [(val:string) => !!val || 'กรุณากรอกข้อมูล'] : []
"
hide-bottom-space
bg-color="white"
@ -2404,7 +2356,7 @@ onMounted(async () => {
<template #trigger>
<q-input
hide-bottom-space
:rules="[(val) => !!val || 'กรุณาเลือกวันที่']"
:rules="[(val:string) => !!val || 'กรุณาเลือกวันที่']"
:readonly="editStatus != true"
dense
borderless
@ -2507,7 +2459,7 @@ onMounted(async () => {
<template #trigger>
<q-input
hide-bottom-space
:rules="[(val) => !!val || 'กรุณาเลือกวันที่']"
:rules="[(val:string) => !!val || 'กรุณาเลือกวันที่']"
:readonly="editStatus != true"
dense
borderless
@ -2602,7 +2554,7 @@ onMounted(async () => {
:readonly="editStatus != true"
dense
:rules="
caretaker2 ? [(val) => !!val || 'กรุณาเลือกวันที่'] : []
caretaker2 ? [(val:string) => !!val || 'กรุณาเลือกวันที่'] : []
"
borderless
:outlined="editStatus == true"
@ -2643,7 +2595,7 @@ onMounted(async () => {
:readonly="editStatus != true"
dense
borderless
:rules="[(val) => !!val || 'กรุณาเลือกผู้บังคับบัญชา']"
:rules="[(val:string) => !!val || 'กรุณาเลือกผู้บังคับบัญชา']"
:outlined="editStatus == true"
v-model="commander"
hide-bottom-space
@ -2670,7 +2622,7 @@ onMounted(async () => {
class="col-xs-12 col-sm-8"
:readonly="!editStatus"
dense
:rules="[(val) => !!val || 'กรุณาเลือกผู้บังคับบัญชา']"
:rules="[(val:string) => !!val || 'กรุณาเลือกผู้บังคับบัญชา']"
borderless
hide-bottom-space
:outlined="editStatus"
@ -2710,7 +2662,7 @@ onMounted(async () => {
<template #trigger>
<q-input
hide-bottom-space
:rules="[(val) => !!val || 'กรุณาเลือกวันที่']"
:rules="[(val:string) => !!val || 'กรุณาเลือกวันที่']"
:readonly="editStatus != true"
dense
borderless
@ -2757,7 +2709,7 @@ onMounted(async () => {
:outlined="editStatus == true"
v-model="chairman"
label="ประธานกรรมการ"
:rules="[(val) => !!val || 'กรุณาเลือก ประธานกรรมการ']"
:rules="[(val:string) => !!val || 'กรุณาเลือก ประธานกรรมการ']"
use-input
behavior="menu"
@filter="filterFnChairman"
@ -2784,7 +2736,7 @@ onMounted(async () => {
borderless
:outlined="editStatus"
v-model="chairman"
:rules="[(val) => !!val || 'กรุณาเลือก ประธานกรรมการ']"
:rules="[(val:string) => !!val || 'กรุณาเลือก ประธานกรรมการ']"
label="ประธานกรรมการ"
use-input
behavior="menu"

View file

@ -366,7 +366,7 @@ onMounted(async () => {
date_start != null ? date2Thai(date_start) : null
"
:label="`${'ระหว่างวันที่'}`"
:rules="[(val) => !!val || `${'กรุณาเลือกวันที่'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกวันที่'}`]"
>
<template v-slot:prepend>
<q-icon
@ -408,7 +408,7 @@ onMounted(async () => {
date_finish != null ? date2Thai(date_finish) : null
"
:label="`${'ถึงวันที่'}`"
:rules="[(val) => !!val || `${'กรุณาเลือกวันที่'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกวันที่'}`]"
>
<template v-slot:prepend>
<q-icon
@ -425,7 +425,7 @@ onMounted(async () => {
<div class="col-12 col-sm-6">
<q-select
:rules="[
(val) =>
(val:string) =>
!!val ||
'กรุณาเลือกการพัฒนาในระหว่างทดลองปฏิบัติหน้าที่ราชการ',
]"
@ -454,7 +454,7 @@ onMounted(async () => {
<div :class="`col-12 col-sm-6`">
<q-select
:rules="[
(val) =>
(val:string) =>
!!val ||
'กรุณาเลือกผลการประเมินการทดลองปฏิบัติหน้าที่ราชการ',
]"
@ -492,7 +492,7 @@ onMounted(async () => {
dense
v-model="expand_month"
label="จำนวนเดือน"
:rules="[(val) => !!val || 'กรุณากรอกจำนวนเดือน']"
:rules="[(val:string) => !!val || 'กรุณากรอกจำนวนเดือน']"
type="number"
/>
</div>
@ -509,7 +509,7 @@ onMounted(async () => {
lazy-rules
label="เหตุผล"
:rules="[
(val) => (!!val && val.length > 0) || 'กรุณาระบุเหตุผล',
(val:string) => (!!val && val.length > 0) || 'กรุณาระบุเหตุผล',
]"
/>
</div>
@ -526,7 +526,7 @@ onMounted(async () => {
lazy-rules
label="ความเห็นของผู้มีอํานาจสั่งบรรจุตามมาตรา 52"
:rules="[
(val) =>
(val:string) =>
(!!val && val.length > 0) ||
'กรุณาความเห็นของผู้มีอํานาจสั่งบรรจุตามมาตรา 52',
]"
@ -581,7 +581,7 @@ onMounted(async () => {
: null
"
:label="`${'ลงวันที่'}`"
:rules="[(val) => !!val || `${'กรุณาเลือกลงวันที่'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกลงวันที่'}`]"
>
<template v-slot:prepend>
<q-icon
@ -640,7 +640,7 @@ onMounted(async () => {
: null
"
:label="`${'ลงวันที่'}`"
:rules="[(val) => !!val || `${'กรุณาเลือกลงวันที่'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกลงวันที่'}`]"
>
<template v-slot:prepend>
<q-icon
@ -699,7 +699,7 @@ onMounted(async () => {
: null
"
:label="`${'ลงวันที่'}`"
:rules="[(val) => !!val || `${'กรุณาเลือกลงวันที่'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกลงวันที่'}`]"
>
<template v-slot:prepend>
<q-icon

View file

@ -573,7 +573,7 @@ onMounted(() => {
:model-value="
evaluate_date != null ? date2Thai(evaluate_date) : null
"
:rules="[(val) => !!val || `${'วัน เดือน ปี ที่ประเมิน'}`]"
:rules="[(val:string) => !!val || `${'วัน เดือน ปี ที่ประเมิน'}`]"
>
<template v-slot:prepend>
<q-icon

View file

@ -453,7 +453,7 @@ onMounted(async () => {
start_date != null ? date2Thai(start_date) : null
"
:label="`${'ระหว่างวันที่'}`"
:rules="[(val) => !!val || `${'กรุณาเลือกวันที่'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกวันที่'}`]"
>
<template v-slot:prepend>
<q-icon
@ -494,7 +494,7 @@ onMounted(async () => {
date_finish != null ? date2Thai(date_finish) : null
"
:label="`${'ถึงวันที่'}`"
:rules="[(val) => !!val || `${'กรุณาเลือกวันที่'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกวันที่'}`]"
>
<template v-slot:prepend>
<q-icon
@ -1026,7 +1026,7 @@ onMounted(async () => {
outlined
class="bg-white"
:rules="[
(val) =>
(val:string) =>
(val && val.length > 0) || 'กรุณากรอกข้อความ',
]"
/>
@ -1074,7 +1074,7 @@ onMounted(async () => {
outlined
class="bg-white"
:rules="[
(val) =>
(val:string) =>
(val && val.length > 0) || 'กรุณากรอกข้อความ',
]"
/>
@ -1346,7 +1346,7 @@ onMounted(async () => {
outlined
class="bg-white"
:rules="[
(val) =>
(val:string) =>
(val && val.length > 0) || 'กรุณากรอกข้อความ',
]"
/>
@ -1717,7 +1717,7 @@ onMounted(async () => {
dateAutherise != null ? date2Thai(dateAutherise) : null
"
:label="`${'ลงวันที่'}`"
:rules="[(val) => !!val || `${'กรุณาเลือกลงวันที่'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกลงวันที่'}`]"
>
<template v-slot:prepend>
<q-icon