Compare commits

...

2 Commits

12 changed files with 951 additions and 265 deletions

View File

@@ -76,3 +76,55 @@ export function delKpiFilling(id) {
method: 'post'
})
}
// 查询加分项列表
export function listKpiFillingBonusPoints(query) {
return request({
url: '/teacher/kpiFillingBonusPoints/list',
method: 'get',
params: query
})
}
// 新增加分项
export function addKpiFillingBonusPoints(data) {
return request({
url: '/teacher/kpiFillingBonusPoints/add',
method: 'post',
data: data
})
}
// 修改加分项
export function updateKpiFillingBonusPoints(data) {
return request({
url: '/teacher/kpiFillingBonusPoints/update',
method: 'post',
data: data
})
}
// 删除加分项
export function delKpiFillingBonusPoints(id) {
return request({
url: '/teacher/kpiFillingBonusPoints/' + id,
method: 'post'
})
}
// 查询就业指导工作
export function getKpiFillingGraduationGuidance(id) {
return request({
url: '/teacher/kpiFillingGraduationGuidance/' + id,
method: 'get'
})
}
// 修改就业指导工作
export function updateKpiFillingGraduationGuidance(data) {
return request({
url: '/teacher/kpiFillingGraduationGuidance/update',
method: 'post',
data: data
})
}

View File

@@ -107,6 +107,12 @@
<dict-tag :options="dict.type.rt_filling_college" :value="scope.row.departmentName" />
</template>
</el-table-column>
<el-table-column label="班级类型" align="center" prop="classType">
<template slot-scope="scope">
<el-tag v-if="scope.row.classType === 'graduate'" type="primary">毕业班</el-tag>
<el-tag v-else-if="scope.row.classType === 'ungraduate'" type="success">非毕业班</el-tag>
</template>
</el-table-column>
<el-table-column label="自评分数" align="center" prop="selfScoring">
<template slot-scope="scope">
{{ handleSelfScoring(scope.row) > 100 ? 100 : handleSelfScoring(scope.row) }}
@@ -192,8 +198,11 @@
</div>
<el-tabs type="border-card">
<el-tab-pane v-for="item in componentList" :key="item.name" :label="item.name">
<div class="componentList">
<component :is="item.value" :form="form" style="padding: 10px" />
<div v-if="item.value === 'graduationGuidance' && form.classType === 'graduate'" class="componentList">
<component :is="item.value" :form="form" :roleGroup="roleGroup" :audit="audit" style="padding: 10px" />
</div>
<div v-else-if="item.value !== 'graduationGuidance'" class="componentList">
<component :is="item.value" :form="form" :roleGroup="roleGroup" :audit="audit" style="padding: 10px" />
</div>
</el-tab-pane>
</el-tabs>
@@ -269,6 +278,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'
// 进度条
@@ -289,6 +300,8 @@ export default {
attendanceManagement,
negativeList,
rewardsKpi,
bonusPoints,
graduationGuidance,
stuEmergency,
auditSteps,
},
@@ -298,7 +311,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' },
],

View File

@@ -0,0 +1,162 @@
<template>
<div>
<div v-if="form.kpiFillingBonusPointsList && form.kpiFillingBonusPointsList.length > 0">
<el-table :data="form.kpiFillingBonusPointsList" border>
<el-table-column label="序号" type="index" width="50" align="center" />
<el-table-column label="加分类型" align="center" prop="bonusType">
<template slot-scope="scope">
<span v-if="scope.row.bonusType === 'option1'">获得上级部门或学校表扬妥善处置学生事件并形成典型案例积极建言献策且建议被采纳发挥模范带头作用的</span>
<span v-else-if="scope.row.bonusType === 'option2'">在学校学院阶段性重要任务推进过程中主动担当作为切实发挥作用的</span>
<span v-else-if="scope.row.bonusType === 'option3'">协助学校开展辅导员培训会议和学生活动在活动中担任工作人员的</span>
<span v-else>{{ scope.row.bonusType }}</span>
</template>
</el-table-column>
<el-table-column label="分数" align="center" prop="bonusScoring" width="100" />
</el-table>
</div>
<div v-else>
<p>暂无加分项数据</p>
</div>
<div style="margin-top: 10px; padding: 10px; background-color: #f5f5f5; border-radius: 4px;">
<p style="font-weight: bold; margin-bottom: 10px;">考评要求</p>
<div v-if="!isEdit">
<p>1. 获得上级部门或学校表扬妥善处置学生事件并形成典型案例积极建言献策且建议被采纳发挥模范带头作用的10</p>
<p>2. 在学校学院阶段性重要任务推进过程中主动担当作为切实发挥作用的10</p>
<p>3. 协助学校开展辅导员培训会议和学生活动在活动中担任工作人员的10</p>
</div>
<div v-else>
<el-checkbox v-model="bonusForm.option1" @change="handleBonusChange('option1')">获得上级部门或学校表扬妥善处置学生事件并形成典型案例积极建言献策且建议被采纳发挥模范带头作用的10分</el-checkbox>
<el-checkbox v-model="bonusForm.option2" @change="handleBonusChange('option2')">在学校学院阶段性重要任务推进过程中主动担当作为切实发挥作用的10分</el-checkbox>
<el-checkbox v-model="bonusForm.option3" @change="handleBonusChange('option3')">协助学校开展辅导员培训会议和学生活动在活动中担任工作人员的10分</el-checkbox>
<div style="margin-top: 10px;">
<span>分数</span>
<el-input-number v-model="bonusForm.bonusScoring" :min="0" :max="10" size="mini" />
</div>
</div>
<p style="font-weight: bold; margin: 10px 0;">考评方式</p>
<p>学务办学工各项工作记录按照完成情况任务量加分每次加2-4</p>
</div>
<div v-if="form.kpiFillingBonusPointsList && form.kpiFillingBonusPointsList.length > 0 && !(form.auditStatus === 1 && form.roleAudit === 4)" style="margin-top: 10px; text-align: right;">
<el-button v-if="!isEdit && !roleGroup.includes('辅导员') && audit" type="warning" @click="startEdit"> </el-button>
<el-button v-if="isEdit" type="primary" @click="saveBonus">保存</el-button>
<el-button v-if="isEdit" @click="cancelEdit">取消</el-button>
</div>
</div>
</template>
<script>
import { addKpiFillingBonusPoints, updateKpiFillingBonusPoints, delKpiFillingBonusPoints } from '@/api/teacher/kpiFilling'
export default {
props: {
form: {
type: Object,
default: []
},
roleGroup: {
type: String,
default: ''
},
audit: {
type: Boolean,
default: true
}
},
data() {
return {
isEdit: false,
bonusForm: {
option1: false,
option2: false,
option3: false,
bonusScoring: 0
}
}
},
created() {
},
methods: {
startEdit() {
if (this.form.kpiFillingBonusPointsList && this.form.kpiFillingBonusPointsList.length > 0) {
const bonusType = this.form.kpiFillingBonusPointsList[0].bonusType
this.bonusForm = {
option1: bonusType === 'option1',
option2: bonusType === 'option2',
option3: bonusType === 'option3',
bonusScoring: this.form.kpiFillingBonusPointsList[0].bonusScoring || 0
}
}
this.isEdit = true
},
handleBonusChange(type) {
if (type === 'option1' && this.bonusForm.option1) {
this.bonusForm.option2 = false
this.bonusForm.option3 = false
this.bonusForm.bonusScoring = 10
} else if (type === 'option2' && this.bonusForm.option2) {
this.bonusForm.option1 = false
this.bonusForm.option3 = false
this.bonusForm.bonusScoring = 10
} else if (type === 'option3' && this.bonusForm.option3) {
this.bonusForm.option1 = false
this.bonusForm.option2 = false
this.bonusForm.bonusScoring = 10
}
},
saveBonus() {
let bonusType = ''
if (this.bonusForm.option1) bonusType = 'option1'
else if (this.bonusForm.option2) bonusType = 'option2'
else if (this.bonusForm.option3) bonusType = 'option3'
if (!bonusType) {
this.$message.warning('请选择加分类型')
return
}
const data = {
bonusType: bonusType,
bonusScoring: this.bonusForm.bonusScoring,
fdyName: this.form.fdyName,
fillingYear: this.form.fillingYear,
fillingMonth: this.form.fillingMonth,
classType: this.form.classType
}
if (this.form.kpiFillingBonusPointsList && this.form.kpiFillingBonusPointsList.length > 0) {
data.id = this.form.kpiFillingBonusPointsList[0].id
updateKpiFillingBonusPoints(data).then(response => {
this.$message.success('保存成功')
this.isEdit = false
this.form.kpiFillingBonusPointsList[0].bonusType = bonusType
this.form.kpiFillingBonusPointsList[0].bonusScoring = this.bonusForm.bonusScoring
})
} else {
addKpiFillingBonusPoints(data).then(response => {
this.$message.success('保存成功')
this.isEdit = false
this.form.kpiFillingBonusPointsList = [{
bonusType: bonusType,
bonusScoring: this.bonusForm.bonusScoring
}]
})
}
},
cancelEdit() {
this.isEdit = false
this.bonusForm = {
option1: false,
option2: false,
option3: false,
bonusScoring: 0
}
}
}
}
</script>
<style scoped>
p {
margin: 5px 0;
font-size: 14px;
}
</style>

View File

@@ -1,75 +1,201 @@
<!-- -->
<template>
<div>
<p>考核要求严格执行学生请销假登记制度5&emsp;&emsp;&emsp;&emsp;考核方式学工系统记录未能按规定完成1次扣1分</p>
<div style="display: flex; align-items: center;">
<div v-if="classType === 'ungraduate'">
<div>
辅导员自评分{{ form.kpiFillingBusinessWorksList[0].stuLeaveMaterialsScoring || "没有填写" }}
<p style="font-weight: bold;">考核要求</p>
<p>严格执行学生请销假登记制度5</p>
<p style="font-weight: bold;">考核方式</p>
<p style="margin-left: 20px; color: #666;">学工系统记录未能按规定完成1次扣1分</p>
</div>
<div v-if="isShow" style="display: flex; align-items: center;margin-left: 50px;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingBusinessWorksList[0].stuLeaveMaterialsScoring" :min="0" :max="5" label="调整分数" size="mini" style="width: 100%;" />
<!-- <el-input placeholder="请输入自评分" v-model="form.kpiFillingBusinessWorksList[0].stuLeaveMaterialsScoring" clearable
size="mini">
</el-input> -->
<div style="display: flex; align-items: center; margin-top: 10px;">
<div>
辅导员自评分{{ form.kpiFillingBusinessWorksList[0].stuLeaveRequestScoring || "没有填写" }}
</div>
<div v-if="isShow" style="display: flex; align-items: center;margin-left: 50px;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingBusinessWorksList[0].stuLeaveRequestScoring" :min="0" :max="5" label="调整分数" size="mini" style="width: 100%;" />
</div>
</div>
<div style="margin-top: 20px;">
<p style="font-weight: bold;">考核要求</p>
<p>按规定完成学生学籍异动违纪处分与解除等材料5</p>
<p style="font-weight: bold;">考核方式</p>
<p style="margin-left: 20px; color: #666;">学务办学工各项工作记录未能按规定完成1次扣2分</p>
</div>
<div style="display: flex; align-items: center; margin-top: 10px;">
<div>
辅导员自评分{{ form.kpiFillingBusinessWorksList[0].stuLeaveMaterialsScoring || "没有填写" }}
</div>
<div v-if="isShow" style="display: flex; align-items: center;margin-left: 50px;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingBusinessWorksList[0].stuLeaveMaterialsScoring" :min="0" :max="5" label="调整分数" size="mini" style="width: 100%;" />
</div>
</div>
<div style="margin-top: 20px;">
<p style="font-weight: bold;">考核要求</p>
<p>认真完成评优评先资助评定工作10</p>
<p style="font-weight: bold;">考核方式</p>
<p style="margin-left: 20px; color: #666;">学务办学工各项工作记录若存在提交率准确率规范性不达标的情况每项扣12累计扣完该考核指标分值为止</p>
</div>
<div style="display: flex; align-items: center; margin-top: 10px;">
<div>
辅导员自评分{{ form.kpiFillingBusinessWorksList[0].stuFillingMaterialsScoring || "没有填写" }}
</div>
<div v-if="isShow" style="display: flex; align-items: center;margin-left: 50px;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingBusinessWorksList[0].stuFillingMaterialsScoring" :min="0" :max="10" label="调整分数" size="mini" style="width: 100%;" />
</div>
</div>
<div style="margin-top: 20px;">
<p style="font-weight: bold;">考核要求</p>
<p>按时准确填报学生各项基础数据5</p>
<p style="font-weight: bold;">考核方式</p>
<p style="margin-left: 20px; color: #666;">学务办学工各项工作记录未能按规定完成1次扣1分</p>
</div>
<div style="display: flex; align-items: center; margin-top: 10px;">
<div>
辅导员自评分{{ form.kpiFillingBusinessWorksList[0].stuBasicDataScoring || "没有填写" }}
</div>
<div v-if="isShow" style="display: flex; align-items: center;margin-left: 50px;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingBusinessWorksList[0].stuBasicDataScoring" :min="0" :max="5" label="调整分数" size="mini" style="width: 100%;" />
</div>
</div>
<div style="margin-top: 20px;">
<p style="font-weight: bold;">考核要求</p>
<p>认真指导学生完成各项材料填报工作5</p>
<p style="font-weight: bold;">考核方式</p>
<p style="margin-left: 20px; color: #666;">学务办学工各项工作记录未能按规定完成1次扣1分</p>
</div>
<div style="display: flex; align-items: center; margin-top: 10px;">
<div>
辅导员自评分{{ form.kpiFillingBusinessWorksList[0].stuDisciplinaryViolationScoring || "没有填写" }}
</div>
<div v-if="isShow" style="display: flex; align-items: center;margin-left: 50px;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingBusinessWorksList[0].stuDisciplinaryViolationScoring" :min="0" :max="5" label="调整分数" size="mini" style="width: 100%;" />
</div>
</div>
<div style="margin-top: 20px;">
<p style="font-weight: bold;">考核要求</p>
<p>按程序要求处理突发事件5</p>
<p style="font-weight: bold;">考核方式</p>
<p style="margin-left: 20px; color: #666;">学务办学工各项工作记录未能按规定完成不得分</p>
</div>
<div style="display: flex; align-items: center; margin-top: 10px;">
<div>
辅导员自评分{{ form.kpiFillingBusinessWorksList[0].handleEventsScoring || "没有填写" }}
</div>
<div v-if="isShow" style="display: flex; align-items: center;margin-left: 50px;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingBusinessWorksList[0].handleEventsScoring" :min="0" :max="5" label="调整分数" size="mini" style="width: 100%;" />
</div>
</div>
</div>
<p>考核要求认真指导学生完成各项材料填报工作10&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;考核方式学务办学工各项工作记录未能按规定完成1次扣1分</p>
<div style="display: flex; align-items: center;">
<!-- 辅导员自评分{{ form.kpiFillingBusinessWorksList[0].stuFillingMaterialsScoring || "没有填写" }} -->
<div v-else-if="classType === 'graduate'">
<div>
辅导员自评分{{ form.kpiFillingBusinessWorksList[0].stuFillingMaterialsScoring || "没有填写" }}
<p style="font-weight: bold;">考核要求</p>
<p>按规定完成学生学籍异动违纪处分与解除等材料5</p>
<p style="font-weight: bold;">考核方式</p>
<p style="margin-left: 20px; color: #666;">学务办学工各项工作记录未能按规定完成1次扣2分</p>
</div>
<div v-if="isShow" style="display: flex; align-items: center;margin-left: 50px;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingBusinessWorksList[0].stuFillingMaterialsScoring" :min="0" :max="10" label="调整分数" size="mini" style="width: 100%;" />
<!-- <el-input placeholder="请输入自评分" v-model="form.kpiFillingBusinessWorksList[0].stuFillingMaterialsScoring" clearable
size="mini">
</el-input> -->
</div>
</div>
<p>考核要求:按时按质完成学生基础数据上报工作10&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;考核方式学务办学工各项工作记录未能按规定完成1次扣1分</p>
<div style="display: flex; align-items: center;">
<!-- 辅导员自评分{{ form.kpiFillingBusinessWorksList[0].stuBasicDataScoring || "没有填写" }} -->
<div>
辅导员自评分{{ form.kpiFillingBusinessWorksList[0].stuBasicDataScoring || "没有填写" }}
</div>
<div v-if="isShow" style="display: flex; align-items: center;margin-left: 50px;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingBusinessWorksList[0].stuBasicDataScoring" :min="0" :max="10" label="调整分数" size="mini" style="width: 100%;" />
<!-- <el-input placeholder="请输入自评分" v-model="form.kpiFillingBusinessWorksList[0].stuBasicDataScoring" clearable
size="mini">
</el-input> -->
</div>
</div>
<p>考核要求按规定完成学生违纪处分材料10&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;考核方式学务办学工各项工作记录未能按规定完成1次扣2分</p>
<div style="display: flex; align-items: center;">
<!-- 辅导员自评分{{ form.kpiFillingBusinessWorksList[0].stuDisciplinaryViolationScoring || "没有填写" }} -->
<div>
辅导员自评分{{ form.kpiFillingBusinessWorksList[0].stuDisciplinaryViolationScoring || "没有填写" }}
</div>
<div v-if="isShow" style="display: flex; align-items: center;margin-left: 50px;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingBusinessWorksList[0].stuDisciplinaryViolationScoring" :min="0" :max="10" label="调整分数" size="mini" style="width: 100%;" />
<!-- <el-input placeholder="请输入自评分" v-model="form.kpiFillingBusinessWorksList[0].stuDisciplinaryViolationScoring" clearable
size="mini">
</el-input> -->
</div>
</div>
<p>考核要求按程序要求处理突发事件10&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;考核方式学务办学工各项工作记录未能按规定完成不得分</p>
<div style="display: flex; align-items: center;">
<!-- 辅导员自评分{{ form.kpiFillingBusinessWorksList[0].handleEventsScoring || "没有填写" }} -->
<div>
辅导员自评分{{ form.kpiFillingBusinessWorksList[0].handleEventsScoring || "没有填写" }}
</div>
<div v-if="isShow" style="display: flex; align-items: center;margin-left: 50px;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingBusinessWorksList[0].handleEventsScoring" :min="0" :max="10" label="调整分数" size="mini" style="width: 100%;" />
<!-- <el-input placeholder="请输入自评分" v-model="form.kpiFillingBusinessWorksList[0].handleEventsScoring" clearable
size="mini">
</el-input> -->
<div style="display: flex; align-items: center; margin-top: 10px;">
<div>
辅导员自评分{{ form.kpiFillingBusinessWorksList[0].stuLeaveMaterialsScoring || "没有填写" }}
</div>
<div v-if="isShow" style="display: flex; align-items: center;margin-left: 50px;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingBusinessWorksList[0].stuLeaveMaterialsScoring" :min="0" :max="5" label="调整分数" size="mini" style="width: 100%;" />
</div>
</div>
<div style="margin-top: 20px;">
<p style="font-weight: bold;">考核要求</p>
<p>认真完成评优评先资助评定工作10</p>
<p style="font-weight: bold;">考核方式</p>
<p style="margin-left: 20px; color: #666;">学务办学工各项工作记录提交率准确率规范性差的每个项目扣12扣完为止</p>
</div>
<div style="display: flex; align-items: center; margin-top: 10px;">
<div>
辅导员自评分{{ form.kpiFillingBusinessWorksList[0].stuFillingMaterialsScoring || "没有填写" }}
</div>
<div v-if="isShow" style="display: flex; align-items: center;margin-left: 50px;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingBusinessWorksList[0].stuFillingMaterialsScoring" :min="0" :max="10" label="调整分数" size="mini" style="width: 100%;" />
</div>
</div>
<div style="margin-top: 20px;">
<p style="font-weight: bold;">考核要求</p>
<p>按时准确填报学生各项基础数据5</p>
<p style="font-weight: bold;">考核方式</p>
<p style="margin-left: 20px; color: #666;">学务办学工各项工作记录未能按规定完成1次扣1分</p>
</div>
<div style="display: flex; align-items: center; margin-top: 10px;">
<div>
辅导员自评分{{ form.kpiFillingBusinessWorksList[0].stuBasicDataScoring || "没有填写" }}
</div>
<div v-if="isShow" style="display: flex; align-items: center;margin-left: 50px;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingBusinessWorksList[0].stuBasicDataScoring" :min="0" :max="5" label="调整分数" size="mini" style="width: 100%;" />
</div>
</div>
<div style="margin-top: 20px;">
<p style="font-weight: bold;">考核要求</p>
<p>认真指导学生完成各项材料填报工作5</p>
<p style="font-weight: bold;">考核方式</p>
<p style="margin-left: 20px; color: #666;">学务办学工各项工作记录未能按规定完成1次扣1分</p>
</div>
<div style="display: flex; align-items: center; margin-top: 10px;">
<div>
辅导员自评分{{ form.kpiFillingBusinessWorksList[0].stuDisciplinaryViolationScoring || "没有填写" }}
</div>
<div v-if="isShow" style="display: flex; align-items: center;margin-left: 50px;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingBusinessWorksList[0].stuDisciplinaryViolationScoring" :min="0" :max="5" label="调整分数" size="mini" style="width: 100%;" />
</div>
</div>
<div style="margin-top: 20px;">
<p style="font-weight: bold;">考核要求</p>
<p>按程序要求处理突发事件10</p>
<p style="font-weight: bold;">考核方式</p>
<p style="margin-left: 20px; color: #666;">学务办学工各项工作记录未能按规定完成不得分</p>
</div>
<div style="display: flex; align-items: center; margin-top: 10px;">
<div>
辅导员自评分{{ form.kpiFillingBusinessWorksList[0].handleEventsScoring || "没有填写" }}
</div>
<div v-if="isShow" style="display: flex; align-items: center;margin-left: 50px;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingBusinessWorksList[0].handleEventsScoring" :min="0" :max="10" label="调整分数" size="mini" style="width: 100%;" />
</div>
</div>
<div style="margin-top: 20px;">
<p style="font-weight: bold;">考核要求</p>
<p>按时按质完成学工学院发布的各项学生工作通知任务5</p>
<p style="font-weight: bold;">考核方式</p>
<p style="margin-left: 20px; color: #666;">学务办学工各项工作记录未能按规定完成1次扣1分</p>
</div>
<div style="display: flex; align-items: center; margin-top: 10px;">
<div>
辅导员自评分{{ form.kpiFillingBusinessWorksList[0].otherTaskScoring || "没有填写" }}
</div>
<div v-if="isShow" style="display: flex; align-items: center;margin-left: 50px;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingBusinessWorksList[0].otherTaskScoring" :min="0" :max="5" label="调整分数" size="mini" style="width: 100%;" />
</div>
</div>
</div>
<div v-if="form.kpiFillingBusinessWorksList[0].hasOwnProperty('id') && !(form.auditStatus === 1 && form.roleAudit === 4)" class="button">
<el-button v-show="isShow" type="primary" @click="save"> </el-button>
<el-button v-if="!roleGroup.includes('辅导员') && audit" type="warning" @click="switchIsShow"> </el-button>
@@ -99,6 +225,11 @@ export default {
isShow: false
}
},
computed: {
classType() {
return this.form.classType || 'ungraduate'
}
},
watch: {
'form.kpiFillingBusinessWorksList': {
immediate: true,
@@ -109,56 +240,47 @@ export default {
stuBasicDataScoring: 0,
stuDisciplinaryViolationScoring: 0,
stuFillingMaterialsScoring: 0,
stuLeaveMaterialsScoring: 0
stuLeaveMaterialsScoring: 0,
stuLeaveRequestScoring: 0,
otherTaskScoring: 0
}
}
}
}
},
// 生命周期 - 创建完成访问当前this实例
created() {
},
// 生命周期 - 挂载完成访问DOM元素
mounted() {
},
// 离开当前页面时执行代码
destroyed() {
},
methods: {
switchIsShow() {
this.isShow = !this.isShow
},
save() {
this.$modal.loading('正在努力加载中,请稍等。。。')
updateKpiFillingBusinessWork(this.form.kpiFillingBusinessWorksList[0]).then(response => {
// this.$modal.msgSuccess("修改成功");
getKpiFillingBusinessWork(this.form.kpiFillingBusinessWorksList[0].id).then(response => {
this.form.kpiFillingBusinessWorksList[0].handleEventsScoring = response.data.handleEventsScoring,
this.form.kpiFillingBusinessWorksList[0].stuBasicDataScoring = response.data.stuBasicDataScoring,
this.form.kpiFillingBusinessWorksList[0].stuDisciplinaryViolationScoring = response.data.stuDisciplinaryViolationScoring,
this.form.kpiFillingBusinessWorksList[0].stuFillingMaterialsScoring = response.data.stuFillingMaterialsScoring,
this.form.kpiFillingBusinessWorksList[0].stuLeaveMaterialsScoring = response.data.stuLeaveMaterialsScoring,
this.$modal.msgSuccess('修改成功')
this.switchIsShow()
this.$modal.closeLoading()
this.form.kpiFillingBusinessWorksList[0].stuLeaveRequestScoring = response.data.stuLeaveRequestScoring,
this.form.kpiFillingBusinessWorksList[0].otherTaskScoring = response.data.otherTaskScoring
})
this.$modal.msgSuccess('修改成功')
this.isShow = false
})
}
}
}
</script>
<style scoped>
/* @import url(); 引入css类 */
.button {
margin-top: 20px;
position: sticky;
bottom: 0;
background-color: white;
z-index: 100;
margin-top: 10px;
text-align: right;
padding: 10px;
}
p {
margin: 5px 0;
font-size: 14px;
}
</style>

View File

@@ -0,0 +1,130 @@
<template>
<div>
<div>
<p style="font-weight: bold;">考核要求</p>
<p>指导审核毕业生登记表等就业核心材料10</p>
<p style="font-weight: bold;">考核方式</p>
<p style="margin-left: 20px; color: #666;">依据招就处统计数据或云就业平台记录以招就处明确的材料清单为准</p>
<p style="margin-left: 20px; color: #666;">3月底前班级毕业生就业核心备案材料完成率25%扣2分4月底前班级毕业生就业核心备案材料完成率50%扣2分5月底前班级毕业生就业核心备案材料完成率75%扣3分6月底前班级就业核心备案材料完成率95%扣3分</p>
</div>
<div style="display: flex; align-items: center; margin-top: 10px;">
<div>
辅导员自评分{{ form.kpiFillingGraduationGuidanceList[0].gradFormAuditScoring || "没有填写" }}
</div>
<div v-if="isShow" style="display: flex; align-items: center;margin-left: 50px;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingGraduationGuidanceList[0].gradFormAuditScoring" :min="0" :max="10" label="调整分数" size="mini" style="width: 100%;" />
</div>
</div>
<div style="margin-top: 20px;">
<p style="font-weight: bold;">考核要求</p>
<p>开展学生就业咨询服务及团体辅导工作助力学生解决就业困惑提升就业竞争力5</p>
<p style="font-weight: bold;">考核方式</p>
<p style="margin-left: 20px; color: #666;">依据招就处统计数据或云就业平台数据</p>
<p style="margin-left: 20px; color: #666;">1团体辅导每学期需组织开展至少1次就业主题团体辅导单次服务学生人次20未按要求完成的扣1分</p>
<p style="margin-left: 20px; color: #666;">2就业咨询每月需完成至少2次就业咨询服务累计服务学生不少于4人当月未达标未开展咨询或服务人次不足扣1分/</p>
</div>
<div style="display: flex; align-items: center; margin-top: 10px;">
<div>
辅导员自评分{{ form.kpiFillingGraduationGuidanceList[0].stuCareerConsultScoring || "没有填写" }}
</div>
<div v-if="isShow" style="display: flex; align-items: center;margin-left: 50px;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingGraduationGuidanceList[0].stuCareerConsultScoring" :min="0" :max="5" label="调整分数" size="mini" style="width: 100%;" />
</div>
</div>
<div style="margin-top: 20px;">
<p style="font-weight: bold;">考核要求</p>
<p>审核毕业生源信息就业系统信息等数据及就业证明材料含真实性完整性规范性10</p>
<p style="font-weight: bold;">考核方式</p>
<p style="margin-left: 20px; color: #666;">招就处以云就业平台审核操作日志教育厅反馈的问题清单为依据进行评分</p>
<p style="margin-left: 20px; color: #666;">1第五学期10月底前完成毕业生生源信息审核完成率98%扣3分</p>
<p style="margin-left: 20px; color: #666;">2第五学期12月第六学期8月每月需100%完成毕业生提交的就业信息数据及相关证明材料核验工作出现1次未全额完成核验的情况扣0.5经招就处教育厅等层级核查如发现已审核通过的就业信息存在虚假材料缺失或填写不规范等问题单次核查每确认1例扣1分</p>
</div>
<div style="display: flex; align-items: center; margin-top: 10px;">
<div>
辅导员自评分{{ form.kpiFillingGraduationGuidanceList[0].gradFormGuidanceScoring || "没有填写" }}
</div>
<div v-if="isShow" style="display: flex; align-items: center;margin-left: 50px;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingGraduationGuidanceList[0].gradFormGuidanceScoring" :min="0" :max="10" label="调整分数" size="mini" style="width: 100%;" />
</div>
</div>
<div v-if="form.kpiFillingGraduationGuidanceList[0].hasOwnProperty('id') && !(form.auditStatus === 1 && form.roleAudit === 4)" class="button">
<el-button v-show="isShow" type="primary" @click="save"> </el-button>
<el-button v-if="!roleGroup.includes('辅导员') && audit" type="warning" @click="switchIsShow"> </el-button>
</div>
</div>
</template>
<script>
import { getKpiFillingGraduationGuidance, updateKpiFillingGraduationGuidance } from '@/api/teacher/kpiFilling'
export default {
props: {
form: {
type: Object,
default: []
},
roleGroup: {
type: String,
default: ''
},
audit: {
type: Boolean,
default: true
}
},
data() {
return {
isShow: false
}
},
watch: {
'form.kpiFillingGraduationGuidanceList': {
immediate: true,
handler() {
if (this.form.kpiFillingGraduationGuidanceList.length === 0) {
this.form.kpiFillingGraduationGuidanceList[0] = {
gradFormAuditScoring: 0,
stuCareerConsultScoring: 0,
gradFormGuidanceScoring: 0
}
}
}
}
},
created() {
},
methods: {
switchIsShow() {
this.isShow = !this.isShow
},
save() {
updateKpiFillingGraduationGuidance(this.form.kpiFillingGraduationGuidanceList[0]).then(response => {
getKpiFillingGraduationGuidance(this.form.kpiFillingGraduationGuidanceList[0].id).then(response => {
this.form.kpiFillingGraduationGuidanceList[0].gradFormAuditScoring = response.data.gradFormAuditScoring
this.form.kpiFillingGraduationGuidanceList[0].stuCareerConsultScoring = response.data.stuCareerConsultScoring
this.form.kpiFillingGraduationGuidanceList[0].gradFormGuidanceScoring = response.data.gradFormGuidanceScoring
})
this.$modal.msgSuccess('修改成功')
this.isShow = false
})
}
}
}
</script>
<style scoped>
.button {
margin-top: 10px;
text-align: right;
}
p {
margin: 5px 0;
font-size: 14px;
}
</style>

View File

@@ -1,174 +1,297 @@
<!-- -->
<template>
<div>
<!-- 班会佐证材料表格数据 -->
<div>
<el-row :gutter="10" style="display: flex; align-items: center;">
<el-col :span="7">考评要求:每周按时开展班会10</el-col>
<el-col :span="8">考评方式:辅导员工作笔记照片记录少1次扣2分质量评价2分</el-col>
<el-col :span="3">辅导员自评分: {{ form.kpiFillingStuMgtList[0].classScoring }}</el-col>
<el-col v-show="isShow" :span="5">
<div style="display: flex; align-items: center;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingStuMgtList[0].classScoring" :min="0" :max="10" label="调整分数" size="mini" style="width: 100%;" />
<!-- <el-input placeholder="请输入自评分" v-model="form.kpiFillingStuMgtList[0].classScoring" clearable size="mini">
</el-input> -->
</div>
</el-col>
</el-row>
<div v-if="isGraduate" class="graduate-content">
<!-- 毕业班内容 -->
<!-- 班会佐证材料表格数据 -->
<div>
<el-row :gutter="10" style="display: flex; align-items: center;">
<el-col :span="7">考评要求:每月通过线上线下方式定期召开班会开展教育10</el-col>
<el-col :span="8">考评方式:学工系统填报照片记录少1次扣2分质量评价2分</el-col>
<el-col :span="3">辅导员自评分: {{ form.kpiFillingStuMgtList[0].classScoring }}</el-col>
<el-col v-show="isShow" :span="5">
<div style="display: flex; align-items: center;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingStuMgtList[0].classScoring" :min="0" :max="10" label="调整分数" size="mini" style="width: 100%;" />
</div>
</el-col>
</el-row>
<div style="margin-top: 20px;">
<el-table :data="form.kpiFillingStuMgtList[0].classMeetingMaterialsList" border>
<el-table-column label="序号" type="index" width="50" align="center" />
<el-table-column label="开展时间" align="center" prop="developmentTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.developmentTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="地点" align="center" prop="place" />
<el-table-column label="班级名称" align="center" prop="className" />
<el-table-column label="参与学生人数" align="center" prop="numberOfStudents" />
<el-table-column label="主要内容" align="center" prop="mainContent" />
<el-table-column label="相片" align="center" prop="photo" width="100">
<template slot-scope="scope">
<image-preview :src="scope.row.photo" :width="50" :height="50" />
</template>
</el-table-column>
</el-table>
</div>
</div>
<!-- 谈心谈话佐证材料表格数据 -->
<div style="margin-top: 20px;">
<el-table :data="form.kpiFillingStuMgtList[0].classMeetingMaterialsList" border>
<el-table-column label="序号" type="index" width="50" align="center" />
<el-table-column label="开展时间" align="center" prop="developmentTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.developmentTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="地点" align="center" prop="place" />
<el-table-column label="班级名称" align="center" prop="className" />
<el-table-column label="参与学生人数" align="center" prop="numberOfStudents" />
<el-table-column label="主要内容" align="center" prop="mainContent" />
<el-table-column label="相片" align="center" prop="photo" width="100">
<template slot-scope="scope">
<image-preview :src="scope.row.photo" :width="50" :height="50" />
</template>
</el-table-column>
</el-table>
<el-row :gutter="10" style="display: flex; align-items: center;">
<el-col :span="7">考评要求:月度谈心谈话总量10人次覆盖重点关注学生困难救助就业指导心理危机违纪待处理等10</el-col>
<el-col :span="8">考评方式:抽查谈心谈话记录学工系统填报情况等相关工作资料</el-col>
<el-col :span="3">辅导员自评分: {{ form.kpiFillingStuMgtList[0].stuTalkScoring }}</el-col>
<el-col v-show="isShow" :span="5">
<div style="display: flex; align-items: center;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingStuMgtList[0].stuTalkScoring" :min="0" :max="10" label="调整分数" size="mini" style="width: 100%;" />
</div>
</el-col>
</el-row>
<div style="margin-top: 20px;">
<el-table :data="form.kpiFillingStuMgtList[0].stuTalkMaterialsList" border>
<el-table-column label="序号" type="index" width="50" align="center" />
<el-table-column label="开展时间" align="center" prop="developmentTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.developmentTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="地点" align="center" prop="place" />
<el-table-column label="班级名称" align="center" prop="className" />
<el-table-column label="学生名称" align="center" prop="stuName" />
<el-table-column label="主要内容" align="center" prop="mainContent" />
</el-table>
</div>
</div>
</div>
<!-- 每周深入学生宿舍佐证材料表格数据 -->
<div style="margin-top: 20px;">
<el-row :gutter="10" style="display: flex; align-items: center;">
<el-col :span="7">考评要求:每周深入学生宿舍至少2次10</el-col>
<el-col :span="8">考评方式:辅导员工作笔记照片记录少1次扣2分质量评价2分</el-col>
<el-col :span="3">辅导员自评分: {{ form.kpiFillingStuMgtList[0].visitDormitoryScoring }}</el-col>
<el-col v-show="isShow" :span="5">
<div style="display: flex; align-items: center;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingStuMgtList[0].visitDormitoryScoring" :min="0" :max="10" label="调整分数" size="mini" style="width: 100%;" />
<!-- <el-input placeholder="请输入自评分" v-model="form.kpiFillingStuMgtList[0].visitDormitoryScoring" clearable size="mini">
</el-input> -->
</div>
</el-col>
</el-row>
<div style="margin-top: 20px;">
<el-table :data="form.kpiFillingStuMgtList[0].visitDormitoryMaterialsList" border>
<el-table-column label="序号" type="index" width="50" align="center" />
<el-table-column label="开展时间" align="center" prop="developmentTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.developmentTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="走访班级名称" align="center" prop="visitClassName" />
<el-table-column label="走访宿舍号" align="center" prop="visitDormitoryNum" />
<el-table-column label="覆盖学生人数" align="center" prop="numberOfStudents" />
<el-table-column label="学生交流内容/检查内容" align="center" prop="mainContent" />
<el-table-column label="相片" align="center" prop="photo" width="100">
<template slot-scope="scope">
<image-preview :src="scope.row.photo" :width="50" :height="50" />
</template>
</el-table-column>
</el-table>
<div v-else class="ungraduate-content">
<!-- 非毕业班内容 -->
<!-- 班会佐证材料表格数据 -->
<div>
<el-row :gutter="10" style="display: flex; align-items: center;">
<el-col :span="7">考评要求:每周日及节假日收假当天组织开展班会10</el-col>
<el-col :span="8">考评方式:学工系统填报开展情况每缺报1次扣2分工作质量评价项分值为2分将根据实际完成质量进行评分</el-col>
<el-col :span="3">辅导员自评分: {{ form.kpiFillingStuMgtList[0].classScoring }}</el-col>
<el-col v-show="isShow" :span="5">
<div style="display: flex; align-items: center;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingStuMgtList[0].classScoring" :min="0" :max="10" label="调整分数" size="mini" style="width: 100%;" />
</div>
</el-col>
</el-row>
<div style="margin-top: 20px;">
<el-table :data="form.kpiFillingStuMgtList[0].classMeetingMaterialsList" border>
<el-table-column label="序号" type="index" width="50" align="center" />
<el-table-column label="开展时间" align="center" prop="developmentTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.developmentTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="地点" align="center" prop="place" />
<el-table-column label="班级名称" align="center" prop="className" />
<el-table-column label="参与学生人数" align="center" prop="numberOfStudents" />
<el-table-column label="主要内容" align="center" prop="mainContent" />
<el-table-column label="相片" align="center" prop="photo" width="100">
<template slot-scope="scope">
<image-preview :src="scope.row.photo" :width="50" :height="50" />
</template>
</el-table-column>
</el-table>
</div>
</div>
</div>
<!-- 每每月开展班团干部会议佐证材料表格数据 -->
<div style="margin-top: 20px;">
<el-row :gutter="10" style="display: flex; align-items: center;">
<el-col :span="7">考评要求:每月开展班团干部会议至少2次5</el-col>
<el-col :span="8">考评方式:辅导员工作笔记照片记录少1次扣2分</el-col>
<el-col :span="3">辅导员自评分: {{ form.kpiFillingStuMgtList[0].cadreScoring }}</el-col>
<el-col v-show="isShow" :span="5">
<div style="display: flex; align-items: center;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingStuMgtList[0].cadreScoring" :min="0" :max="5" label="调整分数" size="mini" style="width: 100%;" />
<!-- <el-input placeholder="请输入自评分" v-model="form.kpiFillingStuMgtList[0].cadreScoring" clearable size="mini">
</el-input> -->
</div>
</el-col>
</el-row>
<!-- 每周深入学生宿舍佐证材料表格数据 -->
<div style="margin-top: 20px;">
<el-table :data="form.kpiFillingStuMgtList[0].cadreMeetingMaterialsList" border>
<el-table-column label="序号" type="index" width="50" align="center" />
<el-table-column label="开展时间" align="center" prop="developmentTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.developmentTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="地点" align="center" prop="place" />
<el-table-column label="班级名称" align="center" prop="className" />
<el-table-column label="参与学生人数" align="center" prop="numberOfStudents" />
<el-table-column label="主要内容" align="center" prop="mainContent" />
<el-table-column label="相片" align="center" prop="photo" width="100">
<template slot-scope="scope">
<image-preview :src="scope.row.photo" :width="50" :height="50" />
</template>
</el-table-column>
</el-table>
<el-row :gutter="10" style="display: flex; align-items: center;">
<el-col :span="7">考评要求:每周深入学生宿舍走访至少2次10</el-col>
<el-col :span="8">考评方式:学工系统填报宿舍管理员登记本信息核查工作落实不到位或学生宿舍安全卫生检查发现问题经通报后未及时开展教育督促整改复检仍不合格的每有1次扣0.5/</el-col>
<el-col :span="3">辅导员自评分: {{ form.kpiFillingStuMgtList[0].visitDormitoryScoring }}</el-col>
<el-col v-show="isShow" :span="5">
<div style="display: flex; align-items: center;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingStuMgtList[0].visitDormitoryScoring" :min="0" :max="10" label="调整分数" size="mini" style="width: 100%;" />
</div>
</el-col>
</el-row>
<div style="margin-top: 20px;">
<el-table :data="form.kpiFillingStuMgtList[0].visitDormitoryMaterialsList" border>
<el-table-column label="序号" type="index" width="50" align="center" />
<el-table-column label="开展时间" align="center" prop="developmentTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.developmentTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="走访班级名称" align="center" prop="visitClassName" />
<el-table-column label="走访宿舍号" align="center" prop="visitDormitoryNum" />
<el-table-column label="覆盖学生人数" align="center" prop="numberOfStudents" />
<el-table-column label="学生交流内容/检查内容" align="center" prop="mainContent" />
<el-table-column label="相片" align="center" prop="photo" width="100">
<template slot-scope="scope">
<image-preview :src="scope.row.photo" :width="50" :height="50" />
</template>
</el-table-column>
</el-table>
</div>
</div>
</div>
<!-- 每月与带班学生谈心谈话议佐证材料表格数据 -->
<div style="margin-top: 20px;">
<el-row :gutter="10" style="display: flex; align-items: center;">
<el-col :span="7">考评要求:每月与带班学生谈心谈话覆盖率不低于8%10</el-col>
<el-col :span="8">考评方式辅导员工作笔记照片记录少1次扣1分</el-col>
<el-col :span="3">辅导员自评分: {{ form.kpiFillingStuMgtList[0].stuTalkScoring }}</el-col>
<el-col v-show="isShow" :span="5">
<div style="display: flex; align-items: center;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingStuMgtList[0].stuTalkScoring" :min="0" :max="10" label="调整分数" size="mini" style="width: 100%;" />
<!-- <el-input placeholder="请输入自评分" v-model="form.kpiFillingStuMgtList[0].stuTalkScoring" clearable size="mini">
</el-input> -->
</div>
</el-col>
</el-row>
<!-- 谈心谈话佐证材料表格数据 -->
<div style="margin-top: 20px;">
<el-table :data="form.kpiFillingStuMgtList[0].stuTalkMaterialsList" border>
<el-table-column label="序号" type="index" width="50" align="center" />
<el-table-column label="开展时间" align="center" prop="developmentTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.developmentTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="地点" align="center" prop="place" />
<el-table-column label="班级名称" align="center" prop="className" />
<el-table-column label="学生名称" align="center" prop="stuName" />
<el-table-column label="主要内容" align="center" prop="mainContent" />
</el-table>
<el-row :gutter="10" style="display: flex; align-items: center;">
<el-col :span="7">考评要求:月度谈心谈话总量10人次覆盖重点关注学生困难救助学业预警心理危机违纪待处理等10</el-col>
<el-col :span="8">考评方式:抽查谈心谈话记录学工系统填报情况等相关工作资料</el-col>
<el-col :span="3">辅导员自评分: {{ form.kpiFillingStuMgtList[0].stuTalkScoring }}</el-col>
<el-col v-show="isShow" :span="5">
<div style="display: flex; align-items: center;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingStuMgtList[0].stuTalkScoring" :min="0" :max="10" label="调整分数" size="mini" style="width: 100%;" />
</div>
</el-col>
</el-row>
<div style="margin-top: 20px;">
<el-table :data="form.kpiFillingStuMgtList[0].stuTalkMaterialsList" border>
<el-table-column label="序号" type="index" width="50" align="center" />
<el-table-column label="开展时间" align="center" prop="developmentTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.developmentTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="地点" align="center" prop="place" />
<el-table-column label="班级名称" align="center" prop="className" />
<el-table-column label="学生名称" align="center" prop="stuName" />
<el-table-column label="主要内容" align="center" prop="mainContent" />
</el-table>
</div>
</div>
</div>
<!-- 每月深入学生社区面向学生开展活动议佐证材料表格数据 -->
<div style="margin-top: 20px;">
<el-row :gutter="10" style="display: flex; align-items: center;">
<el-col :span="7">考评要求:每月深入学生社区面向学生开展活动1次5</el-col>
<el-col :span="8">考评方式:学生社区建设记录</el-col>
<el-col :span="3">辅导员自评分: {{ form.kpiFillingStuMgtList[0].stuActivityScoring }}</el-col>
<el-col v-show="isShow" :span="5">
<div style="display: flex; align-items: center;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingStuMgtList[0].stuActivityScoring" :min="0" :max="5" label="调整分数" size="mini" style="width: 100%;" />
<!-- <el-input placeholder="请输入自评分" v-model="form.kpiFillingStuMgtList[0].stuActivityScoring" clearable size="mini">
</el-input> -->
</div>
</el-col>
</el-row>
<!-- 班团干部会议佐证材料表格数据 -->
<div style="margin-top: 20px;">
<el-table :data="form.kpiFillingStuMgtList[0].stuActivityMaterialsList" border>
<el-table-column label="序号" type="index" width="50" align="center" />
<el-table-column label="开展时间" align="center" prop="developmentTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.developmentTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="地点" align="center" prop="place" />
<el-table-column label="班级名称" align="center" prop="className" />
<el-table-column label="参与学生人数" align="center" prop="numberOfStudents" />
<el-table-column label="主要内容" align="center" prop="mainContent" />
<el-table-column label="相片" align="center" prop="photo" width="100">
<template slot-scope="scope">
<image-preview :src="scope.row.photo" :width="50" :height="50" />
</template>
</el-table-column>
</el-table>
<el-row :gutter="10" style="display: flex; align-items: center;">
<el-col :span="7">考评要求:每月开展班团干部培训专题工作会议频次均不少于1次5</el-col>
<el-col :span="8">考评方式:抽查工作记录学工系统填报情况等相关工作资料</el-col>
<el-col :span="3">辅导员自评分: {{ form.kpiFillingStuMgtList[0].cadreScoring }}</el-col>
<el-col v-show="isShow" :span="5">
<div style="display: flex; align-items: center;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingStuMgtList[0].cadreScoring" :min="0" :max="5" label="调整分数" size="mini" style="width: 100%;" />
</div>
</el-col>
</el-row>
<div style="margin-top: 20px;">
<el-table :data="form.kpiFillingStuMgtList[0].cadreMeetingMaterialsList" border>
<el-table-column label="序号" type="index" width="50" align="center" />
<el-table-column label="开展时间" align="center" prop="developmentTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.developmentTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="地点" align="center" prop="place" />
<el-table-column label="班级名称" align="center" prop="className" />
<el-table-column label="参与学生人数" align="center" prop="numberOfStudents" />
<el-table-column label="主要内容" align="center" prop="mainContent" />
<el-table-column label="相片" align="center" prop="photo" width="100">
<template slot-scope="scope">
<image-preview :src="scope.row.photo" :width="50" :height="50" />
</template>
</el-table-column>
</el-table>
</div>
</div>
<!-- 学生活动佐证材料表格数据 -->
<div style="margin-top: 20px;">
<el-row :gutter="10" style="display: flex; align-items: center;">
<el-col :span="7">考评要求:每月组织或参与学生社区育人活动思政教育活动及文化艺术体育活动频次不少于2次5</el-col>
<el-col :span="8">考评方式:学务办相关记录学生社区建设工作记录每缺少1次扣2分</el-col>
<el-col :span="3">辅导员自评分: {{ form.kpiFillingStuMgtList[0].stuActivityScoring }}</el-col>
<el-col v-show="isShow" :span="5">
<div style="display: flex; align-items: center;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingStuMgtList[0].stuActivityScoring" :min="0" :max="5" label="调整分数" size="mini" style="width: 100%;" />
</div>
</el-col>
</el-row>
<div style="margin-top: 20px;">
<el-table :data="form.kpiFillingStuMgtList[0].stuActivityMaterialsList" border>
<el-table-column label="序号" type="index" width="50" align="center" />
<el-table-column label="开展时间" align="center" prop="developmentTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.developmentTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="地点" align="center" prop="place" />
<el-table-column label="班级名称" align="center" prop="className" />
<el-table-column label="参与学生人数" align="center" prop="numberOfStudents" />
<el-table-column label="主要内容" align="center" prop="mainContent" />
<el-table-column label="相片" align="center" prop="photo" width="100">
<template slot-scope="scope">
<image-preview :src="scope.row.photo" :width="50" :height="50" />
</template>
</el-table-column>
</el-table>
</div>
</div>
<!-- 职业测评/就业育人佐证材料表格数据 -->
<div style="margin-top: 20px;">
<el-row :gutter="10" style="display: flex; align-items: center;">
<el-col :span="7">考评要求:根据学校就业育人工作部署第一学期需指导并组织所带班级学生参与职业测评整体完成率需90%第二学期每月需开展1次就业育人相关活动5</el-col>
<el-col :span="8">考评方式:1职业测评完成率考核第一学期10月底前班级职业测评完成率20%扣1分11月底前班级职业测评完成率50%扣1分12月底前班级职业测评完成率80%扣1分次年1月底前班级职业测评完成率90%扣2分2就业育人活动考核第二学期活动形式需围绕就业核心包括职业体验实践就业主题班会就业指导讲座等标准化就业育人场景3-7月期间每月需按要求组织1次相关活动未完成当月活动任务扣1分/</el-col>
<el-col :span="3">辅导员自评分: {{ form.kpiFillingStuMgtList[0].edgScoring || 0 }}</el-col>
<el-col v-show="isShow" :span="5">
<div style="display: flex; align-items: center;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingStuMgtList[0].edgScoring" :min="0" :max="5" label="调整分数" size="mini" style="width: 100%;" />
</div>
</el-col>
</el-row>
<div style="margin-top: 20px;">
<el-table :data="form.kpiFillingStuMgtList[0].edgMaterialsList" border>
<el-table-column label="序号" type="index" width="50" align="center" />
<el-table-column label="开展时间" align="center" prop="developmentTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.developmentTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="地点" align="center" prop="place" />
<el-table-column label="班级名称" align="center" prop="className" />
<el-table-column label="参与学生人数" align="center" prop="numberOfStudents" />
<el-table-column label="主要内容" align="center" prop="mainContent" />
<el-table-column label="相片" align="center" prop="photo" width="100">
<template slot-scope="scope">
<image-preview :src="scope.row.photo" :width="50" :height="50" />
</template>
</el-table-column>
</el-table>
</div>
</div>
<!-- 通知任务佐证材料表格数据 -->
<div style="margin-top: 20px;">
<el-row :gutter="10" style="display: flex; align-items: center;">
<el-col :span="7">考评要求:按时按质完成学校及相关职能部门发布的与学生相关的各项工作通知任务5</el-col>
<el-col :span="8">考评方式:学务办职能部门各项工作记录未能按规定完成1次扣1分</el-col>
<el-col :span="3">辅导员自评分: {{ form.kpiFillingStuMgtList[0].noticeScoring || 0 }}</el-col>
<el-col v-show="isShow" :span="5">
<div style="display: flex; align-items: center;">
<div style="min-width: 70px;color: red;">调整分数</div>
<el-input-number v-model="form.kpiFillingStuMgtList[0].noticeScoring" :min="0" :max="5" label="调整分数" size="mini" style="width: 100%;" />
</div>
</el-col>
</el-row>
<div style="margin-top: 20px;">
<el-table :data="form.kpiFillingStuMgtList[0].noticeMaterialsList" border>
<el-table-column label="序号" type="index" width="50" align="center" />
<el-table-column label="开展时间" align="center" prop="developmentTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.developmentTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="地点" align="center" prop="place" />
<el-table-column label="班级名称" align="center" prop="className" />
<el-table-column label="参与学生人数" align="center" prop="numberOfStudents" />
<el-table-column label="主要内容" align="center" prop="mainContent" />
<el-table-column label="相片" align="center" prop="photo" width="100">
<template slot-scope="scope">
<image-preview :src="scope.row.photo" :width="50" :height="50" />
</template>
</el-table-column>
</el-table>
</div>
</div>
</div>
<div v-if="form.kpiFillingStuMgtList[0].hasOwnProperty('id') && !(form.auditStatus === 1 && form.roleAudit === 4)" class="button">
@@ -200,6 +323,17 @@ export default {
isShow: false
}
},
computed: {
isGraduate() {
if (this.form.classType === 'graduate') {
return true
}
if (this.form.kpiFillingStuMgtList && this.form.kpiFillingStuMgtList.length > 0) {
return this.form.kpiFillingStuMgtList[0].classType === 'graduate'
}
return false
}
},
watch: {
'form.kpiFillingStuMgtList': {
immediate: true,
@@ -216,7 +350,11 @@ export default {
stuTalkMaterialsList: [],
stuTalkScoring: 0,
visitDormitoryMaterialsList: [],
visitDormitoryScoring: 0
visitDormitoryScoring: 0,
edgMaterialsList: [],
edgScoring: 0,
noticeMaterialsList: [],
noticeScoring: 0
}
}
}

View File

@@ -172,8 +172,11 @@
</div>
<el-tabs type="border-card" style="margin-top: 20px;">
<el-tab-pane v-for="item in componentList" :key="item.name" :label="item.name">
<div class="componentList">
<component :is="item.value" :form="form" :role-group="roleGroup" style="padding: 10px;" />
<div v-if="item.value === 'graduationGuidance' && form.classType === 'graduate'" class="componentList">
<component :is="item.value" :form="form" :roleGroup="roleGroup" :audit="false" style="padding: 10px" />
</div>
<div v-else-if="item.value !== 'graduationGuidance'" class="componentList">
<component :is="item.value" :form="form" :roleGroup="roleGroup" :audit="false" style="padding: 10px" />
</div>
</el-tab-pane>
</el-tabs>
@@ -206,6 +209,10 @@ import attendanceManagement from '../kpiFilling/components/attendanceManagement.
import negativeList from '../kpiFilling/components/negativeList.vue'
// 超工作量奖励绩效
import rewardsKpi from '../kpiFilling/components/rewardsKpi.vue'
// 加分项
import bonusPoints from '../kpiFilling/components/bonusPoints.vue'
// 就业指导工作
import graduationGuidance from '../kpiFilling/components/graduationGuidance.vue'
// 处理学生突发事件
import stuEmergency from '../kpiFilling/components/stuEmergency.vue'
// s审核进度
@@ -215,14 +222,16 @@ import { getDeptName } from '@/api/system/dept'
export default {
name: 'KpiFilling',
dicts: ['sys_commit_status', 'sys_teacher_kpi_filling_month', 'sys_teacher_kpi_filling_year', 'sys_kpi', 'rt_college', 'rt_filling_college'],
components: { studentManagement, businessWord, attendanceManagement, negativeList, rewardsKpi, stuEmergency, auditSteps },
components: { studentManagement, businessWord, attendanceManagement, negativeList, rewardsKpi, bonusPoints, graduationGuidance, stuEmergency, auditSteps },
data() {
return {
componentList: [
{ name: '学生管理', value: 'studentManagement' },
{ name: '业务工作', value: 'businessWord' },
{ name: '考勤管理', value: 'attendanceManagement' },
{ name: '加分项', value: 'bonusPoints' },
{ name: '负面清单', value: 'negativeList' },
{ name: '就业指导工作', value: 'graduationGuidance' },
{ name: '超工作量奖励绩效', value: 'rewardsKpi' },
{ name: '处理学生突发事件', value: 'stuEmergency' },
],
@@ -341,11 +350,14 @@ export default {
departmentName: null,
selfScoring: null,
finalRating: null,
classType: null,
kpiFillingStuMgtList: [],
kpiFillingBusinessWorksList: [],
kpiFillingAMgtList: [],
kpiFillingNegativeLists: [],
kpiFillingRewardsKpiList: [],
kpiFillingBonusPointsList: [],
kpiFillingGraduationGuidanceList: [],
kpiFillingStuEmergencyList: []
}
this.resetForm('form')

View File

@@ -57,6 +57,13 @@
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="值班工作分数" align="center" prop="dutyWorkScoring" />
<el-table-column label="会议分数" align="center" prop="conferenceScoring" />
<el-table-column label="班级类型" align="center" prop="classType">
<template slot-scope="scope">
<el-tag v-if="scope.row.classType === 'graduate'" type="primary">毕业班</el-tag>
<el-tag v-else-if="scope.row.classType === 'ungraduate'" type="success">非毕业班</el-tag>
<span v-else>{{ scope.row.classType }}</span>
</template>
</el-table-column>
<el-table-column label="填报人名称" align="center" prop="fdyName" />
<el-table-column label="填报年份" align="center" prop="fillingYear">
<template slot-scope="scope">
@@ -70,9 +77,9 @@
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button v-hasPermi="['teacher:kpiFillingAMgt:edit']" size="mini" type="text" icon="el-icon-edit"
<!-- <el-button v-hasPermi="['teacher:kpiFillingAMgt:edit']" size="mini" type="text" icon="el-icon-edit"
@click="handleUpdate(scope.row)"
>修改</el-button>
>修改</el-button> -->
<el-button v-hasPermi="['teacher:kpiFillingAMgt:remove']" size="mini" type="text" icon="el-icon-delete"
@click="handleDelete(scope.row)"
>删除</el-button>

View File

@@ -140,8 +140,11 @@
<!-- 选项卡 -->
<el-tabs type="border-card" style="margin-top: 20px;">
<el-tab-pane v-for="item in componentList" :key="item.name" :label="item.name">
<div class="componentList">
<component :is="item.value" :form="form" :audit="false" style="padding: 10px" />
<div v-if="item.value === 'graduationGuidance' && form.classType === 'graduate'" class="componentList">
<component :is="item.value" :form="form" :roleGroup="roleGroup" :audit="false" style="padding: 10px" />
</div>
<div v-else-if="item.value !== 'graduationGuidance'" class="componentList">
<component :is="item.value" :form="form" :roleGroup="roleGroup" :audit="false" style="padding: 10px" />
</div>
</el-tab-pane>
</el-tabs>
@@ -152,6 +155,7 @@
<script>
import { listKpiFillingAuditRecord, getKpiFillingAuditRecord, delKpiFillingAuditRecord, addKpiFillingAuditRecord, updateKpiFillingAuditRecord } from '@/api/teacher/kpiFillingAuditRecord'
import { getByFdyNameAndYearAndMonth } from '@/api/teacher/kpiFilling'
import { getUserProfile } from '@/api/system/user'
// 学生管理
import studentManagement from '../components/studentManagement/studentManagement.vue'
// 业务工作
@@ -162,6 +166,10 @@ 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'
// 进度条
@@ -176,6 +184,8 @@ export default {
attendanceManagement,
negativeList,
rewardsKpi,
bonusPoints,
graduationGuidance,
stuEmergency,
auditSteps,
},
@@ -186,7 +196,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' },
],
@@ -247,13 +259,20 @@ export default {
},
openfdy: false,
deptNameList: [],
roleGroup: '',
}
},
created() {
this.getList()
this.getDeptNameList()
this.getUser()
},
methods: {
getUser() {
getUserProfile().then(response => {
this.roleGroup = response.roleGroup
})
},
getDeptNameList() {
getDeptName().then(res => {
this.deptNameList = res.data

View File

@@ -47,11 +47,20 @@
<el-table v-loading="loading" :data="kpiFillingBusinessWorkList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="学生请假材料分数" align="center" prop="stuLeaveMaterialsScoring" />
<el-table-column label="学生材料填报分数" align="center" prop="stuFillingMaterialsScoring" />
<el-table-column label="学生数据上报分数" align="center" prop="stuBasicDataScoring" />
<el-table-column label="学生违纪处分分数" align="center" prop="stuDisciplinaryViolationScoring" />
<el-table-column label="处理突发事件分数" align="center" prop="handleEventsScoring" />
<el-table-column label="请销假制度分数" align="center" prop="stuLeaveRequestScoring" />
<el-table-column label="学籍异动材料分数" align="center" prop="stuLeaveMaterialsScoring" />
<el-table-column label="评优评先资助分数" align="center" prop="stuFillingMaterialsScoring" />
<el-table-column label="基础数据填报分数" align="center" prop="stuBasicDataScoring" />
<el-table-column label="指导材料填报分数" align="center" prop="stuDisciplinaryViolationScoring" />
<el-table-column label="处理突发事件处理分数" align="center" prop="handleEventsScoring" />
<el-table-column label="工作完成情况评分" align="center" prop="otherTaskScoring" />
<el-table-column label="班级类型" align="center" prop="classType">
<template slot-scope="scope">
<el-tag v-if="scope.row.classType === 'graduate'" type="primary">毕业班</el-tag>
<el-tag v-else-if="scope.row.classType === 'ungraduate'" type="success">非毕业班</el-tag>
<span v-else>{{ scope.row.classType }}</span>
</template>
</el-table-column>
<el-table-column label="填报人名称" align="center" prop="fdyName" />
<el-table-column label="填报年份" align="center" prop="fillingYear">
<template slot-scope="scope">
@@ -65,9 +74,9 @@
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button v-hasPermi="['teacher:kpiFillingBusinessWork:edit']" size="mini" type="text" icon="el-icon-edit"
<!-- <el-button v-hasPermi="['teacher:kpiFillingBusinessWork:edit']" size="mini" type="text" icon="el-icon-edit"
@click="handleUpdate(scope.row)"
>修改</el-button>
>修改</el-button> -->
<el-button v-hasPermi="['teacher:kpiFillingBusinessWork:remove']" size="mini" type="text" icon="el-icon-delete"
@click="handleDelete(scope.row)"
>删除</el-button>
@@ -155,11 +164,13 @@ export default {
queryParams: {
pageNum: 1,
pageSize: 10,
stuLeaveRequestScoring: null,
stuLeaveMaterialsScoring: null,
stuFillingMaterialsScoring: null,
stuBasicDataScoring: null,
stuDisciplinaryViolationScoring: null,
handleEventsScoring: null,
otherTaskScoring: null,
fdyName: null,
fillingYear: null,
fillingMonth: null
@@ -202,11 +213,13 @@ export default {
reset() {
this.form = {
id: null,
stuLeaveRequestScoring: null,
stuLeaveMaterialsScoring: null,
stuFillingMaterialsScoring: null,
stuBasicDataScoring: null,
stuDisciplinaryViolationScoring: null,
handleEventsScoring: null,
otherTaskScoring: null,
fdyName: null,
fillingYear: null,
fillingMonth: null

View File

@@ -82,6 +82,13 @@
<dict-tag :options="dict.type.sys_negative" :value="scope.row.practiceFraud" />
</template>
</el-table-column>
<el-table-column label="班级类型" align="center" prop="classType">
<template slot-scope="scope">
<el-tag v-if="scope.row.classType === 'graduate'" type="primary">毕业班</el-tag>
<el-tag v-else-if="scope.row.classType === 'ungraduate'" type="success">非毕业班</el-tag>
<span v-else>{{ scope.row.classType }}</span>
</template>
</el-table-column>
<el-table-column label="填报人名称" align="center" prop="fdyName" />
<el-table-column label="填报年份" align="center" prop="fillingYear">
<template slot-scope="scope">
@@ -95,9 +102,9 @@
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button v-hasPermi="['teacher:kpiFillingNegativeList:edit']" size="mini" type="text" icon="el-icon-edit"
<!-- <el-button v-hasPermi="['teacher:kpiFillingNegativeList:edit']" size="mini" type="text" icon="el-icon-edit"
@click="handleUpdate(scope.row)"
>修改</el-button>
>修改</el-button> -->
<el-button v-hasPermi="['teacher:kpiFillingNegativeList:remove']" size="mini" type="text" icon="el-icon-delete"
@click="handleDelete(scope.row)"
>删除</el-button>

View File

@@ -54,9 +54,18 @@
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="班会材料分数" align="center" prop="classScoring" />
<el-table-column label="班团干部会议材料分数" align="center" prop="cadreScoring" />
<el-table-column label="学生开展活动材料分数" align="center" prop="stuActivityScoring" />
<el-table-column label="学生开展活动材料分数" align="center" prop="stuActivityScoring" />
<el-table-column label="学生谈话分数" align="center" prop="stuTalkScoring" />
<el-table-column label="每周深入学生宿舍材料分数" align="center" prop="visitDormitoryScoring" />
<el-table-column label="职业测评分数" align="center" prop="edgScoring" />
<el-table-column label="工作完成情况评分" align="center" prop="noticeScoring" />
<el-table-column label="班级类型" align="center" prop="classType">
<template slot-scope="scope">
<el-tag v-if="scope.row.classType === 'graduate'" type="primary">毕业班</el-tag>
<el-tag v-else-if="scope.row.classType === 'ungraduate'" type="success">非毕业班</el-tag>
<span v-else>{{ scope.row.classType }}</span>
</template>
</el-table-column>
<el-table-column label="填报人名称" align="center" prop="fdyName" />
<el-table-column label="学院" align="center" prop="departmentName">
<template slot-scope="scope">
@@ -75,9 +84,9 @@
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button v-hasPermi="['teacher:teacherKpiFillingMgt:edit']" size="mini" type="text" icon="el-icon-edit"
<!-- <el-button v-hasPermi="['teacher:teacherKpiFillingMgt:edit']" size="mini" type="text" icon="el-icon-edit"
@click="handleUpdate(scope.row)"
>修改</el-button>
>修改</el-button> -->
<!-- <el-button size="mini" type="text" icon="el-icon-edit" @click="examineFdy(scope.row)"
v-hasPermi="['teacher:teacherKpiFillingMgt:edit']">查看辅导员自评</el-button> -->
<el-button v-hasPermi="['teacher:teacherKpiFillingMgt:remove']" size="mini" type="text" icon="el-icon-delete"