From a8a4b1ee609e98ad0ebcf12dc480658b4c827a39 Mon Sep 17 00:00:00 2001 From: "DESKTOP-1R2VSQH\\Lenovo ThinkPad E490" Date: Tue, 20 Feb 2024 12:07:21 +0700 Subject: [PATCH] =?UTF-8?q?=E0=B9=80=E0=B8=A5=E0=B8=B7=E0=B8=AD=E0=B8=81?= =?UTF-8?q?=E0=B8=AB=E0=B8=99=E0=B9=88=E0=B8=A7=E0=B8=A2=E0=B8=87=E0=B8=B2?= =?UTF-8?q?=E0=B8=99=E0=B8=97=E0=B8=B5=E0=B9=88=E0=B8=A3=E0=B8=B1=E0=B8=9A?= =?UTF-8?q?=E0=B8=9A=E0=B8=A3=E0=B8=A3=E0=B8=88=E0=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/02_organizational/api.organization.ts | 3 + .../components/PersonalList/CardPosition.vue | 431 ++++++++++++++++++ .../PersonalList/DialogSelectOrg.vue | 320 +++++++++++++ .../components/PersonalList/Table.vue | 24 +- .../components/PersonalList/TablePosition.vue | 0 .../05_placement/interface/index/SelectOrg.ts | 28 ++ .../interface/response/SelectOrg.ts | 105 +++++ .../05_placement/stores/storeSelect.ts | 29 ++ 8 files changed, 933 insertions(+), 7 deletions(-) create mode 100644 src/modules/05_placement/components/PersonalList/CardPosition.vue create mode 100644 src/modules/05_placement/components/PersonalList/DialogSelectOrg.vue create mode 100644 src/modules/05_placement/components/PersonalList/TablePosition.vue create mode 100644 src/modules/05_placement/interface/index/SelectOrg.ts create mode 100644 src/modules/05_placement/interface/response/SelectOrg.ts create mode 100644 src/modules/05_placement/stores/storeSelect.ts diff --git a/src/api/02_organizational/api.organization.ts b/src/api/02_organizational/api.organization.ts index cefc635b1..ff5072f0b 100644 --- a/src/api/02_organizational/api.organization.ts +++ b/src/api/02_organizational/api.organization.ts @@ -51,4 +51,7 @@ export default { // ค้นหาคนตามเงื่อนไข orgSearchPersonal: () => `${organization}/profile/search-personal`, + + /** บรรจุแต่งตั้ง*/ + orgPosPlacement: `${orgPos}/placement/search`, }; diff --git a/src/modules/05_placement/components/PersonalList/CardPosition.vue b/src/modules/05_placement/components/PersonalList/CardPosition.vue new file mode 100644 index 000000000..e9f4db0f8 --- /dev/null +++ b/src/modules/05_placement/components/PersonalList/CardPosition.vue @@ -0,0 +1,431 @@ + + + + diff --git a/src/modules/05_placement/components/PersonalList/DialogSelectOrg.vue b/src/modules/05_placement/components/PersonalList/DialogSelectOrg.vue new file mode 100644 index 000000000..20e15eda4 --- /dev/null +++ b/src/modules/05_placement/components/PersonalList/DialogSelectOrg.vue @@ -0,0 +1,320 @@ + + + + diff --git a/src/modules/05_placement/components/PersonalList/Table.vue b/src/modules/05_placement/components/PersonalList/Table.vue index b49a688fb..df4a1a970 100644 --- a/src/modules/05_placement/components/PersonalList/Table.vue +++ b/src/modules/05_placement/components/PersonalList/Table.vue @@ -4,6 +4,10 @@ import { useQuasar, QForm } from "quasar"; import type { QTableProps } from "quasar"; import { useCounterMixin } from "@/stores/mixin"; +import type { DataList } from "@/modules/05_placement/interface/response/SelectOrg"; + +import DialogSelectOrg from "@/modules/05_placement/components/PersonalList/DialogSelectOrg.vue"; + import Table from "@/modules/05_placement/components/PersonalList/TableView.vue"; import DialogCard from "@/modules/05_placement/components/PersonalList/TableDetail.vue"; import DialogFooter from "@/modules/05_placement/components/PersonalList/DialogFooter.vue"; @@ -480,12 +484,16 @@ const editDetail = ( * เปิด dialog * @param pid id personal */ -function openAppointModal(pid: string) { - appointModal.value = true; - personalId.value = pid; - personal.value = dataRes.value.filter( - (e: any) => e.personalId == personalId.value - ); +const modalDialogSelectOrg = ref(false); +const dataRow = ref(); +function openAppointModal(pid: string, data: DataList) { + // appointModal.value = true; + // personalId.value = pid; + // personal.value = dataRes.value.filter( + // (e: any) => e.personalId == personalId.value + // ); + dataRow.value = data; + modalDialogSelectOrg.value = !modalDialogSelectOrg.value; } /** close dialog */ @@ -758,7 +766,7 @@ onMounted(async () => { " clickable v-close-popup - @click="openAppointModal(props.row.personalId)" + @click="openAppointModal(props.row.personalId, props.row)" > { + +