From 2fc52c10964ef98247e6e0eeb4be9c85c9d513f6 Mon Sep 17 00:00:00 2001 From: wangting <675591594@qq.com> Date: 星期五, 22 十一月 2024 11:06:17 +0800 Subject: [PATCH] 修改basic表单组件 --- Source/plt-web/plt-web-ui/src/views/modelingMenu/queryTemplate/linkTypeQuery/formDialog.vue | 115 +++++++++++++++++++++++++++++++++++++++------------------ 1 files changed, 78 insertions(+), 37 deletions(-) diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/queryTemplate/linkTypeQuery/formDialog.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/queryTemplate/linkTypeQuery/formDialog.vue index d37c1d1..abc4359 100644 --- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/queryTemplate/linkTypeQuery/formDialog.vue +++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/queryTemplate/linkTypeQuery/formDialog.vue @@ -60,6 +60,8 @@ :queryCondition="queryCondition" :queryTree="queryTree" :levelFlag.sync="form.levelFlag" + :searchColumn="searchColumn" + @queryHandler="queryHandler" ></form-query-dialog> </fieldset> </el-main> @@ -85,7 +87,7 @@ <script> import {getAllOrderbyAttributeByLink} from "@/api/modeling/linkType/api"; -import {linkSave} from "@/api/queryTemplate/linkTypeQuery"; +import {linkSave,getCriteria} from "@/api/queryTemplate/linkTypeQuery"; import basicOption from "@/util/basic-option"; import {queryTemplateListByAttr} from "@/api/queryTemplate/queryDefine"; import formQueryDialog from "./formQueryDialog.vue"; @@ -94,24 +96,35 @@ components:{formQueryDialog}, data(){ return { + searchColumn: [ + { + label: 'OID', + prop: 'OID', + }, + { + label: 'CREATOR', + prop: 'CREATOR' + }, + { + label: 'CREATETIME', + prop: 'CREATETIME' + }, + ], dialog: { showDialog: false, title: "鍒涘缓", - submitTxt: "淇濆瓨", - submitIcon: "el-icon-check", loading: false, type: "add", }, crudDialog: { showDialog: false, - submitTxt: "淇濆瓨", - submitIcon: "el-icon-check", }, formItems:[{ label: '鏌ヨ妯℃澘鍚嶇О', prop: 'qtName', type: 'input', - span:5, + span:4.5, + labelWidth: 100, rules: [{ required: true, message: "璇疯緭鍏ユ煡璇㈡ā鏉垮悕绉�", @@ -122,8 +135,8 @@ prop: 'direction', type: 'radio', value:'positive', - labelWidth:70, - span: 3, + labelWidth:80, + span: 3.5, dicData: [{ label: '姝e悜', value: 'positive' @@ -141,7 +154,8 @@ label: '鐗堟湰鐗堟', prop: 'version', type: 'select', - span:5, + span:4, + labelWidth:110, dicData: [{ label: '褰撳墠鐗堟湰褰撳墠鐗堟', value: 1 @@ -160,7 +174,7 @@ label: '鏌ヨ鏄惁鏈変笅绾�', prop: 'queryISLeaf', type: 'switch', - labelWidth:140, + labelWidth:150, dicData: [ { label: '鍚�', value: false @@ -173,7 +187,7 @@ label: '瀛愯妭鐐瑰眰娆℃暟', prop: 'level', type: 'number', - span:3, + labelWidth:130, value:1 }], form:{ @@ -183,7 +197,7 @@ queryTemplate:{} }, //宸叉湁鎺掑簭鍒楄〃閰嶇疆 - crudOption: { + crudOption: { ...basicOption, addBtn: false, editBtn: false, @@ -268,12 +282,21 @@ addBtn: false, filter:false, draggable: true, - allowDrop: () => { + allowDrop: (node) => { return false; }, - allowDrag: () => { - return true; + allowDrag: (dropNode) => { + if (dropNode.data.attrs && dropNode.data.attrs.length>0) { + return false; + } else { + return true; + } }, + props:{ + label:'name', + value:'name', + children:'attrs' + } }, linkQueryDefineForm:'',//閾炬帴绫诲瀷鏌ヨ妯℃澘瀹氫箟閫変腑鍊� linkQueryDefineDic:[],//閾炬帴绫诲瀷鏌ヨ妯℃澘瀹氫箟涓嬫媺鏁版嵁 @@ -369,7 +392,9 @@ }; } this.dialog.showDialog = true; + this.treeOption.defaultExpandedKeys=[data.treeData.label] this.getTemp(data.treeData.label, true) + }, cancelDialog() { this.dialog.loading = false; @@ -516,7 +541,7 @@ //鑾峰彇鏌ヨ妯℃澘瀹氫箟涓嬫媺 getTemp(btmName,linkFlag) { if (btmName) { - queryTemplateListByAttr({btmName: btmName, linkFlag: linkFlag,direction:this.form.direction}).then(res => { + queryTemplateListByAttr({btmName: btmName, linkFlag: linkFlag,direction:linkFlag?null:this.form.direction}).then(res => { const data = res.data.data.map(item => { item.label = item.name + '-' + (item.linkTypeName || item.btmName); item.value = item.name; @@ -534,33 +559,17 @@ }, linkQueryDefineChange(data) { if (data.value) { - const childData = data.item.attrs.map(item => { - return { - label: item.name, - value: item.name, - atttributes:item - }; - }); this.linkTreeData = [{ - label: data.value, - value: data.value, - children: childData + name: data.value, + attrs: data.item.attrs }] } }, businessQueryDefineChange(data) { if (data.value) { - const childData = data.item.attrs.map(item => { - return { - label: item.name, - value: item.name, - atttributes:item - }; - }); this.businessTreeData = [{ - label: data.value, - value: data.value, - children: childData + name: data.value, + attrs: data.item.attrs }] } }, @@ -576,7 +585,39 @@ if(this.form.levelFlag==1) { this.$refs.formQuery.$refs.tree.$emit('tree-node-drag-end', ev); } - } + }, + //鏌ヨ + queryHandler(){ + this.$refs.form.validate((valid) => { + if (valid) { + this.$refs.formQuery.queryResultDialog.loading=true; + const formData=this.initFormData(); + getCriteria(formData).then(res => { + if (res.data.success) { + const data = res.data.data; + const result = data.map(item => { + const filteredAttrs = item.hisAttrValList.filter(attr => + attr.attrName === "OID" || attr.attrName === "CREATOR" || attr.attrName === "CREATETIME" + ); + + const newObj = filteredAttrs.reduce((acc, attr) => { + acc[attr.attrName] = attr.attrVal; + return acc; + }, {}); + + return newObj; + }); + + this.$refs.formQuery.resultData = result; + this.$refs.formQuery.queryResultDialog.showDialog = true; + this.$refs.formQuery.queryResultDialog.loading = false; + } + }); + } else { + return false; + } + }); + }, }, } </script> -- Gitblit v1.9.3