修改考核规则
This commit is contained in:
parent
315812f608
commit
e43175ef76
@ -1,3 +1,3 @@
|
||||
# 包头高新去考核
|
||||
# 20231205调整
|
||||
|
||||
1. 4、5级网格员考核
|
||||
表 **kpi_khxz_wgy_3**、**kpi_khxz_wgy_4** 中的 **X** 字段,默认值原来的 **3** 改为 **0**
|
||||
|
@ -1,11 +1,11 @@
|
||||
<template>
|
||||
<n-form label-placement="left" label-width="auto" :model="form">
|
||||
<n-form-item label="分值*" path="scroe.value">
|
||||
<n-input-number v-model:value="form.score.value" placeholder="输入分值" :max="form.score.maxValue"
|
||||
<n-form-item :label="`${type}*`" path="scroe.value">
|
||||
<n-input-number v-model:value="form.score.value" :placeholder="`输入${type}`" :max="form.score.maxValue"
|
||||
:min="form.score.minValue" :precision="2"/>
|
||||
</n-form-item>
|
||||
<n-form-item label="分值原因*" path="score.reason">
|
||||
<n-input type="textarea" v-model:value="form.score.reason" placeholder="输入分值原因" @keydown.enter.prevent />
|
||||
<n-form-item :label="`${type}原因*`" path="score.reason">
|
||||
<n-input type="textarea" v-model:value="form.score.reason" :placeholder="`输入${type}原因`" @keydown.enter.prevent />
|
||||
</n-form-item>
|
||||
<!--
|
||||
<n-space>
|
||||
@ -66,6 +66,10 @@ export default {
|
||||
maxScore: {
|
||||
required: false,
|
||||
default: 100
|
||||
},
|
||||
type: {
|
||||
required: false,
|
||||
default: '分数'
|
||||
}
|
||||
},
|
||||
data() {
|
||||
@ -88,7 +92,7 @@ export default {
|
||||
value: [
|
||||
{
|
||||
required: true,
|
||||
message: '请输入分值'
|
||||
message: `请输入${this.type}`
|
||||
}
|
||||
],
|
||||
},
|
||||
@ -98,11 +102,11 @@ export default {
|
||||
methods: {
|
||||
onConfirmClick() {
|
||||
if(this.form.score.value === null) {
|
||||
this.message.error('请输入分值')
|
||||
this.message.error(`请输入${this.type}`)
|
||||
return;
|
||||
}
|
||||
if(!this.form.score.reason) {
|
||||
this.message.error('请输入分值原因')
|
||||
this.message.error(`请输入${this.type}原因`)
|
||||
return;
|
||||
}
|
||||
this.$emit('confirm', this.rowKey, this.rowIndex, {
|
||||
|
@ -465,7 +465,28 @@ export default {
|
||||
children: [
|
||||
{
|
||||
align: 'center',
|
||||
title: '人口信息录入',
|
||||
title: '社区基数人口数',
|
||||
key: 'communityBasePopulationCount',
|
||||
keyName: 'communityBasePopulationCount',
|
||||
width: 80,
|
||||
},
|
||||
{
|
||||
align: 'center',
|
||||
title: '社区人口数',
|
||||
key: 'communityPopulationCount',
|
||||
keyName: 'communityPopulationCount',
|
||||
width: 80,
|
||||
},
|
||||
{
|
||||
align: 'center',
|
||||
title: '社区人口录入比例',
|
||||
key: 'communityPopulationRate',
|
||||
keyName: 'communityPopulationRate',
|
||||
width: 80,
|
||||
},
|
||||
{
|
||||
align: 'center',
|
||||
title: '人口信息录入(3)',
|
||||
key: 'W',
|
||||
keyName: 'populationSave',
|
||||
width: 80,
|
||||
@ -481,7 +502,7 @@ export default {
|
||||
},
|
||||
{
|
||||
align: 'center',
|
||||
title: '人口信息质量管理',
|
||||
title: '人口信息质量管理(3)',
|
||||
key: 'X',
|
||||
keyName: 'populationQuality',
|
||||
width: 80,
|
||||
@ -497,7 +518,7 @@ export default {
|
||||
},
|
||||
{
|
||||
align: 'center',
|
||||
title: '人口信息维护',
|
||||
title: '人口信息维护(4)',
|
||||
key: 'Y',
|
||||
keyName: 'populationEdit',
|
||||
width: 80,
|
||||
@ -536,7 +557,7 @@ export default {
|
||||
children: [
|
||||
{
|
||||
align: 'center',
|
||||
title: '党建信息上报',
|
||||
title: '党建信息上报(3)',
|
||||
key: 'AA',
|
||||
keyName: 'partySave',
|
||||
width: 80,
|
||||
@ -552,7 +573,7 @@ export default {
|
||||
},
|
||||
{
|
||||
align: 'center',
|
||||
title: '党建信息质量管理',
|
||||
title: '党建信息质量管理(3)',
|
||||
key: 'AB',
|
||||
keyName: 'partyQuality',
|
||||
width: 80,
|
||||
@ -568,7 +589,7 @@ export default {
|
||||
},
|
||||
{
|
||||
align: 'center',
|
||||
title: '党建信息维护',
|
||||
title: '党建信息维护(4)',
|
||||
key: 'AC',
|
||||
keyName: 'partyEdit',
|
||||
width: 80,
|
||||
@ -1058,10 +1079,18 @@ export default {
|
||||
let totalGridCount = 0;
|
||||
data.forEach((item, index) => {
|
||||
item.A = index + 1;
|
||||
item.F = item.E === 0 ? 0 : (item.D / item.E).toFixed(2);
|
||||
item.F = item.E === 0 ? 0 : parseFloat((item.D / item.E).toFixed(2));
|
||||
item.H = Math.min(item.F * item.G, item.D);
|
||||
item.J = Math.min(item.F * item.I, item.D);
|
||||
item.L = (item.K > 10 ? 10 : item.K) * 0.5;
|
||||
item.Q = item.communityPopulationRate >= 0.75 ? 10 : (item.communityPopulationRate >= 0.6 ? 5 : 0);
|
||||
// 人口信息管理
|
||||
item.W = parseFloat((3 * item.communityPopulationRate).toFixed(2));
|
||||
item.Y = parseFloat((4 * item.communityPopulationRate).toFixed(2));
|
||||
// 党组织建设
|
||||
item.AA = item.communityPopulationRate >= 0.75 ? 3 : (item.communityPopulationRate >= 0.6 ? 1.5 : 0);
|
||||
item.AB = item.communityPopulationRate >= 0.75 ? 3 : (item.communityPopulationRate >= 0.6 ? 1.5 : 0);
|
||||
item.AC = item.communityPopulationRate >= 0.75 ? 4 : (item.communityPopulationRate >= 0.6 ? 2 : 0);
|
||||
item.S = item.R * 0.2;
|
||||
totalGridCount += item.gridCount;
|
||||
})
|
||||
|
@ -45,7 +45,7 @@
|
||||
:show="modal.scoring.show" :show-icon="false" :mask-closable="true" :closable="false"
|
||||
:on-update-show="onScroingCloseClick">
|
||||
<scoring :row-key="modal.scoring.rowKey" :row-index="modal.scoring.rowIndex" :score="modal.scoring.score"
|
||||
:reason="modal.scoring.reason" :min-score="modal.scoring.minScore" :max-score="modal.scoring.maxScore"
|
||||
:reason="modal.scoring.reason" :min-score="modal.scoring.minScore" :max-score="modal.scoring.maxScore" :type="modal.scoring.type"
|
||||
@confirm="onScroingConfimClick" />
|
||||
</n-modal>
|
||||
</template>
|
||||
@ -191,6 +191,14 @@ export default {
|
||||
key: 'F',
|
||||
keyName: 'reward',
|
||||
width: 60,
|
||||
render(row, index) {
|
||||
return h('a', {
|
||||
href: 'javascript:void(0)',
|
||||
onClick() {
|
||||
vueSelf.onRewardClick(row, index);
|
||||
}
|
||||
}, row.F);
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
@ -344,7 +352,7 @@ export default {
|
||||
score: 0,
|
||||
reason: '',
|
||||
minScore: null,
|
||||
maxScore: null
|
||||
maxScore: null,
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -371,6 +379,20 @@ export default {
|
||||
onScroingCloseClick() {
|
||||
this.modal.scoring.show = false;
|
||||
},
|
||||
// 奖励
|
||||
onRewardClick(row, index) {
|
||||
let backTimeout = row.F;
|
||||
this.modal.scoring.show = true;
|
||||
this.modal.scoring.rowKey = 'F';
|
||||
this.modal.scoring.rowIndex = index;
|
||||
this.modal.scoring.score = backTimeout;
|
||||
this.modal.scoring.reason = row.reasonF;
|
||||
this.modal.scoring.maxScore = null;
|
||||
this.modal.scoring.minScore = null;
|
||||
this.modal.scoring.userName = row.B;
|
||||
this.modal.scoring.title = '案件奖励金额设置';
|
||||
this.modal.scoring.type = '金额';
|
||||
},
|
||||
// 未在规定的时限内退单,影响处置时效 -
|
||||
onBackTimeoutClick(row, index) {
|
||||
let backTimeout = row.G;
|
||||
@ -383,6 +405,7 @@ export default {
|
||||
this.modal.scoring.minScore = null;
|
||||
this.modal.scoring.userName = row.B;
|
||||
this.modal.scoring.title = '未在规定的时限内退单,影响处置时效';
|
||||
delete this.modal.scoring.type;
|
||||
},
|
||||
// 自行上报案件未完成办理 -
|
||||
onSelfUnHandleClick(row, index) {
|
||||
@ -395,7 +418,9 @@ export default {
|
||||
this.modal.scoring.maxScore = null;
|
||||
this.modal.scoring.minScore = null;
|
||||
this.modal.scoring.userName = row.B;
|
||||
this.modal.scoring.type = null;
|
||||
this.modal.scoring.title = '自行上报案件未完成办理';
|
||||
delete this.modal.scoring.type;
|
||||
},
|
||||
// 未办理案件造成严重影响 -
|
||||
onUnHandleErrorClick(row, index) {
|
||||
@ -408,7 +433,9 @@ export default {
|
||||
this.modal.scoring.maxScore = null;
|
||||
this.modal.scoring.minScore = null;
|
||||
this.modal.scoring.userName = row.B;
|
||||
this.modal.scoring.type = null;
|
||||
this.modal.scoring.title = '未办理案件造成严重影响';
|
||||
delete this.modal.scoring.type;
|
||||
},
|
||||
// 其它情况 -
|
||||
onOthersClick(row, index) {
|
||||
@ -422,6 +449,7 @@ export default {
|
||||
this.modal.scoring.minScore = null;
|
||||
this.modal.scoring.userName = row.B;
|
||||
this.modal.scoring.title = '其它情况';
|
||||
delete this.modal.scoring.type;
|
||||
},
|
||||
// 处理情况 -
|
||||
onHandleResultClick(row, index) {
|
||||
@ -435,6 +463,7 @@ export default {
|
||||
this.modal.scoring.minScore = null;
|
||||
this.modal.scoring.userName = row.B;
|
||||
this.modal.scoring.title = '处理情况';
|
||||
delete this.modal.scoring.type;
|
||||
},
|
||||
// 督察案件结案情况 -
|
||||
onSuperviseResultClick(row, index) {
|
||||
@ -448,6 +477,7 @@ export default {
|
||||
this.modal.scoring.minScore = null;
|
||||
this.modal.scoring.userName = row.B;
|
||||
this.modal.scoring.title = '督察案件结案情况';
|
||||
delete this.modal.scoring.type;
|
||||
},
|
||||
computeM(row) {
|
||||
return Math.max(row.C - row.G - row.H - row.I - row.J - row.K - row.L, 0);
|
||||
|
@ -40,7 +40,7 @@
|
||||
:show="modal.scoring.show" :show-icon="false" :mask-closable="true" :closable="false"
|
||||
:on-update-show="onScroingCloseClick">
|
||||
<scoring :row-key="modal.scoring.rowKey" :row-index="modal.scoring.rowIndex" :score="modal.scoring.score"
|
||||
:reason="modal.scoring.reason" :min-score="modal.scoring.minScore" :max-score="modal.scoring.maxScore"
|
||||
:reason="modal.scoring.reason" :min-score="modal.scoring.minScore" :max-score="modal.scoring.maxScore" :type="modal.scoring.type"
|
||||
@confirm="onScroingConfimClick" />
|
||||
</n-modal>
|
||||
</template>
|
||||
@ -175,6 +175,14 @@ export default {
|
||||
key: 'F',
|
||||
keyName: 'reward',
|
||||
width: 60,
|
||||
render(row, index) {
|
||||
return h('a', {
|
||||
href: 'javascript:void(0)',
|
||||
onClick() {
|
||||
vueSelf.onRewardClick(row, index);
|
||||
}
|
||||
}, row.F);
|
||||
}
|
||||
},
|
||||
{
|
||||
align: 'center',
|
||||
@ -332,6 +340,20 @@ export default {
|
||||
onScroingCloseClick() {
|
||||
this.modal.scoring.show = false;
|
||||
},
|
||||
// 金额
|
||||
onRewardClick(row, index) {
|
||||
let backTimeout = row.F;
|
||||
this.modal.scoring.show = true;
|
||||
this.modal.scoring.rowKey = 'F';
|
||||
this.modal.scoring.rowIndex = index;
|
||||
this.modal.scoring.score = backTimeout;
|
||||
this.modal.scoring.reason = row.reasonF;
|
||||
this.modal.scoring.maxScore = null;
|
||||
this.modal.scoring.minScore = null;
|
||||
this.modal.scoring.userName = row.B;
|
||||
this.modal.scoring.title = '案件奖励金额设置';
|
||||
this.modal.scoring.type = '金额';
|
||||
},
|
||||
// 未在规定的时限内退单,影响处置时效 -
|
||||
onUnBackErrorClick(row, index) {
|
||||
let unBackError = row.H;
|
||||
@ -344,6 +366,7 @@ export default {
|
||||
this.modal.scoring.minScore = null;
|
||||
this.modal.scoring.userName = row.B;
|
||||
this.modal.scoring.title = '未在规定的时限内退单,影响处置时效';
|
||||
delete this.modal.scoring.type;
|
||||
},
|
||||
// 自行上报案件没完成扣分 -
|
||||
onOthersClick(row, index) {
|
||||
@ -357,6 +380,7 @@ export default {
|
||||
this.modal.scoring.minScore = null;
|
||||
this.modal.scoring.userName = row.B;
|
||||
this.modal.scoring.title = '自行上报案件没完成扣分';
|
||||
delete this.modal.scoring.type;
|
||||
},
|
||||
// 处理情况 -
|
||||
onHandleResultClick(row, index) {
|
||||
@ -370,6 +394,7 @@ export default {
|
||||
this.modal.scoring.minScore = null;
|
||||
this.modal.scoring.userName = row.B;
|
||||
this.modal.scoring.title = '处理情况';
|
||||
delete this.modal.scoring.type;
|
||||
},
|
||||
// 督察案件 -
|
||||
onSuperviseResultClick(row, index) {
|
||||
@ -383,6 +408,7 @@ export default {
|
||||
this.modal.scoring.minScore = null;
|
||||
this.modal.scoring.userName = row.B;
|
||||
this.modal.scoring.title = '督察案件';
|
||||
delete this.modal.scoring.type;
|
||||
},
|
||||
computeL(row) {
|
||||
return Math.max(row.G - row.H - row.J - row.K + row.L + row.M, 0);
|
||||
|
Loading…
Reference in New Issue
Block a user