| 1 |
- {"remainingRequest":"D:\\front\\item\\zyAdmin\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\front\\item\\zyAdmin\\src\\pages\\setting\\storeService\\feedback.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\front\\item\\zyAdmin\\src\\pages\\setting\\storeService\\feedback.vue","mtime":1761614939059},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1761614927801},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\babel-loader\\lib\\index.js","mtime":1761614927320},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1761614927801},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\vue-loader\\lib\\index.js","mtime":1761614937402}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:DQppbXBvcnQgeyBrZWZ1RmVlZEJhY2ssIGtlZnVGZWVkQmFja0VkaXQgfSBmcm9tICdAL2FwaS9zZXR0aW5nJzsNCmltcG9ydCB7IG1hcFN0YXRlIH0gZnJvbSAndnVleCc7DQpleHBvcnQgZGVmYXVsdCB7DQogIG5hbWU6ICdmZWVkYmFjaycsDQogIGRhdGEoKSB7DQogICAgcmV0dXJuIHsNCiAgICAgIGxvYWRpbmc6IGZhbHNlLA0KICAgICAgbGlzdDogW10sDQogICAgICBwYWdlOiAxLA0KICAgICAgbGltaXQ6IDE1LA0KICAgICAgZm9ybVZhbGlkYXRlOiB7DQogICAgICAgIHRpbWU6ICcnLA0KICAgICAgICB0aXRsZTogJycsDQogICAgICB9LA0KICAgICAgcGlja2VyT3B0aW9uczogdGhpcy4kdGltZU9wdGlvbnMsDQogICAgICB0aW1lVmFsOiBbXSwNCiAgICAgIHRvdGFsOiAwLA0KICAgIH07DQogIH0sDQogIGNvbXB1dGVkOiB7DQogICAgLi4ubWFwU3RhdGUoJ21lZGlhJywgWydpc01vYmlsZSddKSwNCiAgICBsYWJlbFdpZHRoKCkgew0KICAgICAgcmV0dXJuIHRoaXMuaXNNb2JpbGUgPyB1bmRlZmluZWQgOiAnODBweCc7DQogICAgfSwNCiAgICBsYWJlbFBvc2l0aW9uKCkgew0KICAgICAgcmV0dXJuIHRoaXMuaXNNb2JpbGUgPyAndG9wJyA6ICdyaWdodCc7DQogICAgfSwNCiAgfSwNCiAgY3JlYXRlZCgpIHsNCiAgICB0aGlzLmdldExpc3QoKTsNCiAgfSwNCiAgbWV0aG9kczogew0KICAgIC8v5aSH5rOo77ybDQogICAgcmVtYXJrcyhpZCkgew0KICAgICAgdGhpcy4kbW9kYWxGb3JtKGtlZnVGZWVkQmFja0VkaXQoaWQpKS50aGVuKCgpID0+IHRoaXMuZ2V0TGlzdCgpKTsNCiAgICB9LA0KICAgIC8vIOmAieaLqQ0KICAgIHNlbENoYW5nZSgpIHsNCiAgICAgIHRoaXMucGFnZSA9IDE7DQogICAgICB0aGlzLmdldExpc3QoKTsNCiAgICB9LA0KICAgIC8vIOmAieaLqeaXtumXtA0KICAgIHNlbGVjdENoYW5nZSh0YWIpIHsNCiAgICAgIHRoaXMuZm9ybVZhbGlkYXRlLnRpbWUgPSB0YWI7DQogICAgICB0aGlzLnRpbWVWYWwgPSBbXTsNCiAgICAgIHRoaXMucGFnZSA9IDE7DQogICAgICB0aGlzLmdldExpc3QoKTsNCiAgICB9LA0KICAgIC8vIOWFt+S9k+aXpeacnw0KICAgIG9uY2hhbmdlVGltZShlKSB7DQogICAgICB0aGlzLnRpbWVWYWwgPSBlOw0KICAgICAgdGhpcy5mb3JtVmFsaWRhdGUudGltZSA9IHRoaXMudGltZVZhbCA/IHRoaXMudGltZVZhbC5qb2luKCctJykgOiAnJzsNCiAgICAgIHRoaXMucGFnZSA9IDE7DQogICAgICB0aGlzLmdldExpc3QoKTsNCiAgICB9LA0KICAgIGdldExpc3QoKSB7DQogICAgICBrZWZ1RmVlZEJhY2soew0KICAgICAgICBwYWdlOiB0aGlzLnBhZ2UsDQogICAgICAgIGxpbWl0OiB0aGlzLmxpbWl0LA0KICAgICAgICB0aW1lOiB0aGlzLmZvcm1WYWxpZGF0ZS50aW1lLA0KICAgICAgICB0aXRsZTogdGhpcy5mb3JtVmFsaWRhdGUudGl0bGUsDQogICAgICB9KS50aGVuKChyZXMpID0+IHsNCiAgICAgICAgdGhpcy5saXN0ID0gcmVzLmRhdGEuZGF0YTsNCiAgICAgICAgdGhpcy50b3RhbCA9IHJlcy5kYXRhLmNvdW50Ow0KICAgICAgfSk7DQogICAgfSwNCiAgICAvLyDliKDpmaQNCiAgICBkZWwocm93LCB0aXQsIG51bSkgew0KICAgICAgbGV0IGRlbGZyb21EYXRhID0gew0KICAgICAgICB0aXRsZTogdGl0LA0KICAgICAgICBudW06IG51bSwNCiAgICAgICAgdXJsOiBgL2FwcC9mZWVkYmFjay8ke3Jvdy5pZH1gLA0KICAgICAgICBtZXRob2Q6ICdERUxFVEUnLA0KICAgICAgICBpZHM6ICcnLA0KICAgICAgfTsNCiAgICAgIHRoaXMuJG1vZGFsU3VyZShkZWxmcm9tRGF0YSkNCiAgICAgICAgLnRoZW4oKHJlcykgPT4gew0KICAgICAgICAgIHRoaXMuJG1lc3NhZ2Uuc3VjY2VzcyhyZXMubXNnKTsNCiAgICAgICAgICB0aGlzLmxpc3Quc3BsaWNlKG51bSwgMSk7DQogICAgICAgIH0pDQogICAgICAgIC5jYXRjaCgocmVzKSA9PiB7DQogICAgICAgICAgdGhpcy4kbWVzc2FnZS5lcnJvcihyZXMubXNnKTsNCiAgICAgICAgfSk7DQogICAgfSwNCiAgfSwNCn07DQo="},{"version":3,"sources":["feedback.vue"],"names":[],"mappings":";AA2FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"feedback.vue","sourceRoot":"src/pages/setting/storeService","sourcesContent":["<template>\r\n <div>\r\n <el-card :bordered=\"false\" shadow=\"never\" class=\"ivu-mt\" :body-style=\"{ padding: 0 }\">\r\n <div class=\"padding-add\">\r\n <el-form\r\n ref=\"formValidate\"\r\n :model=\"formValidate\"\r\n :label-width=\"labelWidth\"\r\n :label-position=\"labelPosition\"\r\n class=\"tabform\"\r\n @submit.native.prevent\r\n inline\r\n >\r\n <el-form-item label=\"留言时间:\">\r\n <el-date-picker\r\n clearable\r\n v-model=\"timeVal\"\r\n type=\"daterange\"\r\n :editable=\"false\"\r\n @change=\"onchangeTime\"\r\n format=\"yyyy/MM/dd\"\r\n value-format=\"yyyy/MM/dd\"\r\n start-placeholder=\"开始日期\"\r\n end-placeholder=\"结束日期\"\r\n :picker-options=\"pickerOptions\"\r\n style=\"width: 250px\"\r\n class=\"mr20\"\r\n ></el-date-picker>\r\n </el-form-item>\r\n <el-form-item label=\"留言信息:\">\r\n <el-input\r\n clearable\r\n placeholder=\"请输入用户昵称/电话/留言内容搜索\"\r\n v-model=\"formValidate.title\"\r\n class=\"form_content_width\"\r\n />\r\n </el-form-item>\r\n <el-form-item>\r\n <el-button type=\"primary\" v-db-click @click=\"selChange\">查询</el-button>\r\n </el-form-item>\r\n </el-form>\r\n </div>\r\n </el-card>\r\n <el-card :bordered=\"false\" shadow=\"never\" class=\"ivu-mt mt16\">\r\n <el-table :data=\"list\" v-loading=\"loading\" no-userFrom-text=\"暂无数据\" no-filtered-userFrom-text=\"暂无筛选结果\">\r\n <el-table-column label=\"ID\" width=\"80\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.id }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"昵称\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.rela_name }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"电话\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.phone }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"内容\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.content }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"状态\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <div>{{ scope.row.status === 1 ? '已处理' : '未处理' }}</div>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"时间\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.add_time }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"操作\" fixed=\"right\" width=\"170\">\r\n <template slot-scope=\"scope\">\r\n <a v-db-click @click=\"remarks(scope.row.id)\">{{ scope.row.status === 1 ? '备注' : '处理' }}</a>\r\n <el-divider direction=\"vertical\"></el-divider>\r\n <a v-db-click @click=\"del(scope.row, '删除反馈', scope.$index)\">删除</a>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n <div class=\"acea-row row-right page\">\r\n <pagination v-if=\"total\" :total=\"total\" :page.sync=\"page\" :limit.sync=\"limit\" @pagination=\"getList\" />\r\n </div>\r\n </el-card>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { kefuFeedBack, kefuFeedBackEdit } from '@/api/setting';\r\nimport { mapState } from 'vuex';\r\nexport default {\r\n name: 'feedback',\r\n data() {\r\n return {\r\n loading: false,\r\n list: [],\r\n page: 1,\r\n limit: 15,\r\n formValidate: {\r\n time: '',\r\n title: '',\r\n },\r\n pickerOptions: this.$timeOptions,\r\n timeVal: [],\r\n total: 0,\r\n };\r\n },\r\n computed: {\r\n ...mapState('media', ['isMobile']),\r\n labelWidth() {\r\n return this.isMobile ? undefined : '80px';\r\n },\r\n labelPosition() {\r\n return this.isMobile ? 'top' : 'right';\r\n },\r\n },\r\n created() {\r\n this.getList();\r\n },\r\n methods: {\r\n //备注;\r\n remarks(id) {\r\n this.$modalForm(kefuFeedBackEdit(id)).then(() => this.getList());\r\n },\r\n // 选择\r\n selChange() {\r\n this.page = 1;\r\n this.getList();\r\n },\r\n // 选择时间\r\n selectChange(tab) {\r\n this.formValidate.time = tab;\r\n this.timeVal = [];\r\n this.page = 1;\r\n this.getList();\r\n },\r\n // 具体日期\r\n onchangeTime(e) {\r\n this.timeVal = e;\r\n this.formValidate.time = this.timeVal ? this.timeVal.join('-') : '';\r\n this.page = 1;\r\n this.getList();\r\n },\r\n getList() {\r\n kefuFeedBack({\r\n page: this.page,\r\n limit: this.limit,\r\n time: this.formValidate.time,\r\n title: this.formValidate.title,\r\n }).then((res) => {\r\n this.list = res.data.data;\r\n this.total = res.data.count;\r\n });\r\n },\r\n // 删除\r\n del(row, tit, num) {\r\n let delfromData = {\r\n title: tit,\r\n num: num,\r\n url: `/app/feedback/${row.id}`,\r\n method: 'DELETE',\r\n ids: '',\r\n };\r\n this.$modalSure(delfromData)\r\n .then((res) => {\r\n this.$message.success(res.msg);\r\n this.list.splice(num, 1);\r\n })\r\n .catch((res) => {\r\n this.$message.error(res.msg);\r\n });\r\n },\r\n },\r\n};\r\n</script>\r\n\r\n<style scoped></style>\r\n"]}]}
|