<template> <div> <div class="rule-row"> <div class="rule-title"> <div class="title">规则说明:</div> </div> <div class="rule-content"> <div class="content">值班长得分 = 按时立案分数 + 按时结案分 + 受理员平均分</div> <div class="content">按时立案分数 = 按时立案数/立案数 * 100 * 按时立案因子</div> <div class="content">按时结案分数 = 按时结案数/结案数 * 100 * 按时结案因子</div> <div class="content">团队分数 = 所有受理员平均分 * 100 * 团队分因子</div> </div> </div> <div class="rule-row"> <div class="rule-title"> <div class="title">考核因子:</div> </div> <div class="rule-content"> <el-row> <span class="sub-title">按时立案因子</span> <el-input v-model="accessRule.registerOntimeMonitor" size="small" class="sub-input"> <template slot="append">%</template> </el-input> <el-button type="text" class="submit-button" @click="updateAccessFactor()">修改</el-button> </el-row> <el-row> <span class="sub-title">按时结案因子</span> <el-input v-model="accessRule.closeOntime" size="small" class="sub-input"> <template slot="append">%</template> </el-input> <el-button type="text" class="submit-button" @click="updateAccessFactor()">修改</el-button> </el-row> <el-row> <span class="sub-title">团队分因子</span> <el-input v-model="accessRule.teamMark" size="small" class="sub-input"> <template slot="append">%</template> </el-input> <el-button type="text" class="submit-button" @click="updateAccessFactor()">修改</el-button> </el-row> </div> </div> </div> </template> <script> import { getAssessFactor, updateAssessFactor } from '@/api/assess/assessRule' import { validateIntPlus } from '@/utils/validate' export default { name: 'AssessRuleMonitor', data() { return { role: '', accessRule: { id: '', // id shouldReport: '', // 监督员,要求上报数 checkFactor: '', // 监督员,核查因子 verify: '', // 监督员,核实因子 registerOntimeReceiver: '', // 受理员,按时立案因子 disVerifyOntime: '', // 受理员,按时发送核实因子 disCheckOntime: '', // 受理员 按时发送核查因子 registerOntimeMonitor: '', // 值班长,按时立案因子 closeOntime: '', // 值班长,按时结案因子 teamMark: '', // 值班长,团队分因子 disOntime: '', // 派遣员,按时派遣因子 disExact: '', // 派遣员,准确派遣因子 processAuditOntime: '', // 派遣员,按时处理审核因子 adjustOntime: '' // 派遣员,按时调整因子 } } }, created() { this.fetchData() }, methods: { // 获取考核规则 fetchData() { getAssessFactor().then(response => { this.accessRule = response.data }) }, // 更新考核规则 updateAccessFactor() { debugger if (this.validateData()) { updateAssessFactor(this.accessRule).then(response => { if (response.code === 200) { this.$message.success('修改成功') } }) } }, validateData() { if (!validateIntPlus('' + this.accessRule.registerOntimeMonitor, 0, 100)) { this.$message.error('按时立案因子的允许填写范围为0到100') return false } if (!validateIntPlus('' + this.accessRule.closeOntime, 0, 100)) { this.$message.error('按时结案因子的允许填写范围为0到100') return false } if (!validateIntPlus('' + this.accessRule.teamMark, 0, 100)) { this.$message.error('团队分因子的允许填写范围为0到100') return false } return true } } } </script> <style lang="scss" scoped> .title { font-size: 16px; padding-top: 10px; font-weight: bolder; } .sub-title{ padding: 10px; font-size: 16px; font-weight: bolder; width: 150px; display: inline-block; } .sub-input{ width: 120px; } .content{ font-size: 16px; padding: 10px; } .submit-button{ margin-left: 10px; } .rule-row { display: flex; } .rule-title { width: 20%; text-align: end; } .rule-content { width: 80%; } /deep/ input.el-input__inner { color: red; font-size: 16px; } </style>