From 16d2a38e7bb7a31d6e355d031115a58bffd0109d Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期三, 26 七月 2023 15:01:39 +0800
Subject: [PATCH] 增加菜单管理中,从其他菜单克隆按钮功能、
---
Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue | 42 +++++++++++++++++++++++++++---------------
1 files changed, 27 insertions(+), 15 deletions(-)
diff --git a/Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue b/Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue
index 9558693..2c79a93 100644
--- a/Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue
+++ b/Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue
@@ -5,7 +5,8 @@
:visible.sync="visible"
top="0"
class="avue-dialog avue-dialog--top"
- :width="referConfig.options.width|| '80%'">
+ :width="options.width|| '80%'">
+
<avue-crud :option="option"
:table-loading="loading"
:data="data"
@@ -27,7 +28,7 @@
</div>
</el-dialog>
- <avue-input v-model="text" :placeholder="title" @click="visible=true"></avue-input>
+ <avue-input v-model="text" :disabled="disabled" :placeholder="title" @click="!disabled && (visible=true)"></avue-input>
<!--<avue-input-table ref="referTable" :props="props" :column="column" :on-load="onLoad" v-model="value" :placeholder="title" ></avue-input-table>
-->
</div>
@@ -38,17 +39,18 @@
import {getList,getLazyList,getTableDefinedUrl} from "@/api/refer/table";
export default {
name: "vciWebReferDefalut",
- props:["referConfig","value","text","title"],
+ props:["referConfig","value","text","title","disabled"],
data() {
return {
visible: false,
- options: this.referConfig.options,
+ options: this.referConfig.options||{},
isMuti: ("true" == this.referConfig.options.isMuti || this.referConfig.options.isMuti == true || this.referConfig.options.muti == true) ? true : false,
props: {
value: this.referConfig.valueField || this.referConfig.options.valueField || 'oid',
label: this.referConfig.textField || this.referConfig.options.textField || "name"
},
url: this.referConfig.options.url || '/api/ubcs-code/mdmEngineController/defaultReferDataGrid',
+ method: this.referConfig.options.method || 'GET',
tableDefinedUrl:'',//骞冲彴琛ㄦ牸鍦板潃
copyParam: ['referBo', 'textField', 'valueField', 'displayTable', 'whereSql', 'queryScheme'],
query: {},
@@ -62,7 +64,7 @@
selectionList: [],
option: {
addBtn: false,
- height: this.referConfig.options.height ? this.referConfig.options.height : 475,
+ //height: this.referConfig.options.height ? this.referConfig.options.height : 475,
calcHeight: 30,
tip: false,
menu:false,
@@ -72,6 +74,7 @@
border: true,
index: true,
selection: true,
+ reserveSelection:true,
dialogClickModal: false,
highlightCurrentRow: true,
column: []
@@ -80,8 +83,8 @@
},
created() {
this.getParams();
- console.log('referConfig:')
- console.log(this.referConfig)
+ // console.log('referConfig:')
+ // console.log(this.referConfig)
},
mounted() {
if(this.referConfig.options.page){
@@ -180,6 +183,7 @@
...item,
label: item.title,
prop: item.field,
+ formatter:item.template,
search: true
}
}
@@ -241,7 +245,7 @@
searchChange(params, done) {
this.query = params;
this.page.currentPage = 1;
- this.onLoad(this.page, params);
+ this.onLoad(this.page);
done();
},
currentChange(currentPage){
@@ -253,26 +257,34 @@
selectionChange(list) {
if (!this.isMuti && list.length > 1) {
const nowVal = list.shift();
- this.$refs.referCrud.toggleRowSelection(nowVal, false);
+ this.$refs.referDefalutCrud.toggleRowSelection(nowVal, false);
}
this.selectionList = list
},
selectionClear() {
this.selectionList = [];
- this.$refs.referCrud.clearSelection();
+ this.$refs.referDefalutCrud.toggleSelection();
},
refreshChange() {
this.onLoad(this.page, this.query);
},
- onLoad(page, params = this.params) {
+ onLoad(page, params={}) {
if(this.url){
this.loading = true;
- getList(Object.assign(params, this.query),page.currentPage, page.pageSize, this.url).then(res => {
- const data = res.data.data;
- this.page.total = data.total;
- this.data = data.records;
+ var query={}
+ if (this.query) {
+ for (var key in this.query) {
+ query['conditionMap["' + key + '"]'] = this.query[key];
+ }
+ }
+ getList(Object.assign(params,this.params,this.query, query),page.currentPage, page.pageSize, this.url, this.method).then(res => {
+ this.data = res.data.records;
+ this.page.total=res.data.total
this.loading = false;
this.selectionClear();
+ }).catch(error=>{
+ this.$message.error(error);
+ this.loading = false;
});
}
--
Gitblit v1.9.3