master
xy 2 years ago
parent bd27faa43a
commit ee0858fde3

@ -5,29 +5,47 @@
<el-form :model="form" size="small">
<el-form-item :label="(type === 1 ? '年中' : '年末') + '绩效等级'">
<el-input :value="type === 1 ? form.middle_achievement : form.end_achievement"
placeholder="绩效等级"
@input="e => {
type === 1 ? form.middle_achievement = e : form.end_achievement = e
}"></el-input>
</el-form-item>
<el-form-item :label="(type === 1 ? '年中' : '年末') + '成效'">
<el-form-item :label="(type === 1 ? '年中' : '年末') + '绩效目标'">
<el-input :value="type === 1 ? form.year_midst : form.year_end"
placeholder="绩效目标"
@input="e => {
type === 1 ? form.year_midst = e : form.year_end = e
}"></el-input>
</el-form-item>
<el-form-item :label="(type === 1 ? '年中' : '年末') + '绩效目标完成情况'">
<el-input :value="type === 1 ? form.middle_result : form.end_result"
placeholder="绩效目标完成情况"
@input="e => {
type === 1 ? form.middle_result = e : form.end_result = e
}"></el-input>
</el-form-item>
<el-form-item :label="(type === 1 ? '年中' : '年末') + '成效(通过绩效评价总结的成效)'">
<el-input :value="type === 1 ? form.middle_effect : form.end_effect"
type="textarea"
placeholder="(请结合项目年度绩效目标进行阐述,需有真实的数据和事实等材料支撑)"
:autosize="{ minRows: 2 }"
@input="e => {
type === 1 ? form.middle_effect = e : form.end_effect = e
}"></el-input>
</el-form-item>
<el-form-item :label="(type === 1 ? '年中' : '年末') + '问题'">
<el-form-item :label="(type === 1 ? '年中' : '年末') + '问题 (按照决策、过程、履职、效益分别归类撰写)'">
<el-input :value="type === 1 ? form.middle_question : form.end_question"
type="textarea"
placeholder="(请结合指标扣分项进行阐述,准确分析问题原因)"
:autosize="{ minRows: 2 }"
@input="e => {
type === 1 ? form.middle_question = e : form.end_question = e
}"></el-input>
</el-form-item>
<el-form-item :label="(type === 1 ? '年中' : '年末') + '整改措施'">
<el-form-item :label="(type === 1 ? '年中' : '年末') + '整改措施(针对存在的问题,分别提出相关整改措施)'">
<el-input :value="type === 1 ? form.middle_measure : form.end_measure"
type="textarea"
placeholder="(针对存在的问题,分别提出相关整改措施)"
:autosize="{ minRows: 2 }"
@input="e => {
type === 1 ? form.middle_measure = e : form.end_measure = e
@ -70,12 +88,16 @@ export default {
middle_effect: "",
middle_question: "",
middle_measure: "",
middle_result: "",
year_midst: "",
year_middle_audit: ""
} : {
end_achievement: "",
end_effect: "",
end_question: "",
end_measure: "",
end_result: "",
year_end: "",
year_end_audit: ""
}
},

@ -23,7 +23,7 @@
clearable
style="width: 300px"
:show-all-levels="false"
v-model="form.pid"
:value="form.pid"
:options="pidFormat"
:props="{ value: 'id', label: 'name', checkStrictly: true }"
@change="pidCascaderHandler"
@ -217,6 +217,9 @@ export default {
}
},
watch: {
pids () {
++this.cascaderId_pid
},
isShow(val) {
if (val) {
if (this.type === "editor") {

@ -8,35 +8,43 @@
<div class="detail-achievement-modal__body">
<table id="detail-achievement-table" ref="detail-achievement-table">
<tr>
<th style="text-align: center;font-weight: 600;line-height: 2;font-size: 17px;" colspan="8">江苏省省级项目预算绩效目标表</th>
<th style="text-align: center;font-weight: 600;line-height: 2;font-size: 17px;" colspan="9">江苏省省级项目预算绩效目标表</th>
</tr>
<tr>
<td style="text-align: center;font-weight: 600;" colspan="8">{{ detail.year }} 年度</td>
<td style="text-align: center;font-weight: 600;" colspan="9">{{ detail.year }} 年度</td>
</tr>
<tr>
<th>单位名称</th>
<td colspan="7">江苏省苏州环境监测中心</td>
<th>{{ type === 1 ? '年中' : '年度' }}绩效目标</th>
<td colspan="8">{{ type === 1 ? detail.year_midst : detail.year_end }}</td>
</tr>
<tr>
<th>主要职能</th>
<td colspan="7">{{ detail.content }}</td>
<th>{{ type === 1 ? '年中' : '年度' }}绩效目标完成情况</th>
<td colspan="8"></td>
</tr>
<tr>
<th>机构设置及人员配置</th>
<td colspan="7"></td>
</tr>
<tr>
<th :rowspan="contractList.length+1">预算安排及支出情况</th>
<td colspan="2">
<!-- <tr>-->
<!-- <th>单位名称</th>-->
<!-- <td colspan="7">江苏省苏州环境监测中心</td>-->
<!-- </tr>-->
<!-- <tr>-->
<!-- <th>主要职能</th>-->
<!-- <td colspan="7">{{ detail.content }}</td>-->
<!-- </tr>-->
<!-- <tr>-->
<!-- <th>机构设置及人员配置</th>-->
<!-- <td colspan="7"></td>-->
<!-- </tr>-->
<!-- <tr>-->
<!-- <th :rowspan="contractList.length+1">预算安排及支出情况</th>-->
<!-- <td colspan="2">-->
</td>
<th colspan="3">
全年预算数
</th>
<th colspan="2">
实际支出数
</th>
</tr>
<!-- </td>-->
<!-- <th colspan="3">-->
<!-- 全年预算数-->
<!-- </th>-->
<!-- <th colspan="2">-->
<!-- 实际支出数-->
<!-- </th>-->
<!-- </tr>-->
<tr v-for="(item, index) in contractList">
<td colspan="2">
{{ item.name }}
@ -52,11 +60,12 @@
<th>一级指标</th>
<th>二级指标</th>
<th>三级指标</th>
<th>{{ type ? '半年' : '全年' }}指标值</th>
<th>分值</th>
<th style="max-width: 30%;">评价要点及评分规则</th>
<th style="min-width: 100px;">{{ type === 1 ? '半年' : '全年' }}指标值</th>
<th>实际完成值</th>
<th>分值</th>
<th>得分</th>
<th style="max-width: 30%;">评价要点及评分规则</th>
<th style="max-width: 24%;">未完成指标原因分析</th>
<th style="width: 46px;" class="no-export-xlsx">附件</th>
</tr>
<tr v-for="(item, index) in planTargetList" :key="item.id">
@ -64,10 +73,11 @@
<td :rowspan="spanArr1[index]" v-if="spanArr1[index]" :style="{ 'display': spanArr1[index] ? '' : 'none' }">{{ (item.target && item.target.target_type2_detail) ? item.target.target_type2_detail.name : '' }}</td>
<td>{{ item.target ? item.target.name : '' }}</td>
<td>{{ targetValue(item) }}</td>
<td>{{ item.score }}</td>
<td style="max-width: 300px;">{{ evaluationMain(item) }}</td>
<td>{{ actResultFormat(item) }}</td>
<td>{{ item.score }}</td>
<td>{{ socre(item) }}</td>
<td style="max-width: 300px;">{{ evaluationMain(item) }}</td>
<td></td>
<td class="no-export-xlsx">
<el-popover
placement="bottom-start"
@ -90,26 +100,26 @@
</td>
</tr>
<tr>
<th colspan="4">合计</th>
<th colspan="5">合计</th>
<td>{{ targetTotal }}</td>
<th colspan="2"></th>
<td>{{ scoreTotal }}</td>
<th colspan="2"></th>
</tr>
<tr>
<th>绩效等级</th>
<td colspan="7">{{ type ? detail.middle_achievement : detail.end_achievement }}</td>
<td colspan="8">{{ type === 1 ? detail.middle_achievement : detail.end_achievement }}</td>
</tr>
<tr>
<th>主要成效</th>
<td colspan="7">{{ type ? detail.middle_effect : detail.end_effect }}</td>
<th>主要成效通过绩效评价总结的成效</th>
<td colspan="8">{{ type === 1 ? detail.middle_effect : detail.end_effect }}</td>
</tr>
<tr>
<th>存在问题</th>
<td colspan="7">{{ type ? detail.middle_question : detail.end_question }}</td>
<th>存在问题按照决策过程履职效益分别归类撰写</th>
<td colspan="8">{{ type === 1 ? detail.middle_question : detail.end_question }}</td>
</tr>
<tr>
<th>整改措施</th>
<td colspan="7">{{ type ? detail.middle_measure : detail.end_measure }}</td>
<th>整改措施针对存在的问题分别提出相关整改措施</th>
<td colspan="8">{{ type === 1 ? detail.middle_measure : detail.end_measure }}</td>
</tr>
</table>
</div>
@ -258,23 +268,23 @@ export default {
if (item.target?.unit_detail?.value !== '无') {
return `${item.target?.symbol_detail?.value}${this.type ? item.target?.half_target : item.target?.year_target}${item.target?.unit_detail?.value}`
} else {
return this.type ? item.target?.half_target : item.target?.year_target
return this.type === 1 ? item.target?.half_target : item.target?.year_target
}
}
},
actResultFormat () {
return function(item) {
return item.plan_evaluates?.find(j => j.plan_target_id === item.id)?.result
return item.plan_evaluates?.find(j => (j.plan_target_id === item.id && j.type === this.type))?.result
}
},
socre () {
return function(item) {
return item.plan_evaluates?.find(j => j.plan_target_id === item.id)?.socre
return item.plan_evaluates?.find(j => (j.plan_target_id === item.id && j.type === this.type))?.socre
}
},
evaluationMain () {
return function(item) {
return item.plan_evaluates?.find(j => j.plan_target_id === item.id)?.evaluation_main
return item.plan_evaluates?.find(j => (j.plan_target_id === item.id && j.type === this.type))?.evaluation_main
}
},
files () {
@ -290,7 +300,7 @@ export default {
},
scoreTotal () {
return this.planTargetList.reduce((pre, cur) => {
return pre + (parseFloat(cur?.plan_evaluates?.find(j => j.plan_target_id === cur.id)?.socre) || 0)
return pre + (parseFloat(cur?.plan_evaluates?.find(j => (j.plan_target_id === cur.id && j.type === this.type))?.socre) || 0)
}, 0).toFixed(2)
}
},

@ -85,7 +85,7 @@
}" />
</div>
<detailAchievements ref="detailAchievements" :type="0"></detailAchievements>
<detailAchievements ref="detailAchievements" :type="2"></detailAchievements>
<examineConfirm ref="examineConfirm" :type="2" @refresh="getBudgets"></examineConfirm>
</div>
</template>

@ -54,7 +54,7 @@
label="操作"
header-align="center"
fixed="right"
width="210"
width="260"
>
<template v-slot:default="scope">
<el-dropdown @command="command => {
@ -68,12 +68,12 @@
$refs['addPlanEvaluate'].show();
}
}">
<Button size="small" type="primary">
绩效目<i class="el-icon-arrow-down el-icon--right"></i>
<Button style="margin-left: 4px;" size="small" type="primary">
填报绩效指<i class="el-icon-arrow-down el-icon--right"></i>
</Button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item command="yearMiddle">年中</el-dropdown-item>
<el-dropdown-item command="yearEnd">年末</el-dropdown-item>
<el-dropdown-item command="yearMiddle">填报年中绩效指标</el-dropdown-item>
<el-dropdown-item command="yearEnd">填报年末绩效指标</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
@ -89,45 +89,41 @@
}
}">
<Button style="margin-left: 4px;" size="small" type="primary">
自评表<i class="el-icon-arrow-down el-icon--right"></i>
填报自评表<i class="el-icon-arrow-down el-icon--right"></i>
</Button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item command="yearMiddle">
<span :style="{'color': scope.row.year_middle_audit < 0 ? 'red' : '' }">填报年中自评表</span>
</el-dropdown-item>
<el-dropdown-item command="yearEnd">
<span :style="{'color': scope.row.year_end_audit < 0 ? 'red' : '' }">填报年末自评表</span>
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
<el-dropdown @command="command => {
if (command === 'yearMiddle') {
detailType = 1;
$refs['detailAchievements'].setPlanId(scope.row.id);
$refs['detailAchievements'].show();
} else {
detailType = 2;
$refs['detailAchievements'].setPlanId(scope.row.id);
$refs['detailAchievements'].show();
}
}">
<Button style="margin-left: 4px;" size="small" type="primary">
查看总览<i class="el-icon-arrow-down el-icon--right"></i>
</Button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item command="yearMiddle">
<span :style="{'color': scope.row.year_middle_audit < 0 ? 'red' : '' }">年中</span>
<span>查看年中总览</span>
</el-dropdown-item>
<el-dropdown-item command="yearEnd">
<span :style="{'color': scope.row.year_end_audit < 0 ? 'red' : '' }">年末</span>
<span>查看年末总览</span>
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
<!-- <Button-->
<!-- size="small"-->
<!-- type="primary"-->
<!-- class="slot-btns-item"-->
<!-- @click="-->
<!-- () => {-->
<!-- $refs['addPlanEvaluate'].type = 1;-->
<!-- $refs['addPlanEvaluate'].setPlanId(scope.row.id);-->
<!-- $refs['addPlanEvaluate'].show();-->
<!-- }-->
<!-- "-->
<!-- >-->
<!-- 年中目标-->
<!-- </Button>-->
<!-- <Button-->
<!-- size="small"-->
<!-- type="primary"-->
<!-- class="slot-btns-item"-->
<!-- @click="-->
<!-- () => {-->
<!-- $refs['addPlanEvaluate'].type = 2;-->
<!-- $refs['addPlanEvaluate'].setPlanId(scope.row.id);-->
<!-- $refs['addPlanEvaluate'].show();-->
<!-- }-->
<!-- "-->
<!-- >-->
<!-- 年末目标-->
<!-- </Button>-->
</template>
</el-table-column>
</template>
@ -150,6 +146,7 @@
<addEvaluate ref="addEvaluate" @refresh="getList"></addEvaluate>
<addPlanEvaluate ref="addPlanEvaluate"></addPlanEvaluate>
<addSelfEvaluationForm ref="addSelfEvaluationForm" @refresh="getList"></addSelfEvaluationForm>
<detailAchievements ref="detailAchievements" :type="detailType"></detailAchievements>
</div>
</template>
@ -162,14 +159,17 @@ import { getparameter } from "@/api/system/dictionary";
import addEvaluate from "@/views/achievements/components/addEvaluate.vue";
import addPlanEvaluate from "@/views/achievements/components/addPlanEvaluate.vue";
import addSelfEvaluationForm from '@/views/achievements/components/addSelfEvaluationForm.vue'
import detailAchievements from '@/views/achievements/components/detailAchievements.vue'
export default {
components: {
detailAchievements,
addEvaluate,
addPlanEvaluate,
addSelfEvaluationForm
},
data() {
return {
detailType: 1,
budgetTypes: [],
select: {
is_auth: 1,

@ -51,7 +51,7 @@
<!-- <Page :total="total" @on-change="" show-elevator show-sizer @on-page-size-change="" />-->
<!-- </div>-->
<addTypes ref="addTypes" :pids="pids" @refresh="getList"></addTypes>
<addTypes ref="addTypes" :pids="list" @refresh="getList"></addTypes>
</div>
</template>

@ -51,6 +51,32 @@
<el-table-column header-align="center" align="left" :width="150" label="操作" >
<template #default="{ row }">
<Button v-if="row.pid === 0" size="small" type="primary" @click="$refs['payPlan'].rowName = row.name,$refs['payPlan'].setId(row.id),$refs['payPlan'].show();"></Button>
<Button
v-if="row.pid == 0"
class="slot-btns-item"
size="small"
type="primary"
@click="
$refs['addPoint'].setPlanPid(row.pid),
$refs['addPoint'].setPlanId(row.id),
$refs['addPoint'].show()
"
>绩效指标</Button
>
<Button
v-if="row.pid == 0"
size="small"
type="primary"
class="slot-btns-item"
@click="
() => {
$refs['addEvaluate'].setId(row.id);
$refs['addEvaluate'].show();
}
"
>
绩效目标
</Button>
</template>
</el-table-column>
</template>
@ -61,6 +87,8 @@
<!-- </div>-->
<payPlan ref="payPlan"></payPlan>
<addPoint ref="addPoint"></addPoint>
<addEvaluate ref="addEvaluate"></addEvaluate>
</div>
</template>
@ -83,8 +111,11 @@
mergeTableRow
} from "@/utils/mergeTableRow"
import payPlan from '@/views/budget/components/payPlan.vue'
import addEvaluate from '@/views/budget/components/addEvaluate.vue'
import addPoint from '@/views/budget/components/addPoint.vue'
export default {
components: {
addPoint, addEvaluate,
payPlan
},
data() {

Loading…
Cancel
Save