Commit d6057f55 authored by 王启林's avatar 王启林

parent 55e47410
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
"version": "0.1.0", "version": "0.1.0",
"private": true, "private": true,
"scripts": { "scripts": {
"serve": "set NODE_OPTIONS=--openssl-legacy-provider & vue-cli-service serve",
"dev": "vue-cli-service serve", "dev": "vue-cli-service serve",
"build": "vue-cli-service build", "build": "vue-cli-service build",
"test": "vue-cli-service build --mode test", "test": "vue-cli-service build --mode test",
......
...@@ -125,7 +125,8 @@ const router = new Router({ ...@@ -125,7 +125,8 @@ const router = new Router({
...restBuilder("perform/attend/appeal/files", "perform/attend/appeal/files"), //绩效记录申诉信息附件列表 ...restBuilder("perform/attend/appeal/files", "perform/attend/appeal/files"), //绩效记录申诉信息附件列表
...restBuilder("feedback", "feedback"), //反馈信息 ...restBuilder("feedback", "feedback"), //反馈信息
...restBuilder("feedback/addQuestion", "feedback/addQuestion"), //新增反馈
...restBuilder("feedback/question", "feedback/question"), //反馈问题 ...restBuilder("feedback/question", "feedback/question"), //反馈问题
...restBuilder("feedback/option", "feedback/option"), //反馈选项 ...restBuilder("feedback/option", "feedback/option"), //反馈选项
...restBuilder("feedback/answer", "feedback/answer"), //回答问题 ...restBuilder("feedback/answer", "feedback/answer"), //回答问题
......
<template>
<div class="page">
111
</div>
</template>
<script>
export default {
}
</script>
<style lang="less" scoped>
</style>
\ No newline at end of file
<template> <template>
<div class="page"> <div class="page">
<LayoutTable :data="tableData" :config="tableConfig"> <LayoutTable :data="tableData" notDel notSearch :config="tableConfig">
</LayoutTable> </LayoutTable>
<drawer-show ref="drawerform" @ok="getData" /> <drawer-show ref="drawerform" @ok="getData" />
...@@ -9,106 +9,113 @@ ...@@ -9,106 +9,113 @@
</template> </template>
<script> <script>
/** 表单弹出框模式需引入 */ /** 表单弹出框模式需引入 */
import drawerShow from "./drawershow"; import drawerShow from "./drawershow";
import table from "@/assets/mixins/table"; import table from "@/assets/mixins/table";
export default { export default {
name: "FeedbackList", name: "FeedbackList",
components: { components: {
drawerShow drawerShow
}, },
mixins: [table], mixins: [table],
created() { created() {
}, },
methods: { methods: {
renderTable(tableData) { renderTable(tableData) {
return ( return (
<el-table stripe data={tableData} class="total-table"> <el-table stripe data={tableData} class="total-table">
{this.columnSet.map((item) => this.renderTableColumn(item))} {this.columnSet.map((item) => this.renderTableColumn(item))}
</el-table> </el-table>
); );
}, },
renderTableColumn(options) { renderTableColumn(options) {
return ( return (
<el-table-column <el-table-column
prop={options.prop} prop={options.prop}
label={options.label} label={options.label}
width={options.width} width={options.width}
formatter={options.formatter} formatter={options.formatter}
> >
</el-table-column> </el-table-column>
); );
}, },
/** 重写新增方法 */ /** 重写新增方法 */
toAdd(row) { toAdd(row) {
this.$refs.drawerform.add(row); // this.$refs.drawerform.add(row);
}, this.$router.push("/feedback/addQuestion/list");
/** 重写编辑方法 */
toEdit(row) {
this.$refs.drawerform.edit(row);
},
/** 重写查看方法 */
toView(row) {
this.$refs.drawerform.view(row);
},
}, },
data() { /** 重写编辑方法 */
return { toEdit(row) {
/** 子表列元素 */ this.$refs.drawerform.edit(row);
columnSet:[ },
{label: "反馈问卷id号", prop: "feedbackId", formatter: this.formatter}, /** 重写查看方法 */
{label: "问题内容", prop: "content"}, toView(row) {
{label: "问题类型 ", prop: "questionType",formatter: this.formatter}, this.$refs.drawerform.view(row);
{label: "是否必填", prop: "require",formatter: this.formatter}, },
{label: "备注", prop: "remark"},
},
data() {
return {
/** 子表列元素 */
columnSet: [
{ label: "反馈问卷id号", prop: "feedbackId", formatter: this.formatter },
{ label: "问题内容", prop: "content" },
{ label: "问题类型 ", prop: "questionType", formatter: this.formatter },
{ label: "是否必填", prop: "require", formatter: this.formatter },
{ label: "备注", prop: "remark" },
],
config: {
isshowTabPane: true,
search: [
], ],
config: { columns: [
isshowTabPane:false, { type: "selection", width: 60 },
search: [ { type: "index", label: "序号", width: 50 },
],
columns: [
{type: "selection", width: 60},
{type: "index",label: "序号",width: 50},
{label: "问卷标题", prop: "title"}, { label: "问卷标题", prop: "title" },
{label: "反馈开始时间", prop: "feedbackTimeStart", formatter: this.formatterDate}, { label: "反馈开始时间", prop: "feedbackTimeStart", formatter: this.formatterDate },
{label: "反馈结束时间", prop: "feedbackTimeEnd", formatter: this.formatterDate}, { label: "反馈结束时间", prop: "feedbackTimeEnd", formatter: this.formatterDate },
{label: "邀请人数", prop: "inviteNum",formatter: this.formatter}, { label: "邀请人数", prop: "inviteNum", formatter: this.formatter },
{label: "反馈人数", prop: "feedbackNum",formatter: this.formatter}, { label: "反馈人数", prop: "feedbackNum", formatter: this.formatter },
{label: "创建用户", prop: "createUserId", formatter: this.formatter}, { label: "创建用户", prop: "createUserId", formatter: this.formatter },
{label: "绩效反馈问题", {
width: 120, label: "绩效反馈问题",
prop: "subColumns", width: 120,
formatter: (row) => { prop: "subColumns",
let widthsize = this.columnSet.reduce((pre, cur) => { formatter: (row) => {
return pre + Number(cur.width); let widthsize = this.columnSet.reduce((pre, cur) => {
}, 50); return pre + Number(cur.width);
return ( }, 50);
<el-popover placement="right" width={widthsize} trigger="click"> return (
{this.renderTable(row.feedbackQuestionList)} <el-popover placement="right" width={widthsize} trigger="click">
<el-button type="text" slot="reference">详细</el-button> {this.renderTable(row.feedbackQuestionList)}
</el-popover> <el-button type="text" slot="reference">详细</el-button>
); </el-popover>
}, );
}, },
{ },
label: "操作", {
width: 240, label: "操作",
formatter: row => { width: 240,
return ( formatter: row => {
<table-buttons noAdd row={row} onEdit={this.toEdit} onView={this.toView} onDel={this.toDel} /> return (
<table-buttons noAdd row={row} onEdit={this.toEdit} onView={this.toView} onDel={this.toDel} />
); );
}
} }
] }
} ]
}; }
} };
}; }
};
</script> </script>
<style lang="less" scoped>
/deep/ .buttons {
margin-bottom: 10px;
}
</style>
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