diff --git a/src/modules/08_KPI/views/form.vue b/src/modules/08_KPI/views/form.vue index 39b06d4..2d8e58b 100644 --- a/src/modules/08_KPI/views/form.vue +++ b/src/modules/08_KPI/views/form.vue @@ -9,6 +9,7 @@ import http from "@/plugins/http"; import config from "@/app.config"; import { useCounterMixin } from "@/stores/mixin"; import { useKpiDataStore } from "@/modules/08_KPI/store"; +import avatar from "@/assets/avatar_user.jpg"; import type { FormProfile } from "@/modules/08_KPI/interface/request/index"; import type { @@ -107,11 +108,13 @@ async function getAvatar(id: string) { .then(async (res) => { const data = await res.data.result; if (data.avatarName) { - await fetchProfile(id, data.avatarName); + fetchProfile(id, data.avatarName); } }) .catch((e) => { messageError($q, e); + imgProfile.value = avatar; + store.dataEvaluation.avartar = avatar; }) .finally(() => { isLoadAvatar.value = false; @@ -119,12 +122,16 @@ async function getAvatar(id: string) { } /** ดึงข้อมูล เพื่อเก็บรูปโปรไฟล์ */ -async function fetchProfile(id: string, avatarName: string) { - await http +function fetchProfile(id: string, avatarName: string) { + http .get(config.API.fileByFile("ทะเบียนประวัติ", "โปรไฟล์", id, avatarName)) - .then(async (res) => { + .then((res) => { store.dataEvaluation.avartar = res.data.downloadUrl; imgProfile.value = res.data.downloadUrl; + }) + .catch(() => { + imgProfile.value = avatar; + store.dataEvaluation.avartar = avatar; }); } @@ -208,7 +215,7 @@ async function getOrgOp() { name: `${i.prefix}${i.firstName} ${i.lastName}`, })) .find( - (i: EvaOptionType) => i.id == store.dataEvaluation.commanderHighId + (i: EvaOptionType) => i.id == store.dataEvaluation.commanderHighId, ); isLoadCommander.value = false; }) @@ -225,21 +232,21 @@ function filterOption(val: string, update: Function, refData: string) { case "evaluatorIdOp": update(() => { evaluatorIdOp.value = evaluatorIdMainOp.value.filter( - (v: DataOptions) => v.name.indexOf(val) > -1 + (v: DataOptions) => v.name.indexOf(val) > -1, ); }); break; case "commanderIdOp": update(() => { commanderIdOp.value = commanderIdMainOp.value.filter( - (v: DataOptions) => v.name.indexOf(val) > -1 + (v: DataOptions) => v.name.indexOf(val) > -1, ); }); break; case "commanderHighOp": update(() => { commanderHighOp.value = commanderHighMainOp.value.filter( - (v: DataOptions) => v.name.indexOf(val) > -1 + (v: DataOptions) => v.name.indexOf(val) > -1, ); }); break; @@ -278,7 +285,7 @@ function sendToEvaluatore() { } }, "ยืนยันการส่งข้อตกลงให้ผู้ประเมินอนุมัติ", - "ต้องการยืนยันส่งข้อตกลงนี้ให้ผู้ประเมินอนุมัติใช่หรือไม่?" + "ต้องการยืนยันส่งข้อตกลงนี้ให้ผู้ประเมินอนุมัติใช่หรือไม่?", ); } @@ -308,7 +315,7 @@ function sendToEvaluateEvaluatore() { } }, "ยืนยันการส่งให้ผู้ประเมินรายงานผลสำเร็จของงาน", - "ต้องการยืนยันส่งให้ผู้ประเมินรายงานผลสำเร็จของงานใช่หรือไม่?" + "ต้องการยืนยันส่งให้ผู้ประเมินรายงานผลสำเร็จของงานใช่หรือไม่?", ); } @@ -338,7 +345,7 @@ function requireEdit() { } }, "ยืนยันการขอแก้ไขข้อตกลง", - "ต้องการยืนยันการขอแก้ไขข้อตกลงนี้ใช่หรือไม่?" + "ต้องการยืนยันการขอแก้ไขข้อตกลงนี้ใช่หรือไม่?", ); } @@ -411,7 +418,7 @@ async function goToSummary() { store.excusiveIndicator2ScoreVal + store.competencyScoreVal ).toFixed(2), - } + }, ) .then((res) => {}); @@ -427,7 +434,7 @@ async function goToSummary() { }); }, "ยืนยันการส่งไปสรุปผลการประเมิน", - "ต้องการยืนยันส่งไปสรุปผลการประเมินใช่หรือไม่?" + "ต้องการยืนยันส่งไปสรุปผลการประเมินใช่หรือไม่?", ); } @@ -517,7 +524,7 @@ async function downloadReport() { store.dataEvaluation.prefix + store.dataEvaluation.firstName + " " + - store.dataEvaluation.lastName + store.dataEvaluation.lastName, ); }) .catch((e) => { @@ -556,7 +563,7 @@ async function clickUpload(file: any) { const foundKey: string | undefined = Object.keys(res.data).find( (key) => res.data[key]?.fileName !== undefined && - res.data[key]?.fileName !== "" + res.data[key]?.fileName !== "", ); foundKey && uploadFileDoc(res.data[foundKey]?.uploadUrl, fileUpload.value); @@ -566,7 +573,7 @@ async function clickUpload(file: any) { }); }, "ยืนยันการอัปโหลดไฟล์", - "ต้องการยืนยันการอัปโหลดไฟล์นี้หรือไม่ ?" + "ต้องการยืนยันการอัปโหลดไฟล์นี้หรือไม่ ?", ); } @@ -623,7 +630,7 @@ function deleteFile(fileName: string) { showLoader(); http .delete( - config.API.file("แบบกำหนดข้อตกลง", "KPI", id.value) + `/${fileName}` + config.API.file("แบบกำหนดข้อตกลง", "KPI", id.value) + `/${fileName}`, ) .catch((e) => { messageError($q, e); diff --git a/src/modules/11_probation/views/mainDetail.vue b/src/modules/11_probation/views/mainDetail.vue index cd6b60c..a4584c0 100644 --- a/src/modules/11_probation/views/mainDetail.vue +++ b/src/modules/11_probation/views/mainDetail.vue @@ -151,6 +151,7 @@ async function getAvatar(id: string) { }) .catch((e) => { messageError($q, e); + profileImg.value = avatar; }); } @@ -168,14 +169,15 @@ function getList(id: string) { }); } -async function getImg(id: string, pathName: string) { - await http +function getImg(id: string, pathName: string) { + http .get(config.API.fileByFile("ทะเบียนประวัติ", "โปรไฟล์", id, pathName)) .then((res) => { profileImg.value = res.data.downloadUrl; }) .catch((e) => { - messageError($q, e); + profileImg.value = avatar; + // messageError($q, e); hideLoader(); }); } @@ -188,7 +190,7 @@ function onSearch() { rows.value = onSearchDataTable( filter.value, rowsData.value, - columns.value ? columns.value : [] + columns.value ? columns.value : [], ); } diff --git a/src/views/MainLayout.vue b/src/views/MainLayout.vue index 165bf6e..331dbe8 100644 --- a/src/views/MainLayout.vue +++ b/src/views/MainLayout.vue @@ -74,7 +74,7 @@ async function checkUser() { await dataStore.getProFileType(); kpiDataStore.dataProfile = data; // Set dataProfile in kpiDataStore if (data.avatarName) { - await getImg(data.profileId, data.avatarName); + getImg(data.profileId, data.avatarName); } else { dataStore.profileImg = avatar; } @@ -106,6 +106,9 @@ function getImg(id: string, pathName: string) { .get(config.API.fileByFile("ทะเบียนประวัติ", "โปรไฟล์", id, pathName)) .then((res) => { dataStore.profileImg = res.data.downloadUrl; + }) + .catch(() => { + dataStore.profileImg = avatar; }); }