updated kpi

This commit is contained in:
Warunee Tamkoo 2024-06-26 20:24:39 +07:00
parent f7f0198613
commit c7cda1c7ba
11 changed files with 185 additions and 78 deletions

View file

@ -20,7 +20,7 @@ import DialogListCriteria from "@/modules/08_KPI/components/Tab/Dialog/DialogLis
import DialogCompetncyByRow from "@/modules/08_KPI/components/Tab/Dialog/DialogCompetncyByRow.vue";
import DialogLevel from "@/modules/08_KPI/components/Tab/Dialog/DialogLevel.vue";
const modalLevel = ref<boolean>(false)
const modalLevel = ref<boolean>(false);
const modalCompetncyByRow = ref<boolean>(false);
const dataCompetncyByRow = ref<any[]>([]);
const dataLevel = ref<any[]>([]);
@ -170,7 +170,10 @@ function getData(type: string) {
let weightAvg = weight / total;
let resultAvg = result / total;
if (store.dataEvaluation.posExecutiveName != null) {
if (
store.dataEvaluation.posTypeName == "อำนวยการ" &&
store.dataEvaluation.posTypeName == "บริหาร"
) {
store.competencyScoreVal =
weightAvg != 0
? (resultAvg / weightAvg) * store.excusiveCompetencyScore
@ -181,6 +184,24 @@ function getData(type: string) {
? (resultAvg / weightAvg) * store.competencyScore
: 0;
}
if (
store.isUpdate &&
store.tabMain === "3" &&
(store.dataEvaluation.evaluationStatus === "EVALUATOR" ||
store.dataEvaluation.evaluationStatus === "EVALUATING_EVALUATOR")
) {
http
.put(config.API.updatePoint(store.dataEvaluation.id), {
totalPoint2_1: store.competencyScoreVal.toFixed(2),
summaryPoint: (
store.indicatorScoreVal +
store.competencyScoreVal +
store.devScoreVal
).toFixed(2),
})
.then((res) => {});
}
}
});
}
@ -248,7 +269,7 @@ const isEditStep3 = computed(() => {
store.tabMain === "3") ||
(store.dataEvaluation.evaluationStatus === "EVALUATING_EVALUATOR" &&
store.rolePerson === "EVALUATOR" &&
store.tabMain === "3")||
store.tabMain === "3") ||
(store.dataEvaluation.evaluationStatus === "EVALUATING" &&
store.rolePerson === "EVALUATOR" &&
store.tabMain === "3")
@ -276,9 +297,9 @@ function onAchievement(data: any) {
dataCompetncyByRow.value = data;
}
function onLevel(num:number,list:any){
dataLevel.value = list.filter((i:any)=> i.level == num)
modalLevel.value = true
function onLevel(num: number, list: any) {
dataLevel.value = list.filter((i: any) => i.level == num);
modalLevel.value = true;
}
onMounted(() => {
@ -407,7 +428,12 @@ onMounted(() => {
}}
</div>
<div v-else-if="col.name == 'level'">
<div @click="onLevel(props.row.level,props.row.achievement)" class="text-teal">{{ props.row.level }}</div>
<div
@click="onLevel(props.row.level, props.row.achievement)"
class="text-teal"
>
{{ props.row.level }}
</div>
</div>
<div v-else>
{{ col.value }}
@ -595,10 +621,7 @@ onMounted(() => {
v-model:rows="dataCompetncyByRow"
/>
<DialogLevel
v-model:modal="modalLevel"
v-model:rows="dataLevel"
/>
<DialogLevel v-model:modal="modalLevel" v-model:rows="dataLevel" />
</template>
<style scoped>

View file

@ -32,6 +32,11 @@ const {
success,
} = mixin;
const isUpdate = defineModel("isUpdate", {
type: Boolean,
default: false,
});
const formData = reactive({
isDevelopment70: false,
isDevelopment20: false,
@ -121,6 +126,24 @@ function getDevelop() {
(sum: number, e: any) => sum + e.summary,
0
);
if (
store.isUpdate &&
store.tabMain === "3" &&
(store.dataEvaluation.evaluationStatus === "EVALUATOR" ||
store.dataEvaluation.evaluationStatus === "EVALUATING_EVALUATOR")
) {
http
.put(config.API.updatePoint(store.dataEvaluation.id), {
totalPoint2_2: store.devScoreVal.toFixed(2),
summaryPoint: (
store.indicatorScoreVal +
store.competencyScoreVal +
store.devScoreVal
).toFixed(2),
})
.then((res) => {});
}
});
}
@ -181,7 +204,7 @@ const isEditStep3 = computed(() => {
store.tabMain === "3") ||
(store.dataEvaluation.evaluationStatus === "EVALUATING_EVALUATOR" &&
store.rolePerson === "EVALUATOR" &&
store.tabMain === "3")||
store.tabMain === "3") ||
(store.dataEvaluation.evaluationStatus === "EVALUATING" &&
store.rolePerson === "EVALUATOR" &&
store.tabMain === "3")