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

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

parent 66cdb552
#开发环境 #开发环境
NODE_ENV = "development" NODE_ENV = "development"
# VUE_APP_API_BASE_URL= http://112.19.80.237:11039 # VUE_APP_API_BASE_URL= http://112.19.80.237:11039
# VUE_APP_API_BASE_URL= http://192.168.0.2:17500
VUE_APP_API_BASE_URL= http://192.168.0.98:11039 VUE_APP_API_BASE_URL= http://192.168.0.98:11039
VUE_APP_API_ZWFW_URL= http://112.19.80.237:11031 VUE_APP_API_ZWFW_URL= http://112.19.80.237:11031
VUE_APP_PORTAL_URL = /portal_home VUE_APP_PORTAL_URL = /portal_home
\ No newline at end of file
...@@ -10,6 +10,14 @@ ...@@ -10,6 +10,14 @@
:disabled="isExport" :disabled="isExport"
>导出</el-button >导出</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 <el-button
type="primary" type="primary"
size="mini" size="mini"
...@@ -93,6 +101,25 @@ ...@@ -93,6 +101,25 @@
<el-button @click="cancleFresh">取 消</el-button> <el-button @click="cancleFresh">取 消</el-button>
</div> </div>
</el-dialog> </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> </div>
</template> </template>
...@@ -106,15 +133,137 @@ export default { ...@@ -106,15 +133,137 @@ export default {
dialogShow, dialogShow,
}, },
mixins: [table], mixins: [table],
created() { created() {},
},
methods: { 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() { countDown() {
if (this.percent == 95) { if (this.percent == 95) {
if (this.selection.length > 0) { if (this.selection.length > 0) {
this.query["idList"] = this.selection; this.query["idList"] = this.selection;
} }
if (this.checkList.length > 0) {
this.query["properties"] = this.checkList;
}
this.$download( this.$download(
"/staff/perform/summary/exportExcel", "/staff/perform/summary/exportExcel",
...@@ -317,6 +466,15 @@ export default { ...@@ -317,6 +466,15 @@ export default {
}, },
data() { data() {
return { return {
// 是否展示弹窗
isdialog: false,
// 列表绑定值
checkList: [],
// 设置表头
setcolum: [],
// 表格选中列表
checkTableList: [],
setDialog: false,
endTime: "", endTime: "",
restTime: "15", restTime: "15",
freshDate: "", freshDate: "",
...@@ -332,6 +490,7 @@ export default { ...@@ -332,6 +490,7 @@ export default {
percent: 0, percent: 0,
config: { config: {
isshowTabPane: true, isshowTabPane: true,
showType: "tableSelect",
search: [ search: [
{ {
name: "yearmonth", name: "yearmonth",
...@@ -367,14 +526,21 @@ export default { ...@@ -367,14 +526,21 @@ export default {
}, },
], ],
columns: [ columns: [
{ type: "selection", width: 60, fixed: "left" }, { type: "selection", width: 60, fixed: "left", show: true },
{ type: "index", label: "序号", width: 50, fixed: "left" }, {
type: "index",
label: "序号",
width: 50,
fixed: "left",
show: true,
},
{ {
label: "姓名", label: "姓名",
prop: "staffName", prop: "staffName",
formatter: this.formatter, formatter: this.formatter,
fixed: "left", fixed: "left",
show: true,
}, },
{ {
...@@ -383,46 +549,54 @@ export default { ...@@ -383,46 +549,54 @@ export default {
formatter: this.formatter, formatter: this.formatter,
width: 80, width: 80,
fixed: "left", fixed: "left",
show: true,
}, },
{ {
label: "", label: "",
prop: "year", prop: "year",
formatter: this.formatter, formatter: this.formatter,
fixed: "left", fixed: "left",
show: true,
}, },
{ {
label: "", label: "",
prop: "month", prop: "month",
formatter: this.formatter, formatter: this.formatter,
fixed: "left", fixed: "left",
show: true,
}, },
{ {
label: "手机号", label: "手机号",
prop: "phoneNumber", prop: "phoneNumber",
formatter: this.formatter, formatter: this.formatter,
show: true,
}, },
{ {
label: "所属大厅", label: "所属大厅",
prop: "salaName", prop: "salaName",
formatter: this.formatter, formatter: this.formatter,
show: true,
}, },
{ {
label: "所属部门", label: "所属部门",
prop: "deptName", prop: "deptName",
formatter: this.formatter, formatter: this.formatter,
show: true,
}, },
{ {
label: "所属中心", label: "所属中心",
formatter: (row) => { formatter: (row) => {
return "宜宾市民中心"; return "宜宾市民中心";
}, },
show: true,
}, },
{ {
label: "工作纪律", label: "工作纪律",
prop: "effectScore", prop: "effectScore",
width: 150, width: 150,
show: true,
formatter: (row) => { formatter: (row) => {
return ( return (
row.effectScore - this.tableData.dict.weightPdu.effectWeight row.effectScore - this.tableData.dict.weightPdu.effectWeight
...@@ -461,6 +635,7 @@ export default { ...@@ -461,6 +635,7 @@ export default {
label: "服务规范", label: "服务规范",
prop: "attendScore", prop: "attendScore",
width: 150, width: 150,
show: true,
formatter: (row) => { formatter: (row) => {
return ( return (
row.attendScore - this.tableData.dict.weightPdu.attendWeight row.attendScore - this.tableData.dict.weightPdu.attendWeight
...@@ -499,6 +674,7 @@ export default { ...@@ -499,6 +674,7 @@ export default {
label: `综合管理`, label: `综合管理`,
prop: "complainScore", prop: "complainScore",
width: 150, width: 150,
show: true,
formatter: (row) => { formatter: (row) => {
return ( return (
row.complainScore - this.tableData.dict.weightPdu.selfWeight row.complainScore - this.tableData.dict.weightPdu.selfWeight
...@@ -537,6 +713,7 @@ export default { ...@@ -537,6 +713,7 @@ export default {
label: "群众评议", label: "群众评议",
prop: "reviewScore", prop: "reviewScore",
width: 150, width: 150,
show: true,
formatter: (row) => { formatter: (row) => {
return ( return (
row.reviewScore - this.tableData.dict.weightPdu.reviewWeight row.reviewScore - this.tableData.dict.weightPdu.reviewWeight
...@@ -576,6 +753,7 @@ export default { ...@@ -576,6 +753,7 @@ export default {
label: "工作效能", label: "工作效能",
prop: "goworkScore", prop: "goworkScore",
width: 150, width: 150,
show: true,
formatter: (row) => { formatter: (row) => {
return ( return (
row.goworkScore - this.tableData.dict.weightPdu.goworkWeight row.goworkScore - this.tableData.dict.weightPdu.goworkWeight
...@@ -616,6 +794,7 @@ export default { ...@@ -616,6 +794,7 @@ export default {
prop: "otherScore", prop: "otherScore",
width: 150, width: 150,
formatter: this.formatter, formatter: this.formatter,
show: true,
}, },
// { // {
...@@ -628,6 +807,7 @@ export default { ...@@ -628,6 +807,7 @@ export default {
prop: "totalScore", prop: "totalScore",
sortable: true, sortable: true,
width: 120, width: 120,
show: true,
}, },
{ {
...@@ -641,6 +821,7 @@ export default { ...@@ -641,6 +821,7 @@ export default {
); );
}, },
width: 240, width: 240,
show: true,
}, },
{ {
label: "备注2", label: "备注2",
...@@ -655,11 +836,13 @@ export default { ...@@ -655,11 +836,13 @@ export default {
); );
}, },
width: 240, width: 240,
show: true,
}, },
{ {
label: "政务服务管理科审核等次", label: "政务服务管理科审核等次",
prop: "auditLevel", prop: "auditLevel",
width: 120, width: 120,
show: true,
formatter: (row) => { formatter: (row) => {
const options = [ const options = [
{ {
...@@ -705,6 +888,7 @@ export default { ...@@ -705,6 +888,7 @@ export default {
label: "服务明星推荐", label: "服务明星推荐",
prop: "recommend", prop: "recommend",
width: 120, width: 120,
show: true,
formatter: (row) => { formatter: (row) => {
const options = [ const options = [
{ {
...@@ -734,6 +918,7 @@ export default { ...@@ -734,6 +918,7 @@ export default {
label: "加分", label: "加分",
prop: "addTotalScore", prop: "addTotalScore",
width: 120, width: 120,
show: true,
formatter: (row) => { formatter: (row) => {
return row.addTotalScore || row.addTotalScore == 0 return row.addTotalScore || row.addTotalScore == 0
? row.addTotalScore > 0 ? row.addTotalScore > 0
...@@ -748,11 +933,13 @@ export default { ...@@ -748,11 +933,13 @@ export default {
sortable: true, sortable: true,
width: 120, width: 120,
fixed: "right", fixed: "right",
show: true,
}, },
{ {
label: "操作", label: "操作",
width: 120, width: 120,
fixed: "right", fixed: "right",
show: true,
formatter: (row) => { formatter: (row) => {
return ( return (
<table-buttons <table-buttons
......
...@@ -8,6 +8,7 @@ module.exports = { ...@@ -8,6 +8,7 @@ module.exports = {
hot: true, //自动保存 hot: true, //自动保存
proxy: { proxy: {
"/attendance": { "/attendance": {
// target: "http://192.168.0.2:17500",
target: 'http://192.168.0.98:11039', target: 'http://192.168.0.98:11039',
// target: "http://112.19.80.237:11039", // target: "http://112.19.80.237:11039",
// target: 'http://localhost:17500', // target: 'http://localhost:17500',
......
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