From d291d4b450aab57b6c98cd0637f8b43f55bc370b Mon Sep 17 00:00:00 2001 From: whyczyk <525500596@qq.com> Date: 星期五, 05 十一月 2021 11:29:47 +0800 Subject: [PATCH] 流程节点管理界面提交 --- src/layout/components/PageMenu.vue | 12 + package-lock.json | 160 ++++++------ src/router/routes.js | 24 ++ src/assets/js/constants.js | 11 src/pages/manage/node/nodeManage.vue | 162 +++++++++++++ src/assets/css/reset.css | 128 +++++----- package.json | 2 src/pages/manage/node/addNode.vue | 161 +++++++++++++ src/pages/manage/js/api.js | 34 ++ src/pages/manage/node/index.vue | 16 + 10 files changed, 563 insertions(+), 147 deletions(-) diff --git a/package-lock.json b/package-lock.json index be016a6..a6f00ce 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1687,16 +1687,6 @@ "integrity": "sha1-/q7SVZc9LndVW4PbwIhRpsY1IPo=", "dev": true }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "optional": true, - "requires": { - "color-convert": "^2.0.1" - } - }, "cacache": { "version": "13.0.1", "resolved": "https://registry.npm.taobao.org/cacache/download/cacache-13.0.1.tgz?cache=0&sync_timestamp=1594429684526&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcacache%2Fdownload%2Fcacache-13.0.1.tgz", @@ -1723,53 +1713,6 @@ "unique-filename": "^1.1.1" } }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "optional": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "optional": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "optional": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "optional": true - }, - "loader-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.1.tgz", - "integrity": "sha512-g4miPa9uUrZz4iElkaVJgDFwKJGh8aQGM7pUL4ejXl6cu7kSb30seQOVGNMP6sW8j7DW77X68hJZ+GM7UGhXeQ==", - "dev": true, - "optional": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", @@ -1784,16 +1727,6 @@ "requires": { "figgy-pudding": "^3.5.1", "minipass": "^3.1.1" - } - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "optional": true, - "requires": { - "has-flag": "^4.0.0" } }, "terser-webpack-plugin": { @@ -1811,18 +1744,6 @@ "source-map": "^0.6.1", "terser": "^4.6.12", "webpack-sources": "^1.4.3" - } - }, - "vue-loader-v16": { - "version": "npm:vue-loader@16.8.2", - "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-16.8.2.tgz", - "integrity": "sha512-Nkq+z9mAsMEK+qkXgK+9Ia7D8w9uu9j4ut0IMT5coMfux3rCgIp1QBB1CYwY0M34A1nRMSONEaWXxAAw6xSl/Q==", - "dev": true, - "optional": true, - "requires": { - "chalk": "^4.1.0", - "hash-sum": "^2.0.0", - "loader-utils": "^2.0.0" } } } @@ -10508,6 +10429,87 @@ } } }, + "vue-loader-v16": { + "version": "npm:vue-loader@16.8.3", + "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-16.8.3.tgz", + "integrity": "sha512-7vKN45IxsKxe5GcVCbc2qFU5aWzyiLrYJyUuMz4BQLKctCj/fmCa0w6fGiiQ2cLFetNcek1ppGJQDCup0c1hpA==", + "dev": true, + "optional": true, + "requires": { + "chalk": "^4.1.0", + "hash-sum": "^2.0.0", + "loader-utils": "^2.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "optional": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "optional": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "optional": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "optional": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "optional": true + }, + "loader-utils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", + "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", + "dev": true, + "optional": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "optional": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, "vue-router": { "version": "3.4.9", "resolved": "https://registry.npm.taobao.org/vue-router/download/vue-router-3.4.9.tgz?cache=0&sync_timestamp=1607347284428&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fvue-router%2Fdownload%2Fvue-router-3.4.9.tgz", diff --git a/package.json b/package.json index c4d9e23..ebd0ba0 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,7 @@ "axios": "^0.19.2", "core-js": "^3.6.5", "echarts": "^5.1.1", - "element-ui": "^2.13.2", + "element-ui": "^2.15.6", "js-md5": "^0.7.3", "vue": "^2.6.11", "vue-router": "^3.2.0", diff --git a/src/assets/css/reset.css b/src/assets/css/reset.css index 091b71e..67bb640 100644 --- a/src/assets/css/reset.css +++ b/src/assets/css/reset.css @@ -1,29 +1,29 @@ @charset "utf-8"; * { - box-sizing: border-box; + box-sizing: border-box; } html { - -webkit-text-size-adjust: 100%; - -ms-text-size-adjust: 100%; - -webkit-overflow-scrolling: touch; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust: 100%; + -webkit-overflow-scrolling: touch; } html, body, #app { - width: 100%; - height: 100%; + width: 100%; + height: 100%; } -input[type="submit"], -input[type="reset"], -input[type="button"], +input[type='submit'], +input[type='reset'], +input[type='button'], input { - font-family: Arial, Helvetica, sans-serif; - resize: none; - border: none; + font-family: Arial, Helvetica, sans-serif; + resize: none; + border: none; } body, @@ -64,9 +64,9 @@ menu, nav, section { - -webkit-tap-highlight-color: rgba(0, 0, 0, 0); - /* font-size: 28px; */ - box-sizing: border-box; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); + /* font-size: 28px; */ + box-sizing: border-box; } article, @@ -80,17 +80,17 @@ menu, nav, section { - display: block; + display: block; } img { - width: 100%; - height: auto; - width: auto\9; - /* ie8 */ - display: block; - -ms-interpolation-mode: bicubic; - /*涓轰簡鐓ч【ie鍥剧墖缂╂斁澶辩湡*/ + width: 100%; + height: auto; + width: auto\9; + /* ie8 */ + display: block; + -ms-interpolation-mode: bicubic; + /*涓轰簡鐓ч【ie鍥剧墖缂╂斁澶辩湡*/ } body, @@ -131,55 +131,55 @@ menu, nav, section { - margin: 0; - padding: 0; + margin: 0; + padding: 0; } body { - font: 24px/1.5 'Microsoft YaHei', '瀹嬩綋', Tahoma, Arial, sans-serif; - color: #323233; - background-color: #fff; + font: 24px/1.5 'Microsoft YaHei', '瀹嬩綋', Tahoma, Arial, sans-serif; + color: #323233; + background-color: #fff; } em, i { - font-style: normal; + font-style: normal; } ul, li { - list-style-type: none; + list-style-type: none; } strong { - font-weight: normal; + font-weight: normal; } .clearfix:after { - content: ""; - display: block; - visibility: hidden; - height: 0; - clear: both; + content: ''; + display: block; + visibility: hidden; + height: 0; + clear: both; } .clearfix { - zoom: 1; + zoom: 1; } a { - text-decoration: none; - color: #969696; - font-family: 'Microsoft YaHei', Tahoma, Arial, sans-serif; + text-decoration: none; + color: #969696; + font-family: 'Microsoft YaHei', Tahoma, Arial, sans-serif; } a:hover { - text-decoration: none; + text-decoration: none; } ul, ol { - list-style: none; + list-style: none; } h1, @@ -188,50 +188,44 @@ h4, h5, h6 { - font-size: 100%; - font-family: 'Microsoft YaHei'; + font-size: 100%; + font-family: 'Microsoft YaHei'; } img { - border: none; + border: none; } input { - font-family: 'Microsoft YaHei'; + font-family: 'Microsoft YaHei'; } .one-txt-cut { - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; } .txt-cut { - overflow: hidden; - text-overflow: ellipsis; - display: -webkit-box; - -webkit-box-orient: vertical; + overflow: hidden; + text-overflow: ellipsis; + display: -webkit-box; + -webkit-box-orient: vertical; } a:link, a:active, a:visited, a:hover { - background: none; - -webkit-tap-highlight-color: rgba(0, 0, 0, 0); - -webkit-tap-highlight-color: transparent; + background: none; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); + -webkit-tap-highlight-color: transparent; } -input[type=button], -input[type=submit], -input[type=file], +input[type='button'], +input[type='submit'], +input[type='file'], button { - cursor: pointer; - -webkit-appearance: none; + cursor: pointer; + -webkit-appearance: none; } - -.van-nav-bar .van-icon.van-icon-arrow-left { - color: #4B88F9 !important; - font-size: 36px; - font-weight: bold; -} \ No newline at end of file diff --git a/src/assets/js/constants.js b/src/assets/js/constants.js new file mode 100644 index 0000000..50ac6fb --- /dev/null +++ b/src/assets/js/constants.js @@ -0,0 +1,11 @@ +export const workType = { + 1: '鍛婅宸ュ崟', + 2: '浠诲姟宸ュ崟', +} + +export const linkLevel = { + 1: '涓�绾�', + 2: '浜岀骇', + 3: '涓夌骇', +} + diff --git a/src/layout/components/PageMenu.vue b/src/layout/components/PageMenu.vue index c830c57..ba67e95 100644 --- a/src/layout/components/PageMenu.vue +++ b/src/layout/components/PageMenu.vue @@ -39,6 +39,18 @@ name: '宸插鐞�', }, ] + }, { + id: '2', + name: '绠$悊鐣岄潰', + url: 'manage', + icon: 'el-icon-s-order', + subMenus: [ + { + id: '2-1', + url: 'nodeManage', + name: '娴佺▼鑺傜偣绠$悊', + }, + ] },], id: '1-2' } diff --git a/src/pages/manage/js/api.js b/src/pages/manage/js/api.js new file mode 100644 index 0000000..2a7cd32 --- /dev/null +++ b/src/pages/manage/js/api.js @@ -0,0 +1,34 @@ +import axios from '@/assets/js/axios'; + + +//鏌ヨ宸ュ崟娴佸睘鎬у垪琛� +export const getPropertyList = () => { + return axios({ + method: 'GET', + url: '/workflowProperty/propertyList', + }); +} +//鍒犻櫎鑺傜偣 +export const delWorkflowProperty = (params) => { + return axios({ + method: 'DELETE', + url: '/workflowProperty', + params: params, + }); +} +//鏂板鑺傜偣 +export const addWorkflowProperty = (data) => { + return axios({ + method: 'POST', + url: '/workflowProperty', + data: data, + }); +} +//淇敼鑺傜偣 +export const editWorkflowProperty = (data) => { + return axios({ + method: 'PUT', + url: '/workflowProperty', + data: data, + }); +} \ No newline at end of file diff --git a/src/pages/manage/node/addNode.vue b/src/pages/manage/node/addNode.vue new file mode 100644 index 0000000..03d3f14 --- /dev/null +++ b/src/pages/manage/node/addNode.vue @@ -0,0 +1,161 @@ +<template> + <div class="main"> + <div class="contain"> + <div class="title">{{title}}</div> + <el-form ref="form" :model="form" label-width="10em"> + <el-form-item label="鑺傜偣鍚嶇О:"> + <el-input v-model="form.linkName" placeholder="璇疯緭鍏ヨ妭鐐瑰悕绉�"></el-input> + </el-form-item> + <el-form-item label="鑺傜偣灞傜骇:"> + <el-select v-model="form.linkType" placeholder="璇烽�夋嫨鑺傜偣灞傜骇"> + <el-option :label="value" :value="key" v-for="(value,key,index) in linkLevel" :key="index"></el-option> + </el-select> + </el-form-item> + <el-form-item label="鑺傜偣鎵�鍚鑹�:"> + <el-button type="primary" size="mini" @click="addRole">娣诲姞瑙掕壊</el-button> + </el-form-item> + <el-form-item label="瑙掕壊" v-for="(item,i) in form.roleList" :key="i"> + <el-input v-model="item.name" style="margin-right:8px" placeholder="璇疯緭鍏ヨ鑹插悕绉�"></el-input> + <el-input v-model="item.type" style="margin-right:8px" type="number" placeholder="璇疯緭鍏ヨ鑹茬紪鐮�"></el-input> + <i class="el-icon-delete delIcon" @click="removeList(i)"></i> + </el-form-item> + <el-form-item label="鎵�灞炲伐鍗曠被鍨�:"> + <el-select v-model="form.type" placeholder="璇烽�夋嫨鎵�灞炲伐鍗曠被鍨�"> + <el-option :label="value" :value="key" v-for="(value,key,index) in workType" :key="index"></el-option> + </el-select> + </el-form-item> + <el-form-item> + <el-button type="primary" @click="onSubmit" v-if="pageType==1">纭鎻愪氦</el-button> + <el-button type="primary" @click="onSubmit" v-else>纭淇敼</el-button> + </el-form-item> + </el-form> + </div> + </div> +</template> + +<script> +import { + addWorkflowProperty, + editWorkflowProperty +} from '../js/api'; +import { + workType, + linkLevel +} from '@/assets/js/constants'; +export default { + name: "", + + data() { + return { + workType, + linkLevel, + title: '鏂板缓娴佺▼鑺傜偣', + form: { + linkName: "", + linkType: '', + roleList: [], + type: '', + }, + pageType: 1 + }; + }, + components: {}, + methods: { + addRole() { + this.form.roleList.push({ + name: "", + type: "" + }) + }, + removeList(index) { + this.form.roleList.splice(index, 1) + }, + onSubmit() { + if (this.pageType == 1) { + this.addFrom() + } else { + this.editFrom() + } + }, + editFrom() { + editWorkflowProperty(this.form).then((res) => { + if (res.data.code == 1) { + this.$message({ + message: '淇敼鎴愬姛!', + type: 'success' + }); + setTimeout(() => { + this.$router.go(-1) + }, 1000) + } + }).catch((err) => { + console.log(err) + }); + }, + addFrom() { + addWorkflowProperty(this.form).then((res) => { + if (res.data.code == 1) { + this.$message({ + message: '娣诲姞鎴愬姛!', + type: 'success' + }); + setTimeout(() => { + this.$router.go(-1) + }, 1000) + } + }).catch((err) => { + console.log(err) + }); + }, + }, + + mounted() { + let postData = JSON.parse(this.$route.query.data); + console.log(postData) + if (postData.linkName) { + this.title = '缂栬緫娴佺▼鑺傜偣' + this.pageType = 2; + this.form.linkName = postData.linkName; + this.form.linkType = postData.linkType + ''; + this.form.roleList = postData.roleList; + this.form.type = postData.type + ''; + } else { + this.title = '鏂板缓娴佺▼鑺傜偣' + this.pageType = 1 + } + }, +}; +</script> + +<style scoped> +.main { + height: 100%; + padding-top: 10px; + padding-left: 10px; + display: flex; +} +.contain { + background: #fff; + flex: 1; + overflow-y: auto; + padding: 20px; +} +.title { + color: #04409a; + font-size: 24px; + margin-bottom: 15px; +} +>>> .el-input { + width: 30em; +} +>>> .el-textarea { + width: 40em; +} + +.delIcon { + color: #e10000; + font-size: 20px; + margin-left: 16px; + cursor: pointer; +} +</style> \ No newline at end of file diff --git a/src/pages/manage/node/index.vue b/src/pages/manage/node/index.vue new file mode 100644 index 0000000..0183404 --- /dev/null +++ b/src/pages/manage/node/index.vue @@ -0,0 +1,16 @@ +<template> + <router-view></router-view> +</template> + +<script> +export default { + data() { + return { + + } + }, +} +</script> + +<style scoped> +</style> diff --git a/src/pages/manage/node/nodeManage.vue b/src/pages/manage/node/nodeManage.vue new file mode 100644 index 0000000..a8190f7 --- /dev/null +++ b/src/pages/manage/node/nodeManage.vue @@ -0,0 +1,162 @@ +<template> + <div class="nodeManageWarp"> + <flex-layout class="list-contain"> + <div class="scroll"> + <el-table :data="tableData" stripe border style="width: 100%"> + <el-table-column prop="linkName" label="鑺傜偣鍚嶇О"> + </el-table-column> + <el-table-column prop="linkLevel" label="鑺傜偣灞傜骇"> + </el-table-column> + <el-table-column prop="roleListName" label="鑺傜偣鎵�鍚鑹�"> + </el-table-column> + <el-table-column prop="typeName" label="鎵�灞炲伐鍗曠被鍨�"> + </el-table-column> + <el-table-column fixed="right" label="鎿嶄綔"> + <template slot-scope="scope"> + <el-button type="text" style="margin-right:8px;" @click="toAddPage(scope.row)">缂栬緫</el-button> + <el-popconfirm title="纭畾鍒犻櫎璇ヨ妭鐐瑰悧锛�" @confirm="remove(scope.row)"> + <el-button slot="reference" type="text">鍒犻櫎</el-button> + </el-popconfirm> + </template> + </el-table-column> + </el-table> + </div> + <!-- 鍒嗛〉 --> + <div class="pagination" slot="footer"> + <!-- <el-button type="primary" size="mini" icon="el-icon-arrow-left">涓婁竴椤�</el-button> + <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="page.currentPage" :page-sizes="page.pageSizes" :page-size="page.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="page.total"> + </el-pagination> + <el-button type="primary" size="mini" icon="el-icon-arrow-right">涓嬩竴椤�</el-button> --> + <el-button type="primary" size="mini" icon="el-icon-circle-plus-outline" @click="toAddPage">鏂板鑺傜偣</el-button> + </div> + </flex-layout> + </div> +</template> + +<script> +import { + getPropertyList, + delWorkflowProperty +} from '../js/api'; +import { + workType, + linkLevel +} from '@/assets/js/constants'; +export default { + data() { + return { + tableData: [], + page: { + currentPage: 1, + pageSizes: [1, 5, 10, 20], + pageSize: 5, + total: 0 + } + } + }, + mounted() { + this.loadList() + }, + methods: { + loadList() { + getPropertyList().then((res) => { + if (res.data.code == 1) { + let resData = res.data.data; + let arr = []; + resData.map(item => { + let roleListName = ''; + item.roleList.map(jtem => { + roleListName += jtem.name + ',' + }) + let obj = { + linkName: item.linkName, + linkType: item.linkType, + linkLevel: linkLevel[item.linkType], + roleList: item.roleList, + roleListName: roleListName, + typeName: workType[item.type], + type: item.type, + } + arr.push(obj) + }) + this.tableData = arr + } + }).catch((err) => { + console.log(err) + }); + }, + remove(rowData) { + let postData = { + linkType: rowData.linkType, + type: rowData.type, + } + delWorkflowProperty(postData).then((res) => { + if (res.data.code == 1) { + this.loadList() + this.$message({ + message: '鍒犻櫎鎴愬姛!', + type: 'success' + }); + } + }).catch((err) => { + console.log(err) + }); + }, + toAddPage(data) { + if (data) { + this.$router.push({ + path: '/manage/addNode', + query: { data: JSON.stringify(data) } + }) + } else { + this.$router.push({ + path: '/manage/addNode', + }) + } + } + } +} +</script> + +<style scoped> +.nodeManageWarp { + padding: 16px 0 0 16px; + width: 100%; + height: 100%; +} +.list-contain { + background: #fff; + border: 1px #c4c4c4 solid; + padding: 30px 0 10px 30px; +} +.scroll { + overflow-y: auto; + padding-right: 30px; +} + +.pagination { + display: flex; + padding-top: 10px; + justify-content: center; +} +>>> .el-pagination { + display: flex; + padding: 0 1em; +} +>>> .el-pagination .el-input__inner { + background: #343345; + color: #fff; +} +>>> .el-input { + width: 30em; +} +>>> .el-textarea { + width: 40em; +} +>>> .el-select .el-input { + width: 16em; +} +>>> .el-pagination .el-input { + width: auto; +} +</style> diff --git a/src/router/routes.js b/src/router/routes.js index bfaed9d..ce19e53 100644 --- a/src/router/routes.js +++ b/src/router/routes.js @@ -34,6 +34,30 @@ component: (resolve) => require(['@/pages/alarmWork/list.vue'], resolve), }, ] + }, + { + path: 'manage', + meta: { + title: '绠$悊鐣岄潰', + }, + component: (resolve) => require(['@/pages/manage/node/index.vue'], resolve), + redirect: '/manage/nodeManage', + children: [ + { + path: 'nodeManage', + meta: { + title: '娴佺▼鑺傜偣鍒楄〃', + }, + component: (resolve) => require(['@/pages/manage/node/nodeManage.vue'], resolve), + }, + { + path: 'addNode', + meta: { + title: '娴佺▼鑺傜偣绠$悊', + }, + component: (resolve) => require(['@/pages/manage/node/addNode.vue'], resolve), + }, + ] } ] }]; \ No newline at end of file -- Gitblit v1.9.1