ce7397fdf6284e17db84cfc7fac7a397.json 14 KB

1
  1. {"remainingRequest":"E:\\boman-framwork\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!E:\\boman-framwork\\ruoyi-ui\\src\\views\\system\\surface\\index.vue?vue&type=style&index=0&lang=scss&","dependencies":[{"path":"E:\\boman-framwork\\ruoyi-ui\\src\\views\\system\\surface\\index.vue","mtime":1620609974934},{"path":"E:\\boman-framwork\\ruoyi-ui\\node_modules\\css-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\boman-framwork\\ruoyi-ui\\node_modules\\vue-loader\\lib\\loaders\\stylePostLoader.js","mtime":499162500000},{"path":"E:\\boman-framwork\\ruoyi-ui\\node_modules\\postcss-loader\\src\\index.js","mtime":499162500000},{"path":"E:\\boman-framwork\\ruoyi-ui\\node_modules\\sass-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\boman-framwork\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\boman-framwork\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgouaW1nX2ljb24gewogIHdpZHRoOiAxMjBweDsKICBoZWlnaHQ6IDEyMHB4OwogIGN1cnNvcjogcG9pbnRlcjsKICBvYmplY3QtZml0OiBjb3ZlcjsKfQoKLnRhYmxlX2hlYWRlciB7CiAgLmVsLWRpdmlkZXItLWhvcml6b250YWwgewogICAgbWFyZ2luLXRvcDogMTZweDsKICB9CgogIC50YWJsZV9oZWFkZXJCdHVuIHsKICAgIG1hcmdpbi1ib3R0b206IDIwcHg7CiAgfQp9CgoudGFibGVfbmF2IHsKICAuZWwtY29sbGFwc2UtaXRlbV9fd3JhcCB7CiAgICBib3JkZXItYm90dG9tOiAwOwogIH0KCiAgLmVsLWNvbGxhcHNlLWl0ZW1fX2hlYWRlciB7CiAgICBib3JkZXItYm90dG9tOiAwOwogICAgZm9udC1zaXplOiAxNXB4OwogICAgZm9udC1mYW1pbHk6IFBpbmdGYW5nIFNDOwogICAgZm9udC13ZWlnaHQ6IGJvbGQ7CiAgICBjb2xvcjogIzNDOERCQzsKICAgIGxpbmUtaGVpZ2h0OiAzNnB4OwogIH0KCiAgLy8gLmVsLWZvcm0taXRlbV9fY29udGVudCB7CiAgLy8gICB3aWR0aDogNTUlOwogIC8vIH0KCiAgLmVsLWNvbGxhcHNlIHsKICAgIGJvcmRlci10b3A6IDA7CgogIH0KfQo="},{"version":3,"sources":["index.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiTA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA","file":"index.vue","sourceRoot":"src/views/system/surface","sourcesContent":["<template>\r\n <div class=\"table_total\">\r\n <div class=\"table_header\">\r\n <!-- <p>单表</p>\r\n <el-divider></el-divider> -->\r\n <div class=\"table_headerBtun\" v-if=\"queryData.buttonList\">\r\n <el-button type=\"primary\" plain @click=\"headerBtn(item)\" size=\"small\" v-for=\"(item,index) in queryData.buttonList.split('').filter((res) => {return res!='S'})\"\r\n :key=\"index\">{{item | btnConversion}}</el-button>\r\n </div>\r\n <el-form :model=\"queryParams\" ref=\"queryForm\" :inline=\"true\" v-show=\"showSearch\">\r\n <dynamic-forms :type=\"1\" :ref=\"item.columnName\" :config=\"queryParams\" @inputs=\"changeFn\" :formConfig=\"item\"\r\n v-for=\"(item,index) in queryData.queryList\" :key='index' />\r\n <el-form-item>\r\n <el-button type=\"primary\" icon=\"el-icon-search\" size=\"mini\" @click=\"handleQuery\">搜索</el-button>\r\n <el-button icon=\"el-icon-refresh\" size=\"mini\" @click=\"resetQuery\">重置</el-button>\r\n </el-form-item>\r\n </el-form>\r\n </div>\r\n <!-- 内容 -->\r\n <div class=\"table_nav\">\r\n <el-table v-loading=\"loading\" :data=\"postList\" @selection-change=\"handleSelectionChange\">\r\n <el-table-column type=\"selection\" width=\"55\" style=\"color: red;\" align=\"center\" />\r\n <template v-for=\"(item, index) in tabData\">\r\n <el-table-column :label=\"item.columnComment\" align=\"center\" :prop=\"item.columnName\" :key=\"index\" >\r\n <template slot-scope=\"scope\">\n <img class=\"img_icon\" v-if=\"item.htmlType=='imageUpload' && scope.row[scope.column.property]\" @click=\"imgBtn(JSON.parse(scope.row[scope.column.property])[0].url)\"\r\n :src=\"JSON.parse(scope.row[scope.column.property])[0].url\" alt=\"\">\r\n <!-- :style=\"scope.row.list_class\" scope.row[scope.column.property] -->\n <span :style=\"scope.row.list_class\" v-else-if=\"item.columnName == 'status' \" >{{ scope.row[scope.column.property] }}</span>\n <span v-else>{{ scope.row[scope.column.property] }}</span>\r\n </template>\r\n </el-table-column>\r\n </template>\r\n </el-table>\r\n <pagination v-show=\"total>0\" :total=\"total\" :page.sync=\"queryParams.pageNo\" :limit.sync=\"queryParams.pageSize\"\r\n @pagination=\"getList\" />\r\n </div>\r\n <BigPicture ref=\"BigPicture\" :urls=\"pir_imgs\"></BigPicture>\r\n </div>\r\n</template>\r\n\r\n<script>\r\n import {\r\n tableQuery,\r\n getQueryList,\r\n addbjectSave,\r\n getByTableName,\r\n delMenu,\r\n getObject\r\n } from '@/api/system/table.js'\r\n import {\r\n mapGetters,\r\n mapState\r\n } from \"vuex\";\r\n export default {\r\n name: \"index\",\r\n data() {\r\n return {\r\n pir_imgs: '', // 图片链接\n // jue:'color: red;',\r\n tabData: [],\r\n multiple: true,\r\n single: true,\r\n open: false,\r\n // 遮罩层\r\n loading: true,\r\n total: 0,\r\n // 岗位表格数据\r\n postList: [],\r\n // 显示搜索条件\r\n showSearch: true,\r\n activeNames: ['1'],\r\n title: '',\r\n queryData: {},\r\n tabName: '',\r\n form: {\r\n table: '',\r\n objId: -1,\r\n fixedData: {\r\n condition: {\r\n\r\n }\r\n }\r\n },\r\n // 查询参数\r\n queryParams: {\r\n table: '',\r\n pageNo: 1,\r\n isUi: false,\r\n pageSize: 10,\r\n orderBy: 'create_time desc',\r\n fixedData: {\r\n condition: {\r\n\r\n }\r\n }\r\n }\r\n };\r\n },\r\n filters: {\r\n btnConversion(val) {\r\n switch (val) {\r\n case 'A':\r\n return '新增';\r\n case 'M':\r\n return '修改';\r\n case 'D':\r\n return '删除';\r\n case 'Q':\r\n return '查询';\r\n case 'S':\r\n return '提交';\r\n case 'U':\r\n return '反提交';\r\n case 'I':\r\n return '导入';\r\n case 'E':\r\n return '导出';\r\n }\r\n }\r\n },\r\n computed: {\r\n ...mapGetters([\"sidebarRouters\", \"sidebar\", \"tabIndex\"]),\r\n },\r\n mounted() {\r\n const route = this.$route;\r\n const {\r\n meta,\r\n path\r\n } = route;\r\n let items = this.sidebarRouters.filter(res => {\r\n return res.path == ('/' + path.split('/')[1])\r\n })[0].children.filter(res => {\r\n return res.path == path.split('/')[2]\r\n })[0]\r\n this.tabName = items.sysTableName\r\n this.queryParams.table = items.sysTableName\r\n this.form.table = items.sysTableName\r\n this.init();\r\n this.getList();\r\n },\r\n methods: {\r\n imgBtn(url) {\r\n this.pir_imgs = url\r\n this.$refs.BigPicture.hidden.status = true\r\n },\r\n routerFn(id, tables) {\r\n if (this.queryData.viewType == 'crud') {\r\n this.$router.push({\r\n path: '/business/table',\r\n query: {\r\n id,\r\n tables,\r\n },\r\n })\r\n } else if (this.queryData.viewType == 'headTab') {\r\n this.$router.push({\r\n path: '/business/editing',\r\n query: {\r\n id,\r\n tables,\r\n },\r\n })\r\n } else if (this.queryData.viewType == 'itemTab') {\r\n this.$router.push({\r\n path: '/business/form',\r\n query: {\r\n id,\r\n tables,\r\n },\r\n })\r\n }\r\n },\r\n headerBtn(item) {\r\n switch (item) {\r\n case 'A':\r\n {\r\n this.routerFn(-1, this.tabName)\r\n return\r\n }\r\n case 'M':\r\n {\r\n if (this.single) {\r\n this.msgInfo('请勾选一条信息')\r\n return\r\n }\r\n const id = this.ids.join(',')\r\n this.routerFn(id, this.tabName)\r\n return\r\n }\r\n case 'D':\r\n {\r\n if (this.multiple) {\r\n this.msgInfo('请勾选一条信息')\r\n return\r\n }\r\n delMenu({\r\n table: this.tabName,\r\n idList: this.ids\r\n }).then(res => {\r\n this.msgSuccess('删除成功')\r\n this.getList()\r\n })\r\n return\r\n }\r\n case 'Q':\r\n {\r\n this.handleQuery()\r\n return\r\n }\r\n case 'S':\r\n {\r\n return\r\n }\r\n case 'U':\r\n {\r\n return\r\n }\r\n case 'E':\r\n {\r\n this.handleExport()\r\n return\r\n }\r\n }\r\n },\r\n // 取消按钮\r\n cancel() {\r\n this.open = false;\r\n this.reset();\r\n },\r\n /** 导出按钮操作 */\r\n handleExport() {\r\n this.download('system/post/export', {\r\n ...this.queryParams\r\n }, `post_${new Date().getTime()}.xlsx`)\r\n },\r\n // 多选框选中数据\r\n handleSelectionChange(selection) {\r\n this.ids = selection.map(item => item.id)\r\n this.single = selection.length != 1\r\n this.multiple = !selection.length\r\n },\r\n changeFn(obj) {\r\n for (let key in obj) {\r\n this.queryParams.fixedData.condition[key] = obj[key]\r\n }\r\n },\r\n // 表单重置\r\n reset() {\r\n this.form = {\r\n table: this.tabName,\r\n objId: '',\r\n fixedData: {\r\n condition: {\r\n\r\n }\r\n },\r\n };\r\n this.resetForm(\"form\");\r\n },\r\n resetQuery() {\r\n this.resetForm(\"queryForm\");\r\n this.handleQuery();\r\n },\r\n /** 搜索按钮操作 */\r\n handleQuery() {\r\n this.queryParams.pageNo = 1;\r\n this.grabFn(this.queryData.queryList, this.queryParams.fixedData.condition)\r\n this.getList();\r\n },\r\n // 抓取参数\r\n grabFn(arr, parForm) {\r\n for (let item of arr) {\r\n if (item.htmlType == 'checkbox' || item.htmlType == 'imageUpload' || item.htmlType == 'fileUpload') {\r\n if (this.$refs[item.columnName][0].config.length) {\r\n parForm[item.columnName] = this.$refs[item.columnName][0].config\r\n }\r\n } else {\r\n parForm[item.columnName] = this.$refs[item.columnName][0].config[item.columnName]\r\n }\r\n }\r\n },\r\n getList() {\r\n getQueryList(this.queryParams).then(response => {\r\n this.total = response.data.total;\r\n this.tabData = response.data.tableHeadList\r\n this.postList = response.data.rows;\r\n this.loading = false;\r\n });\r\n },\r\n init() {\r\n tableQuery({\r\n table: this.tabName,\r\n }).then(res => {\r\n let data = res.data\r\n this.queryData = data\r\n })\r\n },\r\n handleChange(val) {}\r\n },\r\n };\r\n</script>\r\n\r\n\r\n<style lang=\"scss\">\r\n .img_icon {\r\n width: 120px;\r\n height: 120px;\r\n cursor: pointer;\r\n object-fit: cover;\r\n }\r\n\r\n .table_header {\r\n .el-divider--horizontal {\r\n margin-top: 16px;\r\n }\r\n\r\n .table_headerBtun {\r\n margin-bottom: 20px;\r\n }\r\n }\r\n\r\n .table_nav {\r\n .el-collapse-item__wrap {\r\n border-bottom: 0;\r\n }\r\n\r\n .el-collapse-item__header {\r\n border-bottom: 0;\r\n font-size: 15px;\r\n font-family: PingFang SC;\r\n font-weight: bold;\r\n color: #3C8DBC;\r\n line-height: 36px;\r\n }\r\n\r\n // .el-form-item__content {\r\n // width: 55%;\r\n // }\r\n\r\n .el-collapse {\r\n border-top: 0;\n\r\n }\r\n }\r\n</style>\r\n\r\n\r\n\r\n<style scoped lang=\"scss\">\r\n .app-main {\r\n // background-color: #eef0ff !important;\r\n }\r\n\r\n .table_total {\r\n background-color: #eef0ff;\r\n min-height: calc(100vh - 94px);\r\n padding: 20px;\r\n\r\n // 头部\r\n .table_header {\r\n background-color: #fff;\r\n border-radius: 6px;\r\n padding: 23px 23px 0px;\r\n margin-bottom: 20px;\r\n\r\n p {\r\n font-size: 15px;\r\n font-weight: bold;\r\n color: #3C8DBC;\r\n line-height: 36px;\r\n }\r\n\r\n p::before {\r\n content: \"\";\r\n display: block;\r\n width: 18px;\r\n height: 8px;\r\n background: #3C8DBC;\r\n border-radius: 3px;\r\n\r\n }\r\n }\r\n\r\n // 内容\r\n .table_nav {\r\n background-color: #fff;\r\n border-radius: 6px;\r\n padding: 23px;\r\n }\r\n }\r\n\r\n p {\r\n margin: 0;\r\n\r\n }\r\n</style>\n"]}]}