From 205056bc17023dd44e6d262cfe78b6e146ee2f20 Mon Sep 17 00:00:00 2001 From: xiejun <xj@2023> Date: 星期三, 23 八月 2023 20:05:28 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/UBCS-WEB/src/components/FormTemplate/index.vue | 150 +++++++++++++++++++++++++++++++++---------------- 1 files changed, 100 insertions(+), 50 deletions(-) diff --git a/Source/UBCS-WEB/src/components/FormTemplate/index.vue b/Source/UBCS-WEB/src/components/FormTemplate/index.vue index 782a525..d2585c3 100644 --- a/Source/UBCS-WEB/src/components/FormTemplate/index.vue +++ b/Source/UBCS-WEB/src/components/FormTemplate/index.vue @@ -3,7 +3,8 @@ :visible.sync="dialogVisible" v-if="dialogVisible" v-dialogDrag - top="5vh" + top="-5vh" + class="avue-dialog avue-dialog--top" :title="title" :width="width" append-to-body @@ -11,14 +12,13 @@ > <FormTemplate v-bind="$attrs" - :visible="visible" :type="type" :rowOid="rowOid" :templateOid="templateOid" + v-if="dialogVisible" ref="FormTemplate" @getFormData="getFormData" ></FormTemplate> - <div class="tab_box" v-if=" @@ -116,6 +116,10 @@ type: String, default: "纭� 瀹�", }, + setForm: { + type: Object, + default: () => ({}), + }, }, data() { return { @@ -127,13 +131,16 @@ form: {}, codeApplyForm: {}, activeName: "codeApply", - showCodeApply: true, - showResembleQuery: true, + showCodeApply: false, + showResembleQuery: false, selfColumnType: { codefixedsec: "combox", codeclassifysec: "refer", codevariablesec: "text", + codeattrsec: "text", + codelevelsec: "text", coderefersec: "refer", + codedatesec: "date" }, selfColumnConfig: { function: { @@ -152,6 +159,7 @@ label: "name", maxlength: "codeSecLength", data: "fixedValueVOList", + dateFormate: "codeDateFormatStr" }, directVoluation: { search: true, @@ -193,6 +201,7 @@ "copyfromversion", "secretgrade", ], + codeRuleOid: "", }; }, created() {}, @@ -232,8 +241,18 @@ if (this.hasResemble) { this.activeName = "resembleQuery"; this.showResembleQuery = true; + } else { + this.showResembleQuery = false; } - this.$refs.FormTemplate.templateRender(res.data.formDefineVO.items); + console.log(this.hasResemble, "this.hasResemblethis.hasResemble"); + this.$nextTick(() => { + this.$refs.FormTemplate.templateRender( + res.data.formDefineVO.items + ); + if (Object.keys(this.setForm).length > 0) { + this.$refs.FormTemplate.form = this.setForm; + } + }); } }) .catch(() => { @@ -244,24 +263,28 @@ getCodeRule() { getCodeRule({ codeClassifyOid: this.codeClassifyOid }).then((res) => { if (res.data && res.data.code === 200) { + this.codeRuleOid = res.data.data.oid; const typeList = [ "codefixedsec", "codeclassifysec", "codevariablesec", "coderefersec", + "codeattrsec", + "codelevelsec", + "codedatesec" ]; this.secVOList = (res.data.data.secVOList || []).filter((item) => - typeList.includes(item.sectype) + typeList.includes(item.secType) ); - this.$nextTick(() => { - if (this.secVOList.length > 0 && this.type === "add") { - this.showCodeApply = true; - this.activeName = "codeApply"; + if (this.secVOList.length > 0 && this.type === "add") { + this.showCodeApply = true; + this.activeName = "codeApply"; + this.$nextTick(() => { this.$refs.CodeApply.templateRender(this.secVOList); - } else { - this.showCodeApply = false; - } - }); + }); + } else { + this.showCodeApply = false; + } } }); }, @@ -298,34 +321,22 @@ if (!formValidate) return; let codeValidate = true; // 杩涜鐮佸�肩敵璇锋牎楠� - if (this.showCodeApply) { - codeValidate = await this.$refs.CodeApply.validate(); - console.log(9999); - if (!codeValidate) return; - } - // 杩涜鐩镐技椤规煡璇� - const resembleQueryList = await this.$refs.resembleQueryRef.resembleQuery( - this.form - ); - if (resembleQueryList.length === 0) { - let resForm = {}; - const { defaultValue, formValue } = this.getDefaultValueAndFormValues( + // if (this.showCodeApply) { + // codeValidate = await this.$refs.CodeApply.validate(); + // if (!codeValidate) { + // this.activeName = "codeApply"; + // return false; + // } + // } + let resembleQueryList = []; + if (this.$refs.resembleQueryRef) { + // 杩涜鐩镐技椤规煡璇� + resembleQueryList = await this.$refs.resembleQueryRef.resembleQuery( this.form ); - resForm.data = formValue; - resForm = Object.assign({}, resForm, defaultValue); - resForm.secDTOList = []; - for (const key in this.codeApplyForm) { - if (Object.hasOwnProperty.call(this.codeApplyForm, key)) { - const value = this.codeApplyForm[key]; - if (value) { - resForm.secDTOList.push({ [key]: value }); - } - } - } - this.$emit("submit", resForm); - } else { - this.$confirm( + } + if (resembleQueryList.length > 0) { + await this.$confirm( `璇ョ墿鏂欏凡鏈�${resembleQueryList.length}鏉$浉浼兼暟鎹紝鏄惁缁х画淇濆瓨锛焋, "闇�瑕佹偍纭", { @@ -333,12 +344,51 @@ cancelButtonText: "鍙栨秷", type: "warning", } - ) - .then(() => { - this.$emit("submit", this.form); - }) - .catch(() => {}); + ); } + // 鎺掗櫎涓�浜涘瓧娈� + const noData = [ + "jiliangdwname", + "materialtypeText", + "morengongysname", + "$caigouwl", + "$xiaoshouwl", + "$shifoupihaoguanli", + "lcstatus_text", + "hesuanfenleiname", + "$kucunwl", + "oldcode", + "lastmodifier" + ]; + let resForm = {}; + const { defaultValue, formValue } = this.getDefaultValueAndFormValues( + this.form + ); + noData.forEach((item) => { + this.$delete(formValue, item); + }); + const keys = Object.keys(formValue); + debugger + keys.forEach((item, index) => { + keys.forEach((itm, idx) => { + if ((item === ('$' + itm)) && idx !== index) { + this.$delete(formValue, keys[index]); + } + }) + }); + + resForm.data = formValue; + resForm = Object.assign({}, resForm, defaultValue); + resForm.secDTOList = this.secVOList.map((item) => { + return { + secOid: item.oid, + secValue: this.codeApplyForm[item.oid], + }; + }); + resForm.codeClassifyOid = this.codeClassifyOid; + resForm.codeRuleOid = this.codeRuleOid; + resForm.templateOid = this.templateOid; + this.$emit("submit", resForm); }, getDefaultValueAndFormValues(form) { let defaultValue = {}; @@ -359,11 +409,11 @@ }; }, getType(item) { - return this.selfColumnType[item.sectype]; + return this.selfColumnType[item.secType]; }, getReferConfig(item) { let params = {}; - if (item.sectype == "codeclassifysec") { + if (item.secType == "codeclassifysec") { params = { isMuti: false, type: "grid", @@ -407,13 +457,13 @@ : "", }, }; - } else if (item.sectype == "coderefersec") { + } else if (item.secType == "coderefersec") { params = JSON.parse(item.referValueInfo); } return params; }, getDisabled(item) { - if (item.sectype === "codeclassifysec") { + if (item.secType === "codeclassifysec") { if (item.parentClassifySecOid) { if (!this.codeApplyForm[item.parentClassifySecOid]) { return true; -- Gitblit v1.9.3