val:string

This commit is contained in:
STW_TTTY\stwtt 2024-09-20 15:23:06 +07:00
parent a147bd70ec
commit 4344ee4a44
42 changed files with 163 additions and 572 deletions

View file

@ -262,7 +262,7 @@ onMounted(async () => {
bg-color="white"
dense
class="inputgreen"
:rules="[(val) => !!val || `${'กรุณากรอกชิ่อตัวชี้วัด'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกชิ่อตัวชี้วัด'}`]"
hide-bottom-space
/>
</div>
@ -331,7 +331,7 @@ onMounted(async () => {
bg-color="white"
dense
class="inputgreen"
:rules="[(val) => !!val || `${'กรุณากรอกค่าเป้าหมาย'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกค่าเป้าหมาย'}`]"
hide-bottom-space
/>
</div>
@ -344,7 +344,7 @@ onMounted(async () => {
dense
lazy-rules
class="inputgreen"
:rules="[(val) => !!val || `${'กรุณากรอกหน่วยนับ'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกหน่วยนับ'}`]"
hide-bottom-space
/>
</div>
@ -357,7 +357,7 @@ onMounted(async () => {
bg-color="white"
dense
class="inputgreen"
:rules="[(val) => !!val || `${'กรุณากรอกน้ำหนัก'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกน้ำหนัก'}`]"
hide-bottom-space
/>
</div>
@ -479,7 +479,7 @@ onMounted(async () => {
bg-color="white"
dense
class="inputgreen"
:rules="[(val) => !!val || `${'กรุณากรอกนิยามหรือความหมาย'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกนิยามหรือความหมาย'}`]"
hide-bottom-space
/>
</div>
@ -492,7 +492,7 @@ onMounted(async () => {
type="textarea"
dense
class="inputgreen"
:rules="[(val) => !!val || `${'กรุณากรอกสูตรคำนวณ'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกสูตรคำนวณ'}`]"
hide-bottom-space
/>
</div>

View file

@ -514,46 +514,6 @@ onMounted(() => {
{{ fieldLabels[field as keyof typeof fieldLabels] }}
</div>
<div class="col-8 text-left">
<!-- <q-field
class="q_field_p_none"
ref="fieldRef"
v-model="formScore[field]"
label-slot
borderless
:rules="[(val) => !!val || 'กรุณากรอกมาตรฐานพฤติกรรม']"
hide-bottom-space
>
<template #control>
<q-editor
class="full-width"
v-model="formScore[field]"
:dense="$q.screen.lt.md"
min-height="5rem"
:toolbar="[
[
'bold',
'italic',
'strike',
'underline',
'subscript',
'superscript',
],
['unordered', 'ordered'],
]"
:fonts="{
arial: 'Arial',
arial_black: 'Arial Black',
comic_sans: 'Comic Sans MS',
courier_new: 'Courier New',
impact: 'Impact',
lucida_grande: 'Lucida Grande',
times_new_roman: 'Times New Roman',
verdana: 'Verdana',
}"
/>
</template>
</q-field> -->
<q-input
v-model="formScore[field]"
dense

View file

@ -74,7 +74,7 @@ onMounted(() => {
v-model="field.description"
label-slot
borderless
:rules="[(val) => !!val || 'กรุณากรอกมาตรฐานพฤติกรรม']"
:rules="[(val:string) => !!val || 'กรุณากรอกมาตรฐานพฤติกรรม']"
hide-bottom-space
>
<template #control>

View file

@ -120,7 +120,7 @@ function onSubmit() {
v-model="formData.levels[index].description"
label-slot
borderless
:rules="[(val) => !!val || 'กรุณากรอกมาตรฐานพฤติกรรม']"
:rules="[(val:string) => !!val || 'กรุณากรอกมาตรฐานพฤติกรรม']"
hide-bottom-space
>
<template #control>

View file

@ -117,7 +117,7 @@ function onSubmit() {
v-model="formScore[field]"
label-slot
borderless
:rules="[(val) => !!val || 'กรุณากรอกมาตรฐานพฤติกรรม']"
:rules="[(val:string) => !!val || 'กรุณากรอกมาตรฐานพฤติกรรม']"
hide-bottom-space
>
<template #control>

View file

@ -200,7 +200,7 @@ onMounted(() => {
v-model="formData.form[index].description"
label-slot
borderless
:rules="[(val) => !!val || 'กรุณากรอกมาตรฐานพฤติกรรม']"
:rules="[(val:string) => !!val || 'กรุณากรอกมาตรฐานพฤติกรรม']"
hide-bottom-space
>
<template #control>
@ -240,7 +240,7 @@ onMounted(() => {
v-model="formData.form[index].description2"
label-slot
borderless
:rules="[(val) => !!val || 'กรุณากรอกมาตรฐานพฤติกรรม']"
:rules="[(val:string) => !!val || 'กรุณากรอกมาตรฐานพฤติกรรม']"
hide-bottom-space
>
<template #control>

View file

@ -60,7 +60,7 @@ function onSubmit() {
dense
label="ชื่อสมรรถนะ"
hide-bottom-space
:rules="[(val) => !!val || `${'กรุณากรอกชื่อสมรรถนะ'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกชื่อสมรรถนะ'}`]"
/>
</div>
<q-card-section class="col-12 q-px-none">
@ -71,7 +71,7 @@ function onSubmit() {
v-model="formData.definition"
label-slot
borderless
:rules="[(val) => !!val || 'กรุณากรอกคำจำกัดความ']"
:rules="[(val:string) => !!val || 'กรุณากรอกคำจำกัดความ']"
hide-bottom-space
>
<template #control>

View file

@ -55,7 +55,7 @@ function onSubmit() {
v-model="formData.competencyName"
dense
hide-bottom-space
:rules="[(val) => !!val || `${'กรุณากรอกชื่อสมรรถนะ'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกชื่อสมรรถนะ'}`]"
label="ชื่อสมรรถนะ"
/>
</div>
@ -67,7 +67,7 @@ function onSubmit() {
v-model="formData.definition"
label-slot
borderless
:rules="[(val) => !!val || 'กรุณากรอกคำจำกัดความ']"
:rules="[(val:string) => !!val || 'กรุณากรอกคำจำกัดความ']"
hide-bottom-space
>
<template #control>

View file

@ -136,7 +136,7 @@ onMounted(() => {
v-model="formData.definition"
label-slot
borderless
:rules="[(val) => !!val || 'กรุณากรอกคำจำกัดความสมรรถนะ']"
:rules="[(val:string) => !!val || 'กรุณากรอกคำจำกัดความสมรรถนะ']"
hide-bottom-space
>
<template #control>

View file

@ -126,7 +126,7 @@
hide-bottom-space
option-label="name"
option-value="id"
:rules="[(val) => val || 'กรุณาเลือกลำดับชั้นเครื่องราชฯ']"
:rules="[(val:string) => val || 'กรุณาเลือกลำดับชั้นเครื่องราชฯ']"
/>
</q-td>
<q-td

View file

@ -205,7 +205,7 @@
class="full-width datepicker q-pb-none"
v-model="name"
type="textarea"
:rules="[(val) => (val && val.length > 0) || '']"
:rules="[(val:string) => (val && val.length > 0) || '']"
/>
<q-option-group
dense
@ -218,8 +218,6 @@
<q-separator />
<q-card-actions align="right" class="text-primary">
<q-btn unelevated label="บันทึก" color="public" type="submit">
<!-- icon="mdi-content-save-outline"
<q-tooltip>นท</q-tooltip> -->
</q-btn>
</q-card-actions>
</q-form>

View file

@ -211,7 +211,7 @@ const getClass = (val: boolean) => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultAddress.address"
:rules="[(val) => !!val || `${'กรุณากรอก ที่อยู่ตามทะเบียนบ้าน'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก ที่อยู่ตามทะเบียนบ้าน'}`]"
:label="`${'ที่อยู่ตามทะเบียนบ้าน'}`"
/>
</div>
@ -220,7 +220,7 @@ const getClass = (val: boolean) => {
:class="getClass(status == 'checkRegister' || status == 'payment')"
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
:rules="[(val) => !!val || `${'กรุณาเลือก จังหวัด'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือก จังหวัด'}`]"
:outlined="status == 'checkRegister' || status == 'payment'"
dense
lazy-rules
@ -239,7 +239,7 @@ const getClass = (val: boolean) => {
:class="getClass(status == 'checkRegister' || status == 'payment')"
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
:rules="[(val) => !!val || `${'กรุณาเลือก เขต / อำเภอ'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือก เขต / อำเภอ'}`]"
:outlined="status == 'checkRegister' || status == 'payment'"
dense
lazy-rules
@ -258,7 +258,7 @@ const getClass = (val: boolean) => {
:class="getClass(status == 'checkRegister' || status == 'payment')"
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
:rules="[(val) => !!val || `${'กรุณาเลือก แขวง / ตำบล '}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือก แขวง / ตำบล '}`]"
:outlined="status == 'checkRegister' || status == 'payment'"
dense
lazy-rules
@ -326,7 +326,7 @@ const getClass = (val: boolean) => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultAddress.addressC"
:rules="[(val) => !!val || `${'กรุณากรอก ที่อยู่ปัจจุบัน'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก ที่อยู่ปัจจุบัน'}`]"
:label="`${'ที่อยู่ปัจจุบัน'}`"
/>
</div>
@ -338,7 +338,7 @@ const getClass = (val: boolean) => {
:class="getClass(status == 'checkRegister' || status == 'payment')"
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
:rules="[(val) => !!val || `${'กรุณาเลือก จังหวัด'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือก จังหวัด'}`]"
:outlined="status == 'checkRegister' || status == 'payment'"
dense
lazy-rules
@ -360,7 +360,7 @@ const getClass = (val: boolean) => {
:class="getClass(status == 'checkRegister' || status == 'payment')"
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
:rules="[(val) => !!val || `${'กรุณาเลือก เขต / อำเภอ'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือก เขต / อำเภอ'}`]"
:outlined="status == 'checkRegister' || status == 'payment'"
dense
lazy-rules
@ -382,7 +382,7 @@ const getClass = (val: boolean) => {
:class="getClass(status == 'checkRegister' || status == 'payment')"
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
:rules="[(val) => !!val || `${'กรุณาเลือก แขวง / ตำบล '}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือก แขวง / ตำบล '}`]"
:outlined="status == 'checkRegister' || status == 'payment'"
dense
lazy-rules

View file

@ -651,7 +651,7 @@ const getClass = (val: boolean) => {
:readonly="status !== 'checkRegister' && status == 'payment'"
:borderless="status !== 'checkRegister' && status == 'payment'"
v-model="position"
:rules="[(val) => !!val || `${'กรุณากรอกตำแหน่ง/ลักษณะงาน'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกตำแหน่ง/ลักษณะงาน'}`]"
:label="`${'ตำแหน่ง/ลักษณะงาน'}`"
@update:modelValue="clickEditRowPosition"
hide-bottom-space
@ -669,7 +669,7 @@ const getClass = (val: boolean) => {
:borderless="status !== 'checkRegister' && status == 'payment'"
v-model="type"
:options="opType"
:rules="[(val) => !!val || `${'กรุณาเลือกประเภท'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกประเภท'}`]"
:label="`${'ประเภท'}`"
@update:modelValue="clickEditRowPosition"
hide-bottom-space

View file

@ -96,7 +96,7 @@ const getClass = (val: boolean) => {
:class="getClass(status == 'checkRegister' || status == 'payment')"
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
:rules="[(val) => !!val || `${'กรุณาเลือก คำนำหน้า'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือก คำนำหน้า'}`]"
:outlined="status == 'checkRegister' || status == 'payment'"
dense
lazy-rules
@ -118,7 +118,7 @@ const getClass = (val: boolean) => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultContact.contactFirstname"
:rules="[(val) => !!val || `${'กรุณากรอก ชื่อ'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก ชื่อ'}`]"
:label="`${'ชื่อ'}`"
/>
</div>
@ -131,7 +131,7 @@ const getClass = (val: boolean) => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultContact.contactLastname"
:rules="[(val) => !!val || `${'กรุณากรอก นามสกุล'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก นามสกุล'}`]"
:label="`${'นามสกุล'}`"
/>
</div>
@ -144,7 +144,7 @@ const getClass = (val: boolean) => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultContact.contactRelations"
:rules="[(val) => !!val || `${'กรุณากรอกความสัมพันธ์'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกความสัมพันธ์'}`]"
:label="`${'เกี่ยวข้องเป็น'}`"
/>
</div>

View file

@ -126,7 +126,7 @@ onMounted(async () => {
:borderless="!edit"
v-model="name"
hide-bottom-space
:rules="[(val) => !!val || `${'กรุณากรอกชื่อเอกสาร'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกชื่อเอกสาร'}`]"
:label="`${'ชื่อเอกสาร'}`"
/>
<q-uploader

View file

@ -139,7 +139,7 @@ const getClass = (val: boolean) => {
option-value="id"
:options="educationLevelOptions"
v-model="defaultEducation.educationLevelExamId"
:rules="[(val) => !!val || `${'กรุณาเลือก วุฒิที่ใช้สมัครสอบ'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือก วุฒิที่ใช้สมัครสอบ'}`]"
:label="`${'วุฒิที่ใช้สมัครสอบ'}`"
@update:model-value="(value) => checkInputName()"
/>
@ -154,7 +154,7 @@ const getClass = (val: boolean) => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultEducation.educationName"
:rules="[(val) => !!val || `${'กรุณากรอก ชื่อปริญญา'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก ชื่อปริญญา'}`]"
:label="`${'ชื่อปริญญา'}`"
/>
</div>
@ -168,7 +168,7 @@ const getClass = (val: boolean) => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultEducation.educationMajor"
:rules="[(val) => !!val || `${'กรุณากรอก สาขาวิชา/วิชาเอก'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก สาขาวิชา/วิชาเอก'}`]"
:label="`${'สาขาวิชา/วิชาเอก'}`"
/>
</div>
@ -182,7 +182,7 @@ const getClass = (val: boolean) => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultEducation.educationLocation"
:rules="[(val) => !!val || `${'กรุณากรอก ชื่อสถานศึกษา'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก ชื่อสถานศึกษา'}`]"
:label="`${'ชื่อสถานศึกษา'}`"
/>
</div>
@ -200,7 +200,7 @@ const getClass = (val: boolean) => {
option-value="id"
:options="educationTypeOptions"
v-model="defaultEducation.educationType"
:rules="[(val) => !!val || `${'กรุณาเลือก ประเภทสถานศึกษา'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือก ประเภทสถานศึกษา'}`]"
:label="`${'ประเภทสถานศึกษา'}`"
/>
</div>
@ -264,7 +264,7 @@ const getClass = (val: boolean) => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultEducation.educationScores"
:rules="[(val) => !!val || `${'กรุณากรอก คะแนนเฉลี่ยสะสม'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก คะแนนเฉลี่ยสะสม'}`]"
:label="`${'คะแนนเฉลี่ยสะสม'}`"
/>
</div>
@ -282,7 +282,7 @@ const getClass = (val: boolean) => {
option-value="id"
:options="educationLevelOptions"
v-model="defaultEducation.educationLevelHighId"
:rules="[(val) => !!val || `${'กรุณาเลือก วุฒิการศึกษาสูงสุด'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือก วุฒิการศึกษาสูงสุด'}`]"
:label="`${'วุฒิการศึกษาสูงสุด'}`"
/>
</div>

View file

@ -135,7 +135,7 @@ onMounted(async () => {
:class="getClass(status == 'checkRegister' || status == 'payment')"
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
:rules="[(val) => !!val || `${'กรุณาเลือก คำนำหน้าชื่อ'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือก คำนำหน้าชื่อ'}`]"
:outlined="status == 'checkRegister' || status == 'payment'"
dense
lazy-rules
@ -159,7 +159,7 @@ onMounted(async () => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultFamily.firstnameC"
:rules="[(val) => !!val || `${'กรุณากรอก ชื่อ'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก ชื่อ'}`]"
:label="`${'ชื่อ'}`"
/>
</div>
@ -173,7 +173,7 @@ onMounted(async () => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultFamily.lastnameC"
:rules="[(val) => !!val || `${'กรุณากรอก นามสกุล'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก นามสกุล'}`]"
:label="`${'นามสกุล'}`"
/>
</div>
@ -187,7 +187,7 @@ onMounted(async () => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultFamily.occupationC"
:rules="[(val) => !!val || `${'กรุณากรอก อาชีพ'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก อาชีพ'}`]"
:label="`${'อาชีพ'}`"
/>
</div>
@ -201,7 +201,7 @@ onMounted(async () => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultFamily.nationalityC"
:rules="[(val) => !!val || `${'กรุณากรอก สัญชาติ'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก สัญชาติ'}`]"
:label="`${'สัญชาติ'}`"
/>
</div>
@ -213,7 +213,7 @@ onMounted(async () => {
:class="getClass(status == 'checkRegister' || status == 'payment')"
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
:rules="[(val) => !!val || `${'กรุณาเลือก คำนำหน้าชื่อ'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือก คำนำหน้าชื่อ'}`]"
:outlined="status == 'checkRegister' || status == 'payment'"
dense
lazy-rules
@ -237,7 +237,7 @@ onMounted(async () => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultFamily.firstnameM"
:rules="[(val) => !!val || `${'กรุณากรอก ชื่อ'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก ชื่อ'}`]"
:label="`${'ชื่อ'}`"
/>
</div>
@ -251,7 +251,7 @@ onMounted(async () => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultFamily.lastnameM"
:rules="[(val) => !!val || `${'กรุณากรอก นามสกุล'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก นามสกุล'}`]"
:label="`${'นามสกุล'}`"
/>
</div>
@ -265,7 +265,7 @@ onMounted(async () => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultFamily.occupationM"
:rules="[(val) => !!val || `${'กรุณากรอก อาชีพ'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก อาชีพ'}`]"
:label="`${'อาชีพ'}`"
/>
</div>
@ -279,7 +279,7 @@ onMounted(async () => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultFamily.nationalityM"
:rules="[(val) => !!val || `${'กรุณากรอก สัญชาติ'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก สัญชาติ'}`]"
:label="`${'สัญชาติ'}`"
/>
</div>
@ -291,7 +291,7 @@ onMounted(async () => {
:class="getClass(status == 'checkRegister' || status == 'payment')"
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
:rules="[(val) => !!val || `${'กรุณาเลือก คำนำหน้าชื่อ'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือก คำนำหน้าชื่อ'}`]"
:outlined="status == 'checkRegister' || status == 'payment'"
dense
lazy-rules
@ -314,7 +314,7 @@ onMounted(async () => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultFamily.firstnameF"
:rules="[(val) => !!val || `${'กรุณากรอก ชื่อ'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก ชื่อ'}`]"
:label="`${'ชื่อ'}`"
/>
</div>
@ -328,7 +328,7 @@ onMounted(async () => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultFamily.lastnameF"
:rules="[(val) => !!val || `${'กรุณากรอก นามสกุล'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก นามสกุล'}`]"
:label="`${'นามสกุล'}`"
/>
</div>
@ -342,7 +342,7 @@ onMounted(async () => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultFamily.occupationF"
:rules="[(val) => !!val || `${'กรุณากรอก อาชีพ'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก อาชีพ'}`]"
:label="`${'อาชีพ'}`"
/>
</div>
@ -356,7 +356,7 @@ onMounted(async () => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultFamily.nationalityF"
:rules="[(val) => !!val || `${'กรุณากรอก สัญชาติ'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก สัญชาติ'}`]"
:label="`${'สัญชาติ'}`"
/>
</div>

View file

@ -226,7 +226,7 @@ onMounted(async () => {
:class="getClass(status == 'checkRegister' || status == 'payment')"
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
:rules="[(val) => !!val || `${'กรุณาเลือก คำนำหน้าชื่อ'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือก คำนำหน้าชื่อ'}`]"
:outlined="status == 'checkRegister' || status == 'payment'"
dense
lazy-rules
@ -248,7 +248,7 @@ onMounted(async () => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultInformation.firstname"
:rules="[(val) => !!val || `${'กรุณากรอก ชื่อ'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก ชื่อ'}`]"
:label="`${'ชื่อ (ภาษาไทย)'}`"
/>
</div>
@ -261,27 +261,16 @@ onMounted(async () => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultInformation.lastname"
:rules="[(val) => !!val || `${'กรุณากรอก นามสกุล'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก นามสกุล'}`]"
:label="`${'นามสกุล (ภาษาไทย)'}`"
/>
</div>
<div class="col-xs-12 col-sm-3 col-md-3">
<!-- <q-input
:class="getClass(status == 'checkRegister' || status == 'payment')"
:outlined="status == 'checkRegister' || status == 'payment'"
dense
lazy-rules
:readonly="!status == 'checkRegister' || status == 'payment'"
:borderless="!status == 'checkRegister' || status == 'payment'"
v-model="defaultInformation.nationality"
:rules="[(val) => !!val || `${'กรุณากรอก สัญชาติ'}`]"
:label="`${'สัญชาติ'}`"
/> -->
<q-select
:class="getClass(status == 'checkRegister' || status == 'payment')"
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
:rules="[(val) => !!val || `${'กรุณากรอก สัญชาติ'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก สัญชาติ'}`]"
:outlined="status == 'checkRegister' || status == 'payment'"
dense
lazy-rules
@ -295,7 +284,7 @@ onMounted(async () => {
:class="getClass(status == 'checkRegister' || status == 'payment')"
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
:rules="[(val) => !!val || `${'กรุณาเลือก ศาสนา'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือก ศาสนา'}`]"
:outlined="status == 'checkRegister' || status == 'payment'"
dense
lazy-rules
@ -338,7 +327,7 @@ onMounted(async () => {
? null
: date2Thai(defaultInformation.birthDate)
"
:rules="[(val) => !!val || `${'กรุณาเลือก วัน/เดือน/ปี เกิด'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือก วัน/เดือน/ปี เกิด'}`]"
:label="`${'วัน/เดือน/ปี เกิด'}`"
>
<template v-slot:prepend>

View file

@ -125,7 +125,7 @@ onMounted(async () => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultOccupation.position"
:rules="[(val) => !!val || `${'กรุณากรอก ชื่อตำแหน่ง'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก ชื่อตำแหน่ง'}`]"
:label="`${'ชื่อตำแหน่ง'}`"
/>
</div>
@ -154,7 +154,7 @@ onMounted(async () => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultOccupation.group"
:rules="[(val) => !!val || `${'กรุณากรอก กลุ่ม/ฝ่าย'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก กลุ่ม/ฝ่าย'}`]"
:label="`${'กลุ่ม/ฝ่าย'}`"
/>
</div>
@ -168,7 +168,7 @@ onMounted(async () => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultOccupation.pile"
:rules="[(val) => !!val || `${'กรุณากรอก กอง'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก กอง'}`]"
:label="`${'กอง'}`"
/>
</div>
@ -182,7 +182,7 @@ onMounted(async () => {
:readonly="!(status == 'checkRegister' || status == 'payment')"
:borderless="!(status == 'checkRegister' || status == 'payment')"
v-model="defaultOccupation.org"
:rules="[(val) => !!val || `${'กรุณากรอก สังกัด'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก สังกัด'}`]"
:label="`${'สังกัด'}`"
/>
</div>

View file

@ -382,7 +382,7 @@ onMounted(async () => {
dense
hide-bottom-space
lazy-rules
:rules="[(val) => !!val || `${'กรุณากรอกชื่อรอบสอบแข่งขัน'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกชื่อรอบสอบแข่งขัน'}`]"
></q-input>
</div>
<div class="col-xs-12 col-sm-4 col-md-1" v-if="announcementExam">
@ -394,7 +394,7 @@ onMounted(async () => {
dense
lazy-rules
hide-bottom-space
:rules="[(val) => val > 0 || `${'กรุณากรอกรอบการสอบให้ถูกต้อง'}`]"
:rules="[(val:number) => val > 0 || `${'กรุณากรอกรอบการสอบให้ถูกต้อง'}`]"
></q-input>
</div>
<div class="col-xs-12 col-sm-4 col-md-1" v-if="announcementExam">
@ -416,7 +416,7 @@ onMounted(async () => {
dense
hide-bottom-space
outlined
:rules="[(val) => !!val || `${'กรุณาเลือกปีงบประมาณ'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกปีงบประมาณ'}`]"
:model-value="yearly + 543"
:label="`${'ปีงบประมาณ'}`"
>
@ -512,7 +512,7 @@ onMounted(async () => {
: null
"
:label="`${'วันที่ประกาศ'}`"
:rules="[(val) => !!val || `${'กรุณาเลือกวันที่ประกาศ'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกวันที่ประกาศ'}`]"
>
<template v-slot:prepend>
<q-icon

View file

@ -399,7 +399,7 @@ onMounted(async () => {
label="รอบการสอบ(ครั้ง)"
dense
lazy-rules
:rules="[(val) => val > 0 || `${'กรุณากรอกรอบการสอบให้ถูกต้อง'}`]"
:rules="[(val:number) => val > 0 || `${'กรุณากรอกรอบการสอบให้ถูกต้อง'}`]"
></q-input>
</div>
<div class="col-xs-12 col-sm-4 col-md-1" v-if="announcementExam">
@ -421,7 +421,7 @@ onMounted(async () => {
dense
outlined
:model-value="yearly + 543"
:rules="[(val) => !!val || `${'กรุณาเลือกปีงบประมาณ'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกปีงบประมาณ'}`]"
:label="`${'ปีงบประมาณ'}`"
>
<template v-slot:prepend>
@ -472,7 +472,7 @@ onMounted(async () => {
dense
:model-value="dateExam != null ? date2Thai(dateExam) : null"
:label="`${'วันที่สอบ'}`"
:rules="[(val) => !!val || `${'กรุณาเลือกวันที่สอบ'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกวันที่สอบ'}`]"
>
<template v-slot:prepend>
<q-icon
@ -510,7 +510,7 @@ onMounted(async () => {
class="full-width datepicker q-mb-md"
:model-value="dateThaiRange(dateAnnouncement)"
:label="`${'วันที่ประกาศ'}`"
:rules="[(val) => !!val || `${'กรุณาเลือกวันที่ประกาศ'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกวันที่ประกาศ'}`]"
>
<template v-slot:prepend>
<q-icon
@ -548,7 +548,7 @@ onMounted(async () => {
class="full-width datepicker q-mb-md"
:model-value="dateThaiRange(dateRegister)"
:label="`${'วันที่สมัคร'}`"
:rules="[(val) => !!val || `${'กรุณาเลือกวันที่สมัคร'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกวันที่สมัคร'}`]"
>
<template v-slot:prepend>
<q-icon
@ -591,7 +591,7 @@ onMounted(async () => {
datePayment != null ? dateThaiRange(datePayment) : null
"
:label="`${'วันที่ชำระเงิน'}`"
:rules="[(val) => !!val || `${'กรุณาเลือกวันที่ชำระเงิน'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกวันที่ชำระเงิน'}`]"
>
<template v-slot:prepend>
<q-icon
@ -631,7 +631,7 @@ onMounted(async () => {
dateAnnounce != null ? date2Thai(dateAnnounce) : null
"
:label="`${'วันประกาศผลสอบ'}`"
:rules="[(val) => !!val || `${'กรุณาเลือกวันประกาศผลสอบ'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกวันประกาศผลสอบ'}`]"
>
<template v-slot:prepend>
<q-icon

View file

@ -777,7 +777,7 @@ onMounted(async () => {
label="รอบการสอบ(ครั้ง)"
dense
lazy-rules
:rules="[(val) => val > 0 || `${'กรุณากรอกรอบการสอบให้ถูกต้อง'}`]"
:rules="[(val:number) => val > 0 || `${'กรุณากรอกรอบการสอบให้ถูกต้อง'}`]"
></q-input>
</div>
<div class="col-xs-12 col-sm-4 col-md-1" v-if="announcementExam">
@ -790,7 +790,7 @@ onMounted(async () => {
lazy-rules
input-class="text-right"
:rules="[
(val) => val >= 0 || `${'กรุณากรอกค่าธรรมเนียมให้ถูกต้อง'}`,
(val:number) => val >= 0 || `${'กรุณากรอกค่าธรรมเนียมให้ถูกต้อง'}`,
]"
></q-input>
</div>
@ -813,17 +813,9 @@ onMounted(async () => {
dense
outlined
:model-value="yearly + 543"
:rules="[(val) => !!val || `${'กรุณาเลือกปีงบประมาณ'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกปีงบประมาณ'}`]"
:label="`${'ปีงบประมาณ'}`"
>
<!-- <template v-slot:prepend>
<q-icon
name="event"
class="cursor-pointer"
style="color: var(--q-primary)"
>
</q-icon>
</template> -->
</q-input>
</template>
</datepicker>
@ -890,7 +882,7 @@ onMounted(async () => {
class="full-width datepicker q-mb-md"
:model-value="dateThaiRange(dateAnnouncement)"
:label="`${'วันที่ประกาศ'}`"
:rules="[(val) => !!val || `${'กรุณาเลือกวันที่ประกาศ'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกวันที่ประกาศ'}`]"
>
<template v-slot:prepend>
<q-icon

View file

@ -863,7 +863,7 @@ onMounted(async () => {
lazy-rules
:readonly="!enable.web"
:borderless="!enable.web"
:rules="[(val) => !!val || `${'กรุณากรอก ชื่อเว็บภาษาไทย'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก ชื่อเว็บภาษาไทย'}`]"
label="ชื่อเว็บภาษาไทย"
/>
<q-input
@ -875,7 +875,7 @@ onMounted(async () => {
lazy-rules
:readonly="!enable.web"
:borderless="!enable.web"
:rules="[(val) => !!val || `${'กรุณากรอก ชื่อเว็บภาษาอังกฤษ'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก ชื่อเว็บภาษาอังกฤษ'}`]"
label="ชื่อเว็บภาษาอังกฤษ"
/>
<q-input
@ -887,7 +887,7 @@ onMounted(async () => {
lazy-rules
:readonly="!enable.web"
:borderless="!enable.web"
:rules="[(val) => !!val || `${'กรุณากรอก ผู้จัดโดย'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก ผู้จัดโดย'}`]"
label="ผู้จัดโดย"
/>
<q-input
@ -900,7 +900,7 @@ onMounted(async () => {
lazy-rules
:readonly="!enable.web"
:borderless="!enable.web"
:rules="[(val) => !!val || `${'กรุณากรอก ข้อมูลเว็บโดยย่อ'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก ข้อมูลเว็บโดยย่อ'}`]"
label="ข้อมูลเว็บโดยย่อ"
/>
</q-form>
@ -1000,7 +1000,7 @@ onMounted(async () => {
:readonly="!enable.about"
:borderless="!enable.about"
v-model="address.address"
:rules="[(val) => !!val || `${'กรุณากรอก ที่อยู่'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก ที่อยู่'}`]"
:label="`${'ที่อยู่'}`"
/>
</div>
@ -1010,7 +1010,7 @@ onMounted(async () => {
:class="getClass(enable.about)"
:readonly="!enable.about"
:borderless="!enable.about"
:rules="[(val) => !!val || `${'กรุณาเลือก จังหวัด'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือก จังหวัด'}`]"
:outlined="enable.about"
dense
lazy-rules
@ -1030,7 +1030,7 @@ onMounted(async () => {
:class="getClass(enable.about)"
:readonly="!enable.about"
:borderless="!enable.about"
:rules="[(val) => !!val || `${'กรุณาเลือก เขต / อำเภอ'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือก เขต / อำเภอ'}`]"
:outlined="enable.about"
dense
lazy-rules
@ -1050,7 +1050,7 @@ onMounted(async () => {
:class="getClass(enable.about)"
:readonly="!enable.about"
:borderless="!enable.about"
:rules="[(val) => !!val || `${'กรุณาเลือก แขวง / ตำบล '}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือก แขวง / ตำบล '}`]"
:outlined="enable.about"
dense
lazy-rules
@ -1215,7 +1215,7 @@ onMounted(async () => {
lazy-rules
:readonly="!editvisible"
:borderless="!editvisible"
:rules="[(val) => !!val || `${'กรุณากรอก ชื่อ'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก ชื่อ'}`]"
label="ชื่อ"
/>
<q-input
@ -1227,7 +1227,7 @@ onMounted(async () => {
lazy-rules
:readonly="!editvisible"
:borderless="!editvisible"
:rules="[(val) => !!val || `${'กรุณากรอก ลิ้งก์'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก ลิ้งก์'}`]"
label="ลิ้งก์"
/>
</q-form>

View file

@ -322,7 +322,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="organizationPositionOld"
:rules="[(val) => !!val || `${'กรุณากรอกตำแหน่ง/สังกัด'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกตำแหน่ง/สังกัด'}`]"
hide-bottom-space
:label="`${'ตำแหน่ง/สังกัด'}`"
type="textarea"
@ -339,7 +339,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="positionTypeOld"
:rules="[(val) => !!val || `${'กรุณากรอกประเภทตำแหน่ง'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกประเภทตำแหน่ง'}`]"
hide-bottom-space
:label="`${'ประเภทตำแหน่ง'}`"
/>
@ -355,7 +355,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="positionLevelOld"
:rules="[(val) => !!val || `${'กรุณากรอกระดับ'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกระดับ'}`]"
hide-bottom-space
:label="`${'ระดับ'}`"
/>
@ -371,7 +371,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="posNo"
:rules="[(val) => !!val || `${'กรุณากรอกเลขที่'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกเลขที่'}`]"
hide-bottom-space
:label="`${'เลขที่'}`"
/>
@ -400,7 +400,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="organization"
:rules="[(val) => !!val || `${'กรุณากรอกการปลดออก'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกการปลดออก'}`]"
hide-bottom-space
:label="`${'การปลดออก'}`"
/>
@ -429,7 +429,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
:model-value="date !== null ? date2Thai(date) : null"
:rules="[(val) => !!val || `${'กรุณาเลือกตั้งแต่วัน'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกตั้งแต่วัน'}`]"
hide-bottom-space
:label="`${'ตั้งแต่วัน'}`"
>

View file

@ -240,7 +240,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="organizationPositionOld"
:rules="[(val) => !!val || `${'กรุณากรอกตำแหน่ง/สังกัด'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกตำแหน่ง/สังกัด'}`]"
hide-bottom-space
:label="`${'ตำแหน่ง/สังกัด'}`"
type="textarea"
@ -257,7 +257,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="positionTypeOld"
:rules="[(val) => !!val || `${'กรุณากรอกประเภทตำแหน่ง'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกประเภทตำแหน่ง'}`]"
hide-bottom-space
:label="`${'ประเภทตำแหน่ง'}`"
/>
@ -273,7 +273,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="positionLevelOld"
:rules="[(val) => !!val || `${'กรุณากรอกระดับ'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกระดับ'}`]"
hide-bottom-space
:label="`${'ระดับ'}`"
/>
@ -289,7 +289,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="posNo"
:rules="[(val) => !!val || `${'กรุณากรอกเลขที่'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกเลขที่'}`]"
hide-bottom-space
:label="`${'เลขที่'}`"
/>
@ -324,7 +324,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="organization"
:rules="[(val) => !!val || `${'กรุณากรอกการให้ออกสังกัด'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกการให้ออกสังกัด'}`]"
hide-bottom-space
:label="`${'การให้ออกสังกัด'}`"
/>
@ -353,7 +353,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
:model-value="date !== null ? date2Thai(date) : null"
:rules="[(val) => !!val || `${'กรุณาเลือกตั้งแต่วัน'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกตั้งแต่วัน'}`]"
hide-bottom-space
:label="`${'ตั้งแต่วัน'}`"
>

View file

@ -345,7 +345,7 @@ onMounted(async () => {
label="คะแนนข้อ 1"
type="number"
lazy-rules
:rules="[(val) => val !== '' || 'กรุณากรอกคะเเนน']"
:rules="[(val:string) => val !== '' || 'กรุณากรอกคะเเนน']"
/>
</div>
</div>
@ -390,7 +390,7 @@ onMounted(async () => {
label="คะแนนข้อ 2"
type="number"
lazy-rules
:rules="[(val) => val !== '' || 'กรุณากรอกคะเเนน']"
:rules="[(val:string) => val !== '' || 'กรุณากรอกคะเเนน']"
/>
</div>
</div>
@ -416,7 +416,7 @@ onMounted(async () => {
label="คะแนนข้อ 3"
type="number"
lazy-rules
:rules="[(val) => val !== '' || 'กรุณากรอกคะเเนน']"
:rules="[(val:string) => val !== '' || 'กรุณากรอกคะเเนน']"
/>
</div>
</div>
@ -461,7 +461,7 @@ onMounted(async () => {
label="คะแนนข้อ 4"
type="number"
lazy-rules
:rules="[(val) => val !== '' || 'กรุณากรอกคะเเนน']"
:rules="[(val:string) => val !== '' || 'กรุณากรอกคะเเนน']"
/>
</div>
</div>
@ -506,7 +506,7 @@ onMounted(async () => {
label="คะแนนข้อ 5"
type="number"
lazy-rules
:rules="[(val) => val !== '' || 'กรุณากรอกคะเเนน']"
:rules="[(val:string) => val !== '' || 'กรุณากรอกคะเเนน']"
/>
</div>
</div>
@ -535,7 +535,7 @@ onMounted(async () => {
label="คะแนนข้อ 6"
type="number"
lazy-rules
:rules="[(val) => val !== '' || 'กรุณากรอกคะเเนน']"
:rules="[(val:string) => val !== '' || 'กรุณากรอกคะเเนน']"
/>
</div>
</div>
@ -564,7 +564,7 @@ onMounted(async () => {
label="คะแนนข้อ 7"
type="number"
lazy-rules
:rules="[(val) => val !== '' || 'กรุณากรอกคะเเนน']"
:rules="[(val:string) => val !== '' || 'กรุณากรอกคะเเนน']"
/>
</div>
</div>
@ -610,7 +610,7 @@ onMounted(async () => {
label="คะแนนข้อ 8"
type="number"
lazy-rules
:rules="[(val) => val !== '' || 'กรุณากรอกคะเเนน']"
:rules="[(val:string) => val !== '' || 'กรุณากรอกคะเเนน']"
/>
</div>
</div>
@ -656,7 +656,7 @@ onMounted(async () => {
label="คะแนนข้อ 9"
type="number"
lazy-rules
:rules="[(val) => val !== '' || 'กรุณากรอกคะเเนน']"
:rules="[(val:string) => val !== '' || 'กรุณากรอกคะเเนน']"
/>
</div>
</div>
@ -701,7 +701,7 @@ onMounted(async () => {
label="คะแนนข้อ 10"
type="number"
lazy-rules
:rules="[(val) => val !== '' || 'กรุณากรอกคะเเนน']"
:rules="[(val:string) => val !== '' || 'กรุณากรอกคะเเนน']"
/>
</div>
</div>
@ -715,355 +715,6 @@ onMounted(async () => {
type="textarea"
/>
</q-card-section>
<!-- <div class="col-12 row q-pa-sm q-col-gutter-sm"> -->
<!-- <div class="col-10 text-top0 items-center row inline">
{{ questionDesc.question1Desc }}
</div> -->
<!-- <div class="col-2">
<q-input
dense
outlined
v-model="score[0].score"
label="คะแนนข้อ 1"
type="number"
lazy-rules
:rules="[(val) => val !== '' || 'กรุณากรอกคะเเนน']"
/>
</div> -->
<!-- <q-option-group
:options="question1Answer"
type="checkbox"
v-model="reasonWork"
disable
/> -->
<!-- <div class="col-12 text-top0 items-center">
<q-item-label>
<q-input
v-if="reasonWork.includes(question1Answer.length - 1)"
v-model="reasonWorkOther"
disable
label="กรอกข้อความ"
dense
lazy-rules
type="text"
autogrow
hide-bottom-space
outlined
class="bg-white"
:rules="[
(val) => (val && val.length > 0) || 'กรุณากรอกข้อความ',
]"
/>
</q-item-label>
</div> -->
<!-- <div class="col-10 text-top0 items-center row inline">
{{ questionDesc.question2Desc }}
</div> -->
<!-- <div class="col-2 text-top0 items-center">
<q-input
dense
outlined
v-model="score[1].score"
label="คะแนนข้อ 2"
type="number"
lazy-rules
:rules="[(val) => val !== '' || 'กรุณากรอกคะเเนน']"
/>
</div> -->
<!-- <div class="col-12">
<q-option-group
:options="question2Answer"
type="radio"
v-model="timeThink"
disable
/>
</div> -->
<!-- <div class="col-10 text-top0 items-center row inline">
{{ questionDesc.question3Desc }}
</div> -->
<!-- <div class="col-2 text-top0 items-center">
<q-input
dense
outlined
v-model="score[2].score"
label="คะแนนข้อ 3"
type="number"
lazy-rules
:rules="[(val) => val !== '' || 'กรุณากรอกคะเเนน']"
/>
</div> -->
<!-- <q-option-group
:options="question3Answer"
type="checkbox"
v-model="exitFactor"
disable
/> -->
<!-- <div class="col-12 text-top0 items-center">
<q-item-label>
<q-input
v-if="exitFactor.includes(question3Answer.length - 1)"
v-model="exitFactorOther"
label="กรอกข้อความ"
dense
disable
lazy-rules
type="text"
autogrow
hide-bottom-space
outlined
class="bg-white"
:rules="[
(val) => (val && val.length > 0) || 'กรุณากรอกข้อความ',
]"
/>
</q-item-label>
</div> -->
<!-- <div class="col-10 text-top0 items-center row inline">
{{ questionDesc.question4Desc }}
</div> -->
<!--
<div class="col-2 text-top0 items-center">
<q-input
dense
outlined
v-model="score[3].score"
label="คะแนนข้อ 4"
type="number"
lazy-rules
:rules="[(val) => val !== '' || 'กรุณากรอกคะเเนน']"
/>
</div> -->
<!-- <q-list>
<q-option-group
:options="question4Answer"
type="checkbox"
v-model="adjust"
disable
/>
</q-list> -->
<!-- <div class="col-12 text-top0 items-center">
<q-item-label>
<q-input
v-if="adjust.includes(question4Answer.length - 1)"
v-model="adjustOther"
label="กรอกอื่นๆ"
dense
disable
lazy-rules
type="text"
autogrow
hide-bottom-space
outlined
class="bg-white"
:rules="[
(val) => (val && val.length > 0) || 'กรุณากรอกข้อความ',
]"
/>
</q-item-label>
</div> -->
<!-- <div class="col-10 text-top0 items-center row inline">
{{ questionDesc.question5Desc }}
</div> -->
<!-- <div class="col-2 text-top0 items-center">
<q-input
dense
outlined
v-model="score[4].score"
label="คะแนนข้อ 5"
type="number"
lazy-rules
:rules="[(val) => val !== '' || 'กรุณากรอกคะเเนน']"
/>
</div> -->
<!-- <q-input
class="col-12"
dense
disable
outlined
v-model="realReason"
label=" "
type="textarea"
/> -->
<!-- <div class="col-10 text-top0 items-center row inline">
{{ questionDesc.question6Desc }}
</div> -->
<!-- <div class="col-2 text-top0 items-center">
<q-input
dense
outlined
v-model="score[5].score"
label="คะแนนข้อ 6"
type="number"
lazy-rules
:rules="[(val) => val !== '' || 'กรุณากรอกคะเเนน']"
/>
</div> -->
<!-- <q-input
class="col-12"
dense
outlined
disable
v-model="notExitFactor"
label=" "
type="textarea"
/> -->
<!-- <div class="col-10 text-top0 items-center row inline">
{{ questionDesc.question7Desc }}
</div> -->
<!-- <div class="col-2 text-top0 items-center">
<q-input
dense
outlined
v-model="score[6].score"
label="คะแนนข้อ 7"
type="number"
lazy-rules
:rules="[(val) => val !== '' || 'กรุณากรอกคะเเนน']"
/>
</div> -->
<!-- <q-option-group
:options="question7Answer"
type="radio"
v-model="haveJob"
disable
/> -->
<!-- <div class="col-12 text-top0 items-center">
<q-item-label>
<q-input
v-if="haveJob == 0"
v-model="haveJobReason"
label="กรอกอื่นๆ"
dense
disable
lazy-rules
type="text"
autogrow
hide-bottom-space
outlined
class="bg-white"
:rules="[
(val) => (val && val.length > 0) || 'กรุณากรอกข้อความ',
]"
/>
</q-item-label>
</div> -->
<!-- <div class="col-10 text-top0 items-center row inline">
{{ questionDesc.question8Desc }}
</div> -->
<!-- <div class="col-2 text-top0 items-center">
<q-input
dense
outlined
v-model="score[7].score"
label="คะแนนข้อ 8"
type="number"
lazy-rules
:rules="[(val) => val !== '' || 'กรุณากรอกคะเเนน']"
/>
</div> -->
<!-- <q-option-group
:options="question8Answer"
type="radio"
v-model="suggestFriends"
disable
/> -->
<!-- <div class="col-12 text-top0 items-center">
<q-item-label>
<q-input
v-if="suggestFriends === 1"
v-model="suggestFriendsReason"
label="กรอกข้อความ"
dense
lazy-rules
disable
type="text"
autogrow
hide-bottom-space
outlined
class="bg-white"
:rules="[
(val) => (val && val.length > 0) || 'กรุณากรอกข้อความ',
]"
/>
</q-item-label>
</div> -->
<!-- <div class="col-10 text-top0 items-center row inline">
{{ questionDesc.question9Desc }}
</div> -->
<!-- <div class="col-2 text-top0 items-center">
<q-input
dense
outlined
v-model="score[8].score"
label="คะแนนข้อ 9"
type="number"
lazy-rules
:rules="[(val) => val !== '' || 'กรุณากรอกคะเเนน']"
/>
</div> -->
<!-- <q-option-group
:options="question9Answer"
type="radio"
v-model="futureWork"
disable
/> -->
<!-- <div class="col-12 text-top0 items-center">
<q-item-label>
<q-input
v-if="futureWork === 1"
v-model="futureWorkReason"
label="กรอกข้อความ"
dense
lazy-rules
type="text"
autogrow
hide-bottom-space
outlined
disable
class="bg-white"
:rules="[
(val) => (val && val.length > 0) || 'กรุณากรอกข้อความ',
]"
/>
</q-item-label>
</div> -->
<!-- <div class="col-10 text-top0 items-center row inline">
{{ questionDesc.question10Desc }}
</div> -->
<!-- <div class="col-2 text-top0 items-center">
<q-input
dense
outlined
v-model="score[9].score"
label="คะแนนข้อ 10"
type="number"
lazy-rules
:rules="[(val) => val !== '' || 'กรุณากรอกคะเเนน']"
/>
</div> -->
<!-- <q-input
class="col-12"
dense
disable
outlined
v-model="suggestion"
label=" "
type="textarea"
/> -->
<!-- </div> -->
</q-card>
<q-card bordered flat class="q-mt-md">
@ -1085,7 +736,7 @@ onMounted(async () => {
v-model="comment"
label="กรอกความคิดเห็น"
type="textarea"
:rules="[(val) => !!val || 'กรุณากรอกความคิดเห็น']"
:rules="[(val:string) => !!val || 'กรุณากรอกความคิดเห็น']"
/>
</div>
<div class="col-2 text-top0">

View file

@ -324,7 +324,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="organizationPositionOld"
:rules="[(val) => !!val || `${'กรุณากรอกตำแหน่ง/สังกัด'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกตำแหน่ง/สังกัด'}`]"
hide-bottom-space
:label="`${'ตำแหน่ง/สังกัด'}`"
type="textarea"
@ -341,7 +341,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="positionTypeOld"
:rules="[(val) => !!val || `${'กรุณากรอกประเภทตำแหน่ง'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกประเภทตำแหน่ง'}`]"
hide-bottom-space
:label="`${'ประเภทตำแหน่ง'}`"
/>
@ -357,7 +357,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="positionLevelOld"
:rules="[(val) => !!val || `${'กรุณากรอกระดับ'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกระดับ'}`]"
hide-bottom-space
:label="`${'ระดับ'}`"
/>
@ -373,7 +373,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="posNo"
:rules="[(val) => !!val || `${'กรุณากรอกเลขที่'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกเลขที่'}`]"
hide-bottom-space
:label="`${'เลขที่'}`"
/>
@ -402,7 +402,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="organization"
:rules="[(val) => !!val || `${'กรุณากรอกการไล่ออกจากสังกัด'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกการไล่ออกจากสังกัด'}`]"
hide-bottom-space
:label="`${'ไล่ออกจากสังกัด'}`"
/>
@ -431,7 +431,7 @@ onMounted(async () => {
:borderless="!edit"
:readonly="!edit"
:model-value="date !== null ? date2Thai(date) : null"
:rules="[(val) => !!val || `${'กรุณาเลือกตั้งแต่วัน'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกตั้งแต่วัน'}`]"
hide-bottom-space
:label="`${'ตั้งแต่วัน'}`"
>

View file

@ -704,7 +704,7 @@ onMounted(() => {
lazy-rules
hide-bottom-space
v-model="note"
:rules="[(val) => !!val || 'กรุณากรอกเหตุผล']"
:rules="[(val:string) => !!val || 'กรุณากรอกเหตุผล']"
:label="`${'กรอกเหตุผล'}`"
type="textarea"
:readonly="statusUpload || checkRoutePermisson"
@ -757,7 +757,7 @@ onMounted(() => {
v-model="fileUpload"
accept=".pdf"
label="อัปโหลดเอกสาร"
:rules="[(val) => !!val || `${'กรุณาเลือกเอกสารอัปโหลด'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกเอกสารอัปโหลด'}`]"
lazy-rules
>
<template v-slot:prepend>
@ -783,7 +783,7 @@ onMounted(() => {
<q-input
dense
outlined
:rules="[(val) => !!val || `${'กรุณาเลือกวันที่'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกวันที่'}`]"
:model-value="
signDate !== null ? date2Thai(signDate) : null
"

View file

@ -160,7 +160,7 @@ async function cerateRetirement(data: object) {
option-value="id"
emit-value
map-options
:rules="[(val) => !!val || 'กรุณาเลือกรอบ']"
:rules="[(val:string) => !!val || 'กรุณาเลือกรอบ']"
/>
</q-item-label>
</q-item-section>
@ -187,7 +187,7 @@ async function cerateRetirement(data: object) {
option-value="id"
emit-value
map-options
:rules="[(val) => !!val || 'กรุณาเลือกรอบ']"
:rules="[(val:string) => !!val || 'กรุณาเลือกรอบ']"
/></q-item-label>
</q-item-section>
</q-item>

View file

@ -1098,7 +1098,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="organizationPositionOld"
:rules="[(val) => !!val || `${'กรุณากรอกตำแหน่ง/สังกัดเดิม'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกตำแหน่ง/สังกัดเดิม'}`]"
hide-bottom-space
:label="`${'ตำแหน่ง/สังกัดเดิม'}`"
type="textarea"
@ -1115,7 +1115,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="positionTypeOld"
:rules="[(val) => !!val || `${'กรุณากรอกตำแหน่งประเภท'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกตำแหน่งประเภท'}`]"
hide-bottom-space
:label="`${'ตำแหน่งประเภท'}`"
/>
@ -1131,7 +1131,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="positionLevelOld"
:rules="[(val) => !!val || `${'กรุณากรอกระดับตำแหน่ง'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกระดับตำแหน่ง'}`]"
hide-bottom-space
:label="`${'ระดับตำแหน่ง'}`"
/>
@ -1147,7 +1147,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="posNo"
:rules="[(val) => !!val || `${'กรุณากรอกเลขที่'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกเลขที่'}`]"
hide-bottom-space
:label="`${'เลขที่'}`"
/>
@ -1263,7 +1263,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="remarkHorizontal"
:rules="[(val) => !!val || `${'กรุณากรอกหมายเหตุแนวนอน '}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกหมายเหตุแนวนอน '}`]"
hide-bottom-space
:label="`${'หมายเหตุแนวนอน '}`"
type="textarea"
@ -1289,7 +1289,7 @@ onMounted(async () => {
dense
outlined
lazy-rules
:rules="[(val) => !!val || 'กรุณากรอกความคิดเห็น/เหตุผล']"
:rules="[(val:string) => !!val || 'กรุณากรอกความคิดเห็น/เหตุผล']"
v-model="reasonReign"
:label="`${'กรอกความคิดเห็น/เหตุผล'}`"
type="textarea"
@ -1317,7 +1317,7 @@ onMounted(async () => {
"
hide-bottom-space
:label="`${' วันสุดท้ายที่ยับยั้ง'}`"
:rules="[(val) => !!val || 'กรุณาเลือกวันที่']"
:rules="[(val:string) => !!val || 'กรุณาเลือกวันที่']"
>
<template v-slot:prepend>
<q-icon

View file

@ -140,7 +140,7 @@ watch(
map-options
option-label="name"
option-value="id"
:rules="[(val) => !!val || `${'กรุณาเลือกสถานะ'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกสถานะ'}`]"
hide-bottom-space
use-input
@filter="(inputValue: any,doneFn: Function) => filterFnOptions(inputValue, doneFn)"
@ -175,7 +175,7 @@ watch(
map-options
option-label="name"
option-value="id"
:rules="[(val) => !!val || `${'กรุณาเลือกสถานะ'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกสถานะ'}`]"
hide-bottom-space
use-input
@filter="(inputValue: any,doneFn: Function) => filterFnOptions(inputValue, doneFn)"

View file

@ -320,7 +320,7 @@ watch(
label="เหตุผล"
hide-bottom-space
type="textarea"
:rules="[(val) => !!val || `กรุณากรอกเหตุผล`]"
:rules="[(val:string) => !!val || `กรุณากรอกเหตุผล`]"
></q-input>
</div>
</div>

View file

@ -257,7 +257,7 @@ watch(
ref="checkInStatusRef"
for="checkInStatus"
emit-value
:rules="[(val) => !!val || 'กรุณาเลือกสถานะช่วงเช้า']"
:rules="[(val:string) => !!val || 'กรุณาเลือกสถานะช่วงเช้า']"
hide-bottom-space
map-options
outlined
@ -298,7 +298,7 @@ watch(
map-options
outlined
dense
:rules="[(val) => !!val || 'กรุณาเลือกสถานะช่วงบ่าย']"
:rules="[(val:string) => !!val || 'กรุณาเลือกสถานะช่วงบ่าย']"
hide-bottom-space
full-width
v-model="formData.checkOutStatus"
@ -317,7 +317,7 @@ watch(
class="col-12 bg-white q-ma-md"
outlined
stack-label
:rules="[(val) => !!val || 'กรุณาเหตุผล']"
:rules="[(val:string) => !!val || 'กรุณาเหตุผล']"
v-model="formData.note"
label="เหตุผล"
hide-bottom-space

View file

@ -425,7 +425,7 @@ onMounted(() => {
map-options
hide-bottom-space
:options="complainstStore.complainantoptions"
:rules="[(val) => !!val || `${'กรุณาเลือกผู้ร้องเรียน'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกผู้ร้องเรียน'}`]"
@filter="(inputValue: any,
doneFn: Function) => filterSelector(inputValue, doneFn, 'filterrespondentType'
)"
@ -493,7 +493,7 @@ onMounted(() => {
:readonly="isReadonly || checkRoutePermisson"
hide-bottom-space
map-options
:rules="[(val) => !!val || `${'กรุณาเลือกหน่วยงาน'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกหน่วยงาน'}`]"
@update:model-value="changeFormData()"
use-input
@filter="filterOptionFnAgency"
@ -641,7 +641,7 @@ onMounted(() => {
:readonly="isReadonly || checkRoutePermisson"
hide-bottom-space
v-model="formData.title"
:rules="[(val) => !!val || 'กรุณากรอกเรื่องร้องเรียน']"
:rules="[(val:string) => !!val || 'กรุณากรอกเรื่องร้องเรียน']"
label="เรื่องร้องเรียน"
type="textarea"
rows="5"

View file

@ -320,7 +320,7 @@ watch(
hide-bottom-space
dense
label="คำค้น"
:rules="[(val) => !!val || `กรุณากรอกคำค้น`]"
:rules="[(val:string) => !!val || `กรุณากรอกคำค้น`]"
>
<template v-slot:after>
<q-btn

View file

@ -321,7 +321,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="data.positionType"
:rules="[(val) => !!val || `${'กรุณากรอกประเภทตำแหน่ง'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกประเภทตำแหน่ง'}`]"
hide-bottom-space
:label="`${'ประเภทตำแหน่ง'}`"
/>
@ -337,7 +337,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="data.positionLevel"
:rules="[(val) => !!val || `${'กรุณากรอกระดับตำแหน่ง'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกระดับตำแหน่ง'}`]"
hide-bottom-space
:label="`${'ระดับตำแหน่ง'}`"
/>
@ -353,7 +353,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="data.posNo"
:rules="[(val) => !!val || `${'กรุณากรอกตำแหน่งเลขที่'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกตำแหน่งเลขที่'}`]"
hide-bottom-space
:label="`${'ตำแหน่งเลขที่'}`"
/>
@ -388,7 +388,7 @@ onMounted(async () => {
:readonly="!edit"
:borderless="!edit"
v-model="data.organization"
:rules="[(val) => !!val || `${'กรุณากรอก'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอก'}`]"
hide-bottom-space
:label="`${'สังกัด'}`"
/>
@ -422,7 +422,7 @@ onMounted(async () => {
? date2Thai(data.startDateSuspend)
: null
"
:rules="[(val) => !!val || `${'กรุณาเลือกตั้งแต่วัน'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกตั้งแต่วัน'}`]"
hide-bottom-space
:label="`${'ตั้งแต่วัน'}`"
>
@ -471,7 +471,7 @@ onMounted(async () => {
? date2Thai(data.endDateSuspend)
: null
"
:rules="[(val) => !!val || `${'กรุณาเลือกถึงวันที่'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกถึงวันที่'}`]"
hide-bottom-space
:label="`${'ถึงวันที่'}`"
>

View file

@ -394,7 +394,7 @@ onMounted(() => {
option-label="name"
option-value="id"
:options="option"
:rules="[(val) => !!val || `${'กรุณาเลือกประเภท'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกประเภท'}`]"
hide-bottom-space
use-input
@filter="filterOptionFn"
@ -419,7 +419,7 @@ onMounted(() => {
outlined
emit-value
lazy-rules
:rules="[(val) => !!val || `${'กรุณาเลือกสถานะ'}`]"
:rules="[(val:string) => !!val || `${'กรุณาเลือกสถานะ'}`]"
map-options
hide-bottom-space
option-label="name"
@ -613,7 +613,7 @@ onMounted(() => {
dense
outlined
lazy-rules
:rules="[(val) => !!val || 'กรุณากรอกประเภทคดี']"
:rules="[(val:string) => !!val || 'กรุณากรอกประเภทคดี']"
hide-bottom-space
label="ประเภทคดี"
/>
@ -627,7 +627,7 @@ onMounted(() => {
dense
outlined
lazy-rules
:rules="[(val) => !!val || 'กรุณากรอกเลขที่คดี']"
:rules="[(val:string) => !!val || 'กรุณากรอกเลขที่คดี']"
label="เลขที่คดี"
hide-bottom-space
/>

View file

@ -73,7 +73,7 @@ watch(props, () => {
class="col-12 q-mb-sm"
debounce="300"
label="หน้าที่"
:rules="[(val) => !!val || `กรุณากรอกหน้าที่`]"
:rules="[(val:string) => !!val || `กรุณากรอกหน้าที่`]"
hide-bottom-space
/>
<q-input
@ -83,7 +83,7 @@ watch(props, () => {
class="col-12 q-mb-sm"
debounce="300"
label="มติ/คำสั่ง"
:rules="[(val) => !!val || `กรุณากรอก มติ/คำสั่ง`]"
:rules="[(val:string) => !!val || `กรุณากรอก มติ/คำสั่ง`]"
hide-bottom-space
/>
</q-card-section>

View file

@ -6,6 +6,7 @@ interface FormData {
position: string;
phone: string;
email: string;
qualification?:string
}
interface FormDataPost {
personalId: string;

View file

@ -85,7 +85,7 @@ onMounted(async () => {
outlined
label="ชื่อผลงาน"
v-model="subject"
:rules="[(val) => !!val || `${'กรุณากรอกชื่อผลงาน'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกชื่อผลงาน'}`]"
lazy-rules
hide-bottom-space
/>
@ -96,7 +96,7 @@ onMounted(async () => {
outlined
v-model="author"
label="เจ้าของผลงาน"
:rules="[(val) => !!val || `${'กรุณากรอกเจ้าของผลงาน'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกเจ้าของผลงาน'}`]"
lazy-rules
hide-bottom-space
/>
@ -131,7 +131,7 @@ onMounted(async () => {
outlined
label="ชื่อ-นามสกุล"
v-model="formCommand.elementaryFullName"
:rules="[(val) => !!val || `${'กรุณากรอกชื่อ-นามสกุล'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกชื่อ-นามสกุล'}`]"
lazy-rules
hide-bottom-space
/>
@ -143,7 +143,7 @@ onMounted(async () => {
outlined
v-model="formCommand.elementaryPosition"
label="ตำแหน่ง"
:rules="[(val) => !!val || `${'กรุณากรอกตำแหน่ง'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกตำแหน่ง'}`]"
lazy-rules
hide-bottom-space
/>
@ -165,7 +165,7 @@ onMounted(async () => {
outlined
v-model="formCommand.abovelevelFullname"
label="ชื่อ-นามสกุล"
:rules="[(val) => !!val || `${'กรุณากรอกชื่อ-นามสกุล'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกชื่อ-นามสกุล'}`]"
lazy-rules
hide-bottom-space
/>
@ -177,7 +177,7 @@ onMounted(async () => {
outlined
v-model="formCommand.abovelevelPosition"
label="ตำแหน่ง"
:rules="[(val) => !!val || `${'กรุณากรอกตำแหน่ง'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกตำแหน่ง'}`]"
lazy-rules
hide-bottom-space
/>

View file

@ -144,7 +144,7 @@ watch(
bg-color="white"
dense
class="inputgreen"
:rules="[(val) => !!val || `${'กรุณากรอกลำดับ/รหัสตัวชี้วัด'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกลำดับ/รหัสตัวชี้วัด'}`]"
hide-bottom-space
lazy-rules
/>
@ -334,7 +334,7 @@ watch(
type="textarea"
dense
class="inputgreen"
:rules="[(val) => !!val || `${'กรุณากรอกสูตรคำนวณ'}`]"
:rules="[(val:string) => !!val || `${'กรุณากรอกสูตรคำนวณ'}`]"
hide-bottom-space
lazy-rules
/>

View file

@ -627,7 +627,7 @@ onMounted(() => {
lazy-rules
:rules="
typeReport === 'KPI8'
? [(val) => !!val || 'กรุณาเลือกรอบการประเมิน']
? [(val:string) => !!val || 'กรุณาเลือกรอบการประเมิน']
: []
"
/>