-
+
+
+
+
+
@@ -250,6 +253,8 @@ import attendanceManagement from '../components/attendanceManagement.vue'
import negativeList from '../components/negativeList.vue'
// 超工作量奖励绩效
import rewardsKpi from '../components/rewardsKpi.vue'
+import bonusPoints from '../components/bonusPoints.vue'
+import graduationGuidance from '../components/graduationGuidance.vue'
// 处理学生突发事件
import stuEmergency from '../components/stuEmergency.vue'
// 进度条
@@ -272,6 +277,8 @@ export default {
attendanceManagement,
negativeList,
rewardsKpi,
+ bonusPoints,
+ graduationGuidance,
stuEmergency,
auditSteps,
},
@@ -281,7 +288,9 @@ export default {
{ name: '学生管理', value: 'studentManagement' },
{ name: '业务工作', value: 'businessWord' },
{ name: '考勤管理', value: 'attendanceManagement' },
+ { name: '加分项', value: 'bonusPoints' },
{ name: '负面清单', value: 'negativeList' },
+ { name: '就业指导工作', value: 'graduationGuidance' },
{ name: '超工作量奖励绩效', value: 'rewardsKpi' },
{ name: '处理学生突发事件', value: 'stuEmergency' },
],
@@ -447,33 +456,64 @@ export default {
},
handleSelfScoring(row, text) {
let scoring = 0
+ const isGraduate = row.classType === 'graduate'
// 学生管理分数
row.kpiFillingStuMgtList.forEach((element) => {
if (element.hasOwnProperty('id')) {
- scoring += element.cadreScoring
- scoring += element.classScoring
- scoring += element.stuActivityScoring
- scoring += element.stuTalkScoring
- scoring += element.visitDormitoryScoring
+ scoring += Number(element.cadreScoring) || 0
+ scoring += Number(element.classScoring) || 0
+ scoring += Number(element.stuActivityScoring) || 0
+ scoring += Number(element.stuTalkScoring) || 0
+ scoring += Number(element.visitDormitoryScoring) || 0
+ scoring += Number(element.noticeScoring) || 0
+ scoring += Number(element.edgScoring) || 0
}
})
- // 业务工作分数
+ // 业务工作分数 - 非毕业班和毕业班字段名不同
row.kpiFillingBusinessWorksList.forEach((element) => {
if (element.hasOwnProperty('id')) {
- scoring += element.stuLeaveMaterialsScoring
- scoring += element.stuFillingMaterialsScoring
- scoring += element.stuBasicDataScoring
- scoring += element.stuDisciplinaryViolationScoring
- scoring += element.handleEventsScoring
+ if (isGraduate) {
+ scoring += Number(element.stuLeaveMaterialsScoring) || 0
+ scoring += Number(element.stuFillingMaterialsScoring) || 0
+ scoring += Number(element.stuBasicDataScoring) || 0
+ scoring += Number(element.stuDisciplinaryViolationScoring) || 0
+ scoring += Number(element.handleEventsScoring) || 0
+ scoring += Number(element.otherTaskScoring) || 0
+ } else {
+ scoring += Number(element.stuLeaveRequestScoring) || 0
+ scoring += Number(element.stuLeaveMaterialsScoring) || 0
+ scoring += Number(element.stuFillingMaterialsScoring) || 0
+ scoring += Number(element.stuBasicDataScoring) || 0
+ scoring += Number(element.stuDisciplinaryViolationScoring) || 0
+ scoring += Number(element.handleEventsScoring) || 0
+ }
}
})
// 考勤管理分数
row.kpiFillingAMgtList.forEach((element) => {
if (element.hasOwnProperty('id')) {
- scoring += element.dutyWorkScoring
- scoring += element.conferenceScoring
+ scoring += Number(element.dutyWorkScoring) || 0
+ scoring += Number(element.conferenceScoring) || 0
}
})
+ // 加分项分数
+ if (row.kpiFillingBonusPointsList) {
+ row.kpiFillingBonusPointsList.forEach((element) => {
+ if (element.hasOwnProperty('id')) {
+ scoring += Number(element.bonusScoring) || 0
+ }
+ })
+ }
+ // 就业指导工作分数 - 仅毕业班(graduate)计算
+ if (isGraduate && row.kpiFillingGraduationGuidanceList) {
+ row.kpiFillingGraduationGuidanceList.forEach((element) => {
+ if (element.hasOwnProperty('id')) {
+ scoring += Number(element.gradFormAuditScoring) || 0
+ scoring += Number(element.stuCareerConsultScoring) || 0
+ scoring += Number(element.gradFormGuidanceScoring) || 0
+ }
+ })
+ }
if (text === '最终评级') {
if (scoring >= 80) {
return 'A'
diff --git a/src/views/teacher/kpiFilling/teacherKpiFillingMgt/index.vue b/src/views/teacher/kpiFilling/teacherKpiFillingMgt/index.vue
index 4ab6f51..9bd4df5 100644
--- a/src/views/teacher/kpiFilling/teacherKpiFillingMgt/index.vue
+++ b/src/views/teacher/kpiFilling/teacherKpiFillingMgt/index.vue
@@ -84,9 +84,9 @@
-
+ >修改