diff --git a/src/components/navMenu/index.vue b/src/components/navMenu/index.vue index bbdbd002c..d5b998e22 100644 --- a/src/components/navMenu/index.vue +++ b/src/components/navMenu/index.vue @@ -125,11 +125,11 @@ export default { // // // title: '本地产品/项目库', // // // path: '/localProductsOrProjectLibrary' // // // }, - // { - // title: '企业标准库', - // path: '/enterpriseStandardDatabase', - // menuId: '3YVZP8R4TC' - // }, + { + title: '企业标准库', + path: '/enterpriseStandardDatabase', + menuId: '01ed8f752748227777b3572d56ee9ab5' + }, // { // title: '企标制修订计划', // path: '/enterBSysRevPlanManaLib', diff --git a/src/pages/regulatoryRepository/enterpriseStandardDatabase/components/EnterpriseStandardDatabase.vue b/src/pages/regulatoryRepository/enterpriseStandardDatabase/components/EnterpriseStandardDatabase.vue index f29cbcf88..be7ea2547 100644 --- a/src/pages/regulatoryRepository/enterpriseStandardDatabase/components/EnterpriseStandardDatabase.vue +++ b/src/pages/regulatoryRepository/enterpriseStandardDatabase/components/EnterpriseStandardDatabase.vue @@ -4,27 +4,43 @@
- + + + {{ node.label}} + + + 新增 + + + 编辑 + + + 删除 + + + +
@@ -860,6 +876,64 @@ }" @confirm="isTreeOk" > + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
+ +
@@ -893,6 +967,60 @@ export default { }, data () { return { + props: { + label: 'menuName', + children: 'children' + }, + productModal: false, // 模态框是否打开 + modalType: '', + productTitle: '', // 模态框标题 + // 规范 + productRules: { + menuName: [ + {required: true, message: '一级菜单不能为空', trigger: 'blur'}, + {type: 'string', max: 100, message: '最多输入100位', trigger: 'blur'} + ], + displaySeq: [ + {type: 'number', required: true, message: '排序号不能为空且为正整数', trigger: 'blur'}, + {type: 'string', validator: this.verify.validStandNumInCompile2, trigger: 'blur'} + ], + remarks: [ + {type: 'string', max: 500, message: '最多输入500位', trigger: 'blur'} + ], + dicTypeName: [ + {required: true, message: '选项不能为空', trigger: 'blur'}, + {type: 'string', max: 100, message: '最多输入100位', trigger: 'blur'} + ], + showIndex: [ + {type: 'number', required: true, message: '排序号不能为空且为正整数', trigger: 'blur'}, + {type: 'string', validator: this.verify.validStandNumInCompile2, trigger: 'blur'} + ], + describes: [ + {type: 'string', max: 500, message: '最多输入500位', trigger: 'blur'} + ] + }, + productModelAdd: { + id : "", + sorDivide : "INLAND_STAND", + menuName : "", + parentId : null, + parentIds : null, + parentIdsName : "", + displaySeq : "", + validFlag : "", + creationTime : "", + modifyTime : "", + remarks : "", + children : [], + // 模态框信息 + dicTypeName: '', + showIndex: '', + // 描述 + describes: '', + // 唯一辨识 + dicId: "" + }, + treeList: [], standId: '', visibleOrgTable: false, visibleShare: false, @@ -1423,6 +1551,183 @@ export default { } }, methods: { + closeModal () { + this.productModal = false + this.closeDrawer() + }, + // 提交新增/修改 + saveProduct (name) { + this.$refs[name].validate((valid) => { + if (valid) { + if (this.modalType === 1) { + this.$http.postData('sarResource/ts-resource/add', this.productModelAdd, { + _this: this + }, res => { + if (res.ok) { + this.selectMenuList() + this.productModal = false + this.productModelAdd = { + // 模态框信息 + dicTypeName: '', + showIndex: '', + // 描述 + describes: '', + // 唯一辨识 + dicId: this.$route.params.id + } + } else { + this.productModal = true + } + }, e => {}) + } else if (this.modalType === 2) { + this.$http.putData('sarResource/ts-resource', this.productModelAdd, { + _this: this + }, res => { + this.selectMenuList() + this.productModal = false + this.productModelAdd = { + // 模态框信息 + dicTypeName: '', + showIndex: '', + // 描述 + describes: '', + // 唯一辨识 + dicId: this.$route.params.id + } + }, e => { + }) + } + } else { + } + }) + }, + closeDrawer () { + this.$nextTick(() => { + this.$refs['productModelAdd'].resetFields() + this.productModelAdd = { + // 模态框信息 + dicTypeName: '', + showIndex: '', + // 描述 + describes: '', + // 唯一辨识 + dicId: this.$route.params.id + } + }) + this.productModal = false + }, + // 查询二级菜单 + selectMenuList () { + this.$http.get('sarResource/ts-resource', { + sorDivide: 'BUSINESS_STAND' + }, {}, res => { + if (res.ok) { + this.treeList = res.data + } + }) + }, + // 查询二级菜单 + selectChildMenu (row) { + this.$http.get('sarResource/ts-resource/getMenuById', { + menuId: row.id + }, {}, res => { + if (res.ok) { + if(this.modalType === 1){ + let idsName = "" + if(row.parentIds !== null){ + if(row.parentIds.indexOf(res.data.id) != -1){ + this.productModelAdd.parentIds = row.parentIds + }else { + this.productModelAdd.parentIds = row.parentIds + ',' + res.data.id + idsName = row.parentIdsName + ',' + res.data.menuName + } + }else { + this.productModelAdd.parentIds = res.data.id + idsName = res.data.menuName; + } + this.productModelAdd.parentId = res.data.id + this.productModelAdd.parentIdsName = idsName + this.$forceUpdate() + }else { + this.productModelAdd = res.data + } + } + }) + }, + update(data) { + this.modalType = 2 + this.selectChildMenu(data) + this.productModal = true + this.productTitle = '编辑信息' + // const newChild = { id: this.id++, label: 'testtest', children: [] }; + // if (!data.children) { + // this.$set(data, 'children', []); + // } + // data.children.push(newChild); + }, + + append(data) { + this.modalType = 1 + this.selectChildMenu(data) + this.productModal = true + this.productTitle = '新增下级菜单信息' + this.productModelAdd.dicTypeCode = '' + // const newChild = { id: this.id++, label: 'testtest', children: [] }; + // if (!data.children) { + // this.$set(data, 'children', []); + // } + // data.children.push(newChild); + }, + + remove(node, data) { + this.$confirm('是否删除菜单?', '提示', { + confirmButtonText: '确定', + confirmButtonClass: 'common-button-primary', + cancelButtonText: '取消', + roundButton: true, + type: 'warning' + }).then(() => { + this.$http.delete("sarResource/ts-resource", { + resourceId: data.id + }, res => { + }, e => { + if(e.ok){ + this.$message({ + type: 'success', + message: "删除成功" + }) + this.selectMenuList() + }else { + this.$message({ + type: 'warning', + message: e.message + }) + } + }) + }).catch(() => { + this.$refs.selections.clearSelection() + this.$message({ + type: 'info', + message: '已取消删除' + }) + }) + // const parent = node.parent; + // const children = parent.data.children || parent.data; + // const index = children.findIndex(d => d.id === data.id); + // children.splice(index, 1); + }, + // 树节点鼠标移入移出 + mouseenter(data){ + console.log(data) + this.$set(data, 'show', true) + if(data.parentId !== null){ + this.$set(data, 'showDel', true) + } + }, + mouseleave(data){ + this.$set(data, 'show', false) + this.$set(data, 'showDel', false) + }, /** * @description: 起草人名称展示 * @author: chenxiaoxi @@ -3147,7 +3452,7 @@ export default { mounted () { this.treeReload = true // 进入页面后查询树形结构目录 - this.selectMenu() + this.selectMenuList() // 查询各下拉框数据 this.$http.get('sys/dictype/getDicTypeListCode', '', { _this: this @@ -3194,7 +3499,7 @@ export default { height: 100%; //background: #fff; .tree-content { - width: 16%; + width: 20%; position: relative; /*height: 100%;*/ background: #fff;