รวมไฟล์แก้งานงวด2

This commit is contained in:
Kittapath 2023-07-10 10:10:46 +07:00
parent 79889c9464
commit 2249097b07
89 changed files with 11287 additions and 7048 deletions

View file

@ -1,7 +1,7 @@
<template>
<div class="col-12 row">
<div class="row col-12" style="padding-top: 80px">
<div id="information" name="1" class="row col-12 information q-mt-sm">
<div id="information" name="1" class="row col-12 information">
<!-- <Informationvue
v-model:statusEdit="statusEdit"
:profileType="profileType"
@ -11,16 +11,20 @@
:fetchDataProfile="fetchData"
/>
</div>
<div id="government" name="16" class="row col-12">
<Government v-model:statusEdit="statusEdit" />
<div id="government" name="16" class="row col-12 q-mt-md">
<Government
v-model:statusEdit="statusEdit"
:profileType="profileType"
:employeeClass="employeeClass"
/>
</div>
<div id="address" name="17" class="row col-12">
<div id="address" name="17" class="row col-12 q-mt-md">
<Address v-model:statusEdit="statusEdit" />
</div>
<div id="family" name="18" class="row col-12">
<div id="family" name="18" class="row col-12 q-mt-md">
<Family v-model:statusEdit="statusEdit" />
</div>
<div id="certicate" name="15" class="row col-12">
<div id="certicate" name="15" class="row col-12 q-mt-md">
<Certicate v-model:statusEdit="statusEdit" :profileType="profileType" />
</div>
<div id="education" name="2" class="row col-12 q-mt-md">
@ -46,7 +50,10 @@
v-model:statusEdit="statusEdit"
v-if="profileType === 'officer'"
/>
<SalaryEmployeeTempVue
v-model:statusEdit="statusEdit"
v-else-if="employeeClass === 'temp'"
/>
<SalaryEmployeeVue v-model:statusEdit="statusEdit" v-else />
</div>
<div id="rule" name="8" class="row col-12 q-mt-md">
@ -156,7 +163,7 @@
"
>
<q-tooltip>{{
reasonStatus ? "กลับเข้าราชการ" : "ออกราชการ"
reasonStatus ? "การกลับเข้ารับราชการ" : "การออกจากราชการ"
}}</q-tooltip>
</q-btn>
@ -486,9 +493,14 @@
</q-card-section>
<q-separator />
<q-card-actions align="right">
<q-btn unelevated label="บันทึก" color="public" @click="Retire"
><!-- icon="mdi-content-save-outline"
<q-tooltip>นท</q-tooltip> -->
<q-btn
flat
round
color="public"
@click="Retire"
icon="mdi-content-save-outline"
>
<q-tooltip>นท</q-tooltip>
</q-btn>
</q-card-actions>
</q-card>
@ -496,75 +508,36 @@
<full-loader :visibility="loader"></full-loader>
</template>
<script setup lang="ts">
import { ref, onMounted, defineAsyncComponent } from "vue";
import { ref, onMounted } from "vue";
import { useDataStore } from "@/stores/data";
import { useRoute, useRouter } from "vue-router";
import { useCounterMixin } from "@/stores/mixin";
import { useQuasar } from "quasar";
import EducationVue from "@/modules/04_registry/components/Education.vue";
import TrainVue from "@/modules/04_registry/components/Train.vue";
import InsigniaVue from "@/modules/04_registry/components/Insignia.vue";
import CoinedVue from "@/modules/04_registry/components/Coin.vue";
import AssessmentVue from "@/modules/04_registry/components/Assessment.vue";
import SalaryVue from "@/modules/04_registry/components/Salary.vue";
import SalaryEmployeeVue from "@/modules/04_registry/components/SalaryEmployee.vue";
import SalaryEmployeeTempVue from "@/modules/04_registry/components/SalaryEmployeeTemp.vue";
import DisciplineVue from "@/modules/04_registry/components/Discipline.vue";
import LeaveVue from "@/modules/04_registry/components/Leave.vue";
import TalentVue from "@/modules/04_registry/components/Talent.vue";
import WorkVue from "@/modules/04_registry/components/Work.vue";
import RecordVue from "@/modules/04_registry/components/Record.vue";
import OtherVue from "@/modules/04_registry/components/Other.vue";
import DocumentVue from "@/modules/04_registry/components/Document.vue";
import Certicate from "@/modules/04_registry/components/Information/Certicate.vue";
import Information from "@/modules/04_registry/components/Information/Information.vue";
import Government from "@/modules/04_registry/components/Information/Government.vue";
import Address from "@/modules/04_registry/components/Information/Address.vue";
import Family from "@/modules/04_registry/components/Information/Family.vue";
import OldName from "@/modules/04_registry/components/Information/OldName.vue";
import type { DataOption } from "@/modules/04_registry/interface/index/Main";
import http from "@/plugins/http";
import config from "@/app.config";
const EducationVue = defineAsyncComponent(
() => import("@/modules/04_registry/components/Education.vue")
);
const TrainVue = defineAsyncComponent(
() => import("@/modules/04_registry/components/Train.vue")
);
const InsigniaVue = defineAsyncComponent(
() => import("@/modules/04_registry/components/Insignia.vue")
);
const CoinedVue = defineAsyncComponent(
() => import("@/modules/04_registry/components/Coin.vue")
);
const AssessmentVue = defineAsyncComponent(
() => import("@/modules/04_registry/components/Assessment.vue")
);
const SalaryVue = defineAsyncComponent(
() => import("@/modules/04_registry/components/Salary.vue")
);
const SalaryEmployeeVue = defineAsyncComponent(
() => import("@/modules/04_registry/components/SalaryEmployee.vue")
);
const DisciplineVue = defineAsyncComponent(
() => import("@/modules/04_registry/components/Discipline.vue")
);
const LeaveVue = defineAsyncComponent(
() => import("@/modules/04_registry/components/Leave.vue")
);
const TalentVue = defineAsyncComponent(
() => import("@/modules/04_registry/components/Talent.vue")
);
const WorkVue = defineAsyncComponent(
() => import("@/modules/04_registry/components/Work.vue")
);
const RecordVue = defineAsyncComponent(
() => import("@/modules/04_registry/components/Record.vue")
);
const OtherVue = defineAsyncComponent(
() => import("@/modules/04_registry/components/Other.vue")
);
const DocumentVue = defineAsyncComponent(
() => import("@/modules/04_registry/components/Document.vue")
);
const Certicate = defineAsyncComponent(
() => import("@/modules/04_registry/components/Information/Certicate.vue")
);
const Information = defineAsyncComponent(
() => import("@/modules/04_registry/components/Information/Information.vue")
);
const Government = defineAsyncComponent(
() => import("@/modules/04_registry/components/Information/Government.vue")
);
const Address = defineAsyncComponent(
() => import("@/modules/04_registry/components/Information/Address.vue")
);
const Family = defineAsyncComponent(
() => import("@/modules/04_registry/components/Information/Family.vue")
);
const $q = useQuasar();
const store = useDataStore();
const { changeTab, loaderPage } = store;
@ -592,6 +565,7 @@ const activeImage = ref<any | null>(null);
const images = ref<any>([]);
const profileId = ref<string>(route.params.id.toString());
const profileType = ref<string>("");
const employeeClass = ref<string>("temp");
const leaveDate = ref<Date>(new Date());
const leaveDetail = ref<string>("");
const leaveNumberOrder = ref<string>("");
@ -655,6 +629,8 @@ const fetchData = async () => {
imageUrl.value = data.avatar;
position.value = data.position;
profileType.value = data.profileType;
employeeClass.value =
data.employeeClass == null ? "" : data.employeeClass;
const reason = reasonOptions.value.filter(
(r: DataOption) => r.id == data.leaveReason
);