From 7e9203562933ffa67b36a5280fa9ccc32e9f4839 Mon Sep 17 00:00:00 2001 From: ludc Date: 星期四, 07 九月 2023 15:34:35 +0800 Subject: [PATCH] 前端代码打包 --- Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue | 61 +++++++++++++++++++++++++++--- 1 files changed, 54 insertions(+), 7 deletions(-) diff --git a/Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue b/Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue index b53cf1a..092ab2d 100644 --- a/Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue +++ b/Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue @@ -84,7 +84,7 @@ trendsSpan: { type: Number, default: 8, - }, + } }, data() { return { @@ -130,14 +130,16 @@ methods: { // 娓叉煋琛ㄥ崟妯℃澘 templateRender(formItemList) { - console.log(formItemList, "formItemList"); // 鏃犻渶鍒嗙粍鏁版嵁 let column = []; let group = []; let dictKeys = []; let slotColumnList = []; + let value='' formItemList.forEach((formItem) => { formItem = this.resetFormConfig(formItem); + // console.log('formItem',formItem) + // console.log('formItem.dicData.value',formItem.dicData) if (formItem.type === "line") { group.push({ label: formItem.text, @@ -170,6 +172,12 @@ message = "璇疯緭鍏�"; trigger = "blur"; } + let fieldMapKey='' + if( formItem.type == "refer"){ + if(!formItem.fieldMap){ + fieldMapKey=formItem.field+'Id' + } + } let columnItem = { label: formItem.text, labelslot: true, @@ -184,13 +192,14 @@ append: this.preOrSufFixShow("text", formItem.suffix), prefixIcon: this.preOrSufFixShow("icon", formItem.prefix), suffixIcon: this.preOrSufFixShow("icon", formItem.suffix), - valueFormat: formItem.dateFormate, + valueFormat:formItem.dateFormate, format: formItem.dateFormate, keyAttr: formItem.keyAttr, - value: formItem.defaultValue, + value: formItem.dicData && formItem.dicData.length > 0 && formItem.type == 'combox' ? formItem.dicData[0].id : null, placeholder: formItem.inputTip, comboxKey: formItem.comboxKey, tip: formItem.tooltips, + // readonly:true, display: !formItem.hidden, maxlength: formItem.maxlength, filterable: true, @@ -200,8 +209,9 @@ title: formItem.text, showField: formItem.showField || formItem.field, field: formItem.field, + fieldMap:formItem.fieldMap || {fieldMapKey:'id'}, placeholder: formItem.inputTip, - options: formItem.referConfig, + options: formItem.referConfig } : {}, span: formItem.span @@ -212,7 +222,7 @@ rules: [ { required: formItem.required, - message: `璇�${message}${formItem.text}`, + message: `${message}${formItem.text}`, trigger, }, { @@ -227,6 +237,7 @@ value: "key", }, }; + // console.log('columnItem',columnItem) slotColumnList.push(columnItem); if (group.length === 0) { column.push(columnItem); @@ -235,7 +246,6 @@ } }); this.slotColumnList = slotColumnList; - console.log(column, "column"); this.$set(this.option, "column", column); this.$set(this.option, "group", group); this.updateIndex++; @@ -245,6 +255,7 @@ this.geDictData(dictKeys); this.getFormDetail(); + }, // 浣跨敤浼犲叆鐨勮〃鍗曟暟鎹厤缃� resetFormConfig(formItem) { @@ -356,6 +367,42 @@ if (data.field) { this.form[data.field] = data.value || ""; this.form[data.showField] = data.text || ""; + if (data.fieldMap) { + //璇存槑闇�瑕佹槧灏� + for (let key in data.fieldMap) { + let mapFields = data.fieldMap[key].split(","); + let value = []; + data.rawData.forEach(_item => { + var temp; + if (!_item.attributes) { + _item.attributes = _item; + } + if (mapFields.length == 1) { + var mapField = mapFields[0]; + if (mapField.indexOf("attribute.") > -1) { + temp = _item['attributes'][mapField.subString("attribute.".length)]; + } else { + temp = _item['attributes'][mapField] || _item[mapField]; + } + } else { + //鏈夊涓� + var mutiTemp = []; + layui.each(mapFields, function (_indexField, _itemField) { + if (_itemField.indexOf("attribute.") > -1) { + mutiTemp.push(_item['attributes'][_itemField.subString("attribute.".length)]); + } else { + mutiTemp.push(_item['attributes'][_itemField] || _item[_itemField]); + } + }); + temp = mutiTemp.join(' '); + } + if (temp != null && temp != '') { + value.push(temp); + } + }) + this.form[key] = value.join(','); + } + } this.$emit("getFormData", this.form); this.$emit("referConfigDataUpdate", data); } -- Gitblit v1.9.3