แก้ไขคลิก step ประเมิน

This commit is contained in:
Warunee Tamkoo 2023-12-23 10:38:02 +07:00
parent b984caaa3c
commit 3901310f3d
5 changed files with 97 additions and 32 deletions

View file

@ -21,7 +21,7 @@ const store = useEvaluateDetailStore();
:name="1"
prefix="1"
title="ตรวจสอบคุณสมบัติ"
:done="store.step > 1"
:done="store.step >= 1"
>
</q-step>
@ -29,7 +29,8 @@ const store = useEvaluateDetailStore();
:name="2"
prefix="2"
title="จัดเตรียมเอกสารเล่ม 1"
:done="store.step > 2"
:done="store.step >= 2"
:disable="store.currentStep < 2"
>
</q-step>
@ -37,7 +38,8 @@ const store = useEvaluateDetailStore();
:name="3"
prefix="3"
title="ตรวจสอบเอกสารเล่ม 1"
:done="store.step > 3"
:done="store.step >= 3"
:disable="store.currentStep < 3"
>
</q-step>
@ -45,7 +47,8 @@ const store = useEvaluateDetailStore();
:name="4"
prefix="4"
title="รอตรวจสอบคุณสมบัติ"
:done="store.step > 4"
:done="store.step >= 4"
:disable="store.currentStep < 4"
>
</q-step>
@ -53,7 +56,8 @@ const store = useEvaluateDetailStore();
:name="5"
prefix="5"
title="ประกาศบนเว็บไซต์"
:done="store.step > 5"
:done="store.step >= 5"
:disable="store.currentStep < 5"
>
</q-step>
@ -61,7 +65,8 @@ const store = useEvaluateDetailStore();
:name="6"
prefix="6"
title="จัดเตรียมเอกสารเล่ม 2"
:done="store.step > 6"
:done="store.step >= 6"
:disable="store.currentStep < 6"
>
</q-step>
@ -69,14 +74,27 @@ const store = useEvaluateDetailStore();
:name="7"
prefix="7"
title="ตรวจสอบเอกสารเล่ม 2"
:done="store.step > 7"
:done="store.step >= 7"
:disable="store.currentStep < 7"
>
</q-step>
<q-step :name="8" prefix="8" title="รอพิจารณาผล" :done="store.step > 8">
<q-step
:name="8"
prefix="8"
title="รอพิจารณาผล"
:done="store.step >= 8"
:disable="store.currentStep < 8"
>
</q-step>
<q-step :name="9" prefix="9" title="เสร็จสิ้น" :done="store.step > 9">
<q-step
:name="9"
prefix="9"
title="เสร็จสิ้น"
:done="store.step >= 9"
:disable="store.currentStep < 9"
>
</q-step>
</q-stepper>
</template>

View file

@ -2,6 +2,8 @@
import { onMounted, ref, reactive } from "vue";
import { useQuasar } from "quasar";
import { useRouter, useRoute } from "vue-router";
import http from "@/plugins/http";
import config from "@/app.config";
import type {
FormCommand,
@ -32,7 +34,7 @@ const router = useRouter();
const route = useRoute();
const store = useEvaluateDetailStore();
const mixin = useCounterMixin();
const { dialogConfirm } = mixin;
const { dialogConfirm, showLoader, hideLoader, messageError } = mixin;
const $q = useQuasar();
@ -185,7 +187,47 @@ function onClickPopupHistory() {
modalHistory.value = !modalHistory.value;
}
function getStep() {
showLoader();
http
.get(config.API.evaluateGetStep(id.value))
.then((res: any) => {
const data = res.data.result;
let step =
data.step === "CHECK_SPEC"
? 1
: data.step === "PREPARE_DOC_V1"
? 2
: data.step === "CHECK_DOC_V1"
? 3
: data.step === "WAIT_CHECK_DOC_V1"
? 4
: data.step === "ANNOUNCE_WEB"
? 5
: data.step === "PREPARE_DOC_V2"
? 6
: data.step === "CHECK_DOC_V2"
? 7
: data.step === "WAIT_CHECK_DOC_V2"
? 8
: data.step === "DONE"
? 9
: 1;
store.currentStep = step;
store.step = step;
})
.catch((e) => {
messageError($q, e);
})
.finally(() => {
hideLoader();
});
}
onMounted(() => {
getStep();
store.step = 1;
});
</script>
@ -194,7 +236,11 @@ onMounted(() => {
<div class="row q-col-gutter-md">
<div class="col-xs-12 col-sm-3">
<div class="toptitle">
{{ props.data && props.data?.type == 'SPECIAL_EXPERT' ? 'ประเมินชำนาญการพิเศษ' : 'ประเมินชำนาญการ' }}
{{
props.data && props.data?.type == "SPECIAL_EXPERT"
? "ประเมินชำนาญการพิเศษ"
: "ประเมินชำนาญการ"
}}
<q-btn
flat
@ -231,7 +277,7 @@ onMounted(() => {
>
<q-card flat bordered class="col-12">
<q-card-section>
<Step1 v-if="store.step === 1" :data="props.data"/>
<Step1 v-if="store.step === 1" :data="props.data" />
<Step2 v-if="store.step === 2" @update:form="updateformCommand" />
<Step3 v-if="store.step === 3" :step="store.step" />
<Step4 v-if="store.step === 4" />
@ -249,7 +295,7 @@ onMounted(() => {
>
<q-card flat bordered class="col-12">
<q-card-section>
<ViewStep1 v-if="store.step === 1" :data="data"/>
<ViewStep1 v-if="store.step === 1" :data="data" />
<ViewStep3 v-if="store.step === 3" />
<ViewStep7 v-if="store.step === 7" /> </q-card-section
></q-card>

View file

@ -9,26 +9,24 @@ const props = defineProps({
});
const formData = reactive<any>({
isEducationalQft: false, //
isGovermantServiceHtr: false, //
isOperatingExp: false, //
isMinPeriodOfTenure: false, //
isHaveSpecificQft: false, //
isHaveProLicense: false, //
isHaveMinPeriodOrHoldPos: false, // ]
isEducationalQft: props.data.isEducationalQft, //
isGovermantServiceHtr: props.data.isGovermantServiceHtr, //
isOperatingExp: props.data.isOperatingExp, //
isMinPeriodOfTenure: props.data.isMinPeriodOfTenure, //
isHaveSpecificQft: props.data.isHaveSpecificQft, //
isHaveProLicense: props.data.isHaveProLicense, //
isHaveMinPeriodOrHoldPos: props.data.isHaveMinPeriodOrHoldPos, // ]
});
watch(props, () => {
if (props.data) {
formData.isEducationalQft = props.data.isEducationalQft;
formData.isGovermantServiceHtr = props.data.isGovermantServiceHtr;
formData.isOperatingExp = props.data.isOperatingExp;
formData.isMinPeriodOfTenure = props.data.isMinPeriodOfTenure;
formData.isHaveSpecificQft = props.data.isHaveSpecificQft;
formData.isHaveProLicense = props.data.isHaveProLicense;
formData.isHaveMinPeriodOrHoldPos = props.data.isHaveMinPeriodOrHoldPos;
}
});
// watch(props, () => {
// formData.isEducationalQft = props.data.isEducationalQft;
// formData.isGovermantServiceHtr = props.data.isGovermantServiceHtr;
// formData.isOperatingExp = props.data.isOperatingExp;
// formData.isMinPeriodOfTenure = props.data.isMinPeriodOfTenure;
// formData.isHaveSpecificQft = props.data.isHaveSpecificQft;
// formData.isHaveProLicense = props.data.isHaveProLicense;
// formData.isHaveMinPeriodOrHoldPos = props.data.isHaveMinPeriodOrHoldPos;
// });
</script>
<template>