From 84d5095b47a7b187f052164ecdc4db32df33ef94 Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期五, 15 三月 2024 15:47:57 +0800
Subject: [PATCH] 按钮配置规则
---
Source/ProjectWeb/src/components/dynamic-components/dynamic-button.vue | 54 +++++++++++++++++++++++++++++++-----------------------
Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue | 2 ++
2 files changed, 33 insertions(+), 23 deletions(-)
diff --git a/Source/ProjectWeb/src/components/dynamic-components/dynamic-button.vue b/Source/ProjectWeb/src/components/dynamic-components/dynamic-button.vue
index ecba5b8..a96db7a 100644
--- a/Source/ProjectWeb/src/components/dynamic-components/dynamic-button.vue
+++ b/Source/ProjectWeb/src/components/dynamic-components/dynamic-button.vue
@@ -5,7 +5,7 @@
<el-button v-for="item in basicButtonList.top"
v-if="LocationType === 'top'"
:key="item.oid" :icon="item.icon"
- :type="item.type" plain
+ :type="item.paramVOS.buttonType || 'primary'" plain
size="small"
@click="buttonClick(item)">
{{ item.name }}
@@ -13,13 +13,13 @@
<el-button v-for="item in basicButtonList.menu"
v-if="LocationType === 'menu'"
- :key="item.oid" :icon="item.icon"
- :type="item.type" plain
+ :key="item.oid" :icon="item.paramVOS.icon"
+ :type="item.paramVOS.buttonType || 'primary'" plain
size="small"
@click="buttonClick(item)">
{{ item.name }}
</el-button>
- <dynamic-form :visible.sync="visible" :title="formName" ></dynamic-form>
+ <dynamic-form :title="formName" :visible.sync="visible"></dynamic-form>
</div>
</template>
@@ -39,8 +39,8 @@
},
data() {
return {
- visible:false,
- formName:'',
+ visible: false,
+ formName: '',
butttonList: [
{
actionVO: {
@@ -58,8 +58,6 @@
name: "鍒涘缓",
oid: "65274704-5557-231C-E3EA-0B32B9BD5A0B"
},
- type: 'primary',
- menu: false,
areaType: "tab",
authorization: true,
children: null,
@@ -80,7 +78,10 @@
form: "DepartmentProcessReviewForm",
context: "EditDepartmentProcessReview",
type: "processreview",
- initvalue: "reviewtype=department"
+ initvalue: "reviewtype=department",
+ location: 'top',
+ buttonType: 'primary',
+ buttonMethods: 'form'
},
pkComponent: "D99AD59E-563F-AB7A-F307-794B929114CD",
pkParentOid: "",
@@ -102,9 +103,6 @@
name: "淇敼",
oid: "F8534EFE-130B-0CB3-D477-2AC7B19B7DC4"
},
- type: 'text',
- icon: "el-icon-edit",
- menu: true,
areaType: "tab",
authorization: true,
children: null,
@@ -123,7 +121,11 @@
orderNum: 2,
paramVOS: {
form: "DepartmentProcessReviewForm",
- checkNotOperation: "${lcstatus}=Auditing&${lcstatus}=Waiting"
+ checkNotOperation: "${lcstatus}=Auditing&${lcstatus}=Waiting",
+ location: 'menu',
+ buttonType: 'text',
+ icon: "el-icon-edit",
+ buttonMethods: 'form'
},
pkComponent: "D99AD59E-563F-AB7A-F307-794B929114CD",
pkParentOid: "",
@@ -145,9 +147,6 @@
name: "鍒犻櫎",
oid: "2655E9F0-014B-DFEC-6F92-A6D1C51FDA19"
},
- type: 'text',
- icon: "el-icon-delete",
- menu: true,
areaType: "tab",
authorization: true,
children: null,
@@ -167,7 +166,11 @@
paramVOS: {
owner: "true",
checkNotOperation: "${lcstatus}=Auditing&${lcstatus}=Waiting",
- state: "Editing"
+ state: "Editing",
+ location: 'menu',
+ buttonType: 'text',
+ icon: "el-icon-delete",
+ buttonMethods: 'delete'
},
pkComponent: "D99AD59E-563F-AB7A-F307-794B929114CD",
pkParentOid: "",
@@ -210,7 +213,9 @@
autoSubmitFirst: "false",
flowtemplates: "宸ヨ壓璇勫瀹$娴佺▼",
state: "Editing",
- type: "processreview"
+ type: "processreview",
+ location: 'top',
+ buttonMethods: 'form'
},
pkComponent: "D99AD59E-563F-AB7A-F307-794B929114CD",
pkParentOid: "",
@@ -221,11 +226,11 @@
},
computed: {
basicButtonList() {
- const basicColumn = this.butttonList.filter(item => item.id !== 'launchworkflow'); // 棣栧厛杩囨护鍑烘潵鍩虹琛ㄥ崟浜嬩欢鐨勬寜閽�
-
+ // const basicColumn = this.butttonList.filter(item => item.id !== 'launchworkflow'); // 棣栧厛杩囨护鍑烘潵鍩虹琛ㄥ崟浜嬩欢鐨勬寜閽�
+ const basicColumn = this.butttonList;
if (this.type === 'table') {
- const top = basicColumn.filter(item => !item.menu); // 杩囨护鍑烘潵琛ㄦ牸涓婇潰鍖哄煙灞曠ず鐨勬寜閽�
- const menu = basicColumn.filter(item => item.menu); // 杩囨护鍑烘潵鎿嶄綔鏍忓睍绀虹殑鎸夐挳
+ const top = basicColumn.filter(item => item.paramVOS.location === 'top' || func.isEmpty(item.paramVOS.location)); // 杩囨护鍑烘潵琛ㄦ牸涓婇潰鍖哄煙灞曠ず鐨勬寜閽�
+ const menu = basicColumn.filter(item => item.paramVOS.location === 'menu'); // 杩囨护鍑烘潵鎿嶄綔鏍忓睍绀虹殑鎸夐挳
return {
top: top,
menu: menu
@@ -236,8 +241,11 @@
methods: {
buttonClick(item) {
this.$emit('buttonClick', item.id)
- this.visible = true;
+
this.formName = item.name;
+ if (item.paramVOS.buttonMethods === 'form') {
+ this.visible = true;
+ }
}
}
}
diff --git a/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue b/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue
index 7f34472..f510742 100644
--- a/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue
+++ b/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue
@@ -508,6 +508,8 @@
editBtn: false,
delBtn: false,
height: 'auto',
+ // indexFixed:false,
+ // menuFixed:false,
column: this.updatedColumns,
};
},
--
Gitblit v1.9.3