From 2bea732496b4f5051233ed94e206160992351596 Mon Sep 17 00:00:00 2001 From: yuxc <yuxc@vci-tech.com> Date: 星期三, 15 一月 2025 11:02:06 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/plt-web/plt-web-ui/src/components/PLT-basic-component/basicForm.vue | 80 +++++++++++++++++++++------------------ 1 files changed, 43 insertions(+), 37 deletions(-) diff --git a/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/basicForm.vue b/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/basicForm.vue index f1650ee..d09d91f 100644 --- a/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/basicForm.vue +++ b/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/basicForm.vue @@ -1,6 +1,6 @@ <template> <!--鍔ㄦ�佹ā鏉�--> - <avue-form ref="form" :option="option" v-model="form"> + <avue-form ref="basicform" :option="option" v-model="form" v-loading="loading"> <template v-for="item in allColumn" :slot="item.prop+ ''"> <vciWebRefer v-if="item.type === 'refer'" @@ -83,6 +83,7 @@ }, data() { return { + loading:false, form: this.formData, option: { menuBtn:false, @@ -98,10 +99,6 @@ text: "input", combox: "select", truefalse: "switch", - number: "number", - textarea: "textarea", - datetime: "datetime", - date: "date", refer: "refer", multiFile:"upload", richText:'richText' @@ -189,42 +186,45 @@ let col= { ...item, label: item.text, - prop: item.field, - showProp:item.showField, + prop: item.prop || item.field, + showProp: item.showProp || item.showField, type: type, - labelWidth: this.labelWidth || (item.text.length >= 6 ? 115 : 90), - disabled: item.readOnly || this.disabled, + labelWidth: item.labelWidth || this.labelWidth || (item.text.length >= 6 ? 115 : 90), + disabled: item.disabled || this.disabled, + readonly: item.readonly || item.readOnly, span: item.span ? item.span : item.type === "textarea" ? 24 : this.span, - value: item.defaultValue, - display: !item.hidden, - labelSuffix: item.suffix, - suffixIcon: item.prefix, - tip: item.tooltips, - dictCode: item.comboxKey, - valueFormat: item.dateFormate || "yyyy-MM-dd HH:mm:ss", - format: item.dateFormate, - rules: this.isEdit?(type=="select" || type=="refer" || type=="date" || type=="datetime"?[{ + value: item.value || item.defaultValue, + display: item.display || !item.hidden, + suffixIcon: item.suffixIcon || item.prefix, + labelSuffix: item.labelSuffix || item.suffix, + tip: item.tip || item.tooltips, + dictCode: item.dictCode || item.comboxKey, + valueFormat: item.valueFormat || item.dateFormate, + format: item.format || item.dateFormate, + }; + if(!item.rules || item.rules.length==0){ + col.rules=this.isEdit ? (type == "select" || type == "refer" || type == "date" || type == "datetime" ? [{ required: item.required || false, message: `璇烽�夋嫨${item.text}!`, trigger: "change" - },{ - required: item.required|| false, + }, { + required: item.required || false, message: `璇烽�夋嫨${item.text}!`, trigger: "submit" - }]:[{ - required: item.required|| false, + }] : [{ + required: item.required || false, message: `璇疯緭鍏�${item.text}!`, trigger: "blur" - },{ - required: item.required|| false, + }, { + required: item.required || false, message: `璇疯緭鍏�${item.text}!`, trigger: "submit" - }]):[] - }; + }]) : [] + } if(!this.isEdit){ col.placeholder=col.label; col.disabled=true; @@ -238,20 +238,20 @@ col.display=false } } - if (col.type === "select") { - if(col.data && col.data.length>0){ + if (col.type === "select" || col.type==='radio' || col.type==='checkbox') { + if (col.data && col.data.length > 0) { col.dicData = col.data.map((d) => { return { label: d.key, key: d.value, value: d.value, - attributes:d.attributes + attributes: d.attributes }; }); - }else if(!validatenull(col.dictCode)) { + } else if (!validatenull(col.dictCode)) { getDicts(col.dictCode).then((res) => { - if (res.data.success){ - if(res.data.data && res.data.obj == null){ + if (res.data.success) { + if (res.data.data && res.data.obj == null) { res.data.obj = res.data.data } const dic = res.data.obj; @@ -260,7 +260,7 @@ label: d.value, key: d.key, value: d.key, - attributes:d.attributes + attributes: d.attributes }; }); } @@ -326,7 +326,7 @@ // 琛ㄥ崟鏍¢獙 validate(done) { return new Promise((resolve) => { - this.$refs.form.validate((valid,fields) => { + this.$refs.basicform.validate((valid,fields) => { done(valid,fields); if (valid) { resolve(true); @@ -339,13 +339,19 @@ }); }, resetFields(){ - this.$refs.form.resetFields() + this.$refs.basicform.resetFields() }, clearValidate(props){ - this.$refs.form.clearValidate(props) + this.$refs.basicform.clearValidate(props) }, updateDic(prop,data){ - this.$refs.form.updateDic(prop,data) + this.$refs.basicform.updateDic(prop,data) + }, + dicInit(){ + this.$refs.basicform.dicInit() + }, + getPropRef(){ + this.$refs.basicform.getPropRef() } }, }; -- Gitblit v1.9.3