hrms-user/src/modules/06_evaluate/components/DialogMain.vue

371 lines
14 KiB
Vue

<script setup lang="ts">
import { ref, watch } from "vue";
import { useRouter } from "vue-router";
import { useQuasar } from "quasar";
/** import Components*/
import DialogHeader from "@/components/DialogHeader.vue";
/** import Store*/
import { useCounterMixin } from "@/stores/mixin";
import { useEvaluateStore } from "@/modules/06_evaluate/store";
/** use*/
const router = useRouter();
const $q = useQuasar();
const mixin = useCounterMixin();
const store = useEvaluateStore();
const slide = ref<string>("1");
const { dialogConfirm } = mixin;
const props = defineProps({
modal: {
type: Boolean,
},
menu: {
type: Object,
require: true,
},
close: {
type: Function,
},
});
const step = ref<number>(1);
/** function click ดำเนินการต่อ */
function onCklicNext() {
const type = props.menu ? props.menu.val?.toLowerCase() : "";
store.step = 1;
store.currentStep = 1;
store.statusUpload = false;
router.push(`/evaluate/add/${type}`);
}
/** function Callblck ทำงานเมื่อ props มีการเปลี่ยนแปลง */
watch(props, () => {
step.value = 1;
});
</script>
<template>
<q-dialog v-model="props.modal">
<q-card style="width: 800px; max-width: 90vw; border-radius: 8px">
<DialogHeader
class="text-center text-edit"
:tittle="`ขั้นตอนการ${props.menu ? props.menu.label : ''}`"
:close="props.close"
elevated
/>
<q-separator />
<q-carousel
v-model="slide"
transition-prev="slide-right"
transition-next="slide-left"
swipeable
animated
control-type="regular"
control-color="grey-5"
navigation
padding
arrows
height="auto"
class="text-dark rounded-borders"
>
<template v-slot:navigation-icon="{ active, btnProps, onClick }">
<q-btn
v-if="active"
size="xs"
:icon="btnProps.icon"
color="edit"
flat
round
dense
@click="onClick"
/>
<q-btn
v-else
size="xs"
:icon="btnProps.icon"
color="grey"
flat
round
dense
@click="onClick"
/>
</template>
<q-carousel-slide name="1" class="no-wrap">
<q-card bordered>
<q-card-section class="bg-grey-2" style="height: 150px">
<div class="text-center">
<q-img
class="absolute-center"
src="@/modules/06_evaluate/components/img/page1.png"
spinner-color="white"
style="height: auto; max-width: 100px"
/>
</div>
</q-card-section>
<q-card-actions vertical align="left" class="q-pa-lg">
<div class="flex">
<q-icon
name="mdi-numeric-1-circle"
size="20px"
color="primary"
/>
<div class="q-pl-sm text-weight-bold text-dark">
ตรวจสอบคณสมบ
</div>
</div>
ตรวจสอบคณสมบของตนเอง เพอทำการยนขอประเม
</q-card-actions>
</q-card>
</q-carousel-slide>
<q-carousel-slide name="2" class="no-wrap">
<q-card bordered>
<q-card-section class="bg-grey-2" style="height: 150px">
<div class="text-center">
<q-img
class="absolute-center"
src="@/modules/06_evaluate/components/img/page2.png"
spinner-color="white"
style="height: auto; max-width: 100px"
/>
</div>
</q-card-section>
<q-card-actions vertical align="left" class="q-pa-lg">
<div class="flex">
<q-icon
name="mdi-numeric-2-circle"
size="20px"
color="primary"
/>
<div class="q-pl-sm text-weight-bold text-dark">
ดเตรยมเอกสารเล 1
</div>
</div>
ดาวนโหลดเอกสารตนแบบ ทำการกรอกขอมลในฟอรมใหครบ
และอปโหลดเขาสระบบ
</q-card-actions>
</q-card>
</q-carousel-slide>
<q-carousel-slide name="3" class="no-wrap">
<q-card bordered>
<q-card-section class="bg-grey-2" style="height: 150px">
<div class="text-center">
<q-img
class="absolute-center"
src="@/modules/06_evaluate/components/img/page3.png"
spinner-color="white"
style="height: auto; max-width: 100px"
/>
</div>
</q-card-section>
<q-card-actions vertical align="left" class="q-pa-lg">
<div class="flex">
<q-icon
name="mdi-numeric-3-circle"
size="20px"
color="primary"
/>
<div class="q-pl-sm text-weight-bold text-dark">
ตรวจสอบเอกสารเล 1
</div>
</div>
ทำการตรวจสอบความถกตองของเอกสารเล 1 และยนยนการยนเอกสาร
</q-card-actions>
</q-card>
</q-carousel-slide>
<q-carousel-slide name="4" class="no-wrap">
<q-card bordered>
<q-card-section class="bg-grey-2" style="height: 150px">
<div class="text-center">
<q-img
class="absolute-center"
src="@/modules/06_evaluate/components/img/page4.png"
spinner-color="white"
style="height: auto; max-width: 100px"
/>
</div>
</q-card-section>
<q-card-actions vertical align="left" class="q-pa-lg">
<div class="flex">
<q-icon
name="mdi-numeric-4-circle"
size="20px"
color="primary"
/>
<div class="q-pl-sm text-weight-bold text-dark">
รอตรวจสอบคณสมบ
</div>
</div>
นตอนนคำขอของคณจะถกสงไปยงเจาหนาทบผดชอบ
และทางเจาหนาทจะทำการตรวจสอบคณสมบ
</q-card-actions>
</q-card>
</q-carousel-slide>
<q-carousel-slide name="5" class="no-wrap">
<q-card bordered>
<q-card-section class="bg-grey-2" style="height: 150px">
<div class="text-center">
<q-img
class="absolute-center"
src="@/modules/06_evaluate/components/img/page5.png"
spinner-color="white"
style="height: auto; max-width: 100px"
/>
</div>
</q-card-section>
<q-card-actions vertical align="left" class="q-pa-lg">
<div class="flex">
<q-icon
name="mdi-numeric-5-circle"
size="20px"
color="primary"
/>
<div class="q-pl-sm text-weight-bold text-dark">
ประกาศบนเวบไซต
</div>
</div>
เอกสารทเกยวของจะถกประกาศขนบนเวบไซตเปนเวลา 30
</q-card-actions>
</q-card>
</q-carousel-slide>
<q-carousel-slide name="6" class="no-wrap">
<q-card bordered>
<q-card-section class="bg-grey-2" style="height: 150px">
<div class="text-center">
<q-img
class="absolute-center"
src="@/modules/06_evaluate/components/img/page6.png"
spinner-color="white"
style="height: auto; max-width: 100px"
/>
</div>
</q-card-section>
<q-card-actions vertical align="left" class="q-pa-lg">
<div class="flex">
<q-icon
name="mdi-numeric-6-circle"
size="20px"
color="primary"
/>
<div class="q-pl-sm text-weight-bold text-dark">
ดเตรยมเอกสารเล 2
</div>
</div>
ประเมนทำการอปโหลดเอกสารเล 2
โดยมระยะเวลาการสงผลงานหลงจากประกาศบนเวบไซตแล 6 เดอน<br />
กรณจะเกษยณอายราชการใหงผลงาน
อนวนทจะเกษยณอายราชการไมอยกว 90
</q-card-actions>
</q-card>
</q-carousel-slide>
<q-carousel-slide name="7" class="no-wrap">
<q-card bordered>
<q-card-section class="bg-grey-2" style="height: 150px">
<div class="text-center">
<q-img
class="absolute-center"
src="@/modules/06_evaluate/components/img/page7.png"
spinner-color="white"
style="height: auto; max-width: 100px"
/>
</div>
</q-card-section>
<q-card-actions vertical align="left" class="q-pa-lg">
<div class="flex">
<q-icon
name="mdi-numeric-7-circle"
size="20px"
color="primary"
/>
<div class="q-pl-sm text-weight-bold text-dark">
ตรวจสอบเอกสารเล 2
</div>
</div>
ทำการตรวจสอบความถกตองของเอกสารเล 2 และยนยนการยนเอกสาร
</q-card-actions>
</q-card>
</q-carousel-slide>
<q-carousel-slide name="8" class="no-wrap">
<q-card bordered>
<q-card-section class="bg-grey-2" style="height: 150px">
<div class="text-center">
<q-img
class="absolute-center"
src="@/modules/06_evaluate/components/img/page8.png"
spinner-color="white"
style="height: auto; max-width: 100px"
/>
</div>
</q-card-section>
<q-card-actions vertical align="left" class="q-pa-lg">
<div class="flex">
<q-icon
name="mdi-numeric-8-circle"
size="20px"
color="primary"
/>
<div class="q-pl-sm text-weight-bold text-dark">
รอพจารณาผล
</div>
</div>
เจาหนาททำการพจารณาผลการประเม
และดำเนนการดาวนโหลดเอกสารตนแบบ กรอกขอมลในฟอรมใหครบ
และอปโหลดเขาสระบบ
</q-card-actions>
</q-card>
</q-carousel-slide>
<q-carousel-slide name="9" class="no-wrap">
<q-card bordered>
<q-card-section class="bg-grey-2" style="height: 150px">
<div class="text-center">
<q-img
class="absolute-center"
src="@/modules/06_evaluate/components/img/page9.png"
spinner-color="white"
style="height: auto; max-width: 100px"
/>
</div>
</q-card-section>
<q-card-actions vertical align="left" class="q-pa-lg">
<div class="flex">
<q-icon
name="mdi-numeric-9-circle"
size="20px"
color="primary"
/>
<div class="q-pl-sm text-weight-bold text-dark">เสรจส</div>
</div>
เสรจสนการประเม
</q-card-actions>
</q-card>
</q-carousel-slide>
</q-carousel>
<q-separator />
<q-card-actions align="right" class="bg-edit q-px-md">
<q-btn
style="border-radius: 10px; padding: 5px 20px"
unelevated
icon-right="mdi-arrow-right"
outline
color="white"
label="ข้าม"
@click="onCklicNext"
/>
</q-card-actions>
</q-card>
</q-dialog>
</template>
<style scoped></style>