From 118156a1f08184028f303bc884fb74984ea09b38 Mon Sep 17 00:00:00 2001 From: "DESKTOP-1R2VSQH\\Lenovo ThinkPad E490" Date: Fri, 29 Sep 2023 09:49:43 +0700 Subject: [PATCH 1/2] =?UTF-8?q?download=20file=20=E0=B8=88=E0=B8=B1?= =?UTF-8?q?=E0=B8=94=E0=B8=81=E0=B8=B2=E0=B8=A3=E0=B8=84=E0=B8=B3=E0=B8=82?= =?UTF-8?q?=E0=B8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../07_insignia/components/2_Manage/Tab1.vue | 51 ++++++++++--------- 1 file changed, 27 insertions(+), 24 deletions(-) diff --git a/src/modules/07_insignia/components/2_Manage/Tab1.vue b/src/modules/07_insignia/components/2_Manage/Tab1.vue index 6f042f192..af9bac3ae 100644 --- a/src/modules/07_insignia/components/2_Manage/Tab1.vue +++ b/src/modules/07_insignia/components/2_Manage/Tab1.vue @@ -409,10 +409,17 @@ const downloadFile = (response: any, filename: string) => { }; // เรียก file รายชื่อข้าราชการสามัญฯ const downloadFileexcel = async () => { + const findInsigniaId = DataStore.dataInsigniaType.find( + (e: any) => e.name == DataStore.typeinsignia + ); + showLoader(); await http - .get(config.API.insigniaDowanload(DataStore.requestId), { + .put(config.API.insigniaDowanload(DataStore.requestId), { responseType: "blob", + profileType: + DataStore.employeeClass == "all" ? null : DataStore.employeeClass, + InsigniaId: DataStore.typeinsignia == "all" ? null : findInsigniaId.id, }) .then(async (res) => { await downloadFile( @@ -656,33 +663,29 @@ const clickShowWarn = ( const filterSelector = (val: any, update: Function, name: any) => { update(() => { const needle = val.toLowerCase(); - if (name === 'typeinsigniaOptions') { - DataStore.typeinsignia = '' - typeinsigniaOptions.value = DataStore.typeinsigniaOptions.filter( - (v: any) => v.name.toLowerCase().indexOf(needle) > -1 - ); - } - else if(name === 'employeeClassOps'){ - DataStore.employeeClass = '' - employeeClassOps.value = DataStore.employeeClassOps.filter( - (v: any) => v.name.toLowerCase().indexOf(needle) > -1 - ); - } - else if(name === 'filterOrganizationOP'){ + if (name === "typeinsigniaOptions") { + DataStore.typeinsignia = ""; + typeinsigniaOptions.value = DataStore.typeinsigniaOptions.filter( + (v: any) => v.name.toLowerCase().indexOf(needle) > -1 + ); + } else if (name === "employeeClassOps") { + DataStore.employeeClass = ""; + employeeClassOps.value = DataStore.employeeClassOps.filter( + (v: any) => v.name.toLowerCase().indexOf(needle) > -1 + ); + } else if (name === "filterOrganizationOP") { filterOrganizationOP.value = organizationOptions.value.filter( - (v: any) => v.name.toLowerCase().indexOf(needle) > -1 - ); + (v: any) => v.name.toLowerCase().indexOf(needle) > -1 + ); } - - } - ) -} + }); +}; const clearInsigniaFilters = (name: string) => { if (name === "typeinsigniaOptions") { DataStore.typeinsignia = "all"; typeinsigniaOptions.value = DataStore.typeinsigniaOptions; - } else if (name === 'employeeClassOps') { + } else if (name === "employeeClassOps") { DataStore.employeeClass = "all"; employeeClassOps.value = DataStore.employeeClassOps; } @@ -694,7 +697,7 @@ const clearInsigniaFilters = (name: string) => {
{ ) " /> {
Date: Fri, 29 Sep 2023 09:50:13 +0700 Subject: [PATCH 2/2] =?UTF-8?q?downloadFile=20=E0=B8=88=E0=B8=B1=E0=B8=94?= =?UTF-8?q?=E0=B8=81=E0=B8=B2=E0=B8=A3=E0=B8=84=E0=B8=B3=E0=B8=82=E0=B8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../07_insignia/components/2_Manage/listManage.vue | 13 +++++++++++++ src/modules/07_insignia/store.ts | 9 ++++++++- 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/src/modules/07_insignia/components/2_Manage/listManage.vue b/src/modules/07_insignia/components/2_Manage/listManage.vue index 5e888eb7d..09298ca28 100644 --- a/src/modules/07_insignia/components/2_Manage/listManage.vue +++ b/src/modules/07_insignia/components/2_Manage/listManage.vue @@ -40,6 +40,7 @@ const modalPopupBackToEdit = ref(false); //model แก้ไข onMounted(async () => { tab.value = DataStore.mainTab; await fecthlistRound(); + DataStore.dataInsigniaType.length === 0 && (await fecthInsignia()); }); //เรียกรอบการเสนอขอพระราชทานเครื่อง @@ -123,6 +124,18 @@ const fecthType = async () => { messageError($q, err); }); }; +// เรียกประเภทเครื่องราช +const fecthInsignia = async () => { + await http + .get(config.API.insignia) + .then((res) => { + let data = res.data.result; + DataStore.fetchInsigniaType(data); + }) + .catch((err) => { + messageError($q, err); + }); +}; //เลือกรอบการแสดง const changround = async () => { diff --git a/src/modules/07_insignia/store.ts b/src/modules/07_insignia/store.ts index 982c425ac..9f1dc5269 100644 --- a/src/modules/07_insignia/store.ts +++ b/src/modules/07_insignia/store.ts @@ -37,6 +37,7 @@ export const useInsigniaDataStore = defineStore("insignia", () => { { id: '44', title: 'บัญชีแสดงจำนวนชั้นตราเครื่องราชฯ' } ]) const mainTab = ref("pending"); + const dataInsigniaType = ref([]) // เรียกราชชื่อการเสนอขอ const fetchData = async (data: any) => { if (data !== null) { @@ -124,6 +125,10 @@ export const useInsigniaDataStore = defineStore("insignia", () => { rows.value = listinsignia.value; } }; + // ประเภทเครื่องราช + function fetchInsigniaType(data: any) { + dataInsigniaType.value = data + } // ประเภทลูกจ้าง const profileType = (val: string) => { @@ -167,11 +172,13 @@ export const useInsigniaDataStore = defineStore("insignia", () => { employeeClass, employeeClassOps, fetchDataInsignia, + fetchInsigniaType, isLock, requestId, roleUser, requestStatus, optionReport, - convertStatus + convertStatus, + dataInsigniaType, }; });