From c83e5706898ca1d479d4d078157e16a73c4eaba2 Mon Sep 17 00:00:00 2001 From: 田源 <lastanimals@163.com> Date: 星期四, 21 三月 2024 11:41:00 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue | 149 +++++++++++++++++++------------------------------ 1 files changed, 58 insertions(+), 91 deletions(-) diff --git a/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue b/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue index 6e4ab50..60a97c6 100644 --- a/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue +++ b/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue @@ -1,23 +1,24 @@ <template> - <div> + <div class="UI-dynamic" :id="'UI-dynamic-'+areasName+componentVO.oid"> <avue-crud v-model="form" + ref="dataTable" :data="tableList" :option="option" :page.sync="page" :table-loading="loading"> <!--top鍖哄煙鎸夐挳--> <template slot="menuLeft" slot-scope="scope"> - <dynamic-button LocationType="top" type="table" @buttonClick="buttonClick"></dynamic-button> + <dynamic-button LocationType="top" type="table":butttonList="componentVO.buttons" @buttonClick="buttonClick" ></dynamic-button> </template> <!--menu鍖哄煙鎸夐挳--> <template slot="menu" slot-scope="scope"> - <dynamic-button :scope="scope" LocationType="menu" type="table" @buttonClick="buttonClick"></dynamic-button> + <dynamic-button :scope="scope" LocationType="menu" type="table":butttonList="componentVO.buttons" @buttonClick="buttonClick" ></dynamic-button> </template> </avue-crud> <!-- 琛ㄦ牸鍐呮寜閽搷浣滃璇濇琛ㄥ崟 --> - <dynamic-form ref="dynamicForm" :formList="formList" :title="formName" :visible.sync="visible" - style="display: none"></dynamic-form> + <dynamic-table-form ref="dynamicForm" :formList="formList" :title="formName" :visible.sync="visible" + style="display: none"></dynamic-table-form> </div> </template> @@ -45,10 +46,16 @@ paramVOS: { type: Object, default: {} - } + }, + isShow: { + //鎵�鍦ㄥ尯鍩熸槸鍚﹀凡鏄剧ず锛岄拡瀵箃ab鍜宑ollapse + type: Boolean, + default: true + }, }, data() { return { + parentHeight:'100%',//褰撳墠缁勪欢鏍硅妭鐐瑰厓绱犻珮搴� form: {}, formName: '', loading: false, @@ -58,78 +65,6 @@ currentPage: 1, total: 5, }, - //琛ㄦ牸澶� - tableHeadList: [ - { - align: "left", - colspan: 1, - field: "name", - fieldType: "text", - hidden: false, - title: "鍚嶇О", - width: 100, - }, - { - align: "left", - colspan: 1, - field: "code", - fieldType: "text", - hidden: false, - title: "缂栫爜", - width: 100 - }, - { - align: "left", - colspan: 1, - comboxKey: "EnumReviewType", - field: "reviewtypetext", - fieldType: "combox", - hidden: false, - sortField: "reviewtype", - title: "绫诲瀷", - width: 80 - }, - { - align: "left", - colspan: 1, - field: "content", - fieldType: "textarea", - hidden: false, - title: "澶囨敞", - width: 150 - }, - { - align: "left", - colspan: 1, - comboxKey: "ProcessReviewLC${lcstatus}", - field: "lcstatus_text", - fieldType: "text", - hidden: false, - sortField: "lcstatus", - title: "鐘舵��", - width: 100 - }, - { - align: "left", - colspan: 1, - field: "creator_name", - fieldType: "text", - hidden: false, - sortField: "creator", - title: "鍒涘缓浜�", - width: 80 - }, - { - align: "left", - colspan: 1, - dateFormate: "yyyy-MM-dd HH:mm:ss", - field: "createtime", - fieldType: "date", - hidden: false, - title: "鍒涘缓鏃ユ湡", - width: 160 - } - ], //琛ㄦ牸鏁版嵁 tableList: [ { @@ -538,7 +473,7 @@ extendAttrString: null, field: "name", hidden: false, - keyAttr: false, + keyAttr: true, prefix: null, readOnly: false, referConfig: null, @@ -547,7 +482,7 @@ showField: null, suffix: '$', text: "鍚嶇О", - tooltips: null, + tooltips: '鍚嶇О', type: "text", unique: false, verify: "" @@ -571,6 +506,7 @@ selectLibFlag: null, showField: null, suffix: null, + disabled:true, text: "缂栫爜", tooltips: null, type: "text", @@ -684,24 +620,23 @@ unique: false, verify: "" }, - ] - } - }, - computed: { - option() { - return { + ], + option: { index: true, addBtn: false, editBtn: false, delBtn: false, - height: 'auto', + height: '100%', + calcHeight: 15, indexFixed: false, menuFixed: false, - column: this.updatedColumns, - }; - }, + column: [], + }, + } + }, + computed: { updatedColumns() { - return this.tableHeadList.map(item => { + return this.componentVO.tableDefineVO.cols[0].map(item => { const typeValue = item.fieldType === 'text' || item.fieldType === 'combox' ? 'input' : item.fieldType; // 琛ㄥ崟Type绫诲瀷 return { @@ -716,6 +651,38 @@ }); }, }, + watch:{ + parentHeight:{ + handler(newval) { + if(newval >50){ + this.option.height=newval; + //doLayout涓嶇敓鏁堬紝鎵嬪姩璁剧疆琛ㄦ牸楂樺害 + this.$children[0].$children[1].$children[1].$children[0].$el.style.height=newval+'px'; + /*this.$nextTick(() => { + if (this.$refs.dataTable && this.$refs.dataTable.doLayout) { + this.$refs.dataTable.doLayout(); + } + })*/ + } + } + }, + isShow:{ + handler(newval) { + if(newval && this.$el.clientHeight>50) { + this.parentHeight = this.$el.clientHeight - this.$children[0].$children[1].$children[0].$el.clientHeight - this.$children[0].$children[2].$el.clientHeight - 5; + } + } + } + }, + created() { + this.option.column=this.updatedColumns; + }, + mounted() { + if(this.$el.clientHeight>50) { + //鐖跺厓绱犻珮搴�-鎸夐挳楂樺害-鍒嗛〉楂樺害 + this.parentHeight = this.$el.clientHeight - this.$children[0].$children[1].$children[0].$el.clientHeight - this.$children[0].$children[2].$el.clientHeight - 5; + } + }, methods: { buttonClick(scope, item) { this.formName = item.name; -- Gitblit v1.9.3