diff --git a/src/api/KPI/api.kpis.ts b/src/api/KPI/api.kpis.ts index a3392d6..8a708cc 100644 --- a/src/api/KPI/api.kpis.ts +++ b/src/api/KPI/api.kpis.ts @@ -15,11 +15,10 @@ const KpiUser = `${env.API_URI}/kpi/user`; const kpiAchievement = `${env.API_URI}/kpi/user/achievement`; const kpiReason = `${env.API_URI}/kpi/reason`; - // const placementKeycloak = `${env.API_URI}/placement/officer/keycloak`; const placementKeycloak = `${env.API_URI}/placement/officer/profileId`; // const orgPosition = `${env.API_URI}/org/profile/keycloak/position `; -const orgPosition = `${env.API_URI}/org/profile/profileid/position`; +const orgPosition = `${env.API_URI}/org/profile/profileid/position`; export default { kpiPeriod, kpiEvaluation, @@ -51,9 +50,13 @@ export default { /**ประเมิน*/ kpiAchievementDevelop: `${kpiAchievement}/development`, - kpiCommentP:(typP:string,type:string,role:string,id:string)=>`${kpiReason}/${typP}/${type}/${role}/${id}`, + kpiCommentP: (typP: string, type: string, role: string, id: string) => + `${kpiReason}/${typP}/${type}/${role}/${id}`, placementKeycloak, orgPosition, - sendToCommander:`${KpiUser}/evaluation/admin/change-status` + sendToCommander: `${KpiUser}/evaluation/admin/change-status`, + sendToSummary: (id: string) => `${kpiEvaluation}/summary/${id}`, + updatePoint: (id: string) => `${kpiEvaluation}/point/${id}`, + openPoint: (id: string) => `${kpiEvaluation}/open/${id}`, }; diff --git a/src/modules/08_KPI/components/Tab/01_Assessment.vue b/src/modules/08_KPI/components/Tab/01_Assessment.vue index e3b7464..1302797 100644 --- a/src/modules/08_KPI/components/Tab/01_Assessment.vue +++ b/src/modules/08_KPI/components/Tab/01_Assessment.vue @@ -152,10 +152,6 @@ function fetchAssigned() { }); } -function onInfo() { - modalCriteria.value = true; -} - function getCriteria() { http .get(config.API.KpiEvaluationInfo) @@ -195,6 +191,24 @@ watch( store.indicatorScoreVal = store.indicatorPercentVal * (store.indicatorScore / 100); + + if ( + store.isUpdate && + store.tabMain === "3" && + (store.dataEvaluation.evaluationStatus === "EVALUATOR" || + store.dataEvaluation.evaluationStatus === "EVALUATING_EVALUATOR") + ) { + http + .put(config.API.updatePoint(evaluationId.value), { + totalPoint1: store.indicatorScoreVal.toFixed(2), + summaryPoint: ( + store.indicatorScoreVal + + store.competencyScoreVal + + store.devScoreVal + ).toFixed(2), + }) + .then((res) => {}); + } } } ); @@ -221,7 +235,12 @@ onMounted(() => {
-
+
{ :rows="[ { name: `สรุปผลการประเมินสมรรถนะ (คะแนนเต็ม ${ - !store.dataEvaluation.posExecutiveName + store.dataEvaluation.posTypeName != 'อำนวยการ' && + store.dataEvaluation.posTypeName != 'บริหาร' ? store.competencyScore : store.excusiveCompetencyScore } คะแนน)`, @@ -446,7 +466,12 @@ onMounted(() => { class="q-mt-xs q-mb-md" /> -
+
@@ -484,7 +509,10 @@ onMounted(() => {
diff --git a/src/modules/08_KPI/components/Tab/04_Result.vue b/src/modules/08_KPI/components/Tab/04_Result.vue index 6e763fb..977e7e9 100644 --- a/src/modules/08_KPI/components/Tab/04_Result.vue +++ b/src/modules/08_KPI/components/Tab/04_Result.vue @@ -37,10 +37,10 @@ const additionalSuperiorComment = ref(""); const superiorCommentCheck = ref(""); const additionalSuperiorCheck = ref(""); -const weight1 = ref(10); +const weight1 = ref(0); const result1 = ref(0); -const weight2 = ref(50); -const result2 = ref(60); +const weight2 = ref(0); +const result2 = ref(0); const sumWeight = computed(() => { return weight1.value + weight2.value; }); @@ -51,28 +51,28 @@ const sumResult = computed(() => { const group = computed(() => { return convert(sumResult.value); }); -const options = ref([ - { - label: "ดีเด่น (คะแนนร้อยละ ๙๐.๐๐ ขึ้นไป)", - value: "EXCELLENT", - }, - { - label: "ดีมาก (คะแนนร้อยละ ๘๐.๐๐ - ๘๙.๙๙)", - value: "VERYGOOD", - }, - { - label: "ดี (คะแนนร้อยละ ๗๐.๐๐ - ๗๙.๙๙)", - value: "GOOD", - }, - { - label: "พอใช้ (คะแนนร้อยละ ๖๐.๐๐ - ๖๙.๙๙)", - value: "FAIR", - }, - { - label: "ต้องปรับปรุง (คะแนนต่ำกว่าร้อยละ ๖๐.๐๐)", - value: "IMPROVEMENT", - }, -]); +// const options = ref([ +// { +// label: "ดีเด่น (คะแนนร้อยละ ๙๐.๐๐ ขึ้นไป)", +// value: "EXCELLENT", +// }, +// { +// label: "ดีมาก (คะแนนร้อยละ ๘๐.๐๐ - ๘๙.๙๙)", +// value: "VERYGOOD", +// }, +// { +// label: "ดี (คะแนนร้อยละ ๗๐.๐๐ - ๗๙.๙๙)", +// value: "GOOD", +// }, +// { +// label: "พอใช้ (คะแนนร้อยละ ๖๐.๐๐ - ๖๙.๙๙)", +// value: "FAIR", +// }, +// { +// label: "ต้องปรับปรุง (คะแนนต่ำกว่าร้อยละ ๖๐.๐๐)", +// value: "IMPROVEMENT", +// }, +// ]); function convert(score: any): string { if (score >= 90) { @@ -120,7 +120,7 @@ function onSubmitCommander() { showLoader(); http .put(config.API.kpiSendToReason(id.value, "commander"), { - isReason: superiorCommentCheck.value, + isReason: superiorCommentCheck.value == "true" ? true : false, reason: superiorComment.value, }) .then((res) => { @@ -145,7 +145,7 @@ function onSubmitCommanderHigh() { showLoader(); http .put(config.API.kpiSendToReason(id.value, "commanderHigh"), { - isReason: additionalSuperiorCheck.value, + isReason: additionalSuperiorCheck.value == "true" ? true : false, reason: additionalSuperiorComment.value, }) .then((res) => { @@ -179,6 +179,10 @@ async function fetchEvaluation() { .then(async (res) => { const data = res.data.result; store.dataEvaluation = await data; + + if (data.profileId == store.dataProfile.profileId) { + userOpen(); + } }) .catch((e) => { messageError($q, e); @@ -188,6 +192,12 @@ async function fetchEvaluation() { }); } +function userOpen() { + http.get(config.API.openPoint(id.value)).then(async (res) => { + // success($q, "เปิดการประเมินสำเร็จ"); + }); +} + function getData() { http .get(config.API.kpiSendToGet(id.value)) @@ -197,14 +207,19 @@ function getData() { developmentMethod.value = data.developEvaluator; developmentPeriod.value = data.timeEvaluator; evaluatorComment.value = data.reasonEvaluator; - superiorCommentCheck.value = data.isReasonCommander.toString(); + superiorCommentCheck.value = data.isReasonCommander + ? data.isReasonCommander.toString() + : ""; superiorComment.value = data.reasonCommander; - additionalSuperiorCheck.value = data.isReasonCommanderHigh.toString(); + additionalSuperiorCheck.value = data.isReasonCommanderHigh + ? data.isReasonCommanderHigh.toString() + : ""; additionalSuperiorComment.value = data.reasonCommanderHigh; - result1.value = data.totalPoint1 - result2.value = data.totalPoint2_1 + data.totalPoint2_2 - + result1.value = data.totalPoint1; + result2.value = data.totalPoint2_1 + data.totalPoint2_2; + weight1.value = data.weightPoint1; + weight2.value = data.weightPoint2; }) .catch((e) => { messageError($q, e); @@ -216,6 +231,7 @@ onMounted(() => { fetchEvaluation(); }); +