Commit ce7eb41b authored by 姬鋆屾's avatar 姬鋆屾

pref:人员绩效汇总一张表添加导出表格筛选

parent e56a046c
......@@ -10,7 +10,14 @@
:disabled="isExport"
>导出</el-button
>
<el-button
slot="table-head-left2"
style="margin-left: 10px"
icon="el-icon-tickets"
size="mini"
@click="setdialog(1)"
>导出表格设置</el-button
>
<el-button
type="primary"
size="mini"
......@@ -95,6 +102,25 @@
<el-button @click="cancleFresh">取 消</el-button>
</div>
</el-dialog>
<!-- 导出表格设置 -->
<el-dialog :visible.sync="isdialog" title="导出表格设置">
<div class="tipsword">
请选择表格展示字段,导出的表格中的内容选中的字段将保持一致。
</div>
<el-checkbox-group v-model="checkList">
<el-checkbox
v-for="(item, index) in setcolum"
:key="index"
:label="item.prop"
>
{{ item.label }}
</el-checkbox>
</el-checkbox-group>
<div class="mt20" style="text-align: right">
<el-button @click="handleCancel(1)">取消</el-button>
<el-button type="primary" @click="handleSubmit(1)">确定</el-button>
</div>
</el-dialog>
</div>
</template>
......@@ -113,11 +139,133 @@ export default {
created() {},
methods: {
// 表格设置弹窗取消操作
handleCancel(i) {
if (i == 1) {
this.checkList = [];
this.isdialog = false;
} else {
this.setDialog = false;
}
},
// 表格设置提交操作
handleSubmit(i) {
if (i == 1) {
this.doExport();
this.isdialog = false;
} else {
this.config.columns.forEach((v) => {
v.prop && v.label ? (v.show = false) : (v.show = true);
this.checkTableList.forEach((val) => {
if (v.prop == val) {
v.show = true;
}
});
});
this.$forceUpdate(this.config.columns);
this.setDialog = false;
}
},
//表格设置弹窗
setdialog(i) {
if (i == 1) {
this.setcolum = this.config.columns.filter(
(item) => item.label && item.prop
);
this.setcolum.forEach((v) => {
v.prop == "attendScore"
? (v.label = `服务规范${
"(考勤绩效/" +
this.tableData.dict.weightPdu.attendWeight +
"分)"
}`)
: v.prop == "reviewScore"
? (v.label = `群众评议${
"(评价绩效/" +
this.tableData.dict.weightPdu.reviewWeight +
"分)"
}`)
: v.prop == "goworkScore"
? (v.label = `工作效能${
"(办件绩效/" +
this.tableData.dict.weightPdu.goworkWeight +
"分)"
}`)
: v.prop == "effectScore"
? (v.label = `工作纪律${
"(效能绩效/" +
this.tableData.dict.weightPdu.effectWeight +
"分)"
}`)
: v.prop == "complainScore"
? (v.label = `综合管理${
"(自评绩效 *" +
this.tableData.dict.weightPdu.selfWeight +
"%)"
}`)
: v.prop == "otherScore"
? (v.label = `其他绩效${"(其他绩效)"}`)
: "";
});
this.isdialog = true;
} else {
this.setDialog = true;
this.setcolum = this.config.columns.filter(
(item) => item.label && item.prop
);
this.setcolum.forEach((v) => {
v.prop == "attendScore"
? (v.label = `服务规范${
"(考勤绩效/" +
this.tableData.dict.weightPdu.attendWeight +
"分)"
}`)
: v.prop == "reviewScore"
? (v.label = `群众评议${
"(评价绩效/" +
this.tableData.dict.weightPdu.reviewWeight +
"分)"
}`)
: v.prop == "goworkScore"
? (v.label = `工作效能${
"(办件绩效/" +
this.tableData.dict.weightPdu.goworkWeight +
"分)"
}`)
: v.prop == "effectScore"
? (v.label = `工作纪律${
"(效能绩效/" +
this.tableData.dict.weightPdu.effectWeight +
"分)"
}`)
: v.prop == "complainScore"
? (v.label = `综合管理${
"(自评绩效 *" +
this.tableData.dict.weightPdu.selfWeight +
"%)"
}`)
: v.prop == "otherScore"
? (v.label = `其他绩效${"(其他绩效)"}`)
: "";
});
this.checkTableList = this.config.columns
.map((item) => {
if (item.show && item.prop) {
return item.prop;
}
})
.filter((v) => v);
}
},
countDown() {
if (this.percent == 95) {
if (this.selection.length > 0) {
this.query["idList"] = this.selection;
}
if (this.checkList.length > 0) {
this.query["properties"] = this.checkList;
}
this.$download(
"/staff/perform/summary/edit/exportExcel",
......@@ -325,6 +473,15 @@ export default {
},
data() {
return {
// 是否展示弹窗
isdialog: false,
// 列表绑定值
checkList: [],
// 设置表头
setcolum: [],
// 表格选中列表
checkTableList: [],
setDialog: false,
endTime: "",
restTime: "15",
freshDate: "",
......@@ -339,6 +496,7 @@ export default {
progress: false,
percent: 0,
config: {
showType: "tableSelect",
isshowTabPane: true,
search: [
{
......@@ -375,14 +533,21 @@ export default {
},
],
columns: [
{ type: "selection", width: 60, fixed: "left" },
{ type: "index", label: "序号", width: 50, fixed: "left" },
{ type: "selection", width: 60, fixed: "left", show: true },
{
type: "index",
label: "序号",
width: 50,
fixed: "left",
show: true,
},
{
label: "姓名",
prop: "staffName",
formatter: this.formatter,
fixed: "left",
show: true,
},
{
......@@ -391,41 +556,48 @@ export default {
formatter: this.formatter,
width: 80,
fixed: "left",
show: true,
},
{
label: "",
prop: "year",
formatter: this.formatter,
fixed: "left",
show: true,
},
{
label: "",
prop: "month",
formatter: this.formatter,
fixed: "left",
show: true,
},
{
label: "手机号",
prop: "phoneNumber",
formatter: this.formatter,
show: true,
},
{
label: "所属大厅",
prop: "salaName",
formatter: this.formatter,
show: true,
},
{
label: "所属部门",
prop: "deptName",
formatter: this.formatter,
show: true,
},
{
label: "所属中心",
formatter: (row) => {
return "宜宾市民中心";
},
show: true,
},
{
label: "工作纪律",
......@@ -441,6 +613,7 @@ export default {
></el-input>
);
},
show: true,
},
{
label: "服务规范",
......@@ -456,6 +629,7 @@ export default {
></el-input>
);
},
show: true,
},
{
label: `综合管理`,
......@@ -471,6 +645,7 @@ export default {
></el-input>
);
},
show: true,
},
{
label: "群众评议",
......@@ -486,6 +661,7 @@ export default {
></el-input>
);
},
show: true,
},
{
......@@ -502,6 +678,7 @@ export default {
></el-input>
);
},
show: true,
},
{
......@@ -518,6 +695,7 @@ export default {
></el-input>
);
},
show: true,
},
// {
......@@ -530,6 +708,7 @@ export default {
prop: "totalScore",
sortable: true,
width: 120,
show: true,
},
{
......@@ -543,6 +722,7 @@ export default {
);
},
width: 240,
show: true,
},
{
label: "备注2",
......@@ -557,11 +737,13 @@ export default {
);
},
width: 240,
show: true,
},
{
label: "政务服务管理科审核等次",
prop: "auditLevel",
width: 120,
show: true,
formatter: (row) => {
const options = [
{
......@@ -607,6 +789,7 @@ export default {
label: "服务明星推荐",
prop: "recommend",
width: 120,
show: true,
formatter: (row) => {
const options = [
{
......@@ -643,6 +826,7 @@ export default {
: row.addTotalScore
: 0;
},
show: true,
},
{
label: "本月得分",
......@@ -650,10 +834,12 @@ export default {
sortable: true,
width: 120,
fixed: "right",
show: true,
},
{
label: "操作",
width: 120,
show: true,
fixed: "right",
formatter: (row) => {
return (
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment