From 09fff7d4449fe9fe9e8cd1ffca560ff57e22ed5a Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期二, 06 六月 2023 17:52:34 +0800
Subject: [PATCH] 解决代码冲突
---
Source/UBCS-WEB/src/components/FormTemplate/index.vue | 85 +++++++++++++++++++++++++++++++++---------
1 files changed, 66 insertions(+), 19 deletions(-)
diff --git a/Source/UBCS-WEB/src/components/FormTemplate/index.vue b/Source/UBCS-WEB/src/components/FormTemplate/index.vue
index 8a1c2d1..f99d7b4 100644
--- a/Source/UBCS-WEB/src/components/FormTemplate/index.vue
+++ b/Source/UBCS-WEB/src/components/FormTemplate/index.vue
@@ -7,19 +7,34 @@
class="avue-dialog avue-dialog--top"
:width="width"
append-to-body
+ @opened="openDialog"
>
<FormTempalte
v-bind="$attrs"
- :dialogOpen="visible"
+ :visible="visible"
:type="type"
+ :rowOid="rowOid"
+ v-if="dialogVisible"
+ ref="FormTempalte"
@getFormTemplateEnd="getFormTemplate"
@getFormData="getFormData"
></FormTempalte>
- <div class="tab_box">
- <el-tabs v-model="activeName" type="card">
+ <div
+ class="tab_box"
+ v-if="
+ type !== 'detail' &&
+ dialogVisible &&
+ (showCodeApply || showResembleQuery)
+ "
+ >
+ <el-tabs v-model="activeName" type="border-card" @tab-click="handleClick">
<el-tab-pane label="鐮佸�肩敵璇�" name="codeApply" v-if="showCodeApply">
- <CodeApply v-bind="$attrs"></CodeApply>
+ <CodeApply
+ ref="CodeApply"
+ v-bind="$attrs"
+ @getCodeRuleOid="getCodeRuleOid"
+ ></CodeApply>
</el-tab-pane>
<el-tab-pane
label="鐩镐技椤规煡璇�"
@@ -38,10 +53,13 @@
</div>
<div class="avue-dialog__footer" v-if="type !== 'detail'">
<el-button @click="close()">鍙� 娑�</el-button>
- <el-button @click="close()" type="primary" :loading="submitBtnLoading"
+ <el-button @click="submit()" type="primary" :loading="submitBtnLoading"
>纭� 瀹�</el-button
>
- <el-button @click="resembleQuerySubmit" type="primary" v-if="hasResemble"
+ <el-button
+ @click="resembleQuerySubmit"
+ type="primary"
+ v-if="showResembleQuery"
>鐩镐技鍍忔煡璇�</el-button
>
</div>
@@ -66,12 +84,13 @@
},
title: {
type: String,
- default: "琛ㄥ崟妯℃澘",
+ default: "缂栫爜鐢宠",
},
width: {
type: String,
default: "80%",
},
+ rowOid: ''
},
data() {
return {
@@ -79,8 +98,9 @@
submitBtnLoading: false,
hasResemble: false,
resembleTableColumn: [],
- activeName: "resembleQuery",
- form: {}
+ secVOList: [],
+ form: {},
+ activeName: "",
};
},
created() {},
@@ -94,15 +114,14 @@
},
},
showCodeApply() {
- if (this.type === "add") {
- if (this.hasResemble && this.resembleTableColumn.length === 0) {
- return false;
- }
- } else {
- if (this.hasResemble) {
- return false;
- }
- }
+ // 娴嬭瘯鏁版嵁灞曠ず
+ // if (this.type === "add") {
+ // if (this.hasResemble && this.secVOList.length === 0) {
+ // return false;
+ // }
+ // } else {
+ // return false;
+ // }
return true;
},
showResembleQuery() {
@@ -110,8 +129,17 @@
},
},
methods: {
+ openDialog() {
+ this.$nextTick(() => {
+ this.$refs.FormTempalte.init();
+ this.$refs.CodeApply.getCodeRule();
+ });
+ },
close() {
this.dialogVisible = false;
+ },
+ getCodeRuleOid(data) {
+ this.secVOList = data.secVOList;
},
getFormTemplate(data) {
this.hasResemble =
@@ -119,13 +147,32 @@
data.resembleTableVO.cols &&
data.resembleTableVO.cols.length > 0;
this.resembleTableColumn = data.resembleTableVO.cols || [];
+ this.activeName =
+ (this.showCodeApply && "codeApply") ||
+ (this.showResembleQuery && "resembleQuery");
},
getFormData(form) {
- this.form = form
+ this.form = form;
},
resembleQuerySubmit() {
this.$refs.resembleQueryRef.resembleQuery(this.form);
},
+ handleClick() {
+ if (this.activeName === 'resembleQuery') {
+ this.resembleQuerySubmit()
+ }
+ },
+ async submit() {
+ const formValidate = await this.$refs.FormTempalte.validate();
+ let codeValidate = true;
+ if (this.showCodeApply) {
+ codeValidate = await this.$refs.CodeApply.validate();
+ }
+ this.$emit("submit", {
+ form: this.form,
+ flag: formValidate && codeValidate,
+ });
+ },
},
};
</script>
--
Gitblit v1.9.3