ui เพิ่ม เพิ่มข้อมูลทะเบียนประวัติลูกจ้าง // api
This commit is contained in:
parent
5d2fdf254d
commit
5d20d4f279
3 changed files with 1099 additions and 175 deletions
|
|
@ -180,4 +180,5 @@ export default {
|
||||||
`${profile}changeName/history/${profileId}`,
|
`${profile}changeName/history/${profileId}`,
|
||||||
|
|
||||||
profileCitizenId: (citizenId: string) => `${profile}citizenId/${citizenId}`,
|
profileCitizenId: (citizenId: string) => `${profile}citizenId/${citizenId}`,
|
||||||
|
profileEmployeeIn: `${profile}information/employee`,
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -12,74 +12,6 @@
|
||||||
:statusAdd="true"
|
:statusAdd="true"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div id="government" name="16" class="row col-12">
|
|
||||||
<!-- <Government v-model:statusEdit="statusEdit" :statusAdd="true" /> -->
|
|
||||||
</div>
|
|
||||||
<div id="address" name="17" class="row col-12">
|
|
||||||
<Address v-model:statusEdit="statusEdit" :statusAdd="true" />
|
|
||||||
</div>
|
|
||||||
<div id="family" name="18" class="row col-12">
|
|
||||||
<Family v-model:statusEdit="statusEdit" :statusAdd="true" />
|
|
||||||
</div>
|
|
||||||
<div id="certicate" name="15" class="row col-12">
|
|
||||||
<Certicate
|
|
||||||
v-model:statusEdit="statusEdit"
|
|
||||||
:statusAdd="true"
|
|
||||||
profileType="employee"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<div id="education" name="2" class="row col-12 q-mt-md">
|
|
||||||
<EducationVue v-model:statusEdit="statusEdit" :statusAdd="true" />
|
|
||||||
</div>
|
|
||||||
<div id="training" name="3" class="row col-12 q-mt-md">
|
|
||||||
<TrainVue v-model:statusEdit="statusEdit" :statusAdd="true" />
|
|
||||||
</div>
|
|
||||||
<div id="insignia" name="4" class="row col-12 q-mt-md">
|
|
||||||
<InsigniaVue v-model:statusEdit="statusEdit" :statusAdd="true" />
|
|
||||||
</div>
|
|
||||||
<div id="coined" name="5" class="row col-12 q-mt-md">
|
|
||||||
<CoinedVue
|
|
||||||
v-model:statusEdit="statusEdit"
|
|
||||||
:statusAdd="true"
|
|
||||||
profileType="employee"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<div id="assessment" name="6" class="row col-12 q-mt-md">
|
|
||||||
<AssessmentVue
|
|
||||||
v-model:statusEdit="statusEdit"
|
|
||||||
:statusAdd="true"
|
|
||||||
profileType="employee"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<div id="position" name="7" class="row col-12 q-mt-md">
|
|
||||||
<!-- <SalaryVue
|
|
||||||
v-model:statusEdit="statusEdit" :statusAdd="true"
|
|
||||||
v-if="profileType === 'officer'"
|
|
||||||
/> -->
|
|
||||||
|
|
||||||
<SalaryEmployeeVue v-model:statusEdit="statusEdit" :statusAdd="true" />
|
|
||||||
</div>
|
|
||||||
<div id="rule" name="8" class="row col-12 q-mt-md">
|
|
||||||
<DisciplineVue v-model:statusEdit="statusEdit" :statusAdd="true" />
|
|
||||||
</div>
|
|
||||||
<div id="leave" name="9" class="row col-12 q-mt-md">
|
|
||||||
<LeaveVue v-model:statusEdit="statusEdit" :statusAdd="true" />
|
|
||||||
</div>
|
|
||||||
<div id="talent" name="10" class="row col-12 q-mt-md">
|
|
||||||
<TalentVue v-model:statusEdit="statusEdit" :statusAdd="true" />
|
|
||||||
</div>
|
|
||||||
<div id="work" name="11" class="row col-12 q-mt-md">
|
|
||||||
<WorkVue v-model:statusEdit="statusEdit" :statusAdd="true" />
|
|
||||||
</div>
|
|
||||||
<div id="record" name="12" class="row col-12 q-mt-md">
|
|
||||||
<RecordVue v-model:statusEdit="statusEdit" :statusAdd="true" />
|
|
||||||
</div>
|
|
||||||
<div id="other" name="13" class="row col-12 q-mt-md">
|
|
||||||
<OtherVue v-model:statusEdit="statusEdit" :statusAdd="true" />
|
|
||||||
</div>
|
|
||||||
<div id="document" name="14" class="row col-12 q-my-md">
|
|
||||||
<DocumentVue v-model:statusEdit="statusEdit" :statusAdd="true" />
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<q-page-sticky
|
<q-page-sticky
|
||||||
position="top"
|
position="top"
|
||||||
|
|
@ -152,9 +84,7 @@
|
||||||
<div class="text-bold q-pb-xs text-name">
|
<div class="text-bold q-pb-xs text-name">
|
||||||
เพิ่มข้อมูลทะเบียนประวัติ
|
เพิ่มข้อมูลทะเบียนประวัติ
|
||||||
</div>
|
</div>
|
||||||
<div class="text-bold q-pb-xs text-sub">
|
<div class="text-bold q-pb-xs text-sub">ลูกจ้างชั่วคราว</div>
|
||||||
ลูกจ้างชั่วคราว
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<q-space />
|
<q-space />
|
||||||
|
|
@ -512,26 +442,7 @@ import { useDataStore } from "@/stores/data";
|
||||||
import { useRoute, useRouter } from "vue-router";
|
import { useRoute, useRouter } from "vue-router";
|
||||||
import { useCounterMixin } from "@/stores/mixin";
|
import { useCounterMixin } from "@/stores/mixin";
|
||||||
import { useQuasar } from "quasar";
|
import { useQuasar } from "quasar";
|
||||||
import EducationVue from "@/modules/04_registry/components/Education.vue";
|
import Information from "@/modules/08_registryEmployee/views/information.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 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 type { DataOption } from "@/modules/04_registry/interface/index/Main";
|
||||||
import http from "@/plugins/http";
|
import http from "@/plugins/http";
|
||||||
import config from "@/app.config";
|
import config from "@/app.config";
|
||||||
|
|
@ -547,12 +458,6 @@ const imageUrl = ref<any>(null);
|
||||||
const inputImage = ref<any>(null);
|
const inputImage = ref<any>(null);
|
||||||
const fullname = ref<string>("");
|
const fullname = ref<string>("");
|
||||||
const position = ref<string>("นักจัดการงานทั่วไป");
|
const position = ref<string>("นักจัดการงานทั่วไป");
|
||||||
const pdfSrc = ref<string>("");
|
|
||||||
const pdfCurrentPage = ref<number>();
|
|
||||||
const pdfTotalPage = ref<number>();
|
|
||||||
const pdfSrcShort = ref<string>("");
|
|
||||||
const pdfCurrentPageShort = ref<number>();
|
|
||||||
const pdfTotalPageShort = ref<number>();
|
|
||||||
const dialog = ref<boolean>(false);
|
const dialog = ref<boolean>(false);
|
||||||
const dialogShort = ref<boolean>(false);
|
const dialogShort = ref<boolean>(false);
|
||||||
const dialogLeave = ref<boolean>(false);
|
const dialogLeave = ref<boolean>(false);
|
||||||
|
|
@ -851,19 +756,6 @@ const clickKp7 = async () => {
|
||||||
// });
|
// });
|
||||||
};
|
};
|
||||||
|
|
||||||
const downloadFilePDF = async (res: string, fileName: string) => {
|
|
||||||
const link = document.createElement("a");
|
|
||||||
// link.href = window.URL.createObjectURL(new Blob([res]));
|
|
||||||
link.href = window.URL.createObjectURL(
|
|
||||||
new Blob([res], {
|
|
||||||
type: "application/vnd.ms-excel",
|
|
||||||
})
|
|
||||||
);
|
|
||||||
link.setAttribute("download", fileName);
|
|
||||||
document.body.appendChild(link);
|
|
||||||
link.click();
|
|
||||||
};
|
|
||||||
|
|
||||||
const clickKp7Short = async () => {
|
const clickKp7Short = async () => {
|
||||||
if (profileId.value !== "") {
|
if (profileId.value !== "") {
|
||||||
window.open(config.API.profileKp7ShortId(profileId.value));
|
window.open(config.API.profileKp7ShortId(profileId.value));
|
||||||
|
|
@ -884,71 +776,6 @@ const clickKp7Short = async () => {
|
||||||
// loaderPage(false);
|
// loaderPage(false);
|
||||||
// });
|
// });
|
||||||
};
|
};
|
||||||
|
|
||||||
const clickRetire = async () => {
|
|
||||||
if (reasonStatus.value == true) {
|
|
||||||
dialogMessage(
|
|
||||||
$q,
|
|
||||||
"โปรดยืนยัน",
|
|
||||||
"ต้องการย้ายข้อมูลจากพ้นราชการไปถือครองใช่หรือไม่",
|
|
||||||
"info",
|
|
||||||
undefined,
|
|
||||||
"primary",
|
|
||||||
Retire,
|
|
||||||
undefined,
|
|
||||||
false
|
|
||||||
);
|
|
||||||
} else {
|
|
||||||
leaveDate.value = new Date();
|
|
||||||
leaveDetail.value = "";
|
|
||||||
leaveNumberOrder.value = "";
|
|
||||||
leaveDateOrder.value = new Date();
|
|
||||||
reason.value = "";
|
|
||||||
dialogLeave.value = true;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
const Retire = async () => {
|
|
||||||
if (profileId.value !== "") {
|
|
||||||
if (reasonStatus.value == true) {
|
|
||||||
loaderPage(true);
|
|
||||||
await http
|
|
||||||
.put(config.API.profileReactive(profileId.value))
|
|
||||||
.then((res) => {
|
|
||||||
if (res.data) {
|
|
||||||
dialogLeave.value = false;
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.catch((e) => {
|
|
||||||
messageError($q, e);
|
|
||||||
})
|
|
||||||
.finally(() => {
|
|
||||||
router.push("/registry");
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
loaderPage(true);
|
|
||||||
await http
|
|
||||||
.put(config.API.profileDeactive(profileId.value), {
|
|
||||||
leaveDate: dateToISO(leaveDate.value),
|
|
||||||
leaveDetail: leaveDetail.value,
|
|
||||||
leaveNumberOrder: leaveNumberOrder.value,
|
|
||||||
leaveDateOrder: dateToISO(leaveDateOrder.value),
|
|
||||||
reason: reason.value,
|
|
||||||
})
|
|
||||||
.then((res) => {
|
|
||||||
if (res.data) {
|
|
||||||
dialogLeave.value = false;
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.catch((e) => {
|
|
||||||
messageError($q, e);
|
|
||||||
})
|
|
||||||
.finally(() => {
|
|
||||||
router.push("/registry");
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
</script>
|
</script>
|
||||||
<style>
|
<style>
|
||||||
.image-size-default {
|
.image-size-default {
|
||||||
|
|
|
||||||
1096
src/modules/08_registryEmployee/views/information.vue
Normal file
1096
src/modules/08_registryEmployee/views/information.vue
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Add table
Add a link
Reference in a new issue