| | |
| | | |
| | | const BASE_URL = 'http://192.168.20.39:12316'; |
| | | const BASE_URL = 'http://192.168.20.55:12316'; |
| | | var gisUrl = 'http://183.162.245.49:3301'; |
| | | var ifreamUrl = 'http://192.168.20.39:12306/'; |
| | | |
| | |
| | | //请æ±å°å |
| | | return request.get('/dep/selectDep', { params: params }); |
| | | } |
| | | |
| | | //ç®å½ç®¡çå表 |
| | | export function selectdirTab(params) { |
| | | //请æ±å°å |
| | | return request.get('/dir/selectDirAll', { params: params }); |
| | | } |
| | | //çæ¬ç®¡çå表 |
| | | export function select_Ver_ByPageAndCount(params) { |
| | | //请æ±å°å |
| | | return request.get('/version/selectByPageAndCount', { params: params }); |
| | | } |
| | | //çæ¬ç®¡çæ°å¢ |
| | | export function insertVersion(params) { |
| | | //请æ±å°å |
| | | return request.post('/version/insertVersion', params); |
| | | } |
| | | //çæ¬ç®¡çå é¤ |
| | | export function deleteVersion(params) { |
| | | //请æ±å°å |
| | | console.log(params); |
| | | return request.get('/version/deleteVersion?id=' + params); |
| | | } |
| | | //çæ¬ç®¡çä¿®æ¹ |
| | | export function updateVersion(params) { |
| | | //请æ±å°å |
| | | return request.post('/version/updateVersion', params); |
| | | } |
| | |
| | | dataLoading: 'dataLoading', |
| | | SpatialData: 'SpatialData', |
| | | versionManage: 'versionManage', |
| | | vmobj: { |
| | | keyword: 'Keyword', |
| | | describe: 'Describe', |
| | | index: 'Index', |
| | | name: 'Name', |
| | | catalogue: 'Catalogue', |
| | | createontime: 'Creation Time', |
| | | createonuser: 'Creation Personne', |
| | | updateontime: 'Update Time', |
| | | updateonuser: 'Update Personnel', |
| | | editVersion: 'Modify version information', |
| | | addVersion: 'Add version information', |
| | | }, |
| | | dictionaryManage: 'dictionaryManage', |
| | | dictionaryManageObj: { |
| | | tableName: 'table name', |
| | |
| | | dataLoading: 'æ°æ®å
¥åº', |
| | | SpatialData: 'ç©ºé´æ°æ®ç®¡ç', |
| | | versionManage: 'çæ¬ç®¡ç', |
| | | vmobj: { |
| | | keyword: 'å
³é®å', |
| | | describe: 'æè¿°', |
| | | index: 'åºå·', |
| | | name: 'åç§°', |
| | | catalogue: 'ç®å½', |
| | | createontime: 'å建æ¶é´', |
| | | createonuser: 'å建人å', |
| | | updateontime: 'ä¿®æ¹æ¶é´', |
| | | updateonuser: 'ä¿®æ¹äººå', |
| | | editVersion: 'ä¿®æ¹çæ¬ä¿¡æ¯', |
| | | addVersion: 'æ·»å çæ¬ä¿¡æ¯', |
| | | }, |
| | | dictionaryManage: 'åå
¸ç®¡ç', |
| | | dictionaryManageObj: { |
| | | tableName: '表åç§°', |
| | |
| | | import Vue from "vue"; |
| | | import Vuex from "vuex"; |
| | | import Vue from 'vue'; |
| | | import Vuex from 'vuex'; |
| | | |
| | | Vue.use(Vuex); |
| | | |
| | | export default new Vuex.Store({ |
| | | state: { |
| | | catalogueName: "", |
| | | catalogueName: '', |
| | | cataNode: {}, |
| | | verCateNode: {}, |
| | | verCateNodes: {}, |
| | | }, |
| | | mutations: { |
| | | // è·å宿´é¢å
å±è·¯å¾ |
| | |
| | | changeNode(state, msg) { |
| | | state.cataNode = msg; |
| | | }, |
| | | verChangeNode(state, msg) { |
| | | state.verCateNode = msg; |
| | | }, |
| | | verChangeNodes(state, msg) { |
| | | state.verCateNodes = msg; |
| | | }, |
| | | }, |
| | | actions: {}, |
| | | modules: {}, |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <div class="wrap"> |
| | | <div class="bread"> |
| | | <el-breadcrumb separator="el-icon-arrow-right"> |
| | | <el-breadcrumb-item>{{ breadLabel }}</el-breadcrumb-item> |
| | | </el-breadcrumb> |
| | | </div> |
| | | <div class="treeBox"> |
| | | <el-tree |
| | | ref="tree" |
| | | :props="defaultProps" |
| | | node-key="id" |
| | | :data="dirData" |
| | | :expand-on-click-node="false" |
| | | :default-expanded-keys="[1, 2, 3, 4, 5, 6, 7, 8, 9]" |
| | | :draggable="draggable" |
| | | @node-drag-start="handleDragStart" |
| | | @node-click="handleNodeClick" |
| | | @node-drop="handleDrop" |
| | | > |
| | | <span class="custom-tree-node" slot-scope="{ node, data }"> |
| | | <span>{{ node.label }}</span> |
| | | <span class="btnBox" v-show="showEdit"> |
| | | <el-button type="text" size="mini" @click="() => append(data)"> |
| | | <i class="el-icon-circle-plus"></i> |
| | | </el-button> |
| | | <el-button |
| | | type="text" |
| | | size="mini" |
| | | @click="() => remove(node, data)" |
| | | > |
| | | <i class="el-icon-delete-solid"></i> |
| | | </el-button> |
| | | </span> |
| | | </span> |
| | | </el-tree> |
| | | <!-- <div style="margin-left:130px;"> |
| | | <el-button @click="sendChange">ä¿å</el-button> |
| | | </div> --> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import { selectdirTab } from '../../api/api'; |
| | | export default { |
| | | name: 'catalogueTree', |
| | | props: ['showBtn'], |
| | | data() { |
| | | return { |
| | | draggable: false, |
| | | id: null, |
| | | showEdit: false, |
| | | showBread: false, |
| | | oriData: [], //åå§æ æ°æ® |
| | | dirData: [], //elæ æ°æ® |
| | | old_dirDat: [], //elæ æ°æ®(æå¨å) |
| | | newData: [], //æå¨ååå§æ°æ® |
| | | breadList: [], //é¢å
屿°ç» |
| | | breadLabel: '', //é¢å
屿å |
| | | filterText: '', |
| | | defaultProps: { |
| | | children: 'children', |
| | | label: 'name', |
| | | }, |
| | | }; |
| | | }, |
| | | |
| | | methods: { |
| | | // 请æ±ç®å½æ |
| | | async getDirTree() { |
| | | this.selectData = []; |
| | | const data = await selectdirTab(); |
| | | if (data.code != 200) { |
| | | this.$message.error('䏿è°ç¨å¤±è´¥'); |
| | | } else { |
| | | this.oriData = data.result; |
| | | this.newData = data.result; |
| | | this.dirData = this.treeData(data.result); |
| | | } |
| | | }, |
| | | treeData(source) { |
| | | let cloneData = JSON.parse(JSON.stringify(source)); // å¯¹æºæ°æ®æ·±åº¦å
é |
| | | return cloneData.filter((father) => { |
| | | // å¾ªç¯ææé¡¹ |
| | | let branchArr = cloneData.filter((child) => father.id == child.pid); // 对æ¯IDï¼åå«ä¸ä¸çº§èåï¼å¹¶è¿åæ°æ® |
| | | branchArr.length > 0 ? (father.children = branchArr) : ''; // ç»ç¶çº§æ·»å ä¸ä¸ªchildren屿§ï¼å¹¶èµå¼ |
| | | // å±äºåä¸å¯¹è±¡é®é¢ï¼ä¾å¦ï¼ä»¤ a=bãc=1 ï¼ç¶åå令 b.c=c ï¼ é£ä¹ a.c=b.c=c=1 ï¼åçï¼åç»ä»¤ c.d=2 ,é£ä¹ a.c.d 乿¯=2ï¼ |
| | | // ç±æ¤å¾ªç¯å¤æ¬¡åï¼å°±è½å½¢æç¸åºçæ å½¢æ°æ®ç»æ |
| | | return father.pid == 0; // è¿åä¸çº§èå |
| | | }); |
| | | }, |
| | | append(data) { |
| | | this.$prompt('请è¾å
¥åç§°', 'æç¤º', { |
| | | confirmButtonText: 'ç¡®å®', |
| | | cancelButtonText: 'åæ¶', |
| | | }) |
| | | .then(({ value }) => { |
| | | const newChild = { |
| | | id: this.id + 1, |
| | | name: value, |
| | | pid: data.id, |
| | | // children: [], |
| | | oid: data.children ? data.children.length + 1 : 1, |
| | | }; |
| | | this.id = newChild.id; //ä¿®æ¹æ°çæå¤§I |
| | | console.log(newChild); |
| | | |
| | | if (!data.children) { |
| | | this.$set(data, 'children', []); |
| | | } |
| | | data.children.push(newChild); |
| | | this.newData.push(newChild); |
| | | this.sendChange(); |
| | | }) |
| | | .catch(() => { |
| | | this.$message({ |
| | | type: 'info', |
| | | message: 'åæ¶è¾å
¥', |
| | | }); |
| | | }); |
| | | }, |
| | | remove(node, data) { |
| | | this.$confirm('æ¤æä½å°å é¤è¯¥èç¹, æ¯å¦ç»§ç»?', 'æç¤º', { |
| | | confirmButtonText: 'ç¡®å®', |
| | | cancelButtonText: 'åæ¶', |
| | | type: 'warning', |
| | | }) |
| | | .then(() => { |
| | | const parent = node.parent; |
| | | const children = parent.data.children || parent.data; |
| | | const index = children.findIndex((d) => d.id === data.id); |
| | | let res = children.splice(index, 1); |
| | | var std = []; |
| | | for (var i in res) { |
| | | std.push(res[i].id); |
| | | } |
| | | deleteDirTree(std); |
| | | this.getDirTree(); |
| | | this.$message({ |
| | | type: 'success', |
| | | message: 'å 餿å!', |
| | | }); |
| | | }) |
| | | .catch(() => { |
| | | this.$message({ |
| | | type: 'info', |
| | | message: '已忶å é¤', |
| | | }); |
| | | }); |
| | | // this.dialogMessage="æ¯å¦å é¤" |
| | | // this.dialogFlag = 1; |
| | | // this.dialogFrom ={ |
| | | // node:node, |
| | | // val:data |
| | | // } |
| | | // this.dialogVisible=true;//ç®å½æ æ´æ¹å¼¹çª |
| | | // const parent = node.parent; |
| | | // const children = parent.data.children || parent.data; |
| | | // const index = children.findIndex((d) => d.id === data.id); |
| | | // let res = children.splice(index, 1); |
| | | // // console.log(res); |
| | | // // console.log(data); |
| | | // console.log(this.flaten(res)); |
| | | }, |
| | | flaten(arr) { |
| | | return arr.reduce((p, v, i) => { |
| | | for (let i = 0; i < p.length; i++) { |
| | | if (p[i].children) { |
| | | delete p[i].children; |
| | | } |
| | | } |
| | | return p.concat(v.children ? this.flaten(v.children).concat(v) : v); |
| | | }, []); |
| | | }, |
| | | handleNodeClick(data) { |
| | | // console.log(data); |
| | | this.$store.commit('verChangeNode', data); |
| | | this.breadList = []; |
| | | this.getTreeNode(this.$refs.tree.getNode(data.id)); |
| | | }, |
| | | getTreeNode(node) { |
| | | if (node && node.label) { |
| | | this.breadList.unshift(node.label); |
| | | this.getTreeNode(node.parent); //éå½ |
| | | this.breadLabel = this.breadList.join('>'); |
| | | this.$store.commit('changeCata', this.breadLabel); |
| | | } |
| | | }, |
| | | handleDragStart(node, ev) { |
| | | this.old_dirDat = JSON.parse(JSON.stringify(this.dirData)); //å°å¤ä»½çdiréæ°èµå¼ |
| | | }, |
| | | |
| | | handleDrop(draggingNode, dropNode, dropType, ev) { |
| | | // console.log("è¢«ææ½èç¹", draggingNode); |
| | | // console.log("è¿å
¥çèç¹", dropNode); |
| | | // console.log("æ¾ç½®ä½ç½®", dropType); |
| | | // console.log("äºä»¶", ev); |
| | | // if (dropType !== "inner") { |
| | | // // 1.ä¿®æ¹ç¶èç¹pid |
| | | // draggingNode.data.pid = dropNode.data.pid; |
| | | // dropNode.parent.childNodes.forEach((item, index) => { |
| | | // // 2.ä¿®æ¹èªèº«é¡ºåºoid |
| | | // item.data.oid = index + 1; |
| | | // }); |
| | | // } |
| | | // // console.log(draggingNode.data.id); |
| | | // let res = this.oriData.filter((item) => item.id == draggingNode.data.id); |
| | | // console.log(res); |
| | | this.$confirm('æ¤æä½å°ä¿åç®å½æ´æ¹, æ¯å¦ç»§ç»?', 'æç¤º', { |
| | | confirmButtonText: 'ç¡®å®', |
| | | cancelButtonText: 'åæ¶', |
| | | type: 'warning', |
| | | }) |
| | | .then(() => { |
| | | let paramData = []; |
| | | let data = dropType != 'inner' ? dropNode.parent.data : dropNode.data; |
| | | let nodeData = |
| | | dropNode.level == 1 && dropType != 'inner' ? data : data.children; |
| | | let pid = ''; |
| | | nodeData.forEach((item, i) => { |
| | | if (dropType != 'inner') { |
| | | if (draggingNode.data.pid === dropNode.data.pid) { |
| | | pid = item.pid; |
| | | } else { |
| | | pid = dropNode.data.pid; |
| | | } |
| | | } else { |
| | | pid = data.id; |
| | | } |
| | | let collection = { |
| | | id: item.id, |
| | | name: item.name, |
| | | pid, |
| | | oid: i + 1, |
| | | }; |
| | | paramData.push(collection); |
| | | }); |
| | | // console.log(paramData); |
| | | let arr = []; |
| | | this.oriData.forEach((e) => { |
| | | paramData.forEach((item) => { |
| | | if (item.id === e.id) { |
| | | e = item; |
| | | } |
| | | }); |
| | | arr.push(e); |
| | | }); |
| | | this.newData = arr; |
| | | this.sendChange(); |
| | | this.$message({ |
| | | type: 'success', |
| | | message: 'æ´æ¹æå!', |
| | | }); |
| | | }) |
| | | .catch(() => { |
| | | this.$message({ |
| | | type: 'info', |
| | | message: 'å·²åæ¶æ´æ¹', |
| | | }); |
| | | this.dirData = this.old_dirDat; //å°å¤ä»½çdiréæ°èµå¼ |
| | | }); |
| | | }, |
| | | |
| | | sendChange() { |
| | | updateDirTree(this.newData).then((res) => { |
| | | console.log(res); |
| | | if (res.status == 200) { |
| | | this.$message({ |
| | | type: 'success', |
| | | message: 'æ´æ°æå!', |
| | | }); |
| | | } |
| | | }); |
| | | }, |
| | | }, |
| | | mounted() { |
| | | this.getDirTree(); |
| | | this.$bus.$on('clearTressLabel', (e) => { |
| | | this.breadLabel = ''; |
| | | }); |
| | | }, |
| | | watch: { |
| | | showBtn: { |
| | | immediate: true, |
| | | handler(val) { |
| | | if (val) { |
| | | this.showEdit = val; |
| | | this.draggable = val; |
| | | } |
| | | }, |
| | | }, |
| | | showBread: { |
| | | immediate: true, |
| | | handler(val) { |
| | | if (val) this.showBread = val; |
| | | }, |
| | | }, |
| | | }, |
| | | }; |
| | | </script> |
| | | |
| | | <style lang="less" scoped> |
| | | .wrap { |
| | | width: 98.5%; |
| | | height: 100%; |
| | | |
| | | .bread { |
| | | width: 100%; |
| | | height: 5%; |
| | | margin: 0 auto; |
| | | overflow: auto; |
| | | } |
| | | |
| | | .treeBox { |
| | | margin-top: 1%; |
| | | width: 100%; |
| | | height: 94%; |
| | | overflow: auto; |
| | | |
| | | .el-tree { |
| | | background: transparent; |
| | | font-size: 15px; |
| | | font-family: Microsoft YaHei; |
| | | font-weight: 400; |
| | | color: #000000; |
| | | |
| | | // /deep/ .el-tree-node__label { |
| | | // font-size: 18px; |
| | | // } |
| | | /deep/ .el-tree-node { |
| | | padding-top: 10px; |
| | | // padding-bottom: 10px; |
| | | } |
| | | |
| | | /deep/ .el-tree-node:focus > .el-tree-node__content { |
| | | background-color: #b9b9b9; |
| | | } |
| | | |
| | | /deep/ .el-tree-node__content:hover { |
| | | background-color: rgb(153, 153, 153); |
| | | } |
| | | |
| | | .btnBox { |
| | | margin-left: 5px; |
| | | |
| | | .el-button + .el-button { |
| | | margin-left: 5px; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | </style> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <div class="wrap"> |
| | | <div class="bread"> |
| | | <el-breadcrumb separator="el-icon-arrow-right"> |
| | | <el-breadcrumb-item>{{ breadLabel }}</el-breadcrumb-item> |
| | | </el-breadcrumb> |
| | | </div> |
| | | <div class="treeBox"> |
| | | <el-tree |
| | | ref="tree" |
| | | :props="defaultProps" |
| | | node-key="id" |
| | | :data="dirData" |
| | | :expand-on-click-node="false" |
| | | :default-expanded-keys="[1, 2, 3, 4, 5, 6, 7, 8, 9]" |
| | | :draggable="draggable" |
| | | @node-drag-start="handleDragStart" |
| | | @node-click="handleNodeClick" |
| | | @node-drop="handleDrop" |
| | | > |
| | | <span class="custom-tree-node" slot-scope="{ node, data }"> |
| | | <span>{{ node.label }}</span> |
| | | <span class="btnBox" v-show="showEdit"> |
| | | <el-button type="text" size="mini" @click="() => append(data)"> |
| | | <i class="el-icon-circle-plus"></i> |
| | | </el-button> |
| | | <el-button |
| | | type="text" |
| | | size="mini" |
| | | @click="() => remove(node, data)" |
| | | > |
| | | <i class="el-icon-delete-solid"></i> |
| | | </el-button> |
| | | </span> |
| | | </span> |
| | | </el-tree> |
| | | <!-- <div style="margin-left:130px;"> |
| | | <el-button @click="sendChange">ä¿å</el-button> |
| | | </div> --> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import { selectdirTab } from '../../api/api'; |
| | | |
| | | export default { |
| | | name: 'catalogueTree', |
| | | props: ['showBtn'], |
| | | data() { |
| | | return { |
| | | draggable: false, |
| | | id: null, |
| | | showEdit: false, |
| | | showBread: false, |
| | | oriData: [], //åå§æ æ°æ® |
| | | dirData: [], //elæ æ°æ® |
| | | old_dirDat: [], //elæ æ°æ®(æå¨å) |
| | | newData: [], //æå¨ååå§æ°æ® |
| | | breadList: [], //é¢å
屿°ç» |
| | | breadLabel: '', //é¢å
屿å |
| | | filterText: '', |
| | | defaultProps: { |
| | | children: 'children', |
| | | label: 'name', |
| | | }, |
| | | }; |
| | | }, |
| | | |
| | | methods: { |
| | | // 请æ±ç®å½æ |
| | | async getDirTree() { |
| | | this.selectData = []; |
| | | const data = await selectdirTab(); |
| | | if (data.code != 200) { |
| | | this.$message.error('䏿è°ç¨å¤±è´¥'); |
| | | } else { |
| | | this.oriData = data.result; |
| | | this.newData = data.result; |
| | | this.dirData = this.treeData(data.result); |
| | | } |
| | | }, |
| | | treeData(source) { |
| | | let cloneData = JSON.parse(JSON.stringify(source)); // å¯¹æºæ°æ®æ·±åº¦å
é |
| | | return cloneData.filter((father) => { |
| | | // å¾ªç¯ææé¡¹ |
| | | let branchArr = cloneData.filter((child) => father.id == child.pid); // 对æ¯IDï¼åå«ä¸ä¸çº§èåï¼å¹¶è¿åæ°æ® |
| | | branchArr.length > 0 ? (father.children = branchArr) : ''; // ç»ç¶çº§æ·»å ä¸ä¸ªchildren屿§ï¼å¹¶èµå¼ |
| | | // å±äºåä¸å¯¹è±¡é®é¢ï¼ä¾å¦ï¼ä»¤ a=bãc=1 ï¼ç¶åå令 b.c=c ï¼ é£ä¹ a.c=b.c=c=1 ï¼åçï¼åç»ä»¤ c.d=2 ,é£ä¹ a.c.d 乿¯=2ï¼ |
| | | // ç±æ¤å¾ªç¯å¤æ¬¡åï¼å°±è½å½¢æç¸åºçæ å½¢æ°æ®ç»æ |
| | | return father.pid == 0; // è¿åä¸çº§èå |
| | | }); |
| | | }, |
| | | append(data) { |
| | | this.$prompt('请è¾å
¥åç§°', 'æç¤º', { |
| | | confirmButtonText: 'ç¡®å®', |
| | | cancelButtonText: 'åæ¶', |
| | | }) |
| | | .then(({ value }) => { |
| | | const newChild = { |
| | | id: this.id + 1, |
| | | name: value, |
| | | pid: data.id, |
| | | // children: [], |
| | | oid: data.children ? data.children.length + 1 : 1, |
| | | }; |
| | | this.id = newChild.id; //ä¿®æ¹æ°çæå¤§I |
| | | console.log(newChild); |
| | | |
| | | if (!data.children) { |
| | | this.$set(data, 'children', []); |
| | | } |
| | | data.children.push(newChild); |
| | | this.newData.push(newChild); |
| | | this.sendChange(); |
| | | }) |
| | | .catch(() => { |
| | | this.$message({ |
| | | type: 'info', |
| | | message: 'åæ¶è¾å
¥', |
| | | }); |
| | | }); |
| | | }, |
| | | remove(node, data) { |
| | | this.$confirm('æ¤æä½å°å é¤è¯¥èç¹, æ¯å¦ç»§ç»?', 'æç¤º', { |
| | | confirmButtonText: 'ç¡®å®', |
| | | cancelButtonText: 'åæ¶', |
| | | type: 'warning', |
| | | }) |
| | | .then(() => { |
| | | const parent = node.parent; |
| | | const children = parent.data.children || parent.data; |
| | | const index = children.findIndex((d) => d.id === data.id); |
| | | let res = children.splice(index, 1); |
| | | var std = []; |
| | | for (var i in res) { |
| | | std.push(res[i].id); |
| | | } |
| | | deleteDirTree(std); |
| | | this.getDirTree(); |
| | | this.$message({ |
| | | type: 'success', |
| | | message: 'å 餿å!', |
| | | }); |
| | | }) |
| | | .catch(() => { |
| | | this.$message({ |
| | | type: 'info', |
| | | message: '已忶å é¤', |
| | | }); |
| | | }); |
| | | // this.dialogMessage="æ¯å¦å é¤" |
| | | // this.dialogFlag = 1; |
| | | // this.dialogFrom ={ |
| | | // node:node, |
| | | // val:data |
| | | // } |
| | | // this.dialogVisible=true;//ç®å½æ æ´æ¹å¼¹çª |
| | | // const parent = node.parent; |
| | | // const children = parent.data.children || parent.data; |
| | | // const index = children.findIndex((d) => d.id === data.id); |
| | | // let res = children.splice(index, 1); |
| | | // // console.log(res); |
| | | // // console.log(data); |
| | | // console.log(this.flaten(res)); |
| | | }, |
| | | flaten(arr) { |
| | | return arr.reduce((p, v, i) => { |
| | | for (let i = 0; i < p.length; i++) { |
| | | if (p[i].children) { |
| | | delete p[i].children; |
| | | } |
| | | } |
| | | return p.concat(v.children ? this.flaten(v.children).concat(v) : v); |
| | | }, []); |
| | | }, |
| | | handleNodeClick(data) { |
| | | // console.log(data); |
| | | this.$store.commit('verChangeNodes', data); |
| | | this.breadList = []; |
| | | this.getTreeNode(this.$refs.tree.getNode(data.id)); |
| | | }, |
| | | getTreeNode(node) { |
| | | if (node && node.label) { |
| | | this.breadList.unshift(node.label); |
| | | this.getTreeNode(node.parent); //éå½ |
| | | this.breadLabel = this.breadList.join('>'); |
| | | this.$store.commit('verchangeCatas', this.breadLabel); |
| | | } |
| | | }, |
| | | handleDragStart(node, ev) { |
| | | this.old_dirDat = JSON.parse(JSON.stringify(this.dirData)); //å°å¤ä»½çdiréæ°èµå¼ |
| | | }, |
| | | |
| | | handleDrop(draggingNode, dropNode, dropType, ev) { |
| | | // console.log("è¢«ææ½èç¹", draggingNode); |
| | | // console.log("è¿å
¥çèç¹", dropNode); |
| | | // console.log("æ¾ç½®ä½ç½®", dropType); |
| | | // console.log("äºä»¶", ev); |
| | | // if (dropType !== "inner") { |
| | | // // 1.ä¿®æ¹ç¶èç¹pid |
| | | // draggingNode.data.pid = dropNode.data.pid; |
| | | // dropNode.parent.childNodes.forEach((item, index) => { |
| | | // // 2.ä¿®æ¹èªèº«é¡ºåºoid |
| | | // item.data.oid = index + 1; |
| | | // }); |
| | | // } |
| | | // // console.log(draggingNode.data.id); |
| | | // let res = this.oriData.filter((item) => item.id == draggingNode.data.id); |
| | | // console.log(res); |
| | | this.$confirm('æ¤æä½å°ä¿åç®å½æ´æ¹, æ¯å¦ç»§ç»?', 'æç¤º', { |
| | | confirmButtonText: 'ç¡®å®', |
| | | cancelButtonText: 'åæ¶', |
| | | type: 'warning', |
| | | }) |
| | | .then(() => { |
| | | let paramData = []; |
| | | let data = dropType != 'inner' ? dropNode.parent.data : dropNode.data; |
| | | let nodeData = |
| | | dropNode.level == 1 && dropType != 'inner' ? data : data.children; |
| | | let pid = ''; |
| | | nodeData.forEach((item, i) => { |
| | | if (dropType != 'inner') { |
| | | if (draggingNode.data.pid === dropNode.data.pid) { |
| | | pid = item.pid; |
| | | } else { |
| | | pid = dropNode.data.pid; |
| | | } |
| | | } else { |
| | | pid = data.id; |
| | | } |
| | | let collection = { |
| | | id: item.id, |
| | | name: item.name, |
| | | pid, |
| | | oid: i + 1, |
| | | }; |
| | | paramData.push(collection); |
| | | }); |
| | | // console.log(paramData); |
| | | let arr = []; |
| | | this.oriData.forEach((e) => { |
| | | paramData.forEach((item) => { |
| | | if (item.id === e.id) { |
| | | e = item; |
| | | } |
| | | }); |
| | | arr.push(e); |
| | | }); |
| | | this.newData = arr; |
| | | this.sendChange(); |
| | | this.$message({ |
| | | type: 'success', |
| | | message: 'æ´æ¹æå!', |
| | | }); |
| | | }) |
| | | .catch(() => { |
| | | this.$message({ |
| | | type: 'info', |
| | | message: 'å·²åæ¶æ´æ¹', |
| | | }); |
| | | this.dirData = this.old_dirDat; //å°å¤ä»½çdiréæ°èµå¼ |
| | | }); |
| | | }, |
| | | |
| | | sendChange() { |
| | | updateDirTree(this.newData).then((res) => { |
| | | console.log(res); |
| | | if (res.status == 200) { |
| | | this.$message({ |
| | | type: 'success', |
| | | message: 'æ´æ°æå!', |
| | | }); |
| | | } |
| | | }); |
| | | }, |
| | | }, |
| | | mounted() { |
| | | this.getDirTree(); |
| | | }, |
| | | watch: { |
| | | showBtn: { |
| | | immediate: true, |
| | | handler(val) { |
| | | if (val) { |
| | | this.showEdit = val; |
| | | this.draggable = val; |
| | | } |
| | | }, |
| | | }, |
| | | showBread: { |
| | | immediate: true, |
| | | handler(val) { |
| | | if (val) this.showBread = val; |
| | | }, |
| | | }, |
| | | }, |
| | | }; |
| | | </script> |
| | | |
| | | <style lang="less" scoped> |
| | | .wrap { |
| | | width: 98.5%; |
| | | height: 100%; |
| | | |
| | | .bread { |
| | | width: 100%; |
| | | height: 5%; |
| | | margin: 0 auto; |
| | | overflow: auto; |
| | | } |
| | | |
| | | .treeBox { |
| | | margin-top: 1%; |
| | | width: 100%; |
| | | height: 94%; |
| | | overflow: auto; |
| | | |
| | | .el-tree { |
| | | background: transparent; |
| | | font-size: 15px; |
| | | font-family: Microsoft YaHei; |
| | | font-weight: 400; |
| | | color: #000000; |
| | | |
| | | // /deep/ .el-tree-node__label { |
| | | // font-size: 18px; |
| | | // } |
| | | /deep/ .el-tree-node { |
| | | padding-top: 10px; |
| | | // padding-bottom: 10px; |
| | | } |
| | | |
| | | /deep/ .el-tree-node:focus > .el-tree-node__content { |
| | | background-color: #b9b9b9; |
| | | } |
| | | |
| | | /deep/ .el-tree-node__content:hover { |
| | | background-color: rgb(153, 153, 153); |
| | | } |
| | | |
| | | .btnBox { |
| | | margin-left: 5px; |
| | | |
| | | .el-button + .el-button { |
| | | margin-left: 5px; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | </style> |
| | |
| | | <template> |
| | | <div class="authorityManagement_box"> |
| | | <My-bread :list="['æ°æ®ç®¡ç', 'çæ¬ç®¡ç']"></My-bread> |
| | | <My-bread |
| | | :list="[ |
| | | `${$t('dataManage.dataManage')}`, |
| | | `${$t('dataManage.versionManage')}`, |
| | | ]" |
| | | ></My-bread> |
| | | <el-divider /> |
| | | <div class="searchComp"> |
| | | <el-form ref="ruleForm" :model="ruleForm" :inline="true"> |
| | | <el-form-item label="å
³é®å" prop="name"> |
| | | <el-input v-model="ruleForm.name" placeholder="请è¾å
¥" /> |
| | | <el-form-item :label="$t('dataManage.vmobj.keyword')" prop="name"> |
| | | <el-input |
| | | v-model="ruleForm.name" |
| | | :placeholder="$t('common.pleaseInput')" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <el-button |
| | | @click="submitForm('ruleForm')" |
| | | @click="onSubmit('ruleForm')" |
| | | icon="el-icon-search" |
| | | type="primary" |
| | | size="small" |
| | | >æ¥è¯¢</el-button |
| | | >{{ $t('common.iquery') }}</el-button |
| | | > |
| | | <!-- <el-button |
| | | <el-button |
| | | @click="InsertFormdialog = true" |
| | | icon="el-icon-plus" |
| | | size="small" |
| | | >{{ $t('common.append') }}</el-button |
| | | > |
| | | <el-button |
| | | @click="resetForm('ruleForm')" |
| | | icon="el-icon-refresh" |
| | | type="info" |
| | | icon="el-icon-delete" |
| | | size="small" |
| | | >éç½®</el-button |
| | | >{{ $t('common.empty') }}</el-button |
| | | > |
| | | <span style="display:none">{{ pathId }}</span> --> |
| | | </el-form-item> |
| | | </el-form> |
| | | </div> |
| | | <div class="bottom"> |
| | | <div class="leftTree"> |
| | | <catalogueTree></catalogueTree> |
| | | <ver-dir-tree></ver-dir-tree> |
| | | </div> |
| | | <div class="rightTable"> |
| | | <div class="table_box"> |
| | | <el-table |
| | | :data="tableData" |
| | | border |
| | | style="width: 100%" |
| | | fit |
| | | height="99%" |
| | | > |
| | | <el-table :data="tableData" stripe style="width: 100%" height="99%"> |
| | | <!-- <el-table-column type="selection" width="40" /> --> |
| | | <el-table-column width="50" type="index" label="åºå·" /> |
| | | <el-table-column min-width="130" prop="name" label="æ°æ®åç§°" /> |
| | | <el-table-column min-width="160" prop="path" label="æå±ç®å½" /> |
| | | <el-table-column |
| | | min-width="100" |
| | | prop="create_time" |
| | | label="å建æ¶é´" |
| | | align="center" |
| | | type="index" |
| | | :label="$t('dataManage.vmobj.index')" |
| | | width="70px" |
| | | /> |
| | | <el-table-column align="center" prop="id" v-if="false" /> |
| | | <el-table-column |
| | | align="center" |
| | | prop="name" |
| | | :label="$t('dataManage.vmobj.name')" |
| | | /> |
| | | <el-table-column |
| | | min-width="50" |
| | | prop="create_user" |
| | | label="å建人å" |
| | | align="center" |
| | | prop="depName" |
| | | :label="$t('dataManage.vmobj.catalogue')" |
| | | /> |
| | | <el-table-column min-width="80" prop="up_unit" label="ä¸ä¼ åä½" /> |
| | | <el-table-column min-width="50" prop="status" label="æ°æ®ç¶æ" /> |
| | | <el-table-column min-width="50" prop="version" label="æ°æ®çæ¬" /> |
| | | <el-table-column min-width="50" label="æä½"> |
| | | <el-table-column |
| | | align="center" |
| | | prop="descr" |
| | | :label="$t('dataManage.vmobj.describe')" |
| | | /> |
| | | <el-table-column |
| | | align="center" |
| | | prop="createUser" |
| | | :label="$t('dataManage.vmobj.createonuser')" |
| | | /> |
| | | <el-table-column |
| | | align="center" |
| | | prop="createTime" |
| | | :label="$t('dataManage.vmobj.createontime')" |
| | | :formatter="formatTime" |
| | | /> |
| | | <el-table-column |
| | | align="center" |
| | | prop="UpdateUser" |
| | | :label="$t('dataManage.vmobj.updateonuser')" |
| | | /> |
| | | <el-table-column |
| | | align="center" |
| | | prop="updateTime" |
| | | :label="$t('dataManage.vmobj.updateontime')" |
| | | :formatter="formatTime" |
| | | /> |
| | | <el-table-column min-width="150" :label="$t('common.operate')"> |
| | | <template slot-scope="scope"> |
| | | <!-- <el-link @click="showDetail(scope.$index, scope.row)" |
| | | >æ¥ç</el-link |
| | | > --> |
| | | <el-link |
| | | <el-button |
| | | @click="handleEdit(scope.$index, scope.row)" |
| | | style="margin-left: 10px" |
| | | >ä¿®æ¹</el-link |
| | | type="warning" |
| | | size="small" |
| | | >{{ $t('common.update') }}</el-button |
| | | > |
| | | <!-- <el-link |
| | | <el-button |
| | | @click="handleDelete(scope.$index, scope.row)" |
| | | style="margin-left: 10px" |
| | | >å é¤</el-link |
| | | > --> |
| | | type="danger" |
| | | size="small" |
| | | >{{ $t('common.delete') }}</el-button |
| | | > |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | <el-pagination |
| | | @size-change="handleSizeChange" |
| | | @current-change="handleCurrentChange" |
| | | :current-page="currentPage" |
| | | :page-sizes="[10, 20, 50, 100]" |
| | | :page-size="10" |
| | | :current-page="listData.pageIndex" |
| | | :page-sizes="[10, 20, 30, 40]" |
| | | :page-size="listData.pageSize" |
| | | layout="total, sizes, prev, pager, next, jumper" |
| | | :total="count" |
| | | > |
| | |
| | | <el-card class="box-card"> |
| | | <div slot="header" class="clearfix"> |
| | | <span>详ç»ä¿¡æ¯</span> |
| | | <div style="float: right; cursor: pointer" @click="closeDetial"> |
| | | <div style="float: right; cursor: pointer"> |
| | | <i class="el-icon-close"></i> |
| | | </div> |
| | | </div> |
| | |
| | | </div> |
| | | </el-card> |
| | | </div> |
| | | <el-dialog title="ä¿®æ¹è¯¦æ
" :visible.sync="dialogFormVisible"> |
| | | <el-dialog |
| | | :title="$t('dataManage.vmobj.editVersion')" |
| | | :visible.sync="dialogFormVisible" |
| | | > |
| | | <el-form :model="upform"> |
| | | <el-form-item label="æ°æ®åç§°" :label-width="formLabelWidth"> |
| | | <el-form-item |
| | | :label="$t('dataManage.vmobj.name')" |
| | | :label-width="formLabelWidth" |
| | | > |
| | | <el-input v-model="upform.name" autocomplete="off"></el-input> |
| | | </el-form-item> |
| | | <el-form-item |
| | | :label="$t('dataManage.vmobj.catalogue')" |
| | | :label-width="formLabelWidth" |
| | | > |
| | | <el-input |
| | | v-model="upform.name" |
| | | v-model="upform.depName" |
| | | autocomplete="off" |
| | | disabled |
| | | ></el-input> |
| | | <el-button style="margin-left: 20px" @click="showVerTree(2)">{{ |
| | | $t('common.choose') |
| | | }}</el-button> |
| | | </el-form-item> |
| | | <el-form-item label="æå±ç®å½" :label-width="formLabelWidth"> |
| | | <el-input |
| | | v-model="upform.path" |
| | | autocomplete="off" |
| | | disabled |
| | | ></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="å建æ¶é´" :label-width="formLabelWidth"> |
| | | <el-date-picker |
| | | v-model="upform.create_time" |
| | | value-format="yyyy-MM-dd" |
| | | type="date" |
| | | placeholder="éæ©æ¥æ" |
| | | style="width: 100%" |
| | | disabled |
| | | > |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | <el-form-item label="å建人å" :label-width="formLabelWidth"> |
| | | <el-input |
| | | v-model="upform.create_user" |
| | | autocomplete="off" |
| | | disabled |
| | | ></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="ä¸ä¼ åä½" :label-width="formLabelWidth"> |
| | | <el-input |
| | | v-model="upform.up_unit" |
| | | autocomplete="off" |
| | | disabled |
| | | ></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="æ°æ®ç¶æ" :label-width="formLabelWidth"> |
| | | <el-input |
| | | v-model="upform.status" |
| | | autocomplete="off" |
| | | disabled |
| | | ></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="æ°æ®çæ¬" :label-width="formLabelWidth"> |
| | | <el-input v-model="upform.version" autocomplete="off"></el-input> |
| | | <el-form-item |
| | | :label="$t('dataManage.vmobj.describe')" |
| | | :label-width="formLabelWidth" |
| | | > |
| | | <el-input v-model="upform.descr" autocomplete="off"></el-input> |
| | | </el-form-item> |
| | | </el-form> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button type="primary" @click="updateForm">ç¡® å®</el-button> |
| | | <el-button @click="dialogFormVisible = false">å æ¶</el-button> |
| | | <el-button @click="editFromDataClose">{{ |
| | | $t('common.close') |
| | | }}</el-button> |
| | | <el-button @click="editFromData" type="primary">{{ |
| | | $t('common.confirm') |
| | | }}</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | <el-dialog |
| | | :title="$t('dataManage.vmobj.addVersion')" |
| | | :visible.sync="InsertFormdialog" |
| | | > |
| | | <el-form :model="insertform"> |
| | | <el-form-item |
| | | :label="$t('dataManage.vmobj.name')" |
| | | :label-width="formLabelWidth" |
| | | > |
| | | <el-input v-model="insertform.name" autocomplete="off"></el-input> |
| | | </el-form-item> |
| | | <el-form-item |
| | | :label="$t('dataManage.vmobj.catalogue')" |
| | | :label-width="formLabelWidth" |
| | | > |
| | | <el-input |
| | | v-model="insertform.path" |
| | | autocomplete="off" |
| | | disabled |
| | | ></el-input> |
| | | <el-button style="margin-left: 20px" @click="showVerTree(3)">{{ |
| | | $t('common.choose') |
| | | }}</el-button> |
| | | </el-form-item> |
| | | |
| | | <el-form-item |
| | | :label="$t('dataManage.vmobj.describe')" |
| | | :label-width="formLabelWidth" |
| | | > |
| | | <el-input v-model="insertform.descr" autocomplete="off"></el-input> |
| | | </el-form-item> |
| | | </el-form> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button @click="insertFromDataClose">{{ |
| | | $t('common.close') |
| | | }}</el-button> |
| | | <el-button @click="insertFromData" type="primary">{{ |
| | | $t('common.confirm') |
| | | }}</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | <div class="leftTrees" v-if="showCata"> |
| | | <div class="treeBox"> |
| | | <ver-dir-trees></ver-dir-trees> |
| | | </div> |
| | | <div class="btnBox"> |
| | | <el-button type="primary" size="small" @click="selectCataName">{{ |
| | | $t('common.confirm') |
| | | }}</el-button> |
| | | <el-button type="primary" size="small" @click="showCata = false">{{ |
| | | $t('common.close') |
| | | }}</el-button> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import { |
| | | queryMetaData, |
| | | queryDataCount, |
| | | updateMetaData, |
| | | dltMetaDatas, |
| | | } from "../../api/api"; |
| | | import catalogueTree from "../../components/catalogueTree.vue"; |
| | | import MyBread from "../../components/MyBread.vue"; |
| | | select_Ver_ByPageAndCount, |
| | | insertVersion, |
| | | deleteVersion, |
| | | updateVersion, |
| | | } from '../../api/api'; |
| | | import verDirTree from './verDirTree.vue'; |
| | | import MyBread from '../../components/MyBread.vue'; |
| | | import verDirTrees from './verDirTrees.vue'; |
| | | import moment from 'moment'; |
| | | export default { |
| | | name: "versionManage", |
| | | components: { MyBread, catalogueTree }, |
| | | name: 'versionManage', |
| | | components: { MyBread, verDirTree, verDirTrees }, |
| | | data() { |
| | | return { |
| | | multipleSelection: [], |
| | | formLabelWidth: "120px", |
| | | showCata: false, |
| | | formLabelWidth: '100px', |
| | | dialogFormVisible: false, |
| | | upform: {}, |
| | | InsertFormdialog: false, |
| | | showinfoBox: false, |
| | | itemdetail: {}, |
| | | ruleForm: { |
| | | name: "", |
| | | }, |
| | | count: 0, |
| | | pageSize: 10, |
| | | pageNum: 1, |
| | | nowPid: -1, |
| | | upform: {}, |
| | | ruleForm: {}, |
| | | insertform: {}, |
| | | tableData: [], |
| | | currentPage: 1, |
| | | searchName: "", |
| | | count: 0, |
| | | rowFlag: null, |
| | | listData: { |
| | | name: null, |
| | | depName: null, |
| | | pageIndex: 1, |
| | | pageSize: 10, |
| | | }, |
| | | }; |
| | | }, |
| | | created() { |
| | | this.getMetaData(10, 1, "", -1); |
| | | this.getMetaCount("", -1); |
| | | this.getRoleTabelData(); |
| | | }, |
| | | computed: { |
| | | pathId() { |
| | |
| | | }, |
| | | }, |
| | | methods: { |
| | | // è¯·æ±æ°æ®å
容 |
| | | getMetaData(size, num, name, pid) { |
| | | queryMetaData(size, num, name, pid).then((res) => { |
| | | this.tableData = res.data; |
| | | }); |
| | | resetForm() { |
| | | this.ruleForm = {}; |
| | | this.$store.state.verCateNode = {}; |
| | | this.$bus.$emit('clearTressLabel', true); |
| | | this.getRoleTabelData(); |
| | | }, |
| | | // è¯·æ±æ°æ®æ°é |
| | | getMetaCount(name, pid) { |
| | | queryDataCount(name, pid).then((res) => { |
| | | this.count = res.data; |
| | | }); |
| | | onSubmit() { |
| | | this.getRoleTabelData(); |
| | | }, |
| | | // å
³é®åæ¥è¯¢ |
| | | submitForm(formName) { |
| | | this.$refs[formName].validate((valid) => { |
| | | if (valid) { |
| | | this.searchName = this.ruleForm.name.trim(); |
| | | this.getMetaData(10, 1, this.searchName); |
| | | this.getMetaCount(this.searchName); |
| | | } else { |
| | | console.log("error submit!!"); |
| | | return false; |
| | | } |
| | | }); |
| | | async getRoleTabelData() { |
| | | if (this.listData.tab == '') { |
| | | delete this.listData.tab; |
| | | } |
| | | |
| | | this.listData.name = this.ruleForm.name; |
| | | this.listData.depName = this.$store.state.verCateNode.name; |
| | | console.log(this.listData); |
| | | const data = await select_Ver_ByPageAndCount(this.listData); |
| | | console.log(data); |
| | | if (data.code != 200) { |
| | | this.$message.error('å表è°ç¨å¤±è´¥'); |
| | | } |
| | | this.tableData = data.result; |
| | | this.count = data.count; |
| | | }, |
| | | // éç½®æ¥è¯¢ |
| | | resetForm(formName) { |
| | | this.getMetaData(10, 1, "", -1); |
| | | this.getMetaCount(""); |
| | | this.searchName = ""; |
| | | this.$refs[formName].resetFields(); |
| | | handleSizeChange(val) { |
| | | this.listData.pageSize = val; |
| | | this.getRoleTabelData(); |
| | | }, |
| | | // è·åå¤ééä¸ç对象 |
| | | handleSelectionChange(val) { |
| | | this.multipleSelection = val; |
| | | console.log(val); |
| | | handleCurrentChange(val) { |
| | | this.listData.pageIndex = val; |
| | | this.getRoleTabelData(); |
| | | }, |
| | | // æ¥ççé¢ |
| | | showDetail(index, row) { |
| | | // console.log(index, row); |
| | | this.showinfoBox = true; |
| | | this.itemdetail = row; |
| | | showVerTree(res) { |
| | | this.showCata = true; |
| | | this.rowFlag = res; |
| | | }, |
| | | // å
³éæ¥ç |
| | | closeDetial() { |
| | | this.showinfoBox = false; |
| | | this.itemdetail = {}; |
| | | selectCataName() { |
| | | this.showCata = false; |
| | | if (this.rowFlag == 3) { |
| | | this.insertform.path = this.$store.state.verCateNodes.name; |
| | | this.insertform.dirid = this.$store.state.verCateNodes.id; |
| | | } else if (this.rowFlag == 2) { |
| | | this.upform.depName = this.$store.state.verCateNodes.name; |
| | | this.upform.dirid = this.$store.state.verCateNodes.id; |
| | | } |
| | | }, |
| | | // ä¿®æ¹çé¢ |
| | | editFromDataClose() { |
| | | this.dialogFormVisible = false; |
| | | this.upform = {}; |
| | | }, |
| | | async editFromData() { |
| | | if (this.upform.depName == null) { |
| | | this.$message({ |
| | | message: 'è¯·éæ©è§è²æå±åä½', |
| | | type: 'warning', |
| | | }); |
| | | return; |
| | | } |
| | | const data = await updateVersion(this.upform); |
| | | if (data.code == 200) { |
| | | this.dialogFormVisible = false; |
| | | this.upform = {}; |
| | | this.$message({ |
| | | message: 'ä¿®æ¹æåï¼', |
| | | type: 'success', |
| | | }); |
| | | this.getRoleTabelData(); |
| | | } else { |
| | | this.$message({ |
| | | message: 'ä¿®æ¹å¤±è´¥ï¼', |
| | | type: 'warning', |
| | | }); |
| | | } |
| | | }, |
| | | insertFromDataClose() { |
| | | this.InsertFormdialog = false; |
| | | this.insertform = {}; |
| | | }, |
| | | async insertFromData() { |
| | | if (this.insertform.dirid == null) { |
| | | this.$message({ |
| | | message: 'è¯·éæ©è§è²æå±åä½', |
| | | type: 'warning', |
| | | }); |
| | | return; |
| | | } |
| | | const data = await insertVersion(this.insertform); |
| | | if (data.code == 200) { |
| | | this.InsertFormdialog = false; |
| | | this.insertform = {}; |
| | | this.$message({ |
| | | message: 'æ·»å æåï¼', |
| | | type: 'success', |
| | | }); |
| | | this.getRoleTabelData(); |
| | | } else { |
| | | this.$message({ |
| | | message: 'æ·»å 失败ï¼', |
| | | type: 'warning', |
| | | }); |
| | | } |
| | | }, |
| | | formatTime(row, column) { |
| | | let date = row[column.property]; |
| | | if (date === undefined || date === null) { |
| | | return ''; |
| | | } |
| | | return moment(parseInt(date)).format('YYYY-MM-DD HH:mm:ss'); |
| | | }, |
| | | async handleDelete(index, row) { |
| | | const data = await deleteVersion(row.id); |
| | | if (data.code == 200) { |
| | | this.InsertFormdialog = false; |
| | | this.$message({ |
| | | message: 'å 餿åï¼', |
| | | type: 'success', |
| | | }); |
| | | this.getRoleTabelData(); |
| | | } else { |
| | | this.$message({ |
| | | message: 'å é¤å¤±è´¥ï¼', |
| | | type: 'warning', |
| | | }); |
| | | } |
| | | }, |
| | | handleEdit(index, row) { |
| | | this.dialogFormVisible = true; |
| | | this.upform = JSON.parse(JSON.stringify(row)); |
| | | }, |
| | | // æäº¤ä¿®æ¹ |
| | | updateForm() { |
| | | this.$confirm("æ¯å¦ç¡®å®ç¼è¾?", "æç¤º", { |
| | | confirmButtonText: "ç¡®å®", |
| | | cancelButtonText: "åæ¶", |
| | | type: "warning", |
| | | }) |
| | | .then(() => { |
| | | this.dialogFormVisible = false; |
| | | updateMetaData(this.upform).then((res) => { |
| | | if (res.data == 1) { |
| | | this.$message({ |
| | | message: "ä¿®æ¹æå", |
| | | type: "success", |
| | | }); |
| | | } |
| | | this.getMetaData(10, 1); |
| | | }); |
| | | }) |
| | | .catch(() => {}); |
| | | }, |
| | | // å é¤ |
| | | handleDelete(index, row) { |
| | | // console.log(index, row); |
| | | this.$confirm("ç¡®å®æ¯å¦å é¤?", "æç¤º", { |
| | | confirmButtonText: "ç¡®å®", |
| | | cancelButtonText: "åæ¶", |
| | | type: "warning", |
| | | }) |
| | | .then(() => { |
| | | dltMetaDatas({ id: row.id }).then((res) => { |
| | | if (res.data == 1) { |
| | | this.$message({ |
| | | type: "success", |
| | | message: "å 餿å!", |
| | | }); |
| | | this.getMetaData(10, 1, ""); |
| | | this.getMetaCount(""); |
| | | } |
| | | }); |
| | | // å¤éå é¤ |
| | | // if (this.multipleSelection.length > 1) { |
| | | // let ids = ""; |
| | | // this.multipleSelection.forEach((e) => { |
| | | // ids += `id=${e.id}&`; |
| | | // }); |
| | | // let res = ids.substring(0, ids.length - 1); |
| | | // dltMetaDatas(res).then((res) => { |
| | | // console.log(res); |
| | | // }); |
| | | // } |
| | | }) |
| | | .catch(() => {}); |
| | | }, |
| | | |
| | | // æ¡æ°ä¿®æ¹ |
| | | handleSizeChange(val) { |
| | | this.pageSize = val; |
| | | this.getMetaData(this.pageSize, 1, this.searchName, this.nowPid); |
| | | this.getMetaCount(this.searchName, this.nowPid); |
| | | }, |
| | | // 页æ°ä¿®æ¹ |
| | | handleCurrentChange(val) { |
| | | this.pageNum = val; |
| | | this.getMetaData( |
| | | this.pageSize, |
| | | this.pageNum, |
| | | this.searchName, |
| | | this.nowPid |
| | | ); |
| | | this.getMetaCount(this.searchName, this.nowPid); |
| | | this.upform = row; |
| | | }, |
| | | }, |
| | | watch: { |
| | | pathId: { |
| | | immediate: true, |
| | | handler(val) { |
| | | if (val) this.nowPid = val; |
| | | this.getMetaData(10, 1, "", this.nowPid); |
| | | this.getMetaCount("", this.nowPid); |
| | | }, |
| | | handler(val) {}, |
| | | }, |
| | | }, |
| | | }; |
| | |
| | | height: 100%; |
| | | padding: 10px; |
| | | box-sizing: border-box; |
| | | .el-input { |
| | | width: 300px !important; |
| | | } |
| | | .leftTrees { |
| | | position: absolute; |
| | | z-index: 9999; |
| | | top: 9%; |
| | | left: 37%; |
| | | width: 400px; |
| | | height: 600px; |
| | | background: #f0f2f5; |
| | | border: 1px solid #000; |
| | | .treeBox { |
| | | height: 550px; |
| | | overflow: auto; |
| | | /deep/ .el-tree-node__content:hover { |
| | | background-color: rgb(153, 153, 153); |
| | | } |
| | | } |
| | | .btnBox { |
| | | width: 123px; |
| | | margin: 10px auto 0; |
| | | // background-color: red; |
| | | } |
| | | } |
| | | .searchComp { |
| | | margin: 10px auto; |
| | | background: #fff; |
| | |
| | | border: 1px solid rgb(202, 201, 204); |
| | | .el-form-item { |
| | | margin: 5px; |
| | | } |
| | | .el-input { |
| | | width: 467px; |
| | | } |
| | | } |
| | | .bottom { |
| | |
| | | margin: 0 auto; |
| | | overflow: auto; |
| | | background: #fff; |
| | | .el-table { |
| | | height: 100%; |
| | | } |
| | | .el-table /deep/ .el-table__header-wrapper tr th { |
| | | background-color: rgb(255, 255, 255) !important; |
| | | color: rgb(0, 0, 0); |
| | | } |
| | | // ä¿®æ¹æ¯è¡æ ·å¼ï¼ |
| | | .el-table /deep/ .el-table__row { |
| | | background-color: rgba(255, 255, 255) !important; |
| | | color: rgb(0, 0, 0); |
| | | } |
| | | .el-table /deep/ .el-table__body tr.current-row > td { |
| | | background-color: rgb(211, 211, 211) !important; |
| | | } |
| | | .el-table /deep/ .el-table__body tr:hover > td { |
| | | background-color: rgb(211, 211, 211) !important; |
| | | } |
| | | // ä¿®æ¹è¡¨æ ¼æ¯è¡è¾¹æ¡çæ ·å¼ï¼ |
| | | .el-table /deep/ td, |
| | | .el-table /deep/ th.is-leaf { |
| | | border-bottom: 1px solid #eee; |
| | | border-right: 1px solid #eee; |
| | | } |
| | | .el-table /deep/ .el-table__cell { |
| | | padding: 0; |
| | | } |
| | | // .el-table { |
| | | // height: 100%; |
| | | // } |
| | | // .el-table /deep/ .el-table__header-wrapper tr th { |
| | | // background-color: rgb(255, 255, 255) !important; |
| | | // color: rgb(0, 0, 0); |
| | | // } |
| | | // // ä¿®æ¹æ¯è¡æ ·å¼ï¼ |
| | | // .el-table /deep/ .el-table__row { |
| | | // background-color: rgba(255, 255, 255) !important; |
| | | // color: rgb(0, 0, 0); |
| | | // } |
| | | // .el-table /deep/ .el-table__body tr.current-row > td { |
| | | // background-color: rgb(211, 211, 211) !important; |
| | | // } |
| | | // .el-table /deep/ .el-table__body tr:hover > td { |
| | | // background-color: rgb(211, 211, 211) !important; |
| | | // } |
| | | // // ä¿®æ¹è¡¨æ ¼æ¯è¡è¾¹æ¡çæ ·å¼ï¼ |
| | | // .el-table /deep/ td, |
| | | // .el-table /deep/ th.is-leaf { |
| | | // border-bottom: 1px solid #eee; |
| | | // border-right: 1px solid #eee; |
| | | // } |
| | | // .el-table /deep/ .el-table__cell { |
| | | // padding: 0; |
| | | // } |
| | | // è®¾ç½®è¡¨æ ¼æ¯è¡çé«åº¦ï¼ |
| | | .el-table /deep/ .el-table__header tr, |
| | | .el-table /deep/ .el-table__header th { |
| | | height: 40px; |
| | | } |
| | | .el-table__body tr, |
| | | .el-table__body td { |
| | | height: 40px; |
| | | padding: 0; |
| | | } |
| | | // .el-table /deep/ .el-table__header tr, |
| | | // .el-table /deep/ .el-table__header th { |
| | | // height: 40px; |
| | | // } |
| | | // .el-table__body tr, |
| | | // .el-table__body td { |
| | | // height: 40px; |
| | | // padding: 0; |
| | | // } |
| | | // è®¾ç½®è¡¨æ ¼è¾¹æ¡é¢è²ï¼ |
| | | |
| | | .el-table--border::after, |
| | |
| | | } |
| | | } |
| | | /deep/ .el-dialog { |
| | | width: 500px !important; |
| | | width: 620px !important; |
| | | margin-top: 10vh !important; |
| | | } |
| | | |
| | |
| | | } |
| | | /deep/ .el-dialog__footer { |
| | | padding-top: 0 !important; |
| | | width: 200px; |
| | | width: 600px; |
| | | display: flex; |
| | | margin: 0 auto; |
| | | justify-content: center; |
| | |
| | | oid: data.children ? data.children.length + 1 : 1, |
| | | }; |
| | | this.id = newChild.id; //ä¿®æ¹æ°çæå¤§I |
| | | console.log(newChild); |
| | | |
| | | if (!data.children) { |
| | | this.$set(data, 'children', []); |
| | |
| | | }, |
| | | methods: { |
| | | formatTime(row, column) { |
| | | let date = row[column.property]; // æè¿éçcrtime=1657528899æä»¥è¿é*1000 |
| | | let date = row[column.property]; |
| | | |
| | | if (date === undefined || date === null) { |
| | | return ''; |
| | | } |
| | | |
| | | return moment(parseInt(date)).format('YYYY-MM-DD HH:mm:ss'); |
| | | }, |
| | | showDepTree(res) { |
| | |
| | | this.listData.name = this.roleForm.username; |
| | | this.listData.depName = this.roleForm.value; |
| | | const data = await select_Role_ByPageAndCount(this.listData); |
| | | console.log(data.result); |
| | | if (data.code != 200) { |
| | | this.$message.error('å表è°ç¨å¤±è´¥'); |
| | | } |
| | |
| | | this.getRoleTabelData(); |
| | | }, |
| | | handleCurrentChange(val) { |
| | | console.log(`å½å页: ${val}`); |
| | | this.listData.pageIndex = val; |
| | | this.getRoleTabelData(); |
| | | }, |
| | |
| | | this.UpdateFormdialog = true; |
| | | }, |
| | | onSubmit() { |
| | | console.log(this.roleForm); |
| | | this.getRoleTabelData(); |
| | | }, |
| | | resetForm(formName) { |