From 3ec0614e398984edf659639e88969e776580f4ac Mon Sep 17 00:00:00 2001 From: setthawutttty Date: Thu, 17 Oct 2024 15:36:48 +0700 Subject: [PATCH] =?UTF-8?q?=E0=B9=81=E0=B8=95=E0=B9=88=E0=B8=87=E0=B8=95?= =?UTF-8?q?=E0=B8=B1=E0=B9=89=E0=B8=87=E0=B8=84=E0=B8=93=E0=B8=B0=E0=B8=81?= =?UTF-8?q?=E0=B8=A3=E0=B8=A3=E0=B8=A1=E0=B8=81=E0=B8=B2=E0=B8=A3=E0=B8=97?= =?UTF-8?q?=E0=B8=94=E0=B8=A5=E0=B8=AD=E0=B8=87=E0=B8=87=E0=B8=B2=E0=B8=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/05_placement/api.probation.ts | 3 + .../detail/PersonalInformation/01_Profile.vue | 17 +- .../probation/FormAppoint/FormAppoint.vue | 630 ++++++++++++++++++ .../components/probation/MainAppoint.vue | 299 +++++++++ .../components/probation/MainProbation.vue | 98 ++- .../components/probation/MainTabs.vue | 48 ++ .../05_placement/interface/request/Main.ts | 49 +- src/modules/05_placement/router.ts | 34 +- src/modules/05_placement/store.ts | 2 + 9 files changed, 1150 insertions(+), 30 deletions(-) create mode 100644 src/modules/05_placement/components/probation/FormAppoint/FormAppoint.vue create mode 100644 src/modules/05_placement/components/probation/MainAppoint.vue create mode 100644 src/modules/05_placement/components/probation/MainTabs.vue diff --git a/src/api/05_placement/api.probation.ts b/src/api/05_placement/api.probation.ts index a4b881bf2..bfcc9f546 100644 --- a/src/api/05_placement/api.probation.ts +++ b/src/api/05_placement/api.probation.ts @@ -4,6 +4,7 @@ const personal = `${env.API_PROBATION_URI}/personal`; const calculate = `${env.API_PROBATION_URI}/calculate`; const finish = `${env.API_PROBATION_URI}/assign`; const evaluate = `${env.API_PROBATION_URI}`; +const appointMain = `${env.API_PROBATION_URI}/appoint`; const orgProfile = `${env.API_URI}/org`; export default { @@ -83,4 +84,6 @@ export default { orgProfilePlacement: (id: string) => `${orgProfile}/profile/placement/${id}`, orgProfileStatus: (profileId: string) => `${orgProfile}/profile/probation/${profileId}`, + + appointMain }; diff --git a/src/modules/04_registryPerson/components/detail/PersonalInformation/01_Profile.vue b/src/modules/04_registryPerson/components/detail/PersonalInformation/01_Profile.vue index 467d5cb11..73c137d78 100644 --- a/src/modules/04_registryPerson/components/detail/PersonalInformation/01_Profile.vue +++ b/src/modules/04_registryPerson/components/detail/PersonalInformation/01_Profile.vue @@ -56,7 +56,6 @@ const empType = ref( : "-employee" ); -const emailVerify = ref(null); const id = ref(""); const modal = ref(false); // แสดงฟอร์มแก้ไขประวัติส่วนตัว const informaData = ref(); // ข้อมูลส่วนคัว @@ -79,7 +78,6 @@ const dataLabel = { religion: "ศาสนา", bloodGroup: "หมู่เลือด", phone: "เบอร์โทร", - email: "อีเมล", prefix: "คำนำหน้าชื่อ", rank: "ยศ", firstName: "ชื่อ", @@ -292,9 +290,6 @@ async function getData() { .get(config.API.registryNewByProfileId(profileId.value, empType.value)) .then((res) => { informaData.value = res.data.result; - emailVerify.value = res.data.result.email - ? res.data.result.emailVerify - : null; id.value = res.data.result.id; if (res.data.result.birthDate) { @@ -516,17 +511,10 @@ onMounted(() => {
{{ dataLabel[label as keyof typeof dataLabel] }} - รอยืนยันอีเมล
@@ -546,9 +534,6 @@ onMounted(() => {
{{ informaData.phone ? informaData.phone : "-" }}
-
- {{ informaData.email ? informaData.email : "-" }} -
diff --git a/src/modules/05_placement/components/probation/FormAppoint/FormAppoint.vue b/src/modules/05_placement/components/probation/FormAppoint/FormAppoint.vue new file mode 100644 index 000000000..a3ad0be0b --- /dev/null +++ b/src/modules/05_placement/components/probation/FormAppoint/FormAppoint.vue @@ -0,0 +1,630 @@ + + diff --git a/src/modules/05_placement/components/probation/MainAppoint.vue b/src/modules/05_placement/components/probation/MainAppoint.vue new file mode 100644 index 000000000..03ceb932e --- /dev/null +++ b/src/modules/05_placement/components/probation/MainAppoint.vue @@ -0,0 +1,299 @@ + + diff --git a/src/modules/05_placement/components/probation/MainProbation.vue b/src/modules/05_placement/components/probation/MainProbation.vue index 1cb71ba72..44f30a717 100644 --- a/src/modules/05_placement/components/probation/MainProbation.vue +++ b/src/modules/05_placement/components/probation/MainProbation.vue @@ -1,10 +1,10 @@ diff --git a/src/modules/05_placement/components/probation/MainTabs.vue b/src/modules/05_placement/components/probation/MainTabs.vue new file mode 100644 index 000000000..9d8419fe6 --- /dev/null +++ b/src/modules/05_placement/components/probation/MainTabs.vue @@ -0,0 +1,48 @@ + + diff --git a/src/modules/05_placement/interface/request/Main.ts b/src/modules/05_placement/interface/request/Main.ts index 40bbc1b88..44c60c3f1 100644 --- a/src/modules/05_placement/interface/request/Main.ts +++ b/src/modules/05_placement/interface/request/Main.ts @@ -12,6 +12,11 @@ interface FormPlacementMainData { isExpired?: boolean; } +interface ItemTabs { + label: string; + name: string; +} + interface FormOrderPlacementMainData { Order: string; OrderNum: string; @@ -85,6 +90,43 @@ interface CriteriaType { criteriaType: string; criteriaValue: string; } + +interface AppointMainRows { + id: string; + topic: string; + commandNo: string; + status: string; +} + +interface FormAppointData { + topic: string; + persons: PersonsAppointData[]; +} + +interface PersonsAppointData { + profileId: string; + name?: string; + citizenId: string; + prefix: string; + firstName: string; + lastName: string; + position: string; + positionType: string; + positionLevel: string; + role?: string; +} + +interface MemBerType { + id: string; + prefix: string; + firstName: string; + lastName: string; + citizenId: string; + position: string; + posLevel: string; + posType: string; + isDirector?: boolean; +} export type { FormPlacementMainData, FormOrderPlacementMainData, @@ -95,5 +137,10 @@ export type { mapData, OpfillterType, CriteriaType, - OpfillterTypeSt + OpfillterTypeSt, + ItemTabs, + AppointMainRows, + FormAppointData, + MemBerType, + PersonsAppointData }; diff --git a/src/modules/05_placement/router.ts b/src/modules/05_placement/router.ts index 9cae2c72c..73c3667dd 100644 --- a/src/modules/05_placement/router.ts +++ b/src/modules/05_placement/router.ts @@ -47,17 +47,18 @@ const AppointmentDetail = () => const AppointEmployeeMain = () => import("@/modules/05_placement/views/07_appointEmployeeMain.vue"); const AppointEmployeeDetail = () => - import("@/modules/05_placement/components/AppointEmployee/AppointEmployeeDetail.vue"); + import( + "@/modules/05_placement/components/AppointEmployee/AppointEmployeeDetail.vue" + ); //อื่นๆ -const OtherMain = () => - import("@/modules/05_placement/views/08_otherMain.vue"); +const OtherMain = () => import("@/modules/05_placement/views/08_otherMain.vue"); const OthertDetail = () => import("@/modules/05_placement/components/Other/OtherDetail.vue"); // ระบบทดลองงาน const mainProbation = () => - import("@/modules/05_placement/components/probation/MainProbation.vue"); + import("@/modules/05_placement/components/probation/MainTabs.vue"); const probationDetail = () => import("@/modules/05_placement/components/probation/ProbationDetail.vue"); const probationFormEvaluation = () => @@ -84,7 +85,10 @@ const FormSaveResultAddCommander = () => import( "./components/probation/FormEvaluation/FormSaveResultAddCommander.vue" ); - +const FormAppointPage = () => + import("./components/probation/FormAppoint/FormAppoint.vue"); +const FormAppointPageDetail = () => + import("./components/probation/FormAppoint/FormAppoint.vue"); export default [ { path: "/placement", @@ -388,4 +392,24 @@ export default [ Role: "STAFF", }, }, + { + path: "/probation-detail/assign/:id", + name: "probationAppointDetail", + component: FormAppointPageDetail, + meta: { + Auth: true, + Key: "SYS_PROBATION", + Role: "STAFF", + }, + }, + { + path: "/probation/assign/:id", + name: "probationAppoint", + component: FormAppointPage, + meta: { + Auth: true, + Key: "SYS_PROBATION", + Role: "STAFF", + }, + }, ]; diff --git a/src/modules/05_placement/store.ts b/src/modules/05_placement/store.ts index b4b7cc84c..8b63d0a25 100644 --- a/src/modules/05_placement/store.ts +++ b/src/modules/05_placement/store.ts @@ -88,6 +88,7 @@ export const useProfileDataStore = defineStore("profilePlacenent", () => { }); export const usePlacementDataStore = defineStore("placement", () => { const mixin = useCounterMixin(); //เรียกฟังก์ชันกลาง + const tabsMain = ref("probation"); const { hideLoader } = mixin; interface placement { mappingPosition: { columns: String[] }; @@ -208,6 +209,7 @@ export const usePlacementDataStore = defineStore("placement", () => { DataMain, DataUpdateMain, checkLoad, + tabsMain }; }); export const useOrderPlacementDataStore = defineStore("placementOrder", () => {