ปรับ ui การประเมิน step 1-3

This commit is contained in:
Tanyalak 2024-01-16 19:55:28 +07:00
parent b14413eb98
commit 200881c0c7
9 changed files with 907 additions and 866 deletions

View file

@ -39,6 +39,7 @@ const route = useRoute();
const store = useEvaluateStore();
const mixin = useCounterMixin();
const $q = useQuasar();
const splitterModel = 20;
const { showLoader, hideLoader, messageError, dialogConfirm } = mixin;
@ -558,7 +559,7 @@ onMounted(async () => {
<template>
<div class="col-12 row justify-center">
<div class="col-xs-12 col-sm-12 col-md-11">
<div class="toptitle text-white col-12 row items-center">
<div class="toptitle2 text-white col-12 row items-center">
<q-btn
icon="mdi-arrow-left"
unelevated
@ -573,174 +574,214 @@ onMounted(async () => {
</div>
</div>
<div class="col-xs-12 col-sm-12 col-md-11 row q-col-gutter-md q-mt-xs">
<div class="col-xs-12 col-sm-12 col-md-11 row">
<div class="col-12 row">
<q-card bordered class="col-12 row caedNone q-pa-md q-col-gutter-md">
<div class="col-xs-12 col-sm-3">
<div class="toptitle">
{{
route.params.type === "expert"
? "ประเมินชำนาญการ"
: "ประเมินชำนาญการพิเศษ"
}}
<q-btn
flat
round
dense
color="primary"
icon="history"
@click="onClickPopupHistory"
>
<q-tooltip>ประวการประเม</q-tooltip>
</q-btn>
</div>
<Stepper />
</div>
<q-card bordered class="col-12 row caedNone">
<q-splitter
v-model="splitterModel"
:style="$q.screen.lt.sm ? 'height: 74vh;' : 'height: auto;'"
:horizontal="$q.screen.lt.sm"
>
<div class="col-xs-12 col-sm-9" v-if="showLoadStatus">
<div class="col-12 row">
<div class="col-9">
<div class="toptitle">
{{ store.step }}.{{ store.title[store.step - 1] }}
<template v-slot:before>
<div class="col-12 row q-py-md q-px-lg" >
<div class="col-12 row items-center q-pa-none no-wrap">
<div class="toptitle2">
{{
route.params.type === "expert"
? "ประเมินชำนาญการ"
: "ประเมินชำนาญการพิเศษ"
}}
</div>
<q-space />
<q-btn
flat
round
dense
color="primary"
icon="history"
@click="onClickPopupHistory"
>
<q-tooltip>ประวการประเม</q-tooltip>
</q-btn>
</div>
<div class="col-12 row">
<Stepper />
</div>
</div>
</template>
<template v-slot:after>
<div class="col-12 row q-pa-md" v-if="showLoadStatus">
<div class="col-12 row">
<div class="toptitle2 q-pt-xs">
{{ store.step }}.{{ store.title[store.step - 1] }}
</div>
<q-space />
<div>
<q-btn
v-if="store.step === 1"
:href="externalLink"
target="_blank"
outline
color="blue"
no-caps
dense
class="q-px-sm"
>
ตรวจสอบคณสมบ ..
</q-btn>
</div>
</div>
</div>
<div class="col-3 text-right">
<q-btn
v-if="store.step === 1"
:href="externalLink"
target="_blank"
outline
color="blue"
no-caps
>
ตรวจสอบคณสมบ ..
</q-btn>
</div>
</div>
<div class="row q-col-gutter-md col-12">
<div
:class="
store.step === 2 ||
store.step === 4 ||
store.step === 5 ||
store.step === 6 ||
store.step === 8 ||
store.step === 9
? 'col-xs-12 col-sm-12 row'
: 'col-xs-12 col-sm-5 row'
"
>
<q-card flat bordered class="col-12 q-pa-md">
<q-card-section>
<Step1
v-if="store.step === 1"
@update:spec="updateCheckSpec"
:data="formDataStep1"
:educations="formDetail?.educations"
/>
<Step2
v-if="store.step === 2"
@update:form="updateformCommand"
/>
<Step3
v-if="store.step === 3"
@update:file="updateFilePDF"
/>
<Step4 v-if="store.step === 4" />
<Step5 v-if="store.step === 5" />
<Step6
v-if="store.step === 6"
@update:form="updateformCommand"
/>
<Step7
v-if="store.step === 7"
@update:file="updateFilePDF"
/>
<Step8 v-if="store.step === 8" />
<Step9 v-if="store.step === 9" />
</q-card-section>
</q-card>
</div>
<div
class="col-xs-12 col-sm-7 row"
v-if="store.step === 1 || store.step === 3 || store.step === 7"
>
<div class="col-12 ">
<ViewStep1
v-if="store.step === 1"
@update:formDeital="updateFormDetail"
:data="formDataStep1"
<div class="col-12 q-pt-xs">
<div class="row q-col-gutter-md">
<div
:class="
store.step === 2 ||
store.step === 4 ||
store.step === 5 ||
store.step === 6 ||
store.step === 8 ||
store.step === 9
? 'col-xs-12 col-sm-12 row'
: 'col-xs-12 col-sm-5 row'
"
>
<q-card v-if="store.step === 1" flat bordered class="col-12 q-pa-md shadow-0">
<Step1
@update:spec="updateCheckSpec"
:data="formDataStep1"
:educations="formDetail?.educations"
/>
</q-card>
<q-card v-if="store.step === 2" flat bordered class="col-12 shadow-0" :style="$q.screen.lt.sm ? '' : 'height: 60vh; overflow: scroll;' ">
<Step2
@update:form="updateformCommand"
/>
</q-card>
<q-card
v-if="store.step === 3" flat bordered class="col-12 shadow-0">
<Step3
@update:file="updateFilePDF"
/>
</q-card>
<q-card
v-if=" store.step === 4 ||
store.step === 5 || store.step === 6 ||
store.step === 7 || store.step === 8 ||
store.step === 9
" flat bordered class="col-12 q-pa-md shadow-0">
<Step4 v-if="store.step === 4" />
<Step5 v-if="store.step === 5" />
<Step6
v-if="store.step === 6"
@update:form="updateformCommand"
/>
<Step7
v-if="store.step === 7"
@update:file="updateFilePDF"
/>
<Step8 v-if="store.step === 8" />
<Step9 v-if="store.step === 9" />
</q-card>
</div>
<div class="col-xs-12 col-sm-7" v-if="store.step === 1 || store.step === 3 || store.step === 7">
<q-card
class=" row q-pa-md shadow-0"
bordered
flat
v-if="store.step === 1"
>
<div class="col-12 row">
<ViewStep1
@update:formDeital="updateFormDetail"
:data="formDataStep1"
/>
</div>
</q-card>
<q-card v-if="store.step === 3 && pdfSrc" class="row shadow-0" bordered flat >
<ViewStep3
:pdfSrc="pdfSrc"
:urlDownloadFile="urlDownloadFile"
/>
</q-card>
<q-card v-if="store.step === 7 && pdfSrc" class="row shadow-0" bordered flat >
<ViewStep7
:pdfSrc="pdfSrc"
:urlDownloadFile="urlDownloadFile"
/>
</q-card>
</div>
</div>
</div>
<div class="row col-12 q-pt-sm">
<q-space />
<q-btn
v-if="
store.step >= store.currentStep &&
store.statusUpload === false &&
store.step !== 3 &&
store.step !== 4 &&
store.step !== 5 &&
store.step !== 7 &&
store.step !== 8 &&
store.step !== 9
"
unelevated
:label="
store.step === 2 || store.step === 6
? 'บันทึกข้อมูล'
: 'ดำเนินการต่อ'
"
color="public"
@click="onCilckNextStep()"
/>
<ViewStep3
v-if="store.step === 3 && pdfSrc"
:pdfSrc="pdfSrc"
:urlDownloadFile="urlDownloadFile"
<q-btn
v-else-if="
store.step >= store.currentStep &&
(store.step == 3 || store.step == 7)
"
unelevated
label="ยื่นเอกสาร"
color="public"
@click="onCilckNextStep()"
/>
<ViewStep7
v-if="store.step === 7 && pdfSrc"
:pdfSrc="pdfSrc"
:urlDownloadFile="urlDownloadFile"
<q-btn
v-if="
store.step >= store.currentStep &&
store.step == 2 &&
store.statusUpload
"
unelevated
label="ดำเนินการต่อ"
color="public"
@click="onCilckNextStep()"
/>
<q-btn
v-if="
store.step >= store.currentStep &&
store.step == 6 &&
store.statusUpload
"
unelevated
label="ดำเนินการต่อ"
color="public"
@click="onCilckNextStep()"
/>
</div>
</div>
</div>
<div class="q-mt-md q-gutter-md" align="right">
<q-btn
v-if="
store.step >= store.currentStep &&
store.statusUpload === false &&
store.step !== 3 &&
store.step !== 4 &&
store.step !== 5 &&
store.step !== 7 &&
store.step !== 8 &&
store.step !== 9
"
unelevated
:label="
store.step === 2 || store.step === 6
? 'บันทึกข้อมูล'
: 'ดำเนินการต่อ'
"
color="public"
@click="onCilckNextStep()"
/>
</template>
<q-btn
v-else-if="
store.step >= store.currentStep &&
(store.step == 3 || store.step == 7)
"
unelevated
label="ยื่นเอกสาร"
color="public"
@click="onCilckNextStep()"
/>
</q-splitter>
<q-btn
v-if="
store.step >= store.currentStep &&
store.step == 2 &&
store.statusUpload
"
unelevated
label="ดำเนินการต่อ"
color="public"
@click="onCilckNextStep()"
/>
<q-btn
v-if="
store.step >= store.currentStep &&
store.step == 6 &&
store.statusUpload
"
unelevated
label="ดำเนินการต่อ"
color="public"
@click="onCilckNextStep()"
/>
</div>
</div>
</q-card>
</div>
</div>
@ -756,4 +797,9 @@ onMounted(async () => {
.q-stepper--vertical .q-stepper__step-inner {
padding: 0;
}
.toptitle2 {
font-size: 1rem;
font-weight: bold;
margin-bottom: 1.2%;
}
</style>