From 4e778d7f61e2508455e3a69815f7a17c455d81da Mon Sep 17 00:00:00 2001
From: wangting <675591594@qq.com>
Date: 星期四, 09 五月 2024 18:20:27 +0800
Subject: [PATCH] 调整列表中按钮展示位置及默认按钮
---
Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue | 1209 ++++++++++++++++-----------------------------------------
1 files changed, 345 insertions(+), 864 deletions(-)
diff --git a/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue b/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue
index 8f724ff..2e17737 100644
--- a/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue
+++ b/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue
@@ -1,30 +1,72 @@
<template>
- <div>
- <avue-crud v-model="form"
+ <div :id="'UI-dynamic-'+areasName+componentVO.oid" class="UI-dynamic">
+ <avue-crud ref="dataTable"
+ v-model="form"
:data="tableList"
:option="option"
- :page.sync="page"
- :table-loading="loading">
+ :page.sync="pageType"
+ :table-loading="loading"
+ @on-load="onLoad"
+ @search-reset="searchReset"
+ @refresh-change="handleRefresh"
+ @current-change="currentChange"
+ @size-change="sizeChange"
+ @row-click="rowClickChange"
+ @search-change='searchChange'
+ @filter="filterChange"
+ @selection-change="selectChange">
<!--top鍖哄煙鎸夐挳-->
<template slot="menuLeft" slot-scope="scope">
- <dynamic-button LocationType="top" type="table":butttonList="butttonList" @buttonClick="buttonClick" ></dynamic-button>
+ <dynamic-button :componentVO="componentVO"
+ :key="areasName+'buttons-'+componentVO.oid"
+ :butttonList="componentVO.buttons" :dataStore="selectList" LocationType="top" :sourceData="sourceData"
+ @afterMethod="handleRefresh"
+ type="table"></dynamic-button>
</template>
<!--menu鍖哄煙鎸夐挳-->
<template slot="menu" slot-scope="scope">
- <dynamic-button :scope="scope" LocationType="menu" type="table":butttonList="butttonList" @buttonClick="buttonClick" ></dynamic-button>
+ <dynamic-button :componentVO="componentVO" :butttonList="componentVO.buttons" :scope="scope" :dataStore="selectList" :sourceData="sourceData"
+ LocationType="menu"
+ @afterMethod="handleRefresh"
+ @rowView="rowView"
+ type="table"></dynamic-button>
+ </template>
+ <template slot="menuRight" slot-scope="scope">
+ <el-button icon="el-icon-printer" title="鎵撳嵃"
+ circle @click="$refs.dataTable.rowPrint()"
+ :size="scope.size"></el-button>
+ <el-button icon="el-icon-download" title="瀵煎嚭"
+ circle @click="rowExcel"
+ :size="scope.size"></el-button>
+ <el-button icon="el-icon-tickets" circle title="绛涢��" @click="$refs.dataTable.$refs.dialogFilter.box=!0"
+ :size="scope.size"></el-button>
+ <el-button icon="el-icon-s-operation" circle title="鍒楁樉闅�" @click="$refs.dataTable.$refs.dialogColumn.columnBox=!0"
+ :size="scope.size"></el-button>
+ <el-button icon="el-icon-search" circle title="鏌ヨ" @click="$refs.dataTable.$refs.headerSearch.handleSearchShow()"
+ :size="scope.size"></el-button>
+ <el-button icon="el-icon-refresh" circle title="鍒锋柊" @click="$refs.dataTable.refreshChange()"
+ :size="scope.size"></el-button>
</template>
</avue-crud>
- <!-- 琛ㄦ牸鍐呮寜閽搷浣滃璇濇琛ㄥ崟 -->
- <dynamic-form ref="dynamicForm" :formList="formList" :title="formName" :visible.sync="visible"
- style="display: none"></dynamic-form>
</div>
</template>
<script>
+import {validatenull} from '@/util/validate'
+import {getList} from '@/api/base/ui'
+
export default {
name: "dynamic-table",
props: {
+ //ui涓婁笅鏂囩殑涓氬姟绫诲瀷锛堟垨閾炬帴绫诲瀷锛�
+ uiBtmType: {
+ type: String
+ },
+ //ui涓婁笅鏂�
+ uiContext:{
+ type: String
+ },
componentVO: {
type: Object,
default: {}
@@ -32,6 +74,11 @@
inDialog: {
type: Boolean,
default: false
+ },
+ canEdit:{
+ //鍐呭鏄惁鍙紪杈�
+ type:Boolean,
+ default:false
},
areasName: {
type: String,
@@ -42,893 +89,327 @@
type: Object,
default: {}
},
+ //涓婁竴鍖哄煙涓氬姟绫诲瀷
+ sourceBtmType:{
+ type: String
+ },
paramVOS: {
type: Object,
default: {}
+ },
+ isShow: {
+ //鎵�鍦ㄥ尯鍩熸槸鍚﹀凡鏄剧ず锛岄拡瀵箃ab鍜宑ollapse
+ type: Boolean,
+ default: true
+ },
+ dataStore: {
+ //寮圭獥鏃舵寜閽墍灞炲尯鍩熼�変腑鏁版嵁
+ type: Array,
+ default: []
+ },
+ tableType: {
+ type: String
}
},
data() {
return {
+ currentDefineVO:this.componentVO.uiComponentType=='table'?this.componentVO.tableDefineVO:this.componentVO.treeTableDefineVO,
+ parentHeight: '100%',//褰撳墠缁勪欢鏍硅妭鐐瑰厓绱犻珮搴�
form: {},
- formName: '',
+ query:{},
+ params:{},
loading: false,
- visible: false,
page: {
pageSize: 10,
currentPage: 1,
- total: 5,
+ total: 0,
},
- //琛ㄦ牸澶�
- 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
- }
- ],
+ simplePage: {
+ currentPage: 1,
+ total: 0,
+ pagerCount: 4,
+ layout: "prev, pager, next"
+ },
//琛ㄦ牸鏁版嵁
- tableList: [
- {
- code: "20220102",
- lastmodifier: "jhming",
- revisionseq: "1",
- versionvalue: "1",
- description: "",
- oid: "2E66D17B-E3E6-4725-BB83-93F4A20D4E20",
- versionseq: "1",
- content: "绗簩娆′腑鏈熻瘎瀹$姽澶汉",
- checkinby: "",
- revisionrule: "ObjectVersion",
- reviewtypetext: "閮ㄩ棬绾�",
- lctid: "ProcessReviewLC",
- reviewtype: "department",
- lcstatus_text: "缂栬緫涓�",
- id: "",
- owner: "1",
- checkoutby: "",
- creator: "1",
- createtime: "2022-01-13 13:58:43.035",
- isfirstv: "1",
- lastmodifier_name: "濮滅孩鏄�",
- revisionoid: "4F400A1B-2313-4B11-894C-4F4F0B01368A",
- btmname: "processreview",
- checkouttime: "",
- revisionvalue: "A",
- versionrule: "0",
- name: "1鏈堣瘎瀹�3",
- islastr: "1",
- lastmodifytime: "2022-07-15 16:04:43.703",
- copyfromversion: "",
- creator_name: "娴嬭瘯",
- nameoid: "CF350DE8-8E6D-470B-B273-4FD78D41BA4A",
- lcstatus: "Editing",
- islastv: "1",
- checkintime: "",
- isfirstr: "1",
- ts: "2022-07-15 16:04:43.703"
- },
- {
- code: "w02",
- lastmodifier: "1",
- revisionseq: "0",
- versionvalue: "1",
- description: "",
- oid: "2f8d94b2-d65a-4f9b-9a71-caa3afd96459",
- versionseq: "0",
- content: "",
- checkinby: "",
- revisionrule: "ObjectVersion",
- reviewtypetext: "閮ㄩ棬绾�",
-
- lctid: "ProcessReviewLC",
- reviewtype: "department",
- lcstatus_text: "缂栬緫涓�",
- id: "",
- owner: "1",
- checkoutby: "",
- creator: "1",
- createtime: "2022-02-18 14:35:45.03",
- isfirstv: "1",
- lastmodifier_name: "娴嬭瘯",
- revisionoid: "31612b9f-022d-4b05-a24c-370a0fd457da",
- btmname: "processreview",
- checkouttime: "",
- revisionvalue: "A",
- versionrule: "0",
- name: "web椤甸潰娴嬭瘯02",
- islastr: "1",
- lastmodifytime: "2022-02-18 14:35:45.03",
- copyfromversion: "",
- creator_name: "娴嬭瘯",
- nameoid: "dfc0d8a5-ebe7-40f2-af56-fa437d3866e0",
- lcstatus: "Editing",
- islastv: "1",
- checkintime: "",
- isfirstr: "1",
- ts: "2022-02-18 14:35:45.03"
- },
- {
- code: "webt01",
- lastmodifier: "1",
- revisionseq: "0",
- versionvalue: "1",
- description: "",
- oid: "38033242-3cb4-415c-9cc4-acdb86c2ee8f",
- versionseq: "0",
- content: "wbtest123淇敼鍚�",
- checkinby: "",
- revisionrule: "ObjectVersion",
- reviewtypetext: "閮ㄩ棬绾�",
- lctid: "ProcessReviewLC",
- reviewtype: "department",
- lcstatus_text: "寰呰瘎瀹�",
- id: "",
- owner: "1",
- checkoutby: "",
- creator: "1",
- createtime: "2022-01-21 10:04:08.053",
- isfirstv: "1",
- lastmodifier_name: "娴嬭瘯",
- revisionoid: "3f3b2112-f356-4809-969b-1e63f6daa08d",
- btmname: "processreview",
- checkouttime: "",
- revisionvalue: "A",
- versionrule: "0",
- name: "web绔柊澧炴祴璇�01",
- islastr: "1",
- lastmodifytime: "2022-02-09 09:45:56.044",
- copyfromversion: "",
- creator_name: "娴嬭瘯",
- nameoid: "d8975a06-4c1e-462b-af84-093068c58e9e",
- lcstatus: "Waiting",
- islastv: "1",
- checkintime: "",
- isfirstr: "1",
- ts: "2022-02-09 09:45:56.044"
- },
- {
- code: "w017",
- lastmodifier: "1",
- revisionseq: "0",
- versionvalue: "1",
- description: "",
- oid: "4011e1a7-9eb6-4b5c-89bf-847abff56682",
- versionseq: "0",
- content: "",
- checkinby: "",
- revisionrule: "ObjectVersion",
- reviewtypetext: "閮ㄩ棬绾�",
- lctid: "ProcessReviewLC",
- reviewtype: "department",
- lcstatus_text: "缂栬緫涓�",
- id: "",
- owner: "1",
- checkoutby: "",
- creator: "1",
- createtime: "2022-02-18 14:37:53.247",
- isfirstv: "1",
- lastmodifier_name: "娴嬭瘯",
- revisionoid: "648f5cf8-b42a-4b78-9928-883c94a83081",
- btmname: "processreview",
- checkouttime: "",
- revisionvalue: "A",
- versionrule: "0",
- name: "web椤甸潰娴嬭瘯17",
- islastr: "1",
- lastmodifytime: "2022-02-18 14:37:53.247",
- copyfromversion: "",
- creator_name: "娴嬭瘯",
- nameoid: "5d14e204-f085-4be0-9da6-b08c99172f8a",
- lcstatus: "Editing",
- islastv: "1",
- checkintime: "",
- isfirstr: "1",
- ts: "2022-02-18 14:37:53.247"
- },
- {
- code: "w03",
- lastmodifier: "1",
- revisionseq: "0",
- versionvalue: "1",
- description: "",
- oid: "68583bec-b9ca-4321-8b66-a11d2298f51e",
- versionseq: "0",
- content: "",
- checkinby: "",
- revisionrule: "ObjectVersion",
- reviewtypetext: "閮ㄩ棬绾�",
- lctid: "ProcessReviewLC",
- reviewtype: "department",
- lcstatus_text: "缂栬緫涓�",
- id: "",
- owner: "1",
- checkoutby: "",
- creator: "1",
- createtime: "2022-02-18 14:35:53.177",
- isfirstv: "1",
- lastmodifier_name: "娴嬭瘯",
- revisionoid: "ff85f436-4dd1-498e-9665-44d53e27ac29",
- btmname: "processreview",
- checkouttime: "",
- revisionvalue: "A",
- versionrule: "0",
- name: "web椤甸潰娴嬭瘯03",
- islastr: "1",
- lastmodifytime: "2022-02-18 14:35:53.177",
- copyfromversion: "",
- creator_name: "娴嬭瘯",
- nameoid: "e0f20755-6954-4757-911e-7b9929fbe9a2",
- lcstatus: "Editing",
- islastv: "1",
- checkintime: "",
- isfirstr: "1",
- ts: "2022-02-18 14:35:53.177"
- },
- {
- code: "20220102",
- lastmodifier: "jhming",
- revisionseq: "1",
- versionvalue: "1",
- description: "",
- oid: "2E66D17B-E3E6-4725-BB83-93F4A20D4E20",
- versionseq: "1",
- content: "绗簩娆′腑鏈熻瘎瀹$姽澶汉",
- checkinby: "",
- revisionrule: "ObjectVersion",
- reviewtypetext: "閮ㄩ棬绾�",
- lctid: "ProcessReviewLC",
- reviewtype: "department",
- lcstatus_text: "缂栬緫涓�",
- id: "",
- owner: "1",
- checkoutby: "",
- creator: "1",
- createtime: "2022-01-13 13:58:43.035",
- isfirstv: "1",
- lastmodifier_name: "濮滅孩鏄�",
- revisionoid: "4F400A1B-2313-4B11-894C-4F4F0B01368A",
- btmname: "processreview",
- checkouttime: "",
- revisionvalue: "A",
- versionrule: "0",
- name: "1鏈堣瘎瀹�3",
- islastr: "1",
- lastmodifytime: "2022-07-15 16:04:43.703",
- copyfromversion: "",
- creator_name: "娴嬭瘯",
- nameoid: "CF350DE8-8E6D-470B-B273-4FD78D41BA4A",
- lcstatus: "Editing",
- islastv: "1",
- checkintime: "",
- isfirstr: "1",
- ts: "2022-07-15 16:04:43.703"
- },
- {
- code: "w02",
- lastmodifier: "1",
- revisionseq: "0",
- versionvalue: "1",
- description: "",
- oid: "2f8d94b2-d65a-4f9b-9a71-caa3afd96459",
- versionseq: "0",
- content: "",
- checkinby: "",
- revisionrule: "ObjectVersion",
- reviewtypetext: "閮ㄩ棬绾�",
-
- lctid: "ProcessReviewLC",
- reviewtype: "department",
- lcstatus_text: "缂栬緫涓�",
- id: "",
- owner: "1",
- checkoutby: "",
- creator: "1",
- createtime: "2022-02-18 14:35:45.03",
- isfirstv: "1",
- lastmodifier_name: "娴嬭瘯",
- revisionoid: "31612b9f-022d-4b05-a24c-370a0fd457da",
- btmname: "processreview",
- checkouttime: "",
- revisionvalue: "A",
- versionrule: "0",
- name: "web椤甸潰娴嬭瘯02",
- islastr: "1",
- lastmodifytime: "2022-02-18 14:35:45.03",
- copyfromversion: "",
- creator_name: "娴嬭瘯",
- nameoid: "dfc0d8a5-ebe7-40f2-af56-fa437d3866e0",
- lcstatus: "Editing",
- islastv: "1",
- checkintime: "",
- isfirstr: "1",
- ts: "2022-02-18 14:35:45.03"
- },
- {
- code: "webt01",
- lastmodifier: "1",
- revisionseq: "0",
- versionvalue: "1",
- description: "",
- oid: "38033242-3cb4-415c-9cc4-acdb86c2ee8f",
- versionseq: "0",
- content: "wbtest123淇敼鍚�",
- checkinby: "",
- revisionrule: "ObjectVersion",
- reviewtypetext: "閮ㄩ棬绾�",
- lctid: "ProcessReviewLC",
- reviewtype: "department",
- lcstatus_text: "寰呰瘎瀹�",
- id: "",
- owner: "1",
- checkoutby: "",
- creator: "1",
- createtime: "2022-01-21 10:04:08.053",
- isfirstv: "1",
- lastmodifier_name: "娴嬭瘯",
- revisionoid: "3f3b2112-f356-4809-969b-1e63f6daa08d",
- btmname: "processreview",
- checkouttime: "",
- revisionvalue: "A",
- versionrule: "0",
- name: "web绔柊澧炴祴璇�01",
- islastr: "1",
- lastmodifytime: "2022-02-09 09:45:56.044",
- copyfromversion: "",
- creator_name: "娴嬭瘯",
- nameoid: "d8975a06-4c1e-462b-af84-093068c58e9e",
- lcstatus: "Waiting",
- islastv: "1",
- checkintime: "",
- isfirstr: "1",
- ts: "2022-02-09 09:45:56.044"
- },
- {
- code: "w017",
- lastmodifier: "1",
- revisionseq: "0",
- versionvalue: "1",
- description: "",
- oid: "4011e1a7-9eb6-4b5c-89bf-847abff56682",
- versionseq: "0",
- content: "",
- checkinby: "",
- revisionrule: "ObjectVersion",
- reviewtypetext: "閮ㄩ棬绾�",
- lctid: "ProcessReviewLC",
- reviewtype: "department",
- lcstatus_text: "缂栬緫涓�",
- id: "",
- owner: "1",
- checkoutby: "",
- creator: "1",
- createtime: "2022-02-18 14:37:53.247",
- isfirstv: "1",
- lastmodifier_name: "娴嬭瘯",
- revisionoid: "648f5cf8-b42a-4b78-9928-883c94a83081",
- btmname: "processreview",
- checkouttime: "",
- revisionvalue: "A",
- versionrule: "0",
- name: "web椤甸潰娴嬭瘯17",
- islastr: "1",
- lastmodifytime: "2022-02-18 14:37:53.247",
- copyfromversion: "",
- creator_name: "娴嬭瘯",
- nameoid: "5d14e204-f085-4be0-9da6-b08c99172f8a",
- lcstatus: "Editing",
- islastv: "1",
- checkintime: "",
- isfirstr: "1",
- ts: "2022-02-18 14:37:53.247"
- },
- {
- code: "w03",
- lastmodifier: "1",
- revisionseq: "0",
- versionvalue: "1",
- description: "",
- oid: "68583bec-b9ca-4321-8b66-a11d2298f51e",
- versionseq: "0",
- content: "",
- checkinby: "",
- revisionrule: "ObjectVersion",
- reviewtypetext: "閮ㄩ棬绾�",
- lctid: "ProcessReviewLC",
- reviewtype: "department",
- lcstatus_text: "缂栬緫涓�",
- id: "",
- owner: "1",
- checkoutby: "",
- creator: "1",
- createtime: "2022-02-18 14:35:53.177",
- isfirstv: "1",
- lastmodifier_name: "娴嬭瘯",
- revisionoid: "ff85f436-4dd1-498e-9665-44d53e27ac29",
- btmname: "processreview",
- checkouttime: "",
- revisionvalue: "A",
- versionrule: "0",
- name: "web椤甸潰娴嬭瘯03",
- islastr: "1",
- lastmodifytime: "2022-02-18 14:35:53.177",
- copyfromversion: "",
- creator_name: "娴嬭瘯",
- nameoid: "e0f20755-6954-4757-911e-7b9929fbe9a2",
- lcstatus: "Editing",
- islastv: "1",
- checkintime: "",
- isfirstr: "1",
- ts: "2022-02-18 14:35:53.177"
- },
- ],
- // 琛ㄥ崟鏁版嵁
- formList: [
- {
- comboxKey: null,
- customClass: null,
- data: null,
- dateFormate: null,
- defaultValue: "",
- displayExtension: "",
- extendAttrMap: null,
- extendAttrString: null,
- field: "name",
- hidden: false,
- keyAttr: true,
- prefix: null,
- readOnly: false,
- referConfig: null,
- required: true,
- selectLibFlag: null,
- showField: null,
- suffix: '$',
- text: "鍚嶇О",
- tooltips: '鍚嶇О',
- type: "text",
- unique: false,
- verify: ""
- },
- {
- comboxKey: null,
- customClass: null,
- data: null,
- dateFormate: null,
- defaultValue: "",
- displayExtension: "",
- extendAttrMap: null,
- extendAttrString: null,
- field: "code",
- hidden: false,
- keyAttr: false,
- prefix: null,
- readOnly: false,
- referConfig: null,
- required: false,
- selectLibFlag: null,
- showField: null,
- suffix: null,
- disabled:true,
- text: "缂栫爜",
- tooltips: null,
- type: "text",
- unique: false,
- verify: ""
- },
- {
- comboxKey: "EnumReviewType",
- customClass: null,
- data: null,
- dateFormate: null,
- defaultValue: "department",
- displayExtension: "",
- extendAttrMap: null,
- extendAttrString: null,
- field: "reviewtype",
- hidden: false,
- keyAttr: false,
- prefix: null,
- readOnly: false,
- referConfig: null,
- required: false,
- selectLibFlag: null,
- showField: null,
- suffix: null,
- text: "绫诲瀷",
- tooltips: null,
- type: "combox",
- unique: false,
- verify: "",
- dicData: [{
- label: '娴嬭瘯1',
- value: 'department'
- }, {
- label: '娴嬭瘯2',
- value: 'departments'
- }]
- },
- {
- comboxKey: null,
- customClass: null,
- data: null,
- dateFormate: null,
- defaultValue: "",
- displayExtension: "",
- extendAttrMap: null,
- extendAttrString: null,
- field: "creator",
- hidden: true,
- keyAttr: false,
- prefix: null,
- readOnly: true,
- referConfig: null,
- required: false,
- selectLibFlag: null,
- showField: null,
- suffix: null,
- text: "鍒涘缓浜�",
- tooltips: null,
- type: "text",
- unique: false,
- verify: ""
- },
- {
- comboxKey: null,
- customClass: null,
- data: null,
- dateFormate: "yyyy-MM-dd HH:mm:ss",
- defaultValue: "",
- displayExtension: "",
- extendAttrMap: null,
- extendAttrString: null,
- field: "createtime",
- hidden: true,
- keyAttr: false,
- prefix: null,
- readOnly: false,
- referConfig: null,
- required: false,
- selectLibFlag: null,
- showField: null,
- suffix: null,
- text: "鍒涘缓鏃堕棿",
- tooltips: null,
- type: "datetime",
- unique: false,
- verify: ""
- },
- {
- comboxKey: null,
- customClass: null,
- data: null,
- dateFormate: null,
- defaultValue: "",
- displayExtension: "",
- extendAttrMap: null,
- extendAttrString: null,
- field: "content",
- hidden: false,
- keyAttr: false,
- prefix: null,
- readOnly: false,
- referConfig: null,
- required: false,
- selectLibFlag: null,
- showField: null,
- suffix: null,
- text: "澶囨敞",
- tooltips: null,
- type: "textarea",
- unique: false,
- verify: ""
- },
- ],
- // 鎸夐挳鏁版嵁
- butttonList: [
- {
- actionVO: {
- actionCls: "",
- actionUsedType: "business",
- bsUrl: "null",
- createTime: "2013-11-01 15:17:45.000",
- creator: "eddieliu",
- csClass: "plm.uif.actions.client.AddAction",
- description: "鍒涘缓涓氬姟瀵硅薄",
- id: "add",
- lastModifier: "developer",
- lastModifyTime: "2013-11-01 15:17:45.000",
- licensors: null,
- name: "鍒涘缓",
- oid: "65274704-5557-231C-E3EA-0B32B9BD5A0B"
- },
- areaType: "tab",
- authorization: true,
- children: null,
- createTime: "2022-07-18 17:29:10.000",
- creator: "developer",
- csUrl: "plm.uif.actions.client.AddAction",
- description: "",
- displayMode: "textandimage",
- hidden: false,
- iconPath: "",
- id: "add",
- lastModifier: "developer",
- lastModifyTime: "2022-07-18 17:29:10.000",
- name: "鏂板",
- oid: "DD34108A-5978-334C-7A2A-45F2EE158B1D",
- orderNum: 1,
- paramVOS: {
- form: "DepartmentProcessReviewForm",
- context: "EditDepartmentProcessReview",
- type: "processreview",
- initvalue: "reviewtype=department",
- location: 'top',
- buttonType: 'primary',
- buttonMethods: 'add'
- },
- pkComponent: "D99AD59E-563F-AB7A-F307-794B929114CD",
- pkParentOid: "",
- url: "null"
- },
- {
- actionVO: {
- actionCls: "",
- actionUsedType: "business",
- bsUrl: "BaseEditAction#doAction",
- createTime: "2013-11-09 10:32:41.000",
- creator: "eddieliu",
- csClass: "plm.uif.actions.client.EditAction",
- description: "淇敼涓氬姟瀵硅薄",
- id: "edit",
- lastModifier: "developer",
- lastModifyTime: "2013-11-09 10:32:41.000",
- licensors: null,
- name: "淇敼",
- oid: "F8534EFE-130B-0CB3-D477-2AC7B19B7DC4"
- },
- areaType: "tab",
- authorization: true,
- children: null,
- createTime: "2022-07-18 17:29:10.000",
- creator: "developer",
- csUrl: "plm.uif.actions.client.EditAction",
- description: "",
- displayMode: "textandimage",
- hidden: false,
- iconPath: "",
- id: "edit",
- lastModifier: "developer",
- lastModifyTime: "2022-07-18 17:29:10.000",
- name: "淇敼",
- oid: "F50F37CE-26FF-8BC1-F87A-FFD9CFA8CE57",
- orderNum: 2,
- paramVOS: {
- form: "DepartmentProcessReviewForm",
- checkNotOperation: "${lcstatus}=Auditing&${lcstatus}=Waiting",
- location: 'menu',
- buttonType: 'text',
- icon: "el-icon-edit",
- buttonMethods: 'edit'
- },
- pkComponent: "D99AD59E-563F-AB7A-F307-794B929114CD",
- pkParentOid: "",
- url: "BaseEditAction#doAction"
- },
- {
- actionVO: {
- actionCls: "",
- actionUsedType: "business",
- bsUrl: "BaseDeleteAction",
- createTime: "2013-11-09 10:33:08.000",
- creator: "1",
- csClass: "plm.uif.actions.client.DeleteAction",
- description: "鍒犻櫎涓氬姟瀵硅薄",
- id: "del",
- lastModifier: "developer",
- lastModifyTime: "2013-11-09 10:33:08.000",
- licensors: null,
- name: "鍒犻櫎",
- oid: "2655E9F0-014B-DFEC-6F92-A6D1C51FDA19"
- },
- areaType: "tab",
- authorization: true,
- children: null,
- createTime: "2022-07-18 17:29:10.000",
- creator: "developer",
- csUrl: "plm.uif.actions.client.DeleteAction",
- description: "",
- displayMode: "textandimage",
- hidden: false,
- iconPath: "",
- id: "del",
- lastModifier: "developer",
- lastModifyTime: "2022-07-18 17:29:10.000",
- name: "鍒犻櫎",
- oid: "A8914C35-721B-A1E3-1EEE-3A9196DF5EC9",
- orderNum: 3,
- paramVOS: {
- owner: "true",
- checkNotOperation: "${lcstatus}=Auditing&${lcstatus}=Waiting",
- state: "Editing",
- location: 'menu',
- buttonType: 'text',
- icon: "el-icon-delete",
- buttonMethods: 'delete'
- },
- pkComponent: "D99AD59E-563F-AB7A-F307-794B929114CD",
- pkParentOid: "",
- url: "BaseDeleteAction"
- },
- {
- actionVO: {
- actionCls: "",
- actionUsedType: "business",
- bsUrl: "BaseStartWorkflowAction#doAction",
- createTime: "2014-03-17 10:14:40.000",
- creator: "developer",
- csClass: "plm.uif.actions.client.LaunchWorkFlowAction",
- description: "鍚姩娴佺▼",
- id: "launchworkflow",
- lastModifier: "developer",
- lastModifyTime: "2014-03-17 10:14:40.000",
- licensors: null,
- name: "鍚姩娴佺▼",
- oid: "56FE9470-AA2B-403B-F029-0A120FC94536"
- },
- areaType: "tab",
- authorization: true,
- children: null,
- createTime: "2022-07-18 17:29:10.000",
- creator: "developer",
- csUrl: "plm.uif.actions.client.LaunchWorkFlowAction",
- description: "",
- displayMode: "textandimage",
- hidden: false,
- iconPath: "",
- id: "launchworkflow",
- lastModifier: "developer",
- lastModifyTime: "2022-07-18 17:29:10.000",
- name: "瀹$",
- oid: "9963FA86-F146-FBD3-2AC2-51A7AAAAB825",
- orderNum: 4,
- paramVOS: {
- owner: "true",
- autoSubmitFirst: "false",
- flowtemplates: "宸ヨ壓璇勫瀹$娴佺▼",
- state: "Editing",
- type: "processreview",
- location: 'top',
- buttonMethods: 'form'
- },
- pkComponent: "D99AD59E-563F-AB7A-F307-794B929114CD",
- pkParentOid: "",
- url: "BaseStartWorkflowAction#doAction"
- },
- ]
- }
- },
- computed: {
- option() {
- return {
+ tableList: [],
+ option: {
index: true,
addBtn: false,
editBtn: false,
delBtn: false,
- height: 'auto',
+ refreshBtn:false,
+ columnBtn:false,
+ searchShowBtn:false,
+ printBtn:false,
+ excelBtn:false,
+ filterBtn:false,
+ selection: true,
+ tip: false,
+ menuWidth:260,
+ height: '100%',
+ calcHeight: 15,
indexFixed: false,
- menuFixed: false,
- column: this.updatedColumns,
- };
+ menuFixed: this.areasName === 'westArea' ? false : 'right',
+ searchMenuSpan:12,
+ searchShow:false,
+ column: [],
+ },
+ selectList: [],
+ columnType: {
+ text: "input",
+ combox: "select",
+ truefalse: "switch",
+ number: "number",
+ textarea: "textarea",
+ datetime: "datetime",
+ date: "date",
+ refer: "refer",
+ },
+ sourceDataMapParams:{}
+ }
+ },
+ computed: {
+ pageType() {
+ return this.areasName === 'westArea' ? this.simplePage : this.page;
+ }
+ },
+ 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();
+ }
+ })*/
+ }
+ }
},
- updatedColumns() {
- return this.tableHeadList.map(item => {
- const typeValue = item.fieldType === 'text' || item.fieldType === 'combox' ? 'input' : item.fieldType; // 琛ㄥ崟Type绫诲瀷
-
+ 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;
+ }
+ if(newval){
+ this.handleRefresh();
+ }
+ }
+ },
+ tableList:{
+ handler(newval) {
+ if(newval) {
+ this.$emit("setData", {
+ area: this.areasName,
+ type:this.componentVO.uiComponentType,
+ currentDefineVO:this.currentDefineVO,
+ data:newval
+ });
+ }
+ },
+ deep: true,
+ immediate: true
+ },
+ 'sourceData':{
+ handler(newval) {
+ if(newval) {
+ this.sourceDataMapParams=this.sourceDataMap();
+ this.getParams();
+ this.handleRefresh();
+ }
+ },
+ deep: true,
+ immediate: true
+ }
+ },
+ created() {
+ this.getParams();
+ this.option.column = this.updatedColumns();
+ if (this.componentVO.uiComponentType == 'TreeTable') {
+ //鏍戣〃
+ this.option.rowKey = this.currentDefineVO.treeCurrentField || 'oid';
+ this.option.rowParentKey = this.currentDefineVO.treeParentField || 'parentOid'
+ }
+ this.page = {
+ pageSize: this.currentDefineVO.pageVO ? this.currentDefineVO.pageVO.limit : 10,
+ currentPage: this.currentDefineVO.pageVO ? this.currentDefineVO.pageVO.page : 1,
+ total: 0,
+ pageSizes: this.currentDefineVO.limits || [10, 20, 30, 40, 50, 100]
+ };
+ },
+ 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: {
+ updatedColumns: function () {
+ const queryFields = !validatenull(this.currentDefineVO.queryColumns) ? this.currentDefineVO.queryColumns.map(item => item.field) : [];
+ return this.currentDefineVO.cols[0].map(item => {
+ const search = queryFields.includes(item.field); // 鍒ゆ柇 field 鏄惁鍦� queryColumns 閲�
+ if (this.currentDefineVO.btmType == 'fileobject' && item.field == 'name') {
+ //鏄枃浠�
+ item.formatter = function (d) {
+ return '<a class="layui-btn layui-btn-intable" lay-event="PREVIEW">' + d.name + '</a>'
+ }
+ }
+ let formatter = item.formatter || item.templet;
+ if (typeof formatter == "string" && formatter != '') {
+ formatter = eval("(" + formatter + ")");
+ }
+ item.type = this.columnType[item.fieldType] || item.fieldType;
return {
- align: item.align,
- colspan: item.colspan,
+ ...item,
prop: item.field,
- type: typeValue,
- hidden: item.hidden,
label: item.title,
- width: item.width,
+ search: search,
+ formatter: formatter
};
});
},
- },
- methods: {
- buttonClick(scope, item) {
- this.formName = item.name;
-
- function handleAdd() {
- this.visible = true;
+ sourceDataMap: function () {
+ const sourceDataMap = {};
+ if (Object.keys(this.sourceData).length>0) {
+ if(this.sourceData.oid ) {
+ if (this.sourceData.oid.indexOf('@vcitreesep@') > -1) {
+ this.sourceData.oid = this.sourceData.oid.split('@vcitreesep@')[1];
+ }
+ sourceDataMap.sourceBtmName = this.sourceBtmType;;
+ sourceDataMap.sourceOid = this.sourceData.oid;
+ }
+ for (let i in this.sourceData) {
+ const item = this.sourceData[i]
+ if (item && item.constructor === Object) continue;
+ if (i == 'type' || i == 'context' || i == 'content') continue;
+ sourceDataMap['sourceData["' + i + '"]'] = item
+ }
}
- function handleEdit() {
- this.visible = true;
- this.$refs.dynamicForm.form = scope.row;
+ if (Object.keys(this.paramVOS).length>0) {
+ for (let j in this.paramVOS) {
+ if (this.paramVOS[j] && this.paramVOS[j].constructor === Object) continue;
+ if (j == 'type' || j == 'context' || j == 'content' || j == "getdataurl" || j == "getdatamethod" || j == "url" || j == "method" || j == "uploadfileurl" || j == "title") continue;
+ sourceDataMap['sourceData["' + j + '"]'] = this.paramVOS[j]
+ }
}
-
- function handleDelete() {
- this.$message.success('鍒犻櫎鎴愬姛锛�');
- }
-
- const methodHandlers = {
- add: handleAdd.bind(this),
- edit: handleEdit.bind(this),
- delete: handleDelete.bind(this),
+ return sourceDataMap;
+ },
+ getParams: function () {
+ const tableParams = {
+ btmname: this.currentDefineVO.btmType,
+ btmType:this.currentDefineVO.btmType,
+ tableDefineId: this.currentDefineVO.id,
+ componentOid: this.componentVO.oid,
+ uiDefineId: this.uiContext,
+ linkTypeFlag: this.currentDefineVO.linkTypeFlag,
+ treeTableFlag:this.componentVO.uiComponentType == 'TreeTable'
};
- const method = item.paramVOS.buttonMethods;
- const handler = methodHandlers[method];
- if (handler) {
- handler();
- } else {
- this.$message.error('璇烽噸鏂伴厤缃寜閽紒')
+ const sourceDataMapList = this.sourceDataMapParams;
+
+ this.params = Object.assign({},tableParams, sourceDataMapList);
+ },
+ onLoad(page, params = {}) {
+ if (Object.keys(this.sourceData).length>0 && this.isShow) {
+ this.loading = true;
+ getList(page.currentPage, page.pageSize, Object.assign({},this.params,this.query,params)).then(res => {
+ let data = [];
+ if (res.data && res.data.data) {
+ data = res.data.data;
+ this.page.total = res.data.total;
+ } else {
+ data = res.data;
+ this.page.total = res.total;
+ }
+ if (!data || data == null) {
+ data = [];
+ }
+ this.tableList = data;
+ this.loading = false;
+ this.selectionClear();
+ }).catch(error => {
+ this.$message.error(error);
+ this.loading = false;
+ });
}
+ },
+ rowView(row,index){
+ this.$refs.dataTable.rowView(row,index)
+ },
+ rowClickChange(row){
+ this.$refs.dataTable.toggleRowSelection(row);
+ },
+ selectChange(row) {
+ this.selectList = row;
+ this.$emit("setDataStore", {
+ area: this.areasName,
+ type:this.componentVO.uiComponentType,
+ btmType:this.currentDefineVO.btmType,
+ dataStore:row
+ });
+ },
+ currentChange(currentPage) {
+ this.page.currentPage = currentPage;
+ },
+ sizeChange(pageSize) {
+ this.page.pageSize = pageSize;
+ },
+ searchChange(params,done){
+ this.query = {};
+ for (let i in params) {
+ this.query['conditionMap["' + i + '"]'] = "*" + params[i] + "*";
+ }
+ this.page.currentPage = 1;
+ this.onLoad(this.page);
+ done();
+ },
+ filterChange(result){
+ let parms={}
+ for (let i in result) {
+ if(!validatenull(result[i][2])) {
+ const fieldVal = result[i][2]
+ if (result[i][1] == "=") {
+ parms['conditionMap["' + result[i][0] + '"]'] = fieldVal;
+ } else if (result[i][1] == "鈮�") {
+ parms['conditionMap["' + result[i][0] + '"]'] = '!=' + fieldVal;
+ } else if (result[i][1] == "like") {
+ parms['conditionMap["' + result[i][0] + '"]'] = "*" + fieldVal + "*";
+ } else if (result[i][1] == "鈭�") {
+ parms['conditionMap["' + result[i][0] + '"]'] = "*" + fieldVal + "*";
+ } else {
+ parms['conditionMap["' + result[i][0] + '"]'] = result[i][1] + fieldVal;
+ }
+ }
+ }
+ this.onLoad(this.page,parms);
+ },
+ searchReset() {
+ this.query = {};
+ this.onLoad(this.page);
+ },
+ selectionClear() {
+ this.selectionList = [];
+ try {
+ this.$refs.dataTable.toggleSelection();
+ }catch (e) {
+
+ }
+ },
+ handleRefresh(type) {
+ this.onLoad(this.page);
+ },
+ rowExcel() {
+ //瀵煎嚭
+ this.$refs.dataTable.$refs.dialogExcel.handleShow();
+ //瀵煎嚭寮圭獥涓殑纭畾鎸夐挳
+ this.$refs.dataTable.$refs.dialogExcel.handleSubmit = function () {
+ this.$Export.excel({title: this.$refs.dataTable.$refs.dialogExcel.form.name, columns: this.$refs.dataTable.$refs.dialogExcel.columns, data: this.$refs.dataTable.$refs.dialogExcel.handleSum()});
+ this.$refs.dataTable.$refs.dialogExcel.box = !1
+ }
+ //this.$refs.dataTable.rowExcel()
}
}
}
--
Gitblit v1.9.3