- <!-- 基础表格(表格 + 分页) -->
- <template>
-     <div class="basic-table">
-       <el-table 
-         ref="basicTable"
-       height="100%" 
-       :data="tabVue.TableData" 
-       :highlight-current-row="tabVue.TableAttributes.highlightCurrentRow"
-       :stripe="tabVue.TableAttributesConfig.stripe"
-       :size="tabVue.TableAttributesConfig.size"
-       :border="tabVue.TableAttributesConfig.border"
-       :row-class-name="tabVue.TableAttributes.rowClassName"
-       :cell-class-name="tabVue.TableAttributes.cellClassName"
-       :expand-row-keys="tabVue.TableExpands"
-             :row-key="tabVue.getRowKeys"
-       :tree-props="tabVue.TableAttributes.treePros"
-       @selection-change="tabVue.tableSelectionChange"
-       @sort-change="tabVue.tableSortChange"
-       @row-click="tabVue.tableRowClick"
-       @row-dblclick="tabVue.rowDblClick"
-       @expand-change="tabVue.getRowDetail">
-       <!-- 展开行 -->
-       <el-table-column>
-         <template slot-scope="props">
-             <slot name="tableRowDetail" :row="props.row">
-             <div class="el-table-detailBox">
-               <div class="table-detailBox-content">
-                 <span class="table-detailBox-title">{{ tabVue.TableController.rowDetail.title }}</span>
-                 <div class="table-detailBox-txt">{{ tabVue.ExpandsDetailMap[tabVue.getRowKeys(props.row)] }}</div>
-                 </div>
-             </div>
-             </slot>
-                 </template>
-       </el-table-column>
-             <!-- 复选框 -->
-             <el-table-column v-if="tabVue.TableAttributes.hasSelection" type="selection" width="55" :selectable="tabVue.tableSelectable"></el-table-column>
-             <el-table-column>
-         v-for="(item, index) in tabVue.TableColumnsFilter"
-         :key="`${item.pageColumnName}-${index}`"
-         :sortable="item.sortable"
-         :label="item.alias"
-         :prop="item.pageColumnName"
-         :sort-orders="['ascending', 'descending']"
-         :class-name="item.className"
-       </el-table-column>
-             <!-- 展示列 -->
-             <el-table-column
-         v-for="(item, index) in tabVue.TableColumnsFilter"
-         :key="`${item.pageColumnName}-${index}`"
-         :sortable="item.sortable"
-         :label="item.alias"
-         :prop="item.pageColumnName"
-         :sort-orders="['ascending', 'descending']"
-         :class-name="item.className"
-         :show-overflow-tooltip="item.pageColumnName =='remark' ? false : item.showOverflowTooltip"
-         :min-width="item.minWidth"
-         :width="item.width || undefined">
-         <template slot-scope="scope">
-                     <slot name="tableColumn" row="scope.row" :columnItem="item">
-               <template>{{ scope.row[item.pageColumnName] }}</template>
-           </slot>
-                 </template>
-       </el-table-column>
-             <!-- 操作列 -->
-             <template v-if="hasColumnControl">
-                 <el-table-column :width="controlColumnInfo" label="操作" fixed="right">
-           <template slot-scope="scope">
-             <table-column-control :column-control="tabVue.TableController.columnControl" :row-data="scope.row">
-             </table-column-control>
-           </template>
-           </el-table-column>
-             </template>
-       </el-table>
-         <!-- 分页 -->
-         <div class="el-table-wrapper__content--footer">
-         <el-pagination
-         class="el-table__pagination"
-         @size-change="tabVue.handleSizeChange"
-         @current-change="tabVue.handleCurrentChange"
-         :current-page="tabVue.Pagination.PageIndex"
-         :page-sizes="tabVue.Pagination.PageSizes"
-         :page-size="tabVue.Pagination.PageSize"
-         :pager-count="tabVue.Pagination.PageCount"
-         :layout="paginationTypeEnum._mapValue()[tabVue.TableAttributes.paginationType].layout"
-         :total="tabVue.Pagination.DataCount">
-       </el-pagination>
-         </div>
-   </div>
- </template>
- <script>
- import tableColumnControl from './table-column-control';
- import { paginationTypeEnum } from '@enums/common';
- export default {
-     components: {
-       tableColumnControl
-   },
-     props: {
-       parent: {    /* 指定父组件的this */
-         type: Object
-     }
-   },
-   data() {
-       return {
-         tabVue: this.parent || this.$parent,
-       paginationTypeEnum
-     }
-   },
-   computed: {
-       // 获取操作列的宽度
-     hasColumnControl() {
-         return this.tabVue.TableController.columnControl && this.tabVue.TableController.columnControl.length;
-     },
-     controlColumnInfo() {
-         if (this.tabVue.TableController.columnControlWidth) {
-           return this.tabVue.TableController.columnControlWidth;
-       }
-       let len = this.tabVue.TableController.columnControlWidth;
-       if (len === 1) {
-           return '100px';
-       } else if (len === 2) {
-           return '180px';
-       } else {
-           return '200px';
-       }
-     }
-   },
-   methods: {
-       // 刷新页面滚动条
-     refreshScrollbar() {
-         this.$refs.moduleTable.bodyWrapper.scrollTop = 0;
-     }
-   },
-   watch: {
-       'tabVue.TableData': {
-         deep: true,
-       handler() {
-           this.refreshScrollbar();
-       }
-     }
-   }
- }
- </script>