From 5c487e8208311bfd93a904bfdae2cfab0e9b2cd7 Mon Sep 17 00:00:00 2001 From: 田源 <lastanimals@163.com> Date: 星期三, 07 六月 2023 18:10:35 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/UBCS-WEB/src/components/FormTemplate/FormTempalte.vue | 64 +++++++++++++++---------------- 1 files changed, 31 insertions(+), 33 deletions(-) diff --git a/Source/UBCS-WEB/src/components/FormTemplate/FormTempalte.vue b/Source/UBCS-WEB/src/components/FormTemplate/FormTempalte.vue index 1c1f9bc..6afac39 100644 --- a/Source/UBCS-WEB/src/components/FormTemplate/FormTempalte.vue +++ b/Source/UBCS-WEB/src/components/FormTemplate/FormTempalte.vue @@ -24,18 +24,20 @@ </span> </template> <template :slot="item.prop + ''" v-for="item in slotColumnList"> - <!-- <vciWebRefer + <vciWebRefer v-if="item.type == 'refer'" - :value="item.value" - :options="item.referConfig || {}" - ></vciWebRefer> --> + :referConfig="item.referConfig || {}" + :value="form[item.referConfig.field] || item.value" + :text="form[item.referConfig.showField]" + @setReferValue="setReferValue" + ></vciWebRefer> </template> </avue-form> </div> </template> <script> -import { getFormTemplate, getFormDetail } from "@/api/formTemplate"; +import { getFormDetail } from "@/api/formTemplate"; import { getDictionary } from "../../api/system/dict"; import vciWebRefer from "../refer/vciWebRefer.vue"; export default { @@ -497,31 +499,6 @@ this.handleResize(); }, methods: { - // 鍒濆鍖� - init(columnList) { - if (Array.isArray(columnList)) { - this.templateRender(columnList); - } else { - this.getFormTemplate(); - } - }, - // 鎺ュ彛鑾峰彇琛ㄥ崟鏁版嵁 - getFormTemplate() { - getFormTemplate({ - templateOid: this.templateOid, - codeClassifyOid: this.codeClassifyOid, - }) - .then((res) => { - if (res.status === 200) { - this.$emit('getFormTemplateEnd', res.data) - this.templateRender(res.data.formDefineVO.items); - } - }) - .catch((err) => { - this.loading = false; - console.log(err); - }); - }, // 娓叉煋琛ㄥ崟妯℃澘 templateRender(formItemList) { // 鏃犻渶鍒嗙粍鏁版嵁 @@ -580,7 +557,16 @@ display: !formItem.hidden, maxlength: formItem.maxlength, filterable: true, - referConfig: formItem.referConfig, + referConfig:formItem.type=='refer'?{ + title:formItem.text, + showField:formItem.showField || formItem.field, + field: formItem.field, + placeholder: formItem.inputTip, + options:formItem.referConfig + }:{}, + change: () => { + this.changeFun(formItem.displayExtension, formItem.prop); + }, span: formItem.type === "textarea" ? 24 : this.trendsSpan, rules: [ { @@ -660,6 +646,11 @@ return val; } }, + changeFun(displayExtension, prop) { + // executeCode({displayExtension, data: this.form}).then(res => { + // this.form[prop] = res.data.data + // }) + }, // 鑾峰彇swich鍜屽凡鎷垮埌鐨勪笅鎷夋暟鎹� getDataList(type, dicData) { if (type === "truefalse") { @@ -714,15 +705,22 @@ }, // 鑾峰彇琛ㄥ崟璇︽儏鏁版嵁 getFormDetail() { - if (this.type === 'add') return + if (this.type === 'add') return if (this.type === "add") return; - getFormDetail({ templateOid: this.templateOid, oid: this.rowOid }).then( + getFormDetail({ templateOid: this.templateOid, oid: '213D13D5-76D3-6B42-0932-705693F6B6E4' }).then( (res) => { this.form = Object.assign(this.form, res.obj) console.log(res, "res"); } ); }, + setReferValue(data){ + if(data.field){ + this.form[data.field]=data.value || ''; + this.form[data.showField]=data.text || ''; + this.$emit("getFormData", this.form); + } + } }, watch: { // 琛ㄥ崟鏁版嵁淇敼鍙嶉鍒扮埗缁勪欢 -- Gitblit v1.9.3