From f37b3eceb7e962d32ebe420bb8b931ea4dae4fe2 Mon Sep 17 00:00:00 2001 From: 田源 <lastanimals@163.com> Date: 星期四, 28 三月 2024 17:56:33 +0800 Subject: [PATCH] 表单参照 --- Source/ProjectWeb/src/views/test/referDemo/DynamicsFrom.vue | 8 Source/ProjectWeb/src/router/page/index.js | 14 Source/ProjectWeb/src/views/base/buttonTable.js | 1 Source/ProjectWeb/src/components/refer/vciWebRefer.vue | 6 Source/ProjectWeb/src/const/refer/refer.js | 99 ++++++ Source/ProjectWeb/src/views/test/referDemo/referDemoDialog.vue | 13 Source/ProjectWeb/src/views/base/uiDefineVO.js | 572 +++++++++++-------------------------- Source/ProjectWeb/src/components/dynamic-components/dynamic-form.vue | 167 ++++++++++ Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue | 17 9 files changed, 471 insertions(+), 426 deletions(-) diff --git a/Source/ProjectWeb/src/components/dynamic-components/dynamic-form.vue b/Source/ProjectWeb/src/components/dynamic-components/dynamic-form.vue index 41cbbad..8326916 100644 --- a/Source/ProjectWeb/src/components/dynamic-components/dynamic-form.vue +++ b/Source/ProjectWeb/src/components/dynamic-components/dynamic-form.vue @@ -18,13 +18,34 @@ <template slot="menuForm"> <dynamic-button type="form" :butttonList="componentVO.buttons" @buttonClick="buttonClick"></dynamic-button> </template> + + <template v-for="item in slotData" :slot="item.prop + ''"> + <vciWebRefer v-if="item.type == 'refer'" + :key="item.prop" + referType="master" + :data-key="item.prop" + :disabled="item.disabled || false" + :display="item.display || true" + :referConfig="item.referConfig || {}" + :reloadFormKey="(item.referConfig.useFormKey && item.referConfig.formValues && item.referConfig.formValues[item.referConfig.useFormKey]) || ''" + :text="item.referConfig.showProp" + :value="item.prop || item.value" + @setReferValue="setReferValue" + :ref="'referFormRef'+item.prop"> + + </vciWebRefer> + </template> </avue-form> </div> </template> <script> +import vciWebRefer from '@/components/refer/vciWebRefer' +import VciWebRefer from "@/components/refer/vciWebRefer"; +import {verifyNull, verifySlash} from "@/util/validate"; export default { name: "dynamic-form", + components: {VciWebRefer}, props: { componentVO: { type: Object, @@ -61,6 +82,7 @@ data() { return { form: {}, + ruleForm:{} } }, mounted() { @@ -71,11 +93,11 @@ submitBtn: false, emptyBtn: false, height: 300, - column: this.getColumnData(0) + column: this.getColumnData() } }, slotData() { - return this.getColumnData(0) + return this.getColumnData() } }, watch:{ @@ -87,26 +109,66 @@ } } }, + watch:{ + slotData:{ + handler(newV){ + this.getDictList(newV) + }, + immediate: true, + }, + ruleForm: { + handler(val) { + if (val) { + if (Array.isArray(val)) { // 妫�鏌� val 鏄惁涓烘暟缁� + for (let code of val) { + if ( + code.type == "refer" && + code.referConfig && + code.referConfig.useFormKey + ) { + code.referConfig.formValues = val; + // code.referConfigTemp.options = code.referConfig; + } + } + } else if (typeof val === 'object') { // 妫�鏌� val 鏄惁涓哄璞� + // 杩唬瀵硅薄鐨勯�昏緫 + } + this.$emit("input", val); + } + }, + deep: true, + immediate: true, + }, + }, methods: { //杞寲鏁版嵁 formColumn(formList) { return formList.map(item => { const typeValue = item.type === 'text' ? 'input' : item.type === 'combox' ? 'select' : item.type; + const focusFunc = item.type === 'refer' ? (i) => { + + } : undefined; + + return { label: item.text, prop: item.field, type: typeValue, + labelWidth:item.text.length >= 6 ? 115 : 90, value: item.defaultValue, dicData: item.type === 'combox' ? item.dicData : item.dicUrl, readonly: item.readOnly, disabled: item.disabled, + display: !item.hidden, labelSuffix: item.suffix, suffixIcon: item.prefix, placeholder: item.placeholder, clearable: item.clearable, tip: item.tooltips, keyAttr: item.keyAttr, + focus:focusFunc, + referConfig:item.referConfig, rules: [{ required: item.required, message: `璇疯緭鍏�${item.text}!`, @@ -117,9 +179,9 @@ }, //鏁版嵁鍒ょ┖ - getColumnData(index) { - if (this.componentVO && this.componentVO.tableDefineVO && this.componentVO.tableDefineVO.cols && this.componentVO.tableDefineVO.cols.length > 0) { - return this.formColumn(this.componentVO.tableDefineVO.cols[index]) + getColumnData() { + if (this.componentVO && this.componentVO.formDefineVO && this.componentVO.formDefineVO.items && this.componentVO.formDefineVO.items.length > 0) { + return this.formColumn(this.componentVO.formDefineVO.items) } else { return null; } @@ -128,6 +190,101 @@ buttonClick(item) { console.log(item.id) }, + async getDictList(val) { + for (let code of val) { + if (!verifyNull(code.dictData) && code.type == "select") { + if ( + verifySlash(code.dictCode) && + Object.prototype.hasOwnProperty.call(code, "dictCode") + ) { + const res = await getlistByCode(code.dictCode); + if (res.success) { + const dic = res.data; + code.dictData = dic.map((d) => { + return { + label: d.name, + key: d.code, + value: d.id, + }; + }); + } + } else { + this.getDicts(code.dictCode) + .then((res) => { + if (res.success) { + const dic = res.obj.datas; + code.dictData = dic.map((d) => { + return { + label: d.name, + key: d.code, + value: d.code, + }; + }); + } + }) + .catch(() => { + this.$message.error(` 鏁版嵁瀛楀吀${code.dictCode}閿欒`); + }); + } + } + if (code.type == "refer") { + if (code.referConfig && code.referConfig.useFormKey) { + if (verifyNull(code.referConfig.formValuesKey)) { + code.referConfig.formValuesKey = "ruleForm"; + } + code.referConfig.formValues = this[code.referConfig.formValuesKey]; + } + code.referConfigTemp = { + title: code.label, + showProp: + code.showProp || code.referConfig.showProp || code.prop + "Name", + prop: code.prop, + propMap: code.propMap || {}, + placeholder: code.placeholder + ? code.placeholder + : ` 璇烽�夋嫨` + code.label, + options: code.referConfig, + }; + } + } + this.formTemplateData = val; + }, + setReferValue(data) { + if (data.prop) { + this.ruleForm[data.prop] = data.value || ""; + this.ruleForm[data.showProp] = data.text || ""; + if (data.propMap) { + //璇存槑闇�瑕佹槧灏� + for (let key in data.propMap) { + let mapFields = data.propMap[key].split(","); + let value = []; + data.rawData.forEach((_item) => { + var temp; + if (!_item.extendData) { + _item.extendData = {}; + } + if (mapFields.length == 1) { + var mapField = mapFields[0]; + temp = _item[mapField] || _item["extendData"][mapField]; + } else { + //鏈夊涓� + var mutiTemp = []; + mapFields.forEach((_itemField) => { + mutiTemp.push( + _item[_itemField] || _item["extendData"][_itemField] + ); + }); + temp = mutiTemp.join(" "); + } + if (temp != null && temp != "") { + value.push(temp); + } + }); + this.ruleForm[key] = value.join(","); + } + } + } + }, } } </script> diff --git a/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue b/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue index 0a6ecb1..b2e6561 100644 --- a/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue +++ b/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue @@ -7,6 +7,7 @@ :page.sync="pageType" :table-loading="loading" @row-click="rowClickChange" + @search-change='searchChange' @selection-change="selectChange"> <!--top鍖哄煙鎸夐挳--> <template slot="menuLeft" slot-scope="scope"> @@ -514,7 +515,7 @@ }); }, pageType() { - return this.areasName.indexOf('westArea') == 0 ? this.simplePage : this.page; + return this.areasName === 'westArea' ? this.simplePage : this.page; } }, watch: { @@ -538,13 +539,6 @@ this.parentHeight = this.$el.clientHeight - this.$children[0].$children[1].$children[0].$el.clientHeight - this.$children[0].$children[2].$el.clientHeight - 5; } } - }, - sourceData:{ - handler(newval) { - //婧愭暟鎹湁鍙樺寲鏃跺彉鏇村綋鍓嶅尯鍩熸暟鎹� - console.log(this.areasName); - console.log(newval); - } } }, created() { @@ -562,6 +556,13 @@ }, selectChange(row) { this.selectList = row; + }, + TreeSelectChange(row) { + this.TreeSelectList = row; + }, + searchChange(form,done){ + console.log(form) + done() this.$emit("setDataStore", { area: this.areasName, dataStore:row diff --git a/Source/ProjectWeb/src/components/refer/vciWebRefer.vue b/Source/ProjectWeb/src/components/refer/vciWebRefer.vue index 5f63690..8607636 100644 --- a/Source/ProjectWeb/src/components/refer/vciWebRefer.vue +++ b/Source/ProjectWeb/src/components/refer/vciWebRefer.vue @@ -178,10 +178,10 @@ }, data() { return { - refertype: this.referConfig.options.type, + refertype: this.referConfig.type, emitData: {}, - width:this.referConfig.options.width || '900px', - height:this.referConfig.options.height || '600px' + width:this.referConfig.width || '900px', + height:this.referConfig.height || '600px' }; }, computed: { diff --git a/Source/ProjectWeb/src/const/refer/refer.js b/Source/ProjectWeb/src/const/refer/refer.js new file mode 100644 index 0000000..741e9e5 --- /dev/null +++ b/Source/ProjectWeb/src/const/refer/refer.js @@ -0,0 +1,99 @@ +import {verifyNull, verifySlash} from "@/util/validate"; + +export default { + async getDictList(val,that) { + for (let code of val) { + if (!verifyNull(code.dictData) && code.type == "select") { + if ( + verifySlash(code.dictCode) && + Object.prototype.hasOwnProperty.call(code, "dictCode") + ) { + const res = await getlistByCode(code.dictCode); + if (res.success) { + const dic = res.data; + code.dictData = dic.map((d) => { + return { + label: d.name, + key: d.code, + value: d.id, + }; + }); + } + } else { + that.getDicts(code.dictCode) + .then((res) => { + if (res.success) { + const dic = res.obj.datas; + code.dictData = dic.map((d) => { + return { + label: d.name, + key: d.code, + value: d.code, + }; + }); + } + }) + .catch(() => { + that.$message.error(` 鏁版嵁瀛楀吀${code.dictCode}閿欒`); + }); + } + } + if (code.type == "refer") { + if (code.referConfig && code.referConfig.useFormKey) { + if (verifyNull(code.referConfig.formValuesKey)) { + code.referConfig.formValuesKey = "ruleForm"; + } + code.referConfig.formValues = that[code.referConfig.formValuesKey]; + } + code.referConfigTemp = { + title: code.label, + showProp: + code.showProp || code.referConfig.showProp || code.prop + "Name", + prop: code.prop, + propMap: code.propMap || {}, + placeholder: code.placeholder + ? code.placeholder + : ` 璇烽�夋嫨` + code.label, + options: code.referConfig, + }; + } + } + that.formTemplateData = val; + }, + setReferValue(data,that) { + if (data.prop) { + that.ruleForm[data.prop] = data.value || ""; + that.ruleForm[data.showProp] = data.text || ""; + if (data.propMap) { + //璇存槑闇�瑕佹槧灏� + for (let key in data.propMap) { + let mapFields = data.propMap[key].split(","); + let value = []; + data.rawData.forEach((_item) => { + var temp; + if (!_item.extendData) { + _item.extendData = {}; + } + if (mapFields.length == 1) { + var mapField = mapFields[0]; + temp = _item[mapField] || _item["extendData"][mapField]; + } else { + //鏈夊涓� + var mutiTemp = []; + mapFields.forEach((_itemField) => { + mutiTemp.push( + _item[_itemField] || _item["extendData"][_itemField] + ); + }); + temp = mutiTemp.join(" "); + } + if (temp != null && temp != "") { + value.push(temp); + } + }); + that.ruleForm[key] = value.join(","); + } + } + } + }, +} diff --git a/Source/ProjectWeb/src/router/page/index.js b/Source/ProjectWeb/src/router/page/index.js index c4396fc..657b0e0 100644 --- a/Source/ProjectWeb/src/router/page/index.js +++ b/Source/ProjectWeb/src/router/page/index.js @@ -95,10 +95,22 @@ component: Layout, children: [ { - path: '', // 绌鸿矾寰勮〃绀鸿闂� '/dynamic-table' 鏃跺姞杞� Layout 缁勪欢 + path: '', // 绌鸿矾寰勮〃绀鸿闂� '/dynamic-form' 鏃跺姞杞� Layout 缁勪欢 component: () => import('@/components/dynamic-components/dynamic-form'), props: true } ] }, + { + path: '/referIndex', + name: '鍔ㄦ�佽〃鏍奸〉闈�', + component: Layout, + children: [ + { + path: '', // 绌鸿矾寰勮〃绀鸿闂� '/dynamic-form' 鏃跺姞杞� Layout 缁勪欢 + component: () => import('@/views/test/referDemo/index'), + props: true + } + ] + }, ] diff --git a/Source/ProjectWeb/src/views/base/buttonTable.js b/Source/ProjectWeb/src/views/base/buttonTable.js index 32964b5..80c6508 100644 --- a/Source/ProjectWeb/src/views/base/buttonTable.js +++ b/Source/ProjectWeb/src/views/base/buttonTable.js @@ -33,6 +33,7 @@ if (location === 'menu') { that.visible = true; that.$refs.dynamicForm.form = that.scope.row; + console.log('1',that.scope.row) console.log(that.scope.row) } else if (location === 'top' && that.selectList.length === 1) { that.visible = true; diff --git a/Source/ProjectWeb/src/views/base/uiDefineVO.js b/Source/ProjectWeb/src/views/base/uiDefineVO.js index 18e92fb..7bd0e5a 100644 --- a/Source/ProjectWeb/src/views/base/uiDefineVO.js +++ b/Source/ProjectWeb/src/views/base/uiDefineVO.js @@ -2625,7 +2625,175 @@ "extendAttr": "", "firstR": null, "firstV": null, - "formDefineVO": null, + "formDefineVO": { + "btmType": "test", + "columnOneRow": 3, + "freeMarkerEls": [], + "id": "materialform", + "items": [ + { + 'comboxKey': null, + 'customClass': null, + 'data': null, + 'dateFormate': null, + 'defaultValue': "", + 'displayExtension': "", + 'extendAttrMap': null, + 'extendAttrString': null, + 'field': "name", + 'hidden': false, + 'keyAttr': true, + 'prefix': null, + 'readOnly': false, + 'referConfig': null, + 'required': true, + 'selectLibFlag': null, + 'showField': null, + 'suffix': '$', + 'text': "鍚嶇О", + 'tooltips': '鍚嶇О', + 'type': "text", + 'unique': false, + 'verify': "" + }, + { + 'comboxKey': null, + 'customClass': null, + 'data': null, + 'dateFormate': null, + 'defaultValue': "", + 'displayExtension': "", + 'extendAttrMap': null, + 'extendAttrString': null, + 'field': "code", + 'hidden': false, + 'keyAttr': false, + 'prefix': null, + 'readOnly': false, + 'referConfig': null, + 'required': false, + 'selectLibFlag': null, + 'showField': null, + 'suffix': null, + 'disabled':true, + 'text': "缂栫爜", + 'tooltips': null, + 'type': "text", + 'unique': false, + 'verify': "" + }, + { + 'comboxKey': "EnumReviewType", + 'customClass': null, + 'data': null, + 'dateFormate': null, + 'defaultValue': "department", + 'displayExtension': "", + 'extendAttrMap': null, + 'extendAttrString': null, + 'field': "reviewtype", + 'hidden': false, + 'keyAttr': false, + 'prefix': null, + 'readOnly': false, + 'referConfig': null, + 'required': false, + 'selectLibFlag': null, + 'showField': null, + 'suffix': null, + 'text': "绫诲瀷", + 'tooltips': null, + 'type': "combox", + 'unique': false, + 'verify': "", + 'dicData': [{ + 'label': '娴嬭瘯1', + 'value': 'department' + }, { + 'label': '娴嬭瘯2', + 'value': 'departments' + }] + }, + { + 'comboxKey': null, + 'customClass': null, + 'data': null, + 'dateFormate': null, + 'defaultValue': "", + 'displayExtension': "", + 'extendAttrMap': null, + 'extendAttrString': null, + 'field': "creator", + 'hidden': true, + 'keyAttr': false, + 'prefix': null, + 'readOnly': true, + 'referConfig': null, + 'required': false, + 'selectLibFlag': null, + 'showField': null, + 'suffix': null, + 'text': "鍒涘缓浜�", + 'tooltips': null, + 'type': "text", + 'unique': false, + 'verify': "" + }, + { + 'comboxKey': null, + 'customClass': null, + 'data': null, + 'dateFormate': "yyyy-MM-dd HH:mm:ss", + 'defaultValue': "", + 'displayExtension': "", + 'extendAttrMap': null, + 'extendAttrString': null, + 'field': "createtime", + 'hidden': true, + 'keyAttr': false, + 'prefix': null, + 'readOnly': false, + 'referConfig': null, + 'required': false, + 'selectLibFlag': null, + 'showField': null, + 'suffix': null, + 'text': "鍒涘缓鏃堕棿", + 'tooltips': null, + 'type': "datetime", + 'unique': false, + 'verify': "" + }, + { + 'comboxKey': null, + 'customClass': null, + 'data': null, + 'dateFormate': null, + 'defaultValue': "", + 'displayExtension': "", + 'extendAttrMap': null, + 'extendAttrString': null, + 'field': "content", + 'hidden': false, + 'keyAttr': false, + 'prefix': null, + 'readOnly': false, + 'referConfig': null, + 'required': false, + 'selectLibFlag': null, + 'showField': null, + 'suffix': null, + 'text': "澶囨敞", + 'tooltips': null, + 'type': "textarea", + 'unique': false, + 'verify': "" + } + ], + "linkTypeFlag": false, + "oid": "ED51077B-253F-2AB9-A0E6-BA289052B03C", + "queryTemplateName": "" + } , "id": null, "lastModifier": null, "lastModifyTime": null, @@ -2646,403 +2814,7 @@ "revisionValue": null, "secretGrade": null, "secretGradeText": null, - "tableDefineVO": { - "btmType": "fileobject", - "cols": [ - [ - { - 'comboxKey': null, - 'customClass': null, - 'data': null, - 'dateFormate': null, - 'defaultValue': "", - 'displayExtension': "", - 'extendAttrMap': null, - 'extendAttrString': null, - 'field': "name", - 'hidden': false, - 'keyAttr': true, - 'prefix': null, - 'readOnly': false, - 'referConfig': null, - 'required': true, - 'selectLibFlag': null, - 'showField': null, - 'suffix': '$', - 'text': "鍚嶇О", - 'tooltips': '鍚嶇О', - 'type': "text", - 'unique': false, - 'verify': "" - }, - { - 'comboxKey': null, - 'customClass': null, - 'data': null, - 'dateFormate': null, - 'defaultValue': "", - 'displayExtension': "", - 'extendAttrMap': null, - 'extendAttrString': null, - 'field': "code", - 'hidden': false, - 'keyAttr': false, - 'prefix': null, - 'readOnly': false, - 'referConfig': null, - 'required': false, - 'selectLibFlag': null, - 'showField': null, - 'suffix': null, - 'disabled':true, - 'text': "缂栫爜", - 'tooltips': null, - 'type': "text", - 'unique': false, - 'verify': "" - }, - { - 'comboxKey': "EnumReviewType", - 'customClass': null, - 'data': null, - 'dateFormate': null, - 'defaultValue': "department", - 'displayExtension': "", - 'extendAttrMap': null, - 'extendAttrString': null, - 'field': "reviewtype", - 'hidden': false, - 'keyAttr': false, - 'prefix': null, - 'readOnly': false, - 'referConfig': null, - 'required': false, - 'selectLibFlag': null, - 'showField': null, - 'suffix': null, - 'text': "绫诲瀷", - 'tooltips': null, - 'type': "combox", - 'unique': false, - 'verify': "", - 'dicData': [{ - 'label': '娴嬭瘯1', - 'value': 'department' - }, { - 'label': '娴嬭瘯2', - 'value': 'departments' - }] - }, - { - 'comboxKey': null, - 'customClass': null, - 'data': null, - 'dateFormate': null, - 'defaultValue': "", - 'displayExtension': "", - 'extendAttrMap': null, - 'extendAttrString': null, - 'field': "creator", - 'hidden': true, - 'keyAttr': false, - 'prefix': null, - 'readOnly': true, - 'referConfig': null, - 'required': false, - 'selectLibFlag': null, - 'showField': null, - 'suffix': null, - 'text': "鍒涘缓浜�", - 'tooltips': null, - 'type': "text", - 'unique': false, - 'verify': "" - }, - { - 'comboxKey': null, - 'customClass': null, - 'data': null, - 'dateFormate': "yyyy-MM-dd HH:mm:ss", - 'defaultValue': "", - 'displayExtension': "", - 'extendAttrMap': null, - 'extendAttrString': null, - 'field': "createtime", - 'hidden': true, - 'keyAttr': false, - 'prefix': null, - 'readOnly': false, - 'referConfig': null, - 'required': false, - 'selectLibFlag': null, - 'showField': null, - 'suffix': null, - 'text': "鍒涘缓鏃堕棿", - 'tooltips': null, - 'type': "datetime", - 'unique': false, - 'verify': "" - }, - { - 'comboxKey': null, - 'customClass': null, - 'data': null, - 'dateFormate': null, - 'defaultValue': "", - 'displayExtension': "", - 'extendAttrMap': null, - 'extendAttrString': null, - 'field': "content", - 'hidden': false, - 'keyAttr': false, - 'prefix': null, - 'readOnly': false, - 'referConfig': null, - 'required': false, - 'selectLibFlag': null, - 'showField': null, - 'suffix': null, - 'text': "澶囨敞", - 'tooltips': null, - 'type': "textarea", - 'unique': false, - 'verify': "" - }, - ], - ], - "displayFolder": false, - "displayQueryArea": false, - "folderParentField": "", - "hasEditor": false, - "id": "documentFileList", - "limits": [ - 15, - 50, - 100, - 500, - 1000 - ], - "linkTypeFlag": false, - "oid": "40F0266E-9D12-F284-196B-379A40236F69", - "pageVO": null, - "queryColumns": null, - "queryTemplateName": "DocumentFiles", - "seniorQueryColumns": [ - { - "align": "left", - "colspan": 1, - "comboxKey": null, - "data": [], - "dateFormate": null, - "edit": null, - "editConfig": null, - "event": null, - "field": "name", - "fieldType": "text", - "fixed": null, - "hidden": false, - "minWidth": null, - "optionButtons": null, - "optionField": false, - "optionJsMap": null, - "queryField": null, - "referConfig": { - "backPath": null, - "displayTable": null, - "height": null, - "initSort": null, - "loadType": "all", - "mapFields": null, - "method": "GET", - "muti": false, - "onlyLeaf": false, - "paramForFormKey": null, - "parentFieldName": null, - "parentUsedField": null, - "parentValue": null, - "referContent": null, - "referType": null, - "remoteSort": false, - "tableConfig": null, - "textField": "name", - "type": null, - "url": null, - "useFormKey": null, - "valueField": "oid", - "where": null - }, - "rowspan": 1, - "showField": null, - "sort": false, - "sortField": null, - "style": null, - "templet": null, - "title": "鍚嶇О", - "unresize": false, - "width": 300 - }, - { - "align": "left", - "colspan": 1, - "comboxKey": null, - "data": [], - "dateFormate": null, - "edit": null, - "editConfig": null, - "event": null, - "field": "filesize", - "fieldType": "radio", - "fixed": null, - "hidden": false, - "minWidth": null, - "optionButtons": null, - "optionField": false, - "optionJsMap": null, - "queryField": null, - "referConfig": { - "backPath": null, - "displayTable": null, - "height": null, - "initSort": null, - "loadType": "all", - "mapFields": null, - "method": "GET", - "muti": false, - "onlyLeaf": false, - "paramForFormKey": null, - "parentFieldName": null, - "parentUsedField": null, - "parentValue": null, - "referContent": null, - "referType": null, - "remoteSort": false, - "tableConfig": null, - "textField": "name", - "type": null, - "url": null, - "useFormKey": null, - "valueField": "oid", - "where": null - }, - "rowspan": 1, - "showField": null, - "sort": false, - "sortField": null, - "style": null, - "templet": null, - "title": "鏂囦欢澶у皬", - "unresize": false, - "width": 150 - }, - { - "align": "left", - "colspan": 1, - "comboxKey": null, - "data": [], - "dateFormate": null, - "edit": null, - "editConfig": null, - "event": null, - "field": "creator_name,(,creator,)", - "fieldType": "text", - "fixed": null, - "hidden": false, - "minWidth": null, - "optionButtons": null, - "optionField": false, - "optionJsMap": null, - "queryField": null, - "referConfig": { - "backPath": null, - "displayTable": null, - "height": null, - "initSort": null, - "loadType": "all", - "mapFields": null, - "method": "GET", - "muti": false, - "onlyLeaf": false, - "paramForFormKey": null, - "parentFieldName": null, - "parentUsedField": null, - "parentValue": null, - "referContent": null, - "referType": null, - "remoteSort": false, - "tableConfig": null, - "textField": "name", - "type": null, - "url": null, - "useFormKey": null, - "valueField": "oid", - "where": null - }, - "rowspan": 1, - "showField": null, - "sort": false, - "sortField": "creator", - "style": null, - "templet": null, - "title": "鍒涘缓鑰�", - "unresize": false, - "width": 150 - }, - { - "align": "left", - "colspan": 1, - "comboxKey": null, - "data": [], - "dateFormate": "yyyy-MM-dd HH:mm:ss", - "edit": null, - "editConfig": null, - "event": null, - "field": "createtime", - "fieldType": "text", - "fixed": null, - "hidden": false, - "minWidth": null, - "optionButtons": null, - "optionField": false, - "optionJsMap": null, - "queryField": null, - "referConfig": { - "backPath": null, - "displayTable": null, - "height": null, - "initSort": null, - "loadType": "all", - "mapFields": null, - "method": "GET", - "muti": false, - "onlyLeaf": false, - "paramForFormKey": null, - "parentFieldName": null, - "parentUsedField": null, - "parentValue": null, - "referContent": null, - "referType": null, - "remoteSort": false, - "tableConfig": null, - "textField": "name", - "type": null, - "url": null, - "useFormKey": null, - "valueField": "oid", - "where": null - }, - "rowspan": 1, - "showField": null, - "sort": false, - "sortField": null, - "style": null, - "templet": null, - "title": "鍒涘缓鏃堕棿", - "unresize": false, - "width": 150 - } - ], - "whereSql": "" - }, + "tableDefineVO":null, "treeDefineVO": null, "treeTableDefineVO": null, "ts": null, @@ -3064,7 +2836,7 @@ "extendAttr": "", "firstR": null, "firstV": null, - "id": "1", + "id": "6", "international": null, "lastModifier": "developer", "lastModifyTime": "2022-07-18 17:30:52.000", @@ -3160,7 +2932,7 @@ "extendAttr": "", "firstR": null, "firstV": null, - "id": "2", + "id": "7", "international": null, "lastModifier": "developer", "lastModifyTime": "2022-07-18 17:30:52.000", diff --git a/Source/ProjectWeb/src/views/test/referDemo/DynamicsFrom.vue b/Source/ProjectWeb/src/views/test/referDemo/DynamicsFrom.vue index 9d8704a..821db59 100644 --- a/Source/ProjectWeb/src/views/test/referDemo/DynamicsFrom.vue +++ b/Source/ProjectWeb/src/views/test/referDemo/DynamicsFrom.vue @@ -201,14 +201,14 @@ }, formData: { handler(val) { - this.rules = handlerObj("prop", "rule", val); - //this.getDictList(val); + this.rules = val; + this.getDictList(val); }, immediate: true, }, ruleForm: { handler(val) { - for (let code of this.formTemplateData) { + for (let code of val) { if ( code.type == "refer" && code.referConfig && @@ -216,7 +216,7 @@ ) { code.referConfig.formValues = val; - code.referConfigTemp.options = code.referConfig; + // code.referConfigTemp.options = code.referConfig; } } this.$emit("input", val); diff --git a/Source/ProjectWeb/src/views/test/referDemo/referDemoDialog.vue b/Source/ProjectWeb/src/views/test/referDemo/referDemoDialog.vue index db97acf..1691d0a 100644 --- a/Source/ProjectWeb/src/views/test/referDemo/referDemoDialog.vue +++ b/Source/ProjectWeb/src/views/test/referDemo/referDemoDialog.vue @@ -1,8 +1,9 @@ <template> - <basic-dialog + <el-dialog :visible.sync="dialog.showDialog" :title="dialog.title" width="40%" + append-to-body :submit-icon="dialog.submitIcon" :submit-txt="dialog.submitTxt" :loading="dialog.loading" @@ -15,11 +16,11 @@ :form-prop="ruleForm" ref="referDialogFormRef" ></d-from> - </basic-dialog> + </el-dialog> </template> <script> -import { DFrom } from "@/views/test/referDemo/DynamicsFrom"; -import { deferFormTemplate } from "@/views/test/referDemo/referDemo"; +import DFrom from "@/views/test/referDemo/DynamicsFrom"; +import {deferFormTemplate} from "@/views/test/referDemo/referDemo"; import { handlerObj } from "@/util/platformUtils"; export default { name: "referDemoDialog", @@ -41,13 +42,15 @@ methods: { // 鎵撳紑瀵硅瘽妗� openDialog(event) { + console.log(event) this.dialog.type = event.type; if (event.type === "add") { this.dialog.title = "鏂板"; this.dialog.submitTxt = "鏂板"; this.dialog.submitIcon = "el-icon-plus"; this.formData = deferFormTemplate; - this.ruleForm = handlerObj("prop", "value", deferFormTemplate); + this.ruleForm = this.formData + } else if (event.type === "edit") { this.dialog.title = "淇敼"; this.dialog.submitTxt = "淇敼"; -- Gitblit v1.9.3