ทะเบียนประวัติ => ปรับ form

This commit is contained in:
DESKTOP-1R2VSQH\Lenovo ThinkPad E490 2024-06-11 15:48:29 +07:00
parent f18e224db0
commit 18d1429adb
21 changed files with 117 additions and 278 deletions

View file

@ -182,9 +182,8 @@ watch(
<q-dialog v-model="modal" persistent> <q-dialog v-model="modal" persistent>
<q-card style="min-width: 350px"> <q-card style="min-width: 350px">
<q-form @submit.prevent @validation-success="onSubmit()" greedy> <q-form @submit.prevent @validation-success="onSubmit()" greedy>
<q-card-section class="flex justify-between" style="padding: 0"> <DialogHeader tittle="เพิ่มข้อมูล" :close="closeDialog" />
<DialogHeader tittle="เพิ่มข้อมูล" :close="closeDialog" />
</q-card-section>
<q-separator /> <q-separator />
<q-card-section class="q-pa-md q-col-gutter-md"> <q-card-section class="q-pa-md q-col-gutter-md">
<div class="row q-gutter-sm"> <div class="row q-gutter-sm">
@ -375,8 +374,6 @@ watch(
<q-btn <q-btn
id="onSubmit" id="onSubmit"
type="submit" type="submit"
dense
unelevated
label="บันทึก" label="บันทึก"
color="public" color="public"
class="q-px-md" class="q-px-md"

View file

@ -238,7 +238,7 @@ function closeHistoryDialog() {
async function fetchData(id: string) { async function fetchData(id: string) {
showLoader(); showLoader();
await http await http
.get(config.API.profileNewCertificateByProfileId(id,empType.value)) .get(config.API.profileNewCertificateByProfileId(id, empType.value))
.then(async (res) => { .then(async (res) => {
rows.value = res.data.result; rows.value = res.data.result;
}) })
@ -290,10 +290,13 @@ async function addData() {
async function editData(idData: string) { async function editData(idData: string) {
await http await http
.patch(config.API.profileNewCertificateByCertificateId(idData,empType.value), { .patch(
...profesLicenseData, config.API.profileNewCertificateByCertificateId(idData, empType.value),
profileId: undefined, {
}) ...profesLicenseData,
profileId: undefined,
}
)
.then(() => { .then(() => {
fetchData(id.value); fetchData(id.value);
success($q, "บันทึกข้อมูลสำเร็จ"); success($q, "บันทึกข้อมูลสำเร็จ");
@ -325,7 +328,7 @@ async function editData(idData: string) {
async function fetchHistoryData(id: string) { async function fetchHistoryData(id: string) {
showLoader(); showLoader();
await http await http
.get(config.API.profileNewCertificateHisByCertificateId(id,empType.value)) .get(config.API.profileNewCertificateHisByCertificateId(id, empType.value))
.then(async (res) => { .then(async (res) => {
historyRows.value = res.data.result; historyRows.value = res.data.result;
}) })
@ -551,11 +554,11 @@ onMounted(async () => {
" "
:close="closeDialog" :close="closeDialog"
/> />
<q-separator color="grey-4" /> <q-separator />
<q-card-section style="max-height: 55vh" class="scroll"> <q-card-section>
<div class="row q-gutter-sm q-pb-sm"> <div class="row q-col-gutter-sm q-pb-sm">
<div class="col"> <div class="col-xs-12 col-md-6">
<q-input <q-input
outlined outlined
v-model="profesLicenseData.certificateType" v-model="profesLicenseData.certificateType"
@ -567,7 +570,7 @@ onMounted(async () => {
hide-bottom-space hide-bottom-space
/> />
</div> </div>
<div class="col"> <div class="col-xs-12 col-md-6">
<q-input <q-input
outlined outlined
v-model="profesLicenseData.issuer" v-model="profesLicenseData.issuer"
@ -582,8 +585,8 @@ onMounted(async () => {
/> />
</div> </div>
</div> </div>
<div class="row q-gutter-sm q-pb-sm"> <div class="row q-col-gutter-sm q-pb-sm">
<div class="col"> <div class="col-xs-12 col-md-6">
<q-input <q-input
outlined outlined
v-model="profesLicenseData.certificateNo" v-model="profesLicenseData.certificateNo"
@ -595,7 +598,7 @@ onMounted(async () => {
hide-bottom-space hide-bottom-space
/> />
</div> </div>
<div class="col"> <div class="col-xs-12 col-md-6">
<datepicker <datepicker
menu-class-name="modalfix" menu-class-name="modalfix"
v-model="profesLicenseData.issueDate" v-model="profesLicenseData.issueDate"
@ -684,17 +687,9 @@ onMounted(async () => {
</div> </div>
</div> </div>
</q-card-section> </q-card-section>
<q-separator color="grey-4" /> <q-separator />
<q-card-actions align="right"> <q-card-actions align="right">
<q-btn <q-btn label="บันทึก" id="onSubmit" type="submit" color="public">
dense
unelevated
label="บันทึก"
id="onSubmit"
type="submit"
color="public"
class="q-px-md"
>
<q-tooltip>นทกขอม</q-tooltip> <q-tooltip>นทกขอม</q-tooltip>
</q-btn> </q-btn>
</q-card-actions> </q-card-actions>
@ -708,7 +703,7 @@ onMounted(async () => {
tittle="ประวัติแก้ไขใบอนุญาตประกอบวิชาชีพ" tittle="ประวัติแก้ไขใบอนุญาตประกอบวิชาชีพ"
:close="closeHistoryDialog" :close="closeHistoryDialog"
/> />
<q-separator color="grey-4" /> <q-separator />
<q-card-section style="max-height: 60vh" class="scroll"> <q-card-section style="max-height: 60vh" class="scroll">
<div class="row q-gutter-sm q-mb-sm"> <div class="row q-gutter-sm q-mb-sm">

View file

@ -700,8 +700,8 @@ onMounted(async () => {
" "
:close="closeDialog" :close="closeDialog"
/> />
<q-separator color="grey-4" /> <q-separator />
<q-card-section style="max-height: 55vh" class="scroll"> <q-card-section>
<div class="row q-mb-sm q-gutter-sm"> <div class="row q-mb-sm q-gutter-sm">
<div class="col"> <div class="col">
<q-input <q-input
@ -1063,17 +1063,9 @@ onMounted(async () => {
</div> </div>
</div> </div>
</q-card-section> </q-card-section>
<q-separator color="grey-4" /> <q-separator />
<q-card-actions align="right"> <q-card-actions align="right">
<q-btn <q-btn label="บันทึก" id="onSubmit" type="submit" color="public">
dense
unelevated
label="บันทึก"
id="onSubmit"
type="submit"
color="public"
class="q-px-md"
>
<q-tooltip>นทกขอม</q-tooltip> <q-tooltip>นทกขอม</q-tooltip>
</q-btn> </q-btn>
</q-card-actions> </q-card-actions>
@ -1087,7 +1079,7 @@ onMounted(async () => {
tittle="ประวัติแก้ไขการฝึกอบรม/ดูงาน" tittle="ประวัติแก้ไขการฝึกอบรม/ดูงาน"
:close="closeHistoryDialog" :close="closeHistoryDialog"
/> />
<q-separator color="grey-4" /> <q-separator />
<q-card-section style="max-height: 60vh" class="scroll"> <q-card-section style="max-height: 60vh" class="scroll">
<div class="row q-gutter-sm q-mb-sm"> <div class="row q-gutter-sm q-mb-sm">
<q-space /> <q-space />

View file

@ -811,8 +811,8 @@ onMounted(async () => {
" "
:close="clickClose" :close="clickClose"
/> />
<q-separator color="grey-4" /> <q-separator />
<q-card-section style="max-height: 55vh" class="scroll"> <q-card-section>
<div class="row col-12 q-col-gutter-sm"> <div class="row col-12 q-col-gutter-sm">
<div class="col-xs-6 col-sm-6 col-md-6"> <div class="col-xs-6 col-sm-6 col-md-6">
<datepicker <datepicker
@ -1103,17 +1103,9 @@ onMounted(async () => {
</div> </div>
</div> </div>
</q-card-section> </q-card-section>
<q-separator color="grey-4" /> <q-separator />
<q-card-actions align="right"> <q-card-actions align="right">
<q-btn <q-btn label="บันทึก" id="onSubmit" type="submit" color="public">
dense
unelevated
label="บันทึก"
id="onSubmit"
type="submit"
color="public"
class="q-px-md"
>
<q-tooltip>นทกขอม</q-tooltip> <q-tooltip>นทกขอม</q-tooltip>
</q-btn> </q-btn>
</q-card-actions> </q-card-actions>
@ -1127,7 +1119,7 @@ onMounted(async () => {
tittle="ประวัติแก้ไขเครื่องราชอิสริยาภรณ์" tittle="ประวัติแก้ไขเครื่องราชอิสริยาภรณ์"
:close="() => (modalHistory = false)" :close="() => (modalHistory = false)"
/> />
<q-separator color="grey-4" /> <q-separator />
<q-card-section style="max-height: 60vh" class="scroll"> <q-card-section style="max-height: 60vh" class="scroll">
<div class="row q-gutter-sm q-mb-sm"> <div class="row q-gutter-sm q-mb-sm">

View file

@ -541,8 +541,8 @@ onMounted(async () => {
" "
:close="clickClose" :close="clickClose"
/> />
<q-separator color="grey-4" /> <q-separator />
<q-card-section style="max-height: 55vh" class="scroll"> <q-card-section>
<div class="row col-12 q-col-gutter-sm"> <div class="row col-12 q-col-gutter-sm">
<div class="row col-12 q-gutter-md q-py-sm text-grey-7"> <div class="row col-12 q-gutter-md q-py-sm text-grey-7">
<q-radio <q-radio
@ -736,15 +736,7 @@ onMounted(async () => {
</q-card-section> </q-card-section>
<q-separator color="grey-4" /> <q-separator color="grey-4" />
<q-card-actions align="right"> <q-card-actions align="right">
<q-btn <q-btn label="บันทึก" id="onSubmit" type="submit" color="public">
dense
unelevated
label="บันทึก"
id="onSubmit"
type="submit"
color="public"
class="q-px-md"
>
<q-tooltip>นทกขอม</q-tooltip> <q-tooltip>นทกขอม</q-tooltip>
</q-btn> </q-btn>
</q-card-actions> </q-card-actions>

View file

@ -367,7 +367,9 @@ async function clickHistory(row: ResponseObject) {
showLoader(); showLoader();
try { try {
const res = await http.get(config.API.profileNewAssessmentsHisById(row.id,empType.value)); const res = await http.get(
config.API.profileNewAssessmentsHisById(row.id, empType.value)
);
rowsHistory.value = res.data.result; rowsHistory.value = res.data.result;
} catch (e) { } catch (e) {
@ -611,8 +613,8 @@ onMounted(async () => {
" "
:close="clickClose" :close="clickClose"
/> />
<q-separator color="grey-4" /> <q-separator />
<q-card-section style="max-height: 55vh" class="scroll"> <q-card-section>
<div class="row col-12 q-col-gutter-sm"> <div class="row col-12 q-col-gutter-sm">
<div class="col-12"> <div class="col-12">
<datepicker <datepicker
@ -785,15 +787,7 @@ onMounted(async () => {
<q-separator /> <q-separator />
<q-card-actions align="right"> <q-card-actions align="right">
<q-btn <q-btn label="บันทึก" id="onSubmit" type="submit" color="public">
dense
unelevated
label="บันทึก"
id="onSubmit"
type="submit"
color="public"
class="q-px-md"
>
<q-tooltip>นทกขอม</q-tooltip> <q-tooltip>นทกขอม</q-tooltip>
</q-btn> </q-btn>
</q-card-actions> </q-card-actions>
@ -807,7 +801,7 @@ onMounted(async () => {
tittle="ประวัติแก้ไขผลการประเมินการปฏิบัติราชการ" tittle="ประวัติแก้ไขผลการประเมินการปฏิบัติราชการ"
:close="() => (modalHistory = false)" :close="() => (modalHistory = false)"
/> />
<q-separator color="grey-4" /> <q-separator />
<q-card-section style="max-height: 60vh" class="scroll"> <q-card-section style="max-height: 60vh" class="scroll">
<div class="row q-gutter-sm q-mb-sm"> <div class="row q-gutter-sm q-mb-sm">
<q-space /> <q-space />

View file

@ -440,8 +440,8 @@ onMounted(() => {
v-model="formData.employeeOc" v-model="formData.employeeOc"
class="inputgreen" class="inputgreen"
label="สังกัด" label="สังกัด"
:rules="[(val: string) => !!val || `${'กรุณากรอกสังกัด'}`]"
/> />
<!-- :rules="[(val: string) => !!val || `${'กรุณากรอกสังกัด'}`]" -->
</div> </div>
<div class="col-xs-6 col-sm-3 col-md-3"> <div class="col-xs-6 col-sm-3 col-md-3">
@ -453,8 +453,8 @@ onMounted(() => {
v-model="formData.employeeTypeIndividual" v-model="formData.employeeTypeIndividual"
class="inputgreen" class="inputgreen"
label="ประเภทบุคคล" label="ประเภทบุคคล"
:rules="[(val: string) => !!val || `${'กรุณากรอกประเภทบุคคล'}`]"
/> />
<!-- :rules="[(val: string) => !!val || `${'กรุณากรอกประเภทบุคคล'}`]" -->
</div> </div>
<div class="col-xs-6 col-sm-3 col-md-3"> <div class="col-xs-6 col-sm-3 col-md-3">
<q-input <q-input
@ -465,10 +465,10 @@ onMounted(() => {
v-model="formData.employeeWage" v-model="formData.employeeWage"
class="inputgreen" class="inputgreen"
label="ค่าจ้าง" label="ค่าจ้าง"
mask="#" mask="###,###,###,###"
reverse-fill-mask reverse-fill-mask
:rules="[(val: string) => !!val || `${'กรุณากรอกค่าจ้าง'}`]"
/> />
<!-- :rules="[(val: string) => !!val || `${'กรุณากรอกค่าจ้าง'}`]" -->
</div> </div>
<div class="col-xs-6 col-sm-3 col-md-3"> <div class="col-xs-6 col-sm-3 col-md-3">
@ -480,10 +480,10 @@ onMounted(() => {
v-model="formData.employeeMoneyIncrease" v-model="formData.employeeMoneyIncrease"
class="inputgreen" class="inputgreen"
label="เงินเพิ่มการครองชึพชั่วคราว" label="เงินเพิ่มการครองชึพชั่วคราว"
mask="#" mask="###,###,###,###"
reverse-fill-mask reverse-fill-mask
:rules="[(val: string) => !!val || `${'กรุณากรอกเงินเพิ่มการครองชึพชั่วคราว'}`]"
/> />
<!-- :rules="[(val: string) => !!val || `${'กรุณากรอกเงินเพิ่มการครองชึพชั่วคราว'}`]" -->
</div> </div>
<div class="col-xs-6 col-sm-3 col-md-3"> <div class="col-xs-6 col-sm-3 col-md-3">
<q-input <q-input
@ -494,10 +494,10 @@ onMounted(() => {
v-model="formData.employeeMoneyAllowance" v-model="formData.employeeMoneyAllowance"
class="inputgreen" class="inputgreen"
label="เงินช่วยเหลือการครองชึพชั่วคราว" label="เงินช่วยเหลือการครองชึพชั่วคราว"
mask="#" mask="###,###,###,###"
reverse-fill-mask reverse-fill-mask
:rules="[(val: string) => !!val || `${'กรุณากรอกเงินช่วยเหลือการครองชึพชั่วคราว'}`]"
/> />
<!-- :rules="[(val: string) => !!val || `${'กรุณากรอกเงินช่วยเหลือการครองชึพชั่วคราว'}`]" -->
</div> </div>
<div class="col-xs-6 col-sm-3 col-md-3"> <div class="col-xs-6 col-sm-3 col-md-3">
<q-input <q-input
@ -508,10 +508,10 @@ onMounted(() => {
v-model="formData.employeeMoneyEmployee" v-model="formData.employeeMoneyEmployee"
class="inputgreen" class="inputgreen"
label="เงินสมทบประกันสังคม(ลูกจ้าง)" label="เงินสมทบประกันสังคม(ลูกจ้าง)"
mask="#" mask="###,###,###,###"
reverse-fill-mask reverse-fill-mask
:rules="[(val: string) => !!val || `${'กรุณากรอกเงินสมทบประกันสังคม(ลูกจ้าง)'}`]"
/> />
<!-- :rules="[(val: string) => !!val || `${'กรุณากรอกเงินสมทบประกันสังคม(ลูกจ้าง)'}`]" -->
</div> </div>
<div class="col-xs-6 col-sm-3 col-md-3"> <div class="col-xs-6 col-sm-3 col-md-3">
<q-input <q-input
@ -522,25 +522,17 @@ onMounted(() => {
v-model="formData.employeeMoneyEmployer" v-model="formData.employeeMoneyEmployer"
class="inputgreen" class="inputgreen"
label="เงินสมทบประกันสังคม(นายจ้าง)" label="เงินสมทบประกันสังคม(นายจ้าง)"
mask="#" mask="###,###,###,###"
reverse-fill-mask reverse-fill-mask
:rules="[(val: string) => !!val || `${'กรุณากรอกเงินสมทบประกันสังคม(นายจ้าง))'}`]"
/> />
<!-- :rules="[(val: string) => !!val || `${'กรุณากรอกเงินสมทบประกันสังคม(นายจ้าง))'}`]" -->
</div> </div>
</div> </div>
</q-card-section> </q-card-section>
<q-separator /> <q-separator />
<q-card-actions align="right"> <q-card-actions align="right">
<q-btn <q-btn label="บันทึก" id="onSubmit" type="submit" color="public">
dense
unelevated
label="บันทึก"
id="onSubmit"
type="submit"
color="public"
class="q-px-md"
>
<q-tooltip>นทกขอม</q-tooltip> <q-tooltip>นทกขอม</q-tooltip>
</q-btn> </q-btn>
</q-card-actions> </q-card-actions>

View file

@ -414,15 +414,7 @@ onMounted(() => {
</q-card-section> </q-card-section>
<q-separator /> <q-separator />
<q-card-actions align="right"> <q-card-actions align="right">
<q-btn <q-btn label="บันทึก" id="onSubmit" type="submit" color="public">
dense
unelevated
label="บันทึก"
id="onSubmit"
type="submit"
color="public"
class="q-px-md"
>
<q-tooltip>นทกขอม</q-tooltip> <q-tooltip>นทกขอม</q-tooltip>
</q-btn> </q-btn>
</q-card-actions> </q-card-actions>

View file

@ -660,9 +660,9 @@ onMounted(() => {
<DialogHeader tittle="แก้ไขข้อมูลราชการ" :close="closeDialog" /> <DialogHeader tittle="แก้ไขข้อมูลราชการ" :close="closeDialog" />
<q-separator color="grey-4" /> <q-separator color="grey-4" />
<q-card-section style="max-height: 50vh" class="scroll"> <q-card-section>
<div class="row q-col-gutter-sm"> <div class="row q-col-gutter-sm">
<div class="col-6"> <div class="col-xs-12 col-md-6">
<datepicker <datepicker
v-model="containDate" v-model="containDate"
:locale="'th'" :locale="'th'"
@ -704,7 +704,7 @@ onMounted(() => {
</template> </template>
</datepicker> </datepicker>
</div> </div>
<div class="col-6"> <div class="col-xs-12 col-md-6">
<datepicker <datepicker
v-model="workDate" v-model="workDate"
:locale="'th'" :locale="'th'"
@ -764,15 +764,7 @@ onMounted(() => {
</q-card-section> </q-card-section>
<q-separator /> <q-separator />
<q-card-actions align="right"> <q-card-actions align="right">
<q-btn <q-btn label="บันทึก" id="onSubmit" type="submit" color="public">
dense
unelevated
label="บันทึก"
id="onSubmit"
type="submit"
color="public"
class="q-px-md"
>
<q-tooltip>นทกขอม</q-tooltip> <q-tooltip>นทกขอม</q-tooltip>
</q-btn> </q-btn>
</q-card-actions> </q-card-actions>

View file

@ -598,7 +598,7 @@ onMounted(async () => {
<q-separator color="grey-4" /> <q-separator color="grey-4" />
<q-card-section style="max-height: 50vh" class="scroll"> <q-card-section style="max-height: 50vh" class="scroll">
<div class="row col-12 q-col-gutter-x-xs q-col-gutter-y-xs"> <div class="row col-12 q-col-gutter-x-xs q-col-gutter-y-xs">
<div class="col-xs-6 col-sm-6 col-md-6"> <div class="col-xs-12 col-sm-6 col-md-6">
<datepicker <datepicker
menu-class-name="modalfix" menu-class-name="modalfix"
v-model="disciplineData.date" v-model="disciplineData.date"
@ -634,7 +634,7 @@ onMounted(async () => {
</template> </template>
</datepicker> </datepicker>
</div> </div>
<div class="col-xs-6 col-sm-6 col-md-6"> <div class="col-xs-12 col-sm-6 col-md-6">
<q-input <q-input
ref="detailRef" ref="detailRef"
class="full-width inputgreen cursor-pointer" class="full-width inputgreen cursor-pointer"
@ -647,7 +647,7 @@ onMounted(async () => {
:label="`${'รายละเอียด'}`" :label="`${'รายละเอียด'}`"
/> />
</div> </div>
<div class="col-xs-6 col-sm-6 col-md-6"> <div class="col-xs-12 col-sm-6 col-md-6">
<selector <selector
class="full-width inputgreen cursor-pointer" class="full-width inputgreen cursor-pointer"
outlined outlined
@ -669,7 +669,7 @@ onMounted(async () => {
) " ) "
/> />
</div> </div>
<div class="col-xs-6 col-sm-6 col-md-6"> <div class="col-xs-12 col-sm-6 col-md-6">
<q-input <q-input
class="full-width inputgreen cursor-pointer" class="full-width inputgreen cursor-pointer"
outlined outlined
@ -679,7 +679,7 @@ onMounted(async () => {
:label="`${'ล้างมลทิน'}`" :label="`${'ล้างมลทิน'}`"
/> />
</div> </div>
<div class="col-xs-6 col-sm-6 col-md-6"> <div class="col-xs-12 col-sm-6 col-md-6">
<q-input <q-input
ref="refCommandNoRef" ref="refCommandNoRef"
class="full-width inputgreen cursor-pointer" class="full-width inputgreen cursor-pointer"
@ -696,7 +696,7 @@ onMounted(async () => {
</template> </template>
</q-input> </q-input>
</div> </div>
<div class="col-xs-6 col-sm-6 col-md-6"> <div class="col-xs-12 col-sm-6 col-md-6">
<datepicker <datepicker
menu-class-name="modalfix" menu-class-name="modalfix"
v-model="disciplineData.refCommandDate" v-model="disciplineData.refCommandDate"
@ -737,15 +737,7 @@ onMounted(async () => {
</q-card-section> </q-card-section>
<q-separator /> <q-separator />
<q-card-actions align="right"> <q-card-actions align="right">
<q-btn <q-btn label="บันทึก" id="onSubmit" type="submit" color="public">
dense
unelevated
label="บันทึก"
id="onSubmit"
type="submit"
color="public"
class="q-px-md"
>
<q-tooltip>นทกขอม</q-tooltip> <q-tooltip>นทกขอม</q-tooltip>
</q-btn> </q-btn>
</q-card-actions> </q-card-actions>

View file

@ -1,4 +1,3 @@
div
<script setup lang="ts"> <script setup lang="ts">
import { ref, reactive, onMounted } from "vue"; import { ref, reactive, onMounted } from "vue";
import { useRoute } from "vue-router"; import { useRoute } from "vue-router";
@ -683,7 +682,7 @@ onMounted(() => {
/> />
<q-separator color="grey-4" /> <q-separator color="grey-4" />
<q-card-section style="max-height: 50vh" class="scroll"> <q-card-section>
<div class="row col-12 q-col-gutter-x-xs q-col-gutter-y-xs"> <div class="row col-12 q-col-gutter-x-xs q-col-gutter-y-xs">
<div class="col-xs-6 col-sm-6 col-md-6"> <div class="col-xs-6 col-sm-6 col-md-6">
<q-select <q-select
@ -802,15 +801,7 @@ onMounted(() => {
</q-card-section> </q-card-section>
<q-separator /> <q-separator />
<q-card-actions align="right"> <q-card-actions align="right">
<q-btn <q-btn label="บันทึก" id="onSubmit" type="submit" color="public">
dense
unelevated
label="บันทึก"
id="onSubmit"
type="submit"
color="public"
class="q-px-md"
>
<q-tooltip>นทกขอม</q-tooltip> <q-tooltip>นทกขอม</q-tooltip>
</q-btn> </q-btn>
</q-card-actions> </q-card-actions>

View file

@ -541,8 +541,8 @@ onMounted(async () => {
" "
:close="closeDialog" :close="closeDialog"
/> />
<q-separator color="grey-4" /> <q-separator />
<q-card-section style="max-height: 50vh" class="scroll"> <q-card-section>
<div class="row col-12 q-col-gutter-x-xs q-col-gutter-y-xs"> <div class="row col-12 q-col-gutter-x-xs q-col-gutter-y-xs">
<div class="col-xs-6 col-sm-6 col-md-6"> <div class="col-xs-6 col-sm-6 col-md-6">
<datepicker <datepicker
@ -709,15 +709,7 @@ onMounted(async () => {
</q-card-section> </q-card-section>
<q-separator /> <q-separator />
<q-card-actions align="right"> <q-card-actions align="right">
<q-btn <q-btn label="บันทึก" id="onSubmit" type="submit" color="public">
dense
unelevated
label="บันทึก"
id="onSubmit"
type="submit"
color="public"
class="q-px-md"
>
<q-tooltip>นทกขอม</q-tooltip> <q-tooltip>นทกขอม</q-tooltip>
</q-btn> </q-btn>
</q-card-actions> </q-card-actions>

View file

@ -505,7 +505,7 @@ onMounted(async () => {
/> />
<q-separator /> <q-separator />
<q-card-section style="max-height: 50vh" class="scroll"> <q-card-section>
<div class="row col-12 q-col-gutter-x-xs q-col-gutter-y-xs"> <div class="row col-12 q-col-gutter-x-xs q-col-gutter-y-xs">
<div class="col-xs-6 col-sm-6 col-md-6"> <div class="col-xs-6 col-sm-6 col-md-6">
<q-input <q-input
@ -782,8 +782,6 @@ onMounted(async () => {
<q-card-actions align="right"> <q-card-actions align="right">
<q-btn <q-btn
dense
unelevated
label="บันทึก" label="บันทึก"
id="onSubmit" id="onSubmit"
type="submit" type="submit"

View file

@ -709,12 +709,13 @@ watch(
:tittle="dialogStatus === 'edit' ? 'แก้ไขข้อมูล' : 'เพิ่มข้อมูล'" :tittle="dialogStatus === 'edit' ? 'แก้ไขข้อมูล' : 'เพิ่มข้อมูล'"
:close="closeDialog" :close="closeDialog"
/> />
<q-separator color="grey-4" /> <q-separator />
<q-card-section style="max-height: 50vh" class="scroll"> <q-card-section>
<div class="row q-mb-sm"> <div class="row q-mb-sm">
<div class="col-5"> <div class="col-5">
<q-select <q-select
class="inputgreen"
outlined outlined
v-model="changeNameData.status" v-model="changeNameData.status"
:options="statusOption" :options="statusOption"
@ -923,9 +924,7 @@ watch(
<q-btn <q-btn
id="onSubmit" id="onSubmit"
type="submit" type="submit"
dense
:disable="submitDisable" :disable="submitDisable"
unelevated
label="บันทึก" label="บันทึก"
color="public" color="public"
class="q-px-md" class="q-px-md"

View file

@ -254,7 +254,9 @@ const columnsHistory = ref<QTableProps["columns"]>([
async function getData() { async function getData() {
showLoader(); showLoader();
await http await http
.get(config.API.profileNewAddressByProfileId(profileId.value,empType.value)) .get(
config.API.profileNewAddressByProfileId(profileId.value, empType.value)
)
.then((res) => { .then((res) => {
Object.assign(addressData, res.data.result); Object.assign(addressData, res.data.result);
@ -369,7 +371,7 @@ async function fetchAll() {
async function editData() { async function editData() {
showLoader(); showLoader();
await http await http
.patch(config.API.profileNewAddressById(id.value,empType.value), { .patch(config.API.profileNewAddressById(id.value, empType.value), {
...formData, ...formData,
id: undefined, id: undefined,
}) })
@ -423,7 +425,7 @@ async function onClickOpenDialog() {
async function clickHistory() { async function clickHistory() {
modalHistory.value = true; modalHistory.value = true;
await http await http
.get(config.API.profileNewAddressHisById(id.value,empType.value)) .get(config.API.profileNewAddressHisById(id.value, empType.value))
.then((res) => { .then((res) => {
rowsHistory.value = res.data.result; rowsHistory.value = res.data.result;
}) })
@ -580,8 +582,8 @@ onMounted(async () => {
<q-card> <q-card>
<q-form greedy @submit.prevent @validation-success="onSubmit"> <q-form greedy @submit.prevent @validation-success="onSubmit">
<DialogHeader tittle="แก้ไขข้อมูลที่อยู่" :close="clickClose" /> <DialogHeader tittle="แก้ไขข้อมูลที่อยู่" :close="clickClose" />
<q-separator color="grey-4" /> <q-separator />
<q-card-section style="max-height: 60vh" class="scroll"> <q-card-section>
<div class="col-12 q-pb-xs"> <div class="col-12 q-pb-xs">
<q-input <q-input
dense dense
@ -802,15 +804,7 @@ onMounted(async () => {
</q-card-section> </q-card-section>
<q-separator /> <q-separator />
<q-card-actions align="right"> <q-card-actions align="right">
<q-btn <q-btn label="บันทึก" id="onSubmit" type="submit" color="public">
dense
unelevated
label="บันทึก"
id="onSubmit"
type="submit"
color="public"
class="q-px-md"
>
<q-tooltip>นทกขอม</q-tooltip> <q-tooltip>นทกขอม</q-tooltip>
</q-btn> </q-btn>
</q-card-actions> </q-card-actions>

View file

@ -260,7 +260,6 @@ function fetchDataChildren() {
function onSubmit(type: string) { function onSubmit(type: string) {
dialogConfirm($q, async () => { dialogConfirm($q, async () => {
showLoader(); showLoader();
const formBody = { const formBody = {
profileId: profileId:
!isEdit.value && empType.value === "" ? profileId.value : undefined, !isEdit.value && empType.value === "" ? profileId.value : undefined,
@ -325,7 +324,7 @@ function onOpenDialogForm(
if (type === "father") { if (type === "father") {
titleForm.value = "บิดา"; titleForm.value = "บิดา";
console.log(fatherData.isLive); console.log(fatherData);
fromData.isLive = fromData.isLive =
fatherData.isLive === null ? 1 : fatherData.isLive ? 1 : 0; fatherData.isLive === null ? 1 : fatherData.isLive ? 1 : 0;
@ -793,7 +792,7 @@ onMounted(() => {
" "
:close="closeDialog" :close="closeDialog"
/> />
<q-separator color="grey-4" /> <q-separator />
<q-card-section> <q-card-section>
<div class="q-col-gutter-sm"> <div class="q-col-gutter-sm">
<div class="row col" v-if="typeForm === 'couple'"> <div class="row col" v-if="typeForm === 'couple'">
@ -832,8 +831,10 @@ onMounted(() => {
:rules=" :rules="
typeForm !== 'couple' typeForm !== 'couple'
? [ ? [
(val) => !!val || 'กรุณากรอกเลขบัตรประชาชน',
(val) => (val) =>
val.length === 13 || 'กรุณากรอกเลขบัตรประชาชน', val.length === 13 ||
'กรุณากรอกเลขบัตรประชาชนให้ครบ 13 หลัก',
] ]
: [] : []
" "
@ -951,17 +952,9 @@ onMounted(() => {
</q-card-section> </q-card-section>
<q-separator /> <q-separator />
<q-card-actions align="right"> <q-card-actions align="right">
<div class="q-pa-sm"> <q-btn label="บันทึก" id="onSubmit" type="submit" color="public">
<q-btn <q-tooltip>นทกขอม</q-tooltip>
unelevated </q-btn>
label="บันทึก"
id="onSubmit"
type="submit"
color="public"
>
<q-tooltip>นทกขอม</q-tooltip>
</q-btn>
</div>
</q-card-actions> </q-card-actions>
</q-form> </q-form>
</q-card> </q-card>
@ -981,7 +974,7 @@ onMounted(() => {
}`" }`"
:close="closeDialog" :close="closeDialog"
/> />
<q-separator color="grey-4" /> <q-separator />
<q-card-section> <q-card-section>
<div class="row q-gutter-sm q-mb-sm"> <div class="row q-gutter-sm q-mb-sm">
<q-space /> <q-space />

View file

@ -801,7 +801,7 @@ onMounted(async () => {
<q-tr :props="props" class="cursor-pointer"> <q-tr :props="props" class="cursor-pointer">
<q-td v-for="col in props.cols" :key="col.id"> <q-td v-for="col in props.cols" :key="col.id">
<div> <div>
{{ col.value === ""|| col.value === null ? "-" : col.value }} {{ col.value === "" || col.value === null ? "-" : col.value }}
</div> </div>
</q-td> </q-td>
<q-td auto-width> <q-td auto-width>
@ -975,7 +975,7 @@ onMounted(async () => {
:close="closeDialog" :close="closeDialog"
/> />
<q-separator /> <q-separator />
<q-card-section style="max-height: 60vh" class="scroll"> <q-card-section>
<div class="row q-col-gutter-sm"> <div class="row q-col-gutter-sm">
<div class="col-6"> <div class="col-6">
<q-select <q-select
@ -1386,15 +1386,7 @@ onMounted(async () => {
<q-separator /> <q-separator />
<q-card-actions align="right"> <q-card-actions align="right">
<q-btn <q-btn id="onSubmit" type="submit" label="บันทึก" color="public">
id="onSubmit"
type="submit"
dense
unelevated
label="บันทึก"
color="public"
class="q-px-md"
>
<q-tooltip>นทกขอม</q-tooltip> <q-tooltip>นทกขอม</q-tooltip>
</q-btn> </q-btn>
</q-card-actions> </q-card-actions>

View file

@ -510,8 +510,8 @@ onMounted(async () => {
" "
:close="closeDialog" :close="closeDialog"
/> />
<q-separator color="grey-4" /> <q-separator />
<q-card-section style="max-height: 50vh" class="scroll"> <q-card-section>
<div class="row col-12 q-col-gutter-x-xs q-col-gutter-y-xs"> <div class="row col-12 q-col-gutter-x-xs q-col-gutter-y-xs">
<div class="col-xs-6 col-sm-6 col-md-6"> <div class="col-xs-6 col-sm-6 col-md-6">
<q-input <q-input
@ -563,15 +563,7 @@ onMounted(async () => {
<q-separator /> <q-separator />
<q-card-actions align="right"> <q-card-actions align="right">
<q-btn <q-btn label="บันทึก" id="onSubmit" type="submit" color="public">
dense
unelevated
label="บันทึก"
id="onSubmit"
type="submit"
color="public"
class="q-px-md"
>
<q-tooltip>นทกขอม</q-tooltip> <q-tooltip>นทกขอม</q-tooltip>
</q-btn> </q-btn>
</q-card-actions> </q-card-actions>

View file

@ -10,7 +10,7 @@ import type {
DataOption2, DataOption2,
DataOption, DataOption,
} from "@/modules/04_registryNew/interface/index/Main"; } from "@/modules/04_registryNew/interface/index/Main";
import type { ObjectSalaryRef } from "@/modules/04_registryNew/interface/index/salary";
import type { FormSalaryNew } from "@/modules/04_registryNew/interface/request/Salary"; import type { FormSalaryNew } from "@/modules/04_registryNew/interface/request/Salary";
import DialogHeader from "@/components/DialogHeader.vue"; import DialogHeader from "@/components/DialogHeader.vue";
@ -669,7 +669,7 @@ onMounted(() => {
/> />
<q-separator color="grey-4" /> <q-separator color="grey-4" />
<q-card-section style="max-height: 55vh" class="scroll"> <q-card-section style="max-height: 100%" class="scroll">
<div class="row col-12 q-col-gutter-sm"> <div class="row col-12 q-col-gutter-sm">
<div class="col-xs-6 col-sm-6 col-md-6"> <div class="col-xs-6 col-sm-6 col-md-6">
<datepicker <datepicker
@ -984,15 +984,7 @@ onMounted(() => {
</q-card-section> </q-card-section>
<q-separator /> <q-separator />
<q-card-actions align="right"> <q-card-actions align="right">
<q-btn <q-btn label="บันทึก" id="onSubmit" type="submit" color="public">
dense
unelevated
label="บันทึก"
id="onSubmit"
type="submit"
color="public"
class="q-px-md"
>
<q-tooltip>นทกขอม</q-tooltip> <q-tooltip>นทกขอม</q-tooltip>
</q-btn> </q-btn>
</q-card-actions> </q-card-actions>

View file

@ -436,11 +436,11 @@ onMounted(() => {
" "
:close="onClickCloseDialog" :close="onClickCloseDialog"
/> />
<q-separator color="grey-4" /> <q-separator />
<q-card-section style="max-height: 55vh" class="scroll"> <q-card-section>
<div class="row col-12 q-col-gutter-sm"> <div class="row col-12 q-col-gutter-sm">
<div class="col-xs-6 col-sm-6 col-md-6"> <div class="col-xs-12 col-sm-6 col-md-6">
<datepicker <datepicker
menu-class-name="modalfix" menu-class-name="modalfix"
v-model="formData.date" v-model="formData.date"
@ -477,7 +477,7 @@ onMounted(() => {
</template> </template>
</datepicker> </datepicker>
</div> </div>
<div class="col-6"> <div class="col-xs-12 col-sm-6 col-md-6">
<q-input <q-input
ref="referenceRef" ref="referenceRef"
outlined outlined
@ -507,7 +507,7 @@ onMounted(() => {
:label="`${'รายละเอียด'}`" :label="`${'รายละเอียด'}`"
/> />
</div> </div>
<div class="col-xs-6 col-sm-6 col-md-6"> <div class="col-xs-12 col-sm-6 col-md-6">
<q-input <q-input
outlined outlined
dense dense
@ -523,7 +523,7 @@ onMounted(() => {
</template> </template>
</q-input> </q-input>
</div> </div>
<div class="col-xs-6 col-sm-6 col-md-6"> <div class="col-xs-12 col-sm-6 col-md-6">
<datepicker <datepicker
menu-class-name="modalfix" menu-class-name="modalfix"
v-model="formData.refCommandDate" v-model="formData.refCommandDate"
@ -567,15 +567,7 @@ onMounted(() => {
<q-separator /> <q-separator />
<q-card-actions align="right"> <q-card-actions align="right">
<q-btn <q-btn label="บันทึก" id="onSubmit" type="submit" color="public">
dense
unelevated
label="บันทึก"
id="onSubmit"
type="submit"
color="public"
class="q-px-md"
>
<q-tooltip>นทกขอม</q-tooltip> <q-tooltip>นทกขอม</q-tooltip>
</q-btn> </q-btn>
</q-card-actions> </q-card-actions>

View file

@ -7,10 +7,10 @@ import http from "@/plugins/http";
import config from "@/app.config"; import config from "@/app.config";
import { useQuasar } from "quasar"; import { useQuasar } from "quasar";
import type { DataOption } from "@/modules/04_registryNew/interface/index/Main"; import type { DataOption } from "@/modules/04_registryNew/interface/index/Main";
import type { DataPerson } from "@/modules/04_registryNew/interface/response/Main";
import avatar from "@/assets/avatar_user.jpg"; import avatar from "@/assets/avatar_user.jpg";
import TabMain from "@/modules/04_registryNew/components/detail/TabMain.vue"; import TabMain from "@/modules/04_registryNew/components/detail/TabMain.vue";
import UploadFile from "@/modules/11_discipline/components/UploadFile.vue";
import type { ResponseObject } from "@/modules/04_registryNew/interface/response/Profile"; import type { ResponseObject } from "@/modules/04_registryNew/interface/response/Profile";
import DialogHeader from "@/components/DialogHeader.vue"; import DialogHeader from "@/components/DialogHeader.vue";
/** ถึงเเก่กรรม */ /** ถึงเเก่กรรม */
@ -672,7 +672,9 @@ onMounted(async () => {
v-if="formDetail && formDetail.firstName && formDetail.lastName" v-if="formDetail && formDetail.firstName && formDetail.lastName"
> >
{{ {{
`${formDetail?.prefix}${formDetail?.firstName} ${formDetail?.lastName} ${leaveReason}` `${formDetail?.prefix ? formDetail?.prefix : ""}${
formDetail?.firstName
} ${formDetail?.lastName} ${leaveReason}`
}} }}
</h2> </h2>
</div> </div>
@ -850,20 +852,8 @@ onMounted(async () => {
<!-- Dialog เลอก Image --> <!-- Dialog เลอก Image -->
<q-dialog v-model="dialogImage" persistent> <q-dialog v-model="dialogImage" persistent>
<q-card style="width: 100vw; max-width: 60vw"> <q-card style="width: 100vw; max-width: 60vw">
<q-card-section class="q-py-sm row"> <DialogHeader :tittle="'เลือกรูปภาพ'" :close="closeImage" />
<div class="text-h6">เลอกรปภาพ</div>
<q-space />
<q-btn
icon="close"
unelevated
round
dense
@click="closeImage"
style="color: #ff8080; background-color: #ffdede"
>
<q-tooltip>ดหนาน</q-tooltip>
</q-btn>
</q-card-section>
<q-separator /> <q-separator />
<q-card-section class="col-12 row"> <q-card-section class="col-12 row">
<div <div
@ -935,23 +925,7 @@ onMounted(async () => {
</q-card-section> </q-card-section>
<q-separator /> <q-separator />
<q-card-actions align="right"> <q-card-actions align="right">
<!-- <q-btn <q-btn @click="selectAvatarHistory" color="public" label="เลือกรูปภาพ">
flat
round
color="red"
@click="() => {}"
icon="mdi-delete-outline"
>
<q-tooltip>ลบรปภาพ</q-tooltip>
</q-btn> -->
<q-btn
icon="check"
dense
flat
round
@click="selectAvatarHistory"
color="positive"
>
<q-tooltip>เลอกรปภาพ</q-tooltip> <q-tooltip>เลอกรปภาพ</q-tooltip>
</q-btn> </q-btn>
</q-card-actions> </q-card-actions>