centaline-data-driven 1.5.96 → 1.5.97

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,67 +1,67 @@
1
1
  <template>
2
2
  <div style="width: 100%" class="ct-searchtable" ref="searchTable"
3
- :style="{ 'margin-top': (isMarginTop || from=='detail') ? '0' : '10px', padding: isLayout ? '0' : '' }">
3
+ :style="{ 'margin-top': (isMarginTop || from == 'detail') ? '0' : '10px', padding: isLayout ? '0' : '' }">
4
4
  <ct-tableStats ref="tableStats" class="ct-search-table-list-header" v-if="!isLoading && model && searchStatsApi"
5
- :api="searchStatsApi" @searchStats="searchStats" @setTableHeight="setTableHeight" :flagDisabled="disabledStats"
6
- :searchModel="model.searchModel">
5
+ :api="searchStatsApi" @searchStats="searchStats" @setTableHeight="setTableHeight" :flagDisabled="disabledStats"
6
+ :searchModel="model.searchModel">
7
7
  </ct-tableStats>
8
8
 
9
9
  <ct-tabletoolbar ref="toolbar" v-if="!isLoading && model && model.buttons" :buttons="model.buttons"
10
- :key="model.toolbarKey" @click="toolbarClickHandler($event)" @importComplete="importComplete"
11
- :optionApi="model.optionApi" :searchModel="model.searchModel">
10
+ :key="model.toolbarKey" @click="toolbarClickHandler($event)" @importComplete="importComplete"
11
+ :optionApi="model.optionApi" :searchModel="model.searchModel">
12
12
  </ct-tabletoolbar>
13
13
 
14
14
  <ct-tabletip ref="listHeader" class="ct-search-table-list-header ct-search-table-tag" :tip="model.listHeader"
15
- v-if="!isLoading && model" @setTableHeight="setTableHeight"></ct-tabletip>
15
+ v-if="!isLoading && model" @setTableHeight="setTableHeight"></ct-tabletip>
16
16
 
17
17
  <div v-loading="tableLoading" v-if="!isLoading && model"
18
- :style="{ height: '0px', top: model.tableHeight * 0.55 + 'px' }"></div>
18
+ :style="{ height: '0px', top: model.tableHeight * 0.55 + 'px' }"></div>
19
19
  <div v-loading="operationLoading"></div>
20
20
 
21
21
 
22
- <div class="theadTitle" id="theadTitle" :style="{top:theadTitleTop+'px',left:theadTitleLeft+'px'}" v-show="theadTitleShow">
23
- 左右拖动竖线调整列宽
24
- </div>
22
+ <div class="theadTitle" id="theadTitle" :style="{ top: theadTitleTop + 'px', left: theadTitleLeft + 'px' }"
23
+ v-show="theadTitleShow">
24
+ 左右拖动竖线调整列宽
25
+ </div>
25
26
  <div class="ct-tableParent" ref="tableParent" v-bind="model.attrs" v-if="!isLoading && model"
26
- :style="{ height: from == 'form' ? '100%' : model.tableHeight + 'px', 'border-bottom': isLayout ? 'none' : '', 'border-top': isLayout ? 'none' : '', }"
27
- @scroll="scrollHandle($event)" :v-focus="model.flagFocus" @keydown.up="rowKeyDownHandle($event, 0)"
28
- @keydown.down="rowKeyDownHandle($event, 1)" tabindex="-1">
27
+ :style="{ height: from == 'form' ? '100%' : model.tableHeight + 'px', 'border-bottom': isLayout ? 'none' : '', 'border-top': isLayout ? 'none' : '', }"
28
+ @scroll="scrollHandle($event)" :v-focus="model.flagFocus" @keydown.up="rowKeyDownHandle($event, 0)"
29
+ @keydown.down="rowKeyDownHandle($event, 1)" tabindex="-1">
29
30
  <div class="ct-table-content" v-if="!isLayout">
30
31
  <table border="0" cellpadding="0" cellspacing="0"
31
- :class="['ct-table', model.attrs.size ? 'ct-table-' + model.attrs.size : '',leftShadow>-1 || rightShadow>-1 ? 'ct-table-Shadow' : '',]">
32
+ :class="['ct-table', model.attrs.size ? 'ct-table-' + model.attrs.size : '', leftShadow > -1 || rightShadow > -1 ? 'ct-table-Shadow' : '',]">
32
33
  <!--表头-->
33
34
  <thead ref="tableHead" class="right-no-fixation-th">
34
35
  <tr class="ct-tr" ref="headTr" v-for="(columns, columnsIndex) in model.columnsArr" :key="columnsIndex">
35
- <th v-if="model.isMulti && columnsIndex === 0" ref="headLeftThs"
36
- class="ct-td left-fixation-th checkbox-td" :class="[model.tdClass]">
36
+ <th v-if="model.isMulti && columnsIndex === 0" ref="headLeftThs" class="ct-td left-fixation-th checkbox-td"
37
+ :class="[model.tdClass]">
37
38
  <label class="el-checkbox">
38
39
  <span class="el-checkbox__input" :class="model.selectAllType">
39
40
  <span class="el-checkbox__inner"></span>
40
41
  <input type="checkbox" @click="selectAll($event)" v-model="model.selectAll"
41
- class="el-checkbox__original checkbox-td-1" aria-hidden="false" />
42
+ class="el-checkbox__original checkbox-td-1" aria-hidden="false" />
42
43
  </span>
43
44
  </label>
44
45
  </th>
45
46
  <th :ref="column.fixed ? column.fixed === 'left' ? 'headLeftThs' : 'headRightThs' : 'headThs'"
46
- v-for="(column, colIndex) in columns" :key="colIndex" v-if="column.show" class="ct-td ct-searchtable-th"
47
- :rowspan="column.rowspan" :colspan="column.colspan" :class="[colHasWidth[colIndex], column.sortAction, model.tdClass,
47
+ v-for="(column, colIndex) in columns" :key="colIndex" v-if="column.show" class="ct-td ct-searchtable-th"
48
+ :rowspan="column.rowspan" :colspan="column.colspan" :class="[colHasWidth[colIndex], column.sortAction, model.tdClass,
48
49
  colIndex === leftShadow ? 'shadowLeft' : null,
49
50
  colIndex === rightShadow ? 'shadowRight' : null,
50
51
  column.fixed === 'left' ? 'left-fixation-th' : null,
51
52
  column.fixed === 'right' ? 'right-fixation-th' : null,
52
53
  column.width === undefined ? 'ct-table-auto' : null,
53
54
  typeof column.fixed === 'undefined' ? 'right-no-fixation-th' : null,
54
- model.columnWidthSaveAction ?'theadLine':'',
55
- ]" @mousemove="thMouseMoveHandle($event)" @mousedown="thMouseDownHandle($event, colIndex)"
56
- @mouseover="theadTitleHover" @mouseout="theadTitleLeave"
57
- v-bind="column.attrs" id="thHeight">
55
+ model.columnWidthSaveAction ? 'theadLine' : '',
56
+ ]" @mousemove="thMouseMoveHandle($event)" @mousedown="thMouseDownHandle($event, colIndex)"
57
+ @mouseover="theadTitleHover" @mouseout="theadTitleLeave" v-bind="column.attrs" id="thHeight">
58
58
  <span>{{ column.name }}</span>
59
59
  <span class="caret-wrapper" v-if="column.sort" @click="toSort($event, column)"
60
- @contextmenu.prevent="clearSort($event, column)">
60
+ @contextmenu.prevent="clearSort($event, column)">
61
61
  <i class="sort-caret ascending" @click.left="toSort($event, column, 'asc')"
62
- @contextmenu.prevent="clearSort($event, column)"></i>
62
+ @contextmenu.prevent="clearSort($event, column)"></i>
63
63
  <i class="sort-caret descending" @click.left="toSort($event, column, 'desc')"
64
- @contextmenu.prevent="clearSort($event, column)"></i>
64
+ @contextmenu.prevent="clearSort($event, column)"></i>
65
65
  </span>
66
66
  </th>
67
67
 
@@ -74,72 +74,69 @@
74
74
  <tbody>
75
75
  <!--可视区域的行数据-->
76
76
  <tr v-for="(row, rowindex) in model.listData" :key="rowindex"
77
- v-if="from == 'form' || pageRowMin <= rowindex && rowindex <= pageRowMax" :ref="'rows.' + rowindex"
78
- @click="rowClickHandle($event, rowindex)" class="ct-tr" :style="row.$style">
79
- <td v-if="model.isMulti" class="ct-td tdFiexd left-fixation checkbox-td" :class="[model.tdClass,rowindex === model.selectIndex ? 'select' : null,]"
80
- align="center">
77
+ v-if="from == 'form' || pageRowMin <= rowindex && rowindex <= pageRowMax" :ref="'rows.' + rowindex"
78
+ @click="rowClickHandle($event, rowindex)" class="ct-tr" :style="row.$style">
79
+ <td v-if="model.isMulti" class="ct-td tdFiexd left-fixation checkbox-td"
80
+ :class="[model.tdClass, rowindex === model.selectIndex ? 'select' : null,]" align="center">
81
81
  <label v-if="!model.rightMulti || $common.getDataOfUpperLower(row, model.rightMulti) == 1"
82
- class="el-checkbox is-checked">
82
+ class="el-checkbox is-checked">
83
83
  <span class="el-checkbox__input" :class="rowCheckClass(row)">
84
84
  <span class="el-checkbox__inner"></span>
85
85
  <input type="checkbox" v-model="row.$select" @change="selectOne($event)"
86
- class="el-checkbox__original checkbox-td-1" />
86
+ class="el-checkbox__original checkbox-td-1" />
87
87
  </span>
88
88
  </label>
89
89
  </td>
90
- <td :ref="column.fixed ? column.fixed === 'left' ? 'headLeftTds' : 'headRightTds' : null" :rowIndex="rowindex" :columnid="column.id"
91
- v-for="(column, colIndex) in model.dataFieldcolumns" :key="colIndex" v-if="tdShow(column, row)"
92
- :rowspan="tdRowspan(column, row)" class="ct-td" :class="[
90
+ <td :ref="column.fixed ? column.fixed === 'left' ? 'headLeftTds' : 'headRightTds' : null"
91
+ :rowIndex="rowindex" :columnid="column.id" v-for="(column, colIndex) in model.dataFieldcolumns"
92
+ :key="colIndex" v-if="tdShow(column, row)" :rowspan="tdRowspan(column, row)" class="ct-td" :class="[
93
93
  colHasWidth[colIndex],
94
94
  model.tdClass,
95
95
  rowindex === model.selectIndex ? 'select' : null,
96
- model.rowMergedColumns && model.rowMergedColumns.includes(column.id)
97
- && row.$rowsMerged && row.$rowsMerged.includes(model.selectIndex) ? 'selectMerged' : null,
96
+ model.rowMergedColumns && model.rowMergedColumns.includes(column.id)
97
+ && row.$rowsMerged && row.$rowsMerged.includes(model.selectIndex) ? 'selectMerged' : null,
98
98
  colIndex === leftShadow ? 'shadowLeft' : null,
99
99
  colIndex === rightShadow ? 'shadowRight' : null,
100
100
  column.fixed === 'left' ? 'left-fixation' : null,
101
101
  column.width === undefined ? 'ct-table-auto' : null,
102
102
  column.fixed === 'right' ? 'right-fixation' : null,
103
- ]" v-bind="column.attrs"
104
- @drop="drop($event,row, column, 'body')"
105
- @dragover.prevent
106
- @dragenter="dragenter($event, column,'body')"
107
- @dragleave="dragleave($event, column,'body')">
103
+ ]" v-bind="column.attrs" @drop="drop($event, row, column, 'body')" @dragover.prevent
104
+ @dragenter="dragenter($event, column, 'body')" @dragleave="dragleave($event, column, 'body')">
108
105
  <!--操作列-->
109
- <div v-if="column.id === 'operation'" class="div_allinline" :class="column.autoRowHeight ? 'lineFeedCell' : 'cell'" style="float: left;">
110
- <template v-for="(router, rowRouterIndex) in getRowRouterShow(row)" >
106
+ <div v-if="column.id === 'operation'" class="div_allinline"
107
+ :class="column.autoRowHeight ? 'lineFeedCell' : 'cell'" style="float: left;">
108
+ <template v-for="(router, rowRouterIndex) in getRowRouterShow(row)">
111
109
  <template v-if="router.isCallTel">
112
- <component v-if="!router.rightField || !row[router.rightField] || row[router.rightField] == 1"
113
- :key="rowRouterIndex" :ref="'router'+router.id+rowindex" :rowData="row" :rowindex="rowindex"
114
- :is="router.is" :vmodel="router" :api="model.optionApi"
115
- @click="rolRouterClickHandler">
110
+ <component v-if="!router.rightField || !row[router.rightField] || row[router.rightField] == 1"
111
+ :key="rowRouterIndex" :ref="'router' + router.id + rowindex" :rowData="row" :rowindex="rowindex"
112
+ :is="router.is" :vmodel="router" :api="model.optionApi" @click="rolRouterClickHandler">
116
113
  </component>
117
114
  </template>
118
115
  <template v-else>
119
- <ct-tablecurrency v-if="!router.rightField || row[router.rightField] == 1"
120
- :key="rowRouterIndex" :ref="'router' + router.id + rowindex" :rowData="row" :rowindex="rowindex"
121
- :isOperationalColumn="true" :router="router" :colValue="router.label"
116
+ <ct-tablecurrency v-if="!router.rightField || row[router.rightField] == 1" :key="rowRouterIndex"
117
+ :ref="'router' + router.id + rowindex" :rowData="row" :rowindex="rowindex"
118
+ :isOperationalColumn="true" :router="router" :colValue="router.label"
122
119
  @click="rolRouterClickHandler">
123
120
  </ct-tablecurrency>
124
121
  </template>
125
122
  </template>
126
123
  <el-popover v-if="getRowRouterDisplay(row).length > 0" :ref="'popover' + rowindex"
127
- :append-to-table="option.appendId ? option.appendId : ''" class="Stats-popover"
128
- popper-class="el-popover1" :placement="option.placement ? option.placement : 'left'"
129
- :trigger="option.trigger ? option.trigger : ''">
130
- <div class="tab-list" style="border-bottom: none">
131
- <template v-for="(router, rowRouterIndex) in getRowRouterDisplay(row)" >
124
+ :append-to-table="option.appendId ? option.appendId : ''" class="Stats-popover"
125
+ popper-class="el-popover1" :placement="option.placement ? option.placement : 'left'"
126
+ :trigger="option.trigger ? option.trigger : ''">
127
+ <div class="tab-list" style="border-bottom: none">
128
+ <template v-for="(router, rowRouterIndex) in getRowRouterDisplay(row)">
132
129
  <template v-if="router.isCallTel">
133
- <component v-if="!router.rightField || !row[router.rightField] || row[router.rightField] == 1"
134
- :key="rowRouterIndex" :ref="'router'+router.id+rowindex" :rowData="row" :rowindex="rowindex"
135
- :is="router.is" :vmodel="router" :api="model.optionApi"
130
+ <component v-if="!router.rightField || !row[router.rightField] || row[router.rightField] == 1"
131
+ :key="rowRouterIndex" :ref="'router' + router.id + rowindex" :rowData="row"
132
+ :rowindex="rowindex" :is="router.is" :vmodel="router" :api="model.optionApi"
136
133
  @click="rolRouterClickHandler">
137
134
  </component>
138
135
  </template>
139
136
  <template v-else>
140
- <ct-tablecurrency v-if="!router.rightField || row[router.rightField] == 1"
141
- :key="rowRouterIndex" :ref="'router' + router.id + rowindex" :rowData="row" :rowindex="rowindex"
142
- :isOperationalColumn="true" :router="router" :colValue="router.label" :isShowImg="false"
137
+ <ct-tablecurrency v-if="!router.rightField || row[router.rightField] == 1" :key="rowRouterIndex"
138
+ :ref="'router' + router.id + rowindex" :rowData="row" :rowindex="rowindex"
139
+ :isOperationalColumn="true" :router="router" :colValue="router.label" :isShowImg="false"
143
140
  @click="rolRouterClickHandler">
144
141
  </ct-tablecurrency>
145
142
  </template>
@@ -151,9 +148,9 @@
151
148
 
152
149
  <template v-else-if="column.id === 'linksCol'">
153
150
  <div v-if="row[column.id]">
154
- <template v-for="(r, linksColIndex) in JSON.parse(row[column.id])" >
155
- <a v-if="r.routerKey" style="padding-right: 10px;" class="ct-tablecurrencyItem"
156
- :key="linksColIndex" @click="linksColClickHandler(r)" v-html="r.name" href="javascript:void(0);">
151
+ <template v-for="(r, linksColIndex) in JSON.parse(row[column.id])">
152
+ <a v-if="r.routerKey" style="padding-right: 10px;" class="ct-tablecurrencyItem" :key="linksColIndex"
153
+ @click="linksColClickHandler(r)" v-html="r.name" href="javascript:void(0);">
157
154
  </a>
158
155
  <span v-else v-html="r.name" style="padding-right: 10px;"></span>
159
156
  </template>
@@ -161,28 +158,28 @@
161
158
  </template>
162
159
 
163
160
  <ct-tablecurrency v-else-if="column.id === 'voice'" :isShowVoice="true" :router="column.router"
164
- :colValue="column.router.label" :rowindex="rowindex" :rowData="row" @click="rolRouterClickHandler"
165
- :class="column.autoRowHeight ? 'lineFeedCell' : 'cell'">
161
+ :colValue="column.router.label" :rowindex="rowindex" :rowData="row" @click="rolRouterClickHandler"
162
+ :class="column.autoRowHeight ? 'lineFeedCell' : 'cell'">
166
163
  </ct-tablecurrency>
167
164
 
168
165
  <!--可点击的列-->
169
166
  <template v-else-if="column.router">
170
- <div v-if="column.router.rightField && row[column.router.rightField] === 0" v-html="row[column.id]"></div>
171
- <ct-tablecurrency v-else :ref="'router' + column.router.id + rowindex"
172
- :rowindex="rowindex" :align="column.attrs.align"
173
- :class="column.autoRowHeight ? 'lineFeedCell' : 'cell'" :router="column.router"
174
- :colValue="row[column.id]" :rowData="row" @click="rolRouterClickHandler">
167
+ <div v-if="column.router.rightField && row[column.router.rightField] === 0" v-html="row[column.id]">
168
+ </div>
169
+ <ct-tablecurrency v-else :ref="'router' + column.router.id + rowindex" :rowindex="rowindex"
170
+ :align="column.attrs.align" :class="column.autoRowHeight ? 'lineFeedCell' : 'cell'"
171
+ :router="column.router" :colValue="row[column.id]" :rowData="row" @click="rolRouterClickHandler">
175
172
  </ct-tablecurrency>
176
173
  </template>
177
174
 
178
175
  <!--正常的列-->
179
176
  <div v-else-if="column.flagHtml" v-html="row[column.id]"
180
- :class="column.autoRowHeight ? 'lineFeedCell' : 'cell'" :style="column.style ? column.style : ''">
177
+ :class="column.autoRowHeight ? 'lineFeedCell' : 'cell'" :style="column.style ? column.style : ''">
181
178
  </div>
182
179
 
183
180
  <div v-else-if="typeof column.template === 'undefined'"
184
- :class="column.autoRowHeight ? 'lineFeedCell' : 'cell'" :style="column.style ? column.style : ''">
185
- {{ $common.getDataOfUpperLower(row, column.id) }}
181
+ :class="column.autoRowHeight ? 'lineFeedCell' : 'cell'" :style="column.style ? column.style : ''">
182
+ {{ $common.getDataOfUpperLower(row, column.id) }}
186
183
  </div>
187
184
 
188
185
  <!--模版列(启用)-->
@@ -201,25 +198,26 @@
201
198
  <div v-else>
202
199
  <div v-for="(row, rowindex) in model.listData" :key="rowindex">
203
200
  <ct-layout :ref="'layout' + rowindex" :vmodel="row" :cellLayout="model.cellLayout" :key="tableComplate"
204
- :rowindex="rowindex" :actionRouter="model.actionRouter" @click="rolRouterCellClickHandler">
201
+ :rowindex="rowindex" :actionRouter="model.actionRouter" @click="rolRouterCellClickHandler">
205
202
  </ct-layout>
206
203
  </div>
207
204
  </div>
208
205
  </div>
209
206
 
210
207
  <ct-tabletip ref="listFooter" class="ct-search-table-list-footer" :tip="model.listFooter"
211
- v-if="!isLoading && !isLayout && model"></ct-tabletip>
212
- <ct-tabletip ref="footer" class="ct-search-table-footer" style="width: 100%;" :tip="model.footer+model.companyName"
213
- v-if="!isLoading && !isLayout && model"></ct-tabletip>
208
+ v-if="!isLoading && !isLayout && model"></ct-tabletip>
209
+ <ct-tabletip ref="footer" class="ct-search-table-footer" style="width: 100%;" :tip="model.footer + model.companyName"
210
+ v-if="!isLoading && !isLayout && model"></ct-tabletip>
214
211
  <div ref="popupButton" v-if="flagPopupSearchlist"
215
- style="margin-top: 10px;width: 100%;display: inline-block;height: 30px;margin-bottom: 10px;">
212
+ style="margin-top: 10px;width: 100%;display: inline-block;height: 30px;margin-bottom: 10px;">
216
213
  <el-button size="mini" @click="popupClickHandler()" class="max-search-btn" style="float:right;" type="primary">
217
214
  确认
218
215
  </el-button>
219
216
  </div>
220
-
217
+
221
218
  <div v-if="isLoading && searchLoading" v-loading="isLoading" style="top: 30px"></div>
222
- <iframe :src="downloadUrl" style="height:0px;width:0px;border-width: 0px;position: absolute;bottom: 0px;display: none;">
219
+ <iframe :src="downloadUrl"
220
+ style="height:0px;width:0px;border-width: 0px;position: absolute;bottom: 0px;display: none;">
223
221
  </iframe>
224
222
  </div>
225
223
  </template>
@@ -243,7 +241,7 @@ export default {
243
241
  vmodel: Object,
244
242
  api: String,
245
243
  searchStatsApi: String,
246
- flagAppMode:Boolean,
244
+ flagAppMode: Boolean,
247
245
  flagFocus: {
248
246
  Boolean,
249
247
  default: true,
@@ -272,14 +270,14 @@ export default {
272
270
  Number,
273
271
  default: 0,
274
272
  },
275
- dragStartItem:{
273
+ dragStartItem: {
276
274
  String,
277
275
  default: '',
278
- },
279
- dragStartName:{
276
+ },
277
+ dragStartName: {
280
278
  String,
281
279
  default: '',
282
- },
280
+ },
283
281
  },
284
282
  computed: {},
285
283
  data() {
@@ -287,7 +285,7 @@ export default {
287
285
  currentTh: null,
288
286
  isLoading: true,
289
287
  isLayout: false,
290
- isMarginTop:false,
288
+ isMarginTop: false,
291
289
  searchLoading: true,
292
290
  tableLoading: false, //表格等待
293
291
  operationLoading: false, //操作等待
@@ -314,23 +312,23 @@ export default {
314
312
  trigger: "hover", //触发方式,传值可查看Popper UI组件trigger属性
315
313
  placement: "right-start", //方向,传值可查看Popper UI组件placement属性
316
314
  },
317
- downloadUrl:"",
318
- disabledStats:false,
319
- searchStrat:0,
320
- searchEnd:0,
321
- visible:false,
322
- theadTitleShow:false,
323
- theadTitleTop:0,
324
- theadTitleLeft:0,
325
- theadTitleWidth:0,
326
- updateTableColumnsKey:0,
315
+ downloadUrl: "",
316
+ disabledStats: false,
317
+ searchStrat: 0,
318
+ searchEnd: 0,
319
+ visible: false,
320
+ theadTitleShow: false,
321
+ theadTitleTop: 0,
322
+ theadTitleLeft: 0,
323
+ theadTitleWidth: 0,
324
+ updateTableColumnsKey: 0,
327
325
  backgroundColor: "#ecf5ff",
328
- dragenterEl:null,
326
+ dragenterEl: null,
329
327
 
330
328
  };
331
329
  },
332
- deactivated(){
333
- this.downloadUrl="";
330
+ deactivated() {
331
+ this.downloadUrl = "";
334
332
  },
335
333
  activated() {
336
334
  this.$nextTick(() => {
@@ -338,36 +336,36 @@ export default {
338
336
  });
339
337
  },
340
338
  methods: {
341
- theadTitleHover(ev){
342
- if ( !this.model.columnWidthSaveAction) {
343
- return
344
- }
345
- this.theadTitleShow = true
346
- let tagsViewHeight = 0
347
- let thHeight = 0;
348
-
349
- if (document.getElementById("tags-view-container")) {
350
- tagsViewHeight = document.getElementById("tags-view-container").offsetHeight;
351
- thHeight = document.getElementById("thHeight").offsetHeight;
352
- if (document.getElementById("theadTitle")) {
353
- this.theadTitleWidth = document.getElementById("theadTitle").offsetWidth;
354
- } else {
355
- this.theadTitleWidth = 0
356
- }
357
- }else{
358
- tagsViewHeight = 0;
359
- thHeight = -10;
360
- if (document.getElementById("theadTitle")) {
361
- this.theadTitleWidth = document.getElementById("theadTitle").offsetWidth *0.5;
362
- } else {
363
- this.theadTitleWidth = 0
364
- }
339
+ theadTitleHover(ev) {
340
+ if (!this.model.columnWidthSaveAction) {
341
+ return
342
+ }
343
+ this.theadTitleShow = true
344
+ let tagsViewHeight = 0
345
+ let thHeight = 0;
346
+
347
+ if (document.getElementById("tags-view-container")) {
348
+ tagsViewHeight = document.getElementById("tags-view-container").offsetHeight;
349
+ thHeight = document.getElementById("thHeight").offsetHeight;
350
+ if (document.getElementById("theadTitle")) {
351
+ this.theadTitleWidth = document.getElementById("theadTitle").offsetWidth;
352
+ } else {
353
+ this.theadTitleWidth = 0
354
+ }
355
+ } else {
356
+ tagsViewHeight = 0;
357
+ thHeight = -10;
358
+ if (document.getElementById("theadTitle")) {
359
+ this.theadTitleWidth = document.getElementById("theadTitle").offsetWidth * 0.5;
360
+ } else {
361
+ this.theadTitleWidth = 0
365
362
  }
366
- this.theadTitleLeft = ev.clientX -this.theadTitleWidth;
367
- this.theadTitleTop =ev.currentTarget.getBoundingClientRect().top -thHeight - tagsViewHeight -20 -10;
363
+ }
364
+ this.theadTitleLeft = ev.clientX - this.theadTitleWidth;
365
+ this.theadTitleTop = ev.currentTarget.getBoundingClientRect().top - thHeight - tagsViewHeight - 20 - 10;
368
366
  },
369
- theadTitleLeave(){
370
- this.theadTitleShow = false
367
+ theadTitleLeave() {
368
+ this.theadTitleShow = false
371
369
  },
372
370
  rowCheckClass(row) {
373
371
  if (row.$select) {
@@ -393,9 +391,9 @@ export default {
393
391
  });
394
392
  if (self.model.cellLayout) {
395
393
  self.isLayout = true;
396
- }
394
+ }
397
395
  if (this.model.selectedRowBackColor) {
398
- self.backgroundColor=this.model.selectedRowBackColor ;
396
+ self.backgroundColor = this.model.selectedRowBackColor;
399
397
  }
400
398
  if (
401
399
  (self.model.searchModel.screen &&
@@ -466,7 +464,7 @@ export default {
466
464
  self.model.nextPage(next);
467
465
  }
468
466
  else {
469
- self.searchEnd=Date.now();
467
+ self.searchEnd = Date.now();
470
468
  self.tableLoading = false;
471
469
  self.rowColorChange();
472
470
  self.calculatingRowHeight();
@@ -475,7 +473,7 @@ export default {
475
473
  });
476
474
  }
477
475
  else {
478
- self.searchEnd=Date.now();
476
+ self.searchEnd = Date.now();
479
477
  self.tableLoading = false;
480
478
  }
481
479
  };
@@ -489,24 +487,24 @@ export default {
489
487
  if (ev.offsetX > ev.currentTarget.offsetWidth - 10) {
490
488
  ev.currentTarget.style.cursor = "col-resize";
491
489
  ev.currentTarget.canResize = true;
492
- if ( this.model.columnWidthSaveAction) {
493
- this.theadTitleShow = true
494
- }else{
495
- this.theadTitleShow = false
496
- }
497
-
490
+ if (this.model.columnWidthSaveAction) {
491
+ this.theadTitleShow = true
492
+ } else {
493
+ this.theadTitleShow = false
494
+ }
495
+
498
496
  } else {
499
497
  ev.currentTarget.style.cursor = "default";
500
498
  ev.currentTarget.canResize = false;
501
499
  }
502
-
500
+
503
501
  },
504
502
  thMouseDownHandle(ev, colIndex) {
505
503
  var self = this;
506
504
  var col = self.model.columns[colIndex];
507
- var PrevCol;
508
- var NextCol;
509
- var oldWidth=col.width;
505
+ var PrevCol;
506
+ var NextCol;
507
+ var oldWidth = col.width;
510
508
  if (ev.currentTarget.canResize) {
511
509
  ev.currentTarget.isDown = true;
512
510
  ev.currentTarget.oldX = ev.x;
@@ -517,17 +515,16 @@ export default {
517
515
  self.currentTh = null;
518
516
  document.removeEventListener("mouseup", MouseUpHandle, false);
519
517
  document.removeEventListener("mousemove", MouseMoveHandle, false);
520
- col.width=ev.target.clientWidth;
518
+ col.width = ev.target.clientWidth;
521
519
  //保存列宽
522
- if(oldWidth!=col.width&&self.model.columnWidthSaveAction&&self.model.columnWidthSaveAction.length>0)
523
- {
524
- var submitData={'columnName':col.id,columnWidth:col.width}
520
+ if (oldWidth != col.width && self.model.columnWidthSaveAction && self.model.columnWidthSaveAction.length > 0) {
521
+ var submitData = { 'columnName': col.id, columnWidth: col.width }
525
522
  self.model.getAction(self.model.columnWidthSaveAction, submitData);
526
- }else if(!self.model.columnWidthSaveAction){
527
- window.localStorage.setItem(self.model.title+"_"+ col.id, col.width);
523
+ } else if (!self.model.columnWidthSaveAction) {
524
+ window.localStorage.setItem(self.model.title + "_" + col.id, col.width);
528
525
  }
529
526
 
530
-
527
+
531
528
  //如果是高度可变的列,重新计算整个表的高度
532
529
  if (col.autoRowHeight) {
533
530
  self.model.listData.forEach((v) => {
@@ -540,8 +537,8 @@ export default {
540
537
  };
541
538
  var MouseMoveHandle = function () {
542
539
  var ev1 = event || e;
543
- if(ev1.stopPropagation) ev1.stopPropagation();
544
- if(ev1.preventDefault) ev1.preventDefault();
540
+ if (ev1.stopPropagation) ev1.stopPropagation();
541
+ if (ev1.preventDefault) ev1.preventDefault();
545
542
 
546
543
  if (self.currentTh.isDown) {
547
544
  if (self.currentTh) {
@@ -576,25 +573,22 @@ export default {
576
573
  self.currentTh.style.width = col.width + "px";
577
574
 
578
575
 
579
- //解决固定列拖动,列与列中间出现空白
580
- if(col.attrs.style.left&&parseInt(col.attrs.style.left)>0)
581
- // 解决固定列左边的空白
582
- {
583
- PrevCol= self.model.columns[colIndex-1];
584
- if( PrevCol)
576
+ //解决固定列拖动,列与列中间出现空白
577
+ if (col.attrs.style.left && parseInt(col.attrs.style.left) > 0)
578
+ // 解决固定列左边的空白
585
579
  {
586
- self.model.columns[colIndex].fixedSize=PrevCol.width;
580
+ PrevCol = self.model.columns[colIndex - 1];
581
+ if (PrevCol) {
582
+ self.model.columns[colIndex].fixedSize = PrevCol.width;
583
+ }
587
584
  }
588
- }
589
- // 解决固定列右边的空白
590
- NextCol= self.model.columns[colIndex+1];
591
- if( NextCol)
592
- {
593
- if(NextCol.attrs.style.left)
594
- {
595
- self.model.columns[colIndex+1].fixedSize=col.width;
585
+ // 解决固定列右边的空白
586
+ NextCol = self.model.columns[colIndex + 1];
587
+ if (NextCol) {
588
+ if (NextCol.attrs.style.left) {
589
+ self.model.columns[colIndex + 1].fixedSize = col.width;
590
+ }
596
591
  }
597
- }
598
592
 
599
593
  self.getScrollAttr();
600
594
  }
@@ -605,7 +599,7 @@ export default {
605
599
  document.addEventListener("mousemove", MouseMoveHandle, false);
606
600
  }
607
601
  },
608
- getPage(index,flagRefreshRowHandle) {
602
+ getPage(index, flagRefreshRowHandle) {
609
603
  var self = this;
610
604
  if (typeof self.$refs.tableParent !== "undefined") {
611
605
  self.$refs.tableParent.scrollTop = 0;
@@ -615,7 +609,7 @@ export default {
615
609
  }
616
610
  var next = function (rtn) {
617
611
  if (rtn) {
618
- if(flagRefreshRowHandle){
612
+ if (flagRefreshRowHandle) {
619
613
  self.$emit('refreshRowHandle');
620
614
  }
621
615
  self.$forceUpdate();
@@ -632,7 +626,7 @@ export default {
632
626
  self.getScrollAttr();
633
627
  }
634
628
  self.setfixedSize();
635
- if(index===1){
629
+ if (index === 1) {
636
630
  self.model.setButtonsDisabledByRowClick();
637
631
  }
638
632
  });
@@ -641,15 +635,15 @@ export default {
641
635
  self.tableLoading = false;
642
636
  self.rowColorChange();
643
637
  }
644
- self.disabledStats=false;
638
+ self.disabledStats = false;
645
639
  self.$emit("searchComplate", index);
646
640
  };
647
641
  self.tableLoading = true;
648
-
642
+
649
643
  this.model.getPage(index, next);
650
644
  self.$nextTick(() => {
651
645
  //点击搜索时调用
652
- self.loadStats();
646
+ self.loadStats();
653
647
  });
654
648
  },
655
649
  toSort(ev, col, action) {
@@ -739,7 +733,7 @@ export default {
739
733
  }
740
734
  },
741
735
  getScrollAttr(e) {
742
- if ( typeof this.$refs.tableParent !== "undefined" && typeof this.$refs.headThs !== "undefined") {
736
+ if (typeof this.$refs.tableParent !== "undefined" && typeof this.$refs.headThs !== "undefined") {
743
737
  this.calculatingRowHeight();
744
738
 
745
739
  var scrollTop = this.$refs.tableParent.scrollTop;
@@ -752,9 +746,9 @@ export default {
752
746
  for (; index < this.model.listData.length; index++) {
753
747
  if (topHeigth >= scrollTop) {
754
748
  break;
755
- }
749
+ }
756
750
  else {
757
- topHeigth = topHeigth + this.model.listData[index].$heigth||31;
751
+ topHeigth = topHeigth + this.model.listData[index].$heigth || 31;
758
752
  }
759
753
  }
760
754
  this.firstRow = index - 1;
@@ -778,22 +772,45 @@ export default {
778
772
  break;
779
773
  }
780
774
  }
781
- }
775
+ }
776
+ },
777
+ // 获取当前元素的指定父级
778
+ getparentNode(el) {
779
+ let parentElement = el.parentNode; // 初始化为当前元素的父级
780
+ while (parentElement && typeof parentElement !== 'undefined' && parentElement.className != "ct-search-list") {
781
+
782
+ parentElement = parentElement.parentNode; // 更新父级元素
783
+ }
784
+ if (parentElement.className == "ct-search-list") {
785
+ return parentElement;
786
+ }
787
+ else {
788
+ return null
789
+ }
790
+
782
791
  },
792
+
783
793
  setTableHeight() {
784
794
  var self = this;
785
795
  this.$nextTick(() => {
786
796
  if (this.$refs.searchTable && this.$refs.toolbar &&
787
797
  this.$refs.searchTable.parentElement && !self.isLayout) {
788
798
  var h1 = this.$refs.searchTable.parentElement.offsetHeight | 0;
789
- var h1top = 0;
799
+ var h1top = 0;
800
+
790
801
  var h2 = this.$refs.searchTable.offsetTop | 0;
791
- if(this.from && this.from=='detail'){
792
- h2=h2-this.screenTop - 13;
802
+ if (this.from && this.from == 'detail') {
803
+ h2 = h2 - this.screenTop - 13;
793
804
  }
794
- if(this.from && this.from=='hasTop'){
795
- h1top=this.$refs.searchTable.parentElement.offsetTop| 0;
805
+ if (this.from && this.from == 'hasTop') {
806
+ // h1top = this.$refs.searchTable.parentElement.offsetTop | 0;
807
+ var searchlistTOP = 0;
808
+ var parentNode = this.getparentNode(this.$refs.searchTable);
809
+ if (parentNode) {
810
+ searchlistTOP = (parentNode.offsetTop || 0) - 5;
811
+ h2 = h2 - searchlistTOP;
796
812
  }
813
+ }
797
814
  var h3 = this.$refs.toolbar.$el.offsetHeight | 0;
798
815
  var h4 = this.$refs.footer.$el.offsetHeight | 0;
799
816
  var h5 = this.$refs.listHeader ? (this.$refs.listHeader.$el.offsetHeight + 8) | 0 : 0;
@@ -801,27 +818,27 @@ export default {
801
818
  var h7 = this.$refs.tableStats ? (this.$refs.tableStats.$el.offsetHeight + 7) | 0 : 0;
802
819
  var h8 = this.$refs.popupButton ? this.$refs.popupButton.offsetHeight + 21 : 0;
803
820
  var h9 = 0
804
- if (this.$parent
805
- && this.$parent.$parent
806
- && this.$parent.$parent.$parent
807
- && this.$parent.$parent.$parent.$children
808
- && this.$parent.$parent.$parent.$children.length > 0
809
- && this.$parent.$parent.$parent.$children[0]
810
- && this.$parent.$parent.$parent.$children[0].$el
811
- && this.$parent.$parent.$parent.$children[0].$el.classList
812
- && this.$parent.$parent.$parent.$children[0].$el.classList.length > 0
813
- && this.$parent.$parent.$parent.$children[0].$el.classList.contains('el-aside')) {
821
+ if (this.$parent
822
+ && this.$parent.$parent
823
+ && this.$parent.$parent.$parent
824
+ && this.$parent.$parent.$parent.$children
825
+ && this.$parent.$parent.$parent.$children.length > 0
826
+ && this.$parent.$parent.$parent.$children[0]
827
+ && this.$parent.$parent.$parent.$children[0].$el
828
+ && this.$parent.$parent.$parent.$children[0].$el.classList
829
+ && this.$parent.$parent.$parent.$children[0].$el.classList.length > 0
830
+ && this.$parent.$parent.$parent.$children[0].$el.classList.contains('el-aside')) {
814
831
  h9 = 4
815
832
  }
816
- let tableHeight = h1 - h2 - h3 - h4 - h5 - h6 - h7 - h8 + h9 - 8 +h1top;
817
-
833
+ let tableHeight = h1 - h2 - h3 - h4 - h5 - h6 - h7 - h8 + h9 - 8 + h1top;
834
+
818
835
  this.model.tableHeight = tableHeight < 40 ? 350 : tableHeight;
819
836
  this.$nextTick(() => {
820
837
  self.getScrollAttr();
821
838
  });
822
839
  }
823
840
  else {
824
- if (this.$parent.$parent.$vnode.componentOptions.tag === "ct-PropertySimpleDetailRET" || this.from=='simpleDetail') {
841
+ if (this.$parent.$parent.$vnode.componentOptions.tag === "ct-PropertySimpleDetailRET" || this.from == 'simpleDetail') {
825
842
  var h1 = 0;
826
843
  if (this.$parent.$parent.$parent.$parent.$refs.sidebar) {
827
844
  h1 = this.$parent.$parent.$parent.$parent.$refs.sidebar.offsetHeight | 0;
@@ -852,13 +869,13 @@ export default {
852
869
  }
853
870
  var h8 = this.$refs.tableStats ? (this.$refs.tableStats.$el.offsetHeight + 7) | 0 : 0;
854
871
 
855
-
856
- let tableHeight = h1 - h2 - h3 - h4 - h5 - h6 - h7 - h8 - 290 -7;
857
- if(this.flagAppMode){
872
+
873
+ let tableHeight = h1 - h2 - h3 - h4 - h5 - h6 - h7 - h8 - 290 - 7;
874
+ if (this.flagAppMode) {
858
875
  tableHeight = tableHeight + 40;
859
876
  }
860
- else{
861
- tableHeight = tableHeight - 40;
877
+ else {
878
+ tableHeight = tableHeight - 40;
862
879
  }
863
880
  if (h2 == 0) {
864
881
  tableHeight = tableHeight + 15;
@@ -893,7 +910,7 @@ export default {
893
910
  ev.stopPropagation();
894
911
  },
895
912
  rowClickHandle(ev, index) {
896
- this.rowMergedColorChange(this.model.selectIndex,index);
913
+ this.rowMergedColorChange(this.model.selectIndex, index);
897
914
  this.model.selectIndex = index;
898
915
  this.rowColorChange();
899
916
  this.model.setButtonsDisabledByRowClick();
@@ -906,7 +923,7 @@ export default {
906
923
  if (typeof this.$refs["rows." + index] !== "undefined" && this.currentRow !== this.$refs["rows." + index][0]) {
907
924
  if (this.currentRow !== null) {
908
925
  for (var i = 0; i < this.currentRow.children.length; i++) {
909
- if(!this.currentRow.children[i].classList.contains('selectMerged')){
926
+ if (!this.currentRow.children[i].classList.contains('selectMerged')) {
910
927
  this.currentRow.children[i].style.backgroundColor = '';
911
928
  }
912
929
  this.currentRow.children[i].classList.remove("select");
@@ -924,62 +941,62 @@ export default {
924
941
  this.$emit("rowClickHandle");
925
942
  }
926
943
  },
927
- rowMergedColorChange(oldIndex,newIndex) {
928
- if(this.model.selectedRowBackColor && this.model.rowMergedColumns){
944
+ rowMergedColorChange(oldIndex, newIndex) {
945
+ if (this.model.selectedRowBackColor && this.model.rowMergedColumns) {
929
946
  let rowOld = this.model.listData[oldIndex];
930
947
  let rowNew = this.model.listData[newIndex];
931
- let selectMergedIndexOld=-1;
932
- let selectMergedIndexNew=-1;
933
- if(rowOld.$rowsMerged){
934
- if(rowOld.$rowsMerged.includes(newIndex)){
935
- selectMergedIndexNew=oldIndex;
948
+ let selectMergedIndexOld = -1;
949
+ let selectMergedIndexNew = -1;
950
+ if (rowOld.$rowsMerged) {
951
+ if (rowOld.$rowsMerged.includes(newIndex)) {
952
+ selectMergedIndexNew = oldIndex;
936
953
  }
937
- else{
938
- selectMergedIndexOld=oldIndex;
954
+ else {
955
+ selectMergedIndexOld = oldIndex;
939
956
  }
940
957
  }
941
- else{
942
- this.model.listData.forEach((data,i) => {
943
- if(data.$rowsMerged && data.$rowsMerged.includes(oldIndex)){
944
- selectMergedIndexOld=i;
958
+ else {
959
+ this.model.listData.forEach((data, i) => {
960
+ if (data.$rowsMerged && data.$rowsMerged.includes(oldIndex)) {
961
+ selectMergedIndexOld = i;
945
962
  return;
946
963
  }
947
964
  });
948
965
  }
949
- if(rowNew.$rowsMerged){
950
- selectMergedIndexNew=newIndex;
966
+ if (rowNew.$rowsMerged) {
967
+ selectMergedIndexNew = newIndex;
951
968
  }
952
- else{
953
- this.model.listData.forEach((data,i) => {
954
- if(data.$rowsMerged && data.$rowsMerged.includes(newIndex)){
955
- selectMergedIndexNew=i;
969
+ else {
970
+ this.model.listData.forEach((data, i) => {
971
+ if (data.$rowsMerged && data.$rowsMerged.includes(newIndex)) {
972
+ selectMergedIndexNew = i;
956
973
  return;
957
974
  }
958
975
  });
959
976
  }
960
-
961
- if(selectMergedIndexOld>-1 && typeof this.$refs["rows." + selectMergedIndexOld] !== "undefined"
962
- && this.$refs["rows." + selectMergedIndexOld][0] && this.$refs["rows." + selectMergedIndexOld][0].children){
963
- for (var j = 0; j < this.$refs["rows." + selectMergedIndexOld][0].children.length; j++) {
964
- if(this.$refs["rows." + selectMergedIndexOld][0].children[j].classList.contains('selectMerged')) {
977
+
978
+ if (selectMergedIndexOld > -1 && typeof this.$refs["rows." + selectMergedIndexOld] !== "undefined"
979
+ && this.$refs["rows." + selectMergedIndexOld][0] && this.$refs["rows." + selectMergedIndexOld][0].children) {
980
+ for (var j = 0; j < this.$refs["rows." + selectMergedIndexOld][0].children.length; j++) {
981
+ if (this.$refs["rows." + selectMergedIndexOld][0].children[j].classList.contains('selectMerged')) {
965
982
  this.$refs["rows." + selectMergedIndexOld][0].children[j].style.backgroundColor = '';
966
983
  }
967
984
  }
968
985
  }
969
- if (selectMergedIndexNew>-1 && typeof this.$refs["rows." + selectMergedIndexNew] !== "undefined"
970
- && this.$refs["rows." + selectMergedIndexNew][0] && this.$refs["rows." + selectMergedIndexNew][0].children){
971
- for (var j = 0; j < this.$refs["rows." + selectMergedIndexNew][0].children.length; j++) {
986
+ if (selectMergedIndexNew > -1 && typeof this.$refs["rows." + selectMergedIndexNew] !== "undefined"
987
+ && this.$refs["rows." + selectMergedIndexNew][0] && this.$refs["rows." + selectMergedIndexNew][0].children) {
988
+ for (var j = 0; j < this.$refs["rows." + selectMergedIndexNew][0].children.length; j++) {
972
989
  let columnid = this.$refs["rows." + selectMergedIndexNew][0].children[j].getAttribute('columnid');
973
- if(this.$refs["rows." + selectMergedIndexNew][0].children[j].classList.contains('selectMerged') || this.model.rowMergedColumns.includes(columnid)) {
990
+ if (this.$refs["rows." + selectMergedIndexNew][0].children[j].classList.contains('selectMerged') || this.model.rowMergedColumns.includes(columnid)) {
974
991
  this.$refs["rows." + selectMergedIndexNew][0].children[j].style.setProperty('background-color', this.model.selectedRowBackColor, 'important');
975
992
  }
976
- }
993
+ }
977
994
  }
978
995
  }
979
996
  },
980
997
  resetScroll: function () {
981
998
  var self = this;
982
- if(self.$refs.tableParent && self.$refs["rows." + self.model.selectIndex] && self.$refs["rows." + self.model.selectIndex][0]){
999
+ if (self.$refs.tableParent && self.$refs["rows." + self.model.selectIndex] && self.$refs["rows." + self.model.selectIndex][0]) {
983
1000
  if (self.$refs.tableParent.scrollTop > self.$refs["rows." + self.model.selectIndex][0].offsetTop - self.$refs.tableHead.offsetHeight) {
984
1001
  self.$refs.tableParent.scrollTop = self.$refs["rows." + self.model.selectIndex][0].offsetTop - self.$refs.tableHead.offsetHeight;
985
1002
  }
@@ -990,11 +1007,11 @@ export default {
990
1007
  }
991
1008
  },
992
1009
  resetScrollActivated: function () {
993
- if(this.$refs.tableParent){
994
- if(this.scrollTop>this.$refs.tableParent.scrollTop) {
1010
+ if (this.$refs.tableParent) {
1011
+ if (this.scrollTop > this.$refs.tableParent.scrollTop) {
995
1012
  this.$refs.tableParent.scrollTop = this.scrollTop;
996
1013
  }
997
- else if(this.model.selectIndex > 5 && this.$refs.tableParent.scrollTop===0){
1014
+ else if (this.model.selectIndex > 5 && this.$refs.tableParent.scrollTop === 0) {
998
1015
  let index = 0;
999
1016
  let topHeigth = 0;
1000
1017
  for (; index < this.model.selectIndex; index++) {
@@ -1009,7 +1026,7 @@ export default {
1009
1026
  var self = this;
1010
1027
  if (action === 1) {
1011
1028
  this.model.downKey();
1012
- }
1029
+ }
1013
1030
  else {
1014
1031
  this.model.upKey();
1015
1032
  }
@@ -1044,9 +1061,9 @@ export default {
1044
1061
 
1045
1062
  this.$nextTick(function () {
1046
1063
  if (typeof this.api !== "undefined") {
1047
- self.searchStrat=Date.now();
1064
+ self.searchStrat = Date.now();
1048
1065
  self.loaderObj.SearchTable(self.api, self.load, m, defaultSearch, null, function () {
1049
- self.searchEnd=Date.now();
1066
+ self.searchEnd = Date.now();
1050
1067
  self.isLoading = false;
1051
1068
  self.tableLoading = false;
1052
1069
  });
@@ -1066,29 +1083,29 @@ export default {
1066
1083
  let jsonData = [];
1067
1084
 
1068
1085
  var tempListData = self.model.getSelectRowData(field);
1069
- if (tempListData != null) {
1086
+ if (tempListData != null) {
1070
1087
  field.submitListField.forEach((k) => {
1071
1088
  if (field.isMulti) {
1072
1089
  submitData[k] = [];
1073
1090
  for (var ri = 0; ri < tempListData.length; ri++) {
1074
1091
  submitData[k].push(self.$common.getDataOfUpperLower(tempListData[ri], k));
1075
1092
  }
1076
- }
1093
+ }
1077
1094
  else {
1078
1095
  submitData[k] = tempListData[0][k];
1079
1096
  }
1080
1097
  });
1081
1098
 
1082
- tempListData.forEach((row) => {
1099
+ tempListData.forEach((row) => {
1083
1100
  if (field.isMulti) {
1084
- let jsonModel={};
1101
+ let jsonModel = {};
1085
1102
  field.submitListField.forEach((k) => {
1086
- jsonModel[self.$common.initialsToLowerCase(k)]=self.$common.getDataOfUpperLower(row, k);
1103
+ jsonModel[self.$common.initialsToLowerCase(k)] = self.$common.getDataOfUpperLower(row, k);
1087
1104
  });
1088
1105
  jsonData.push(jsonModel);
1089
1106
  }
1090
1107
  });
1091
- if(jsonData.length>0)submitData['jsonData']=jsonData;
1108
+ if (jsonData.length > 0) submitData['jsonData'] = jsonData;
1092
1109
 
1093
1110
  if (field.isSingle && tempListData.length > 0 && field.actionField) {
1094
1111
  action = tempListData[0][field.actionField];
@@ -1100,7 +1117,7 @@ export default {
1100
1117
  }
1101
1118
 
1102
1119
  this.routerClickHandler(field, submitData, action);
1103
- },
1120
+ },
1104
1121
  linksColClickHandler(link) {
1105
1122
  let submitData = {};
1106
1123
  let field = this.model.actionRouter.find((b) => {
@@ -1113,7 +1130,7 @@ export default {
1113
1130
  this.routerClickHandler(field, submitData, action);
1114
1131
  },
1115
1132
  rolRouterClickHandler(field, rowData, rowindex, visible) {
1116
- field.rowindex=rowindex;
1133
+ field.rowindex = rowindex;
1117
1134
  if (this.$refs["popover" + rowindex] && this.$refs["popover" + rowindex][0]) {
1118
1135
  this.$refs["popover" + rowindex][0].doClose();
1119
1136
  }
@@ -1133,9 +1150,9 @@ export default {
1133
1150
  if (field.flagAttachSearchCondition) {
1134
1151
  submitData["searchFields"] = self.model.getSearchData();
1135
1152
  }
1136
-
1137
- if(field.isCallTel){
1138
- submitData.flagHaveAlert=visible||false;
1153
+
1154
+ if (field.isCallTel) {
1155
+ submitData.flagHaveAlert = visible || false;
1139
1156
  }
1140
1157
 
1141
1158
  let action = field.action;
@@ -1153,17 +1170,17 @@ export default {
1153
1170
  //若不是客户端方法,则直接访问接口
1154
1171
  if (!field.isClientFuntion) {
1155
1172
  // 外部框架tab页打开
1156
- if(field.isTabInSystem){
1157
- if(field.isOpenBaiduMap){
1173
+ if (field.isTabInSystem) {
1174
+ if (field.isOpenBaiduMap) {
1158
1175
  submitData = field.getActionPara(submitData).para;
1159
- self.$common.getDataDrivenOpts().handler.openTabBaiduMap(submitData,field.pageTitle || field.label);
1176
+ self.$common.getDataDrivenOpts().handler.openTabBaiduMap(submitData, field.pageTitle || field.label);
1160
1177
  }
1161
1178
  }
1162
- else if(field.isTabInBrowse){
1163
-
1179
+ else if (field.isTabInBrowse) {
1180
+
1164
1181
  }
1165
- else if(field.isLayerInSystem){
1166
- if(field.isOpenBaiduMap){
1182
+ else if (field.isLayerInSystem) {
1183
+ if (field.isOpenBaiduMap) {
1167
1184
  var dialogOption = {
1168
1185
  title: field.pageTitle,
1169
1186
  pane: self.$common.getParentPane(self),
@@ -1183,7 +1200,7 @@ export default {
1183
1200
  }
1184
1201
  self.$common.closeDialog(dialogOption.dialog);
1185
1202
  },
1186
- closeDialog(ev) {
1203
+ closeDialog(ev) {
1187
1204
  }
1188
1205
  },
1189
1206
  },
@@ -1215,30 +1232,28 @@ export default {
1215
1232
  submitData = field.getActionPara(submitData).para;
1216
1233
  let query = self.$common.objectToQueryStr(submitData);
1217
1234
  let urlTab = field.action + query;
1218
- if(field.action.indexOf('?')>-1 && query.indexOf('?')>-1){
1219
- urlTab = field.action + '&' +query.substr(1, query.length);
1235
+ if (field.action.indexOf('?') > -1 && query.indexOf('?') > -1) {
1236
+ urlTab = field.action + '&' + query.substr(1, query.length);
1220
1237
  }
1221
- self.$common.getDataDrivenOpts().handler.openTabUrl(urlTab,field.pageTitle||field.label);
1222
- }
1238
+ self.$common.getDataDrivenOpts().handler.openTabUrl(urlTab, field.pageTitle || field.label);
1239
+ }
1223
1240
  else if (field.isSeeVoice) {//看视频
1224
1241
  self.$common.browseVideo(field, submitData);
1225
1242
  }
1226
1243
  else if (field.isBrowseAttachment) {//浏览附件
1227
- var mediaviewpagetype=(field.isFormPageInTab||field.isSearchPageInTab)?2:0;
1244
+ var mediaviewpagetype = (field.isFormPageInTab || field.isSearchPageInTab) ? 2 : 0;
1228
1245
  var MediaAlbum = [
1229
1246
  { albumName: self.model.title || "媒体", medias: [] },
1230
- ];
1247
+ ];
1231
1248
  if (field.action) {
1232
1249
  var callback = function (data) {
1233
- if(typeof data =='object'&&data.mediaAlbums)
1234
- {
1235
- MediaAlbum = data.mediaAlbums;
1250
+ if (typeof data == 'object' && data.mediaAlbums) {
1251
+ MediaAlbum = data.mediaAlbums;
1236
1252
  }
1237
- else
1238
- {
1253
+ else {
1239
1254
  MediaAlbum[0].medias = data;
1240
1255
  }
1241
- self.$common.viewerfile(field.pageTitle, MediaAlbum, 0, 0,mediaviewpagetype);
1256
+ self.$common.viewerfile(field.pageTitle, MediaAlbum, 0, 0, mediaviewpagetype);
1242
1257
  }
1243
1258
  self.model.getAction(field.action, submitData, callback);
1244
1259
  }
@@ -1246,7 +1261,7 @@ export default {
1246
1261
  submitData.mediaData.forEach((v) => {
1247
1262
  MediaAlbum[0].medias.push(v);
1248
1263
  });
1249
- self.$common.viewerfile(field.pageTitle, MediaAlbum, 0, 0,mediaviewpagetype);
1264
+ self.$common.viewerfile(field.pageTitle, MediaAlbum, 0, 0, mediaviewpagetype);
1250
1265
  }
1251
1266
  }
1252
1267
  else if (field.isUrlInLayer) {//URL页面(弹层iframe)
@@ -1300,9 +1315,9 @@ export default {
1300
1315
  else if (field.isExport || field.flagAsync) {
1301
1316
  if (field.flagAsync) {
1302
1317
  field.doAction(submitData, (res) => {
1303
- if(res.rtnCode && res.rtnCode===202 && res.rtnMsg){
1304
- self.$common.confirm(res.rtnMsg, '提示', {confirmButtonText: '确定',cancelButtonText: '取消',type: 'warning'}).then(() => {
1305
- submitData.flagHaveAlert=1;
1318
+ if (res.rtnCode && res.rtnCode === 202 && res.rtnMsg) {
1319
+ self.$common.confirm(res.rtnMsg, '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' }).then(() => {
1320
+ submitData.flagHaveAlert = 1;
1306
1321
  field.doAction(submitData, (res) => {
1307
1322
  if (res.content && res.content.action) {
1308
1323
  var dialogOption = {
@@ -1323,19 +1338,19 @@ export default {
1323
1338
  self.$message({
1324
1339
  message: data.rtnMsg,
1325
1340
  type: 'success',
1326
- showClose:true,
1341
+ showClose: true,
1327
1342
  });
1328
1343
  }
1329
- if(!field.isExport){
1344
+ if (!field.isExport) {
1330
1345
  self.getPage(1);
1331
- }
1346
+ }
1332
1347
  },
1333
1348
  error(data) {
1334
1349
  self.$common.closeDialog(dialogOption.dialog);
1335
1350
  self.$message({
1336
1351
  message: data.rtnMsg,
1337
1352
  type: 'warning',
1338
- showClose:true,
1353
+ showClose: true,
1339
1354
  });
1340
1355
  }
1341
1356
  }
@@ -1345,7 +1360,7 @@ export default {
1345
1360
  }
1346
1361
  });
1347
1362
  })
1348
- .catch(() => { });
1363
+ .catch(() => { });
1349
1364
  }
1350
1365
  else if (res.content && res.content.action) {
1351
1366
  var dialogOption = {
@@ -1366,19 +1381,19 @@ export default {
1366
1381
  self.$message({
1367
1382
  message: data.rtnMsg,
1368
1383
  type: 'success',
1369
- showClose:true,
1384
+ showClose: true,
1370
1385
  });
1371
1386
  }
1372
- if(!field.isExport){
1373
- self.getPage(1);
1374
- }
1387
+ if (!field.isExport) {
1388
+ self.getPage(1);
1389
+ }
1375
1390
  },
1376
1391
  error(data) {
1377
1392
  self.$common.closeDialog(dialogOption.dialog);
1378
1393
  self.$message({
1379
1394
  message: data.rtnMsg,
1380
1395
  type: 'warning',
1381
- showClose:true,
1396
+ showClose: true,
1382
1397
  });
1383
1398
  }
1384
1399
  }
@@ -1390,10 +1405,10 @@ export default {
1390
1405
  }
1391
1406
  else {
1392
1407
  if (field.action.indexOf("http://") === 0 || field.action.indexOf("https://") === 0) {
1393
- if(field.action.indexOf(".zip") > -1){
1408
+ if (field.action.indexOf(".zip") > -1) {
1394
1409
  window.location.href = encodeURI(field.action);
1395
1410
  }
1396
- else{
1411
+ else {
1397
1412
  if (field.action.indexOf("?") > -1) {
1398
1413
  self.downloadUrl = field.action + "&" + Math.random();
1399
1414
  }
@@ -1403,18 +1418,18 @@ export default {
1403
1418
  }
1404
1419
  }
1405
1420
  else {
1406
- field.doBlobAction(submitData, (data,headers) => {
1407
- if(data.type=="application/json"){
1421
+ field.doBlobAction(submitData, (data, headers) => {
1422
+ if (data.type == "application/json") {
1408
1423
  const reader = new FileReader();
1409
1424
  reader.readAsText(data, 'utf-8');
1410
- reader.onload=function(){
1425
+ reader.onload = function () {
1411
1426
  data = JSON.parse(reader.result);
1412
1427
  if (data.content) {
1413
1428
  if (data.content.indexOf("http://") === 0 || data.content.indexOf("https://") === 0) {
1414
- if(data.content.indexOf(".zip") > -1){
1429
+ if (data.content.indexOf(".zip") > -1) {
1415
1430
  window.location.href = encodeURI(data.action);
1416
1431
  }
1417
- else{
1432
+ else {
1418
1433
  if (data.content.indexOf("?") > -1) {
1419
1434
  self.downloadUrl = data.content + "&" + Math.random();
1420
1435
  }
@@ -1428,22 +1443,22 @@ export default {
1428
1443
  }
1429
1444
  };
1430
1445
  }
1431
- else{
1432
- if(!headers['content-disposition']){
1446
+ else {
1447
+ if (!headers['content-disposition']) {
1433
1448
  self.$message({
1434
1449
  message: '返回结果headers必须包含Access-Control-Expose-Headers和Content-Disposition!',
1435
1450
  type: 'error',
1436
- showClose:true,
1451
+ showClose: true,
1437
1452
  });
1438
1453
  return false;
1439
1454
  }
1440
1455
 
1441
- let blob = new Blob([data],{type:"application/octet-stream;"})
1456
+ let blob = new Blob([data], { type: "application/octet-stream;" })
1442
1457
  const url = window.URL.createObjectURL(blob);
1443
1458
  const link = document.createElement('a');
1444
- let fileName=decodeURIComponent(escape(headers['content-disposition'].split('filename=')[1]));
1459
+ let fileName = decodeURIComponent(escape(headers['content-disposition'].split('filename=')[1]));
1445
1460
  link.href = url;
1446
- link.setAttribute('download',fileName);
1461
+ link.setAttribute('download', fileName);
1447
1462
  document.body.appendChild(link);
1448
1463
  link.click();
1449
1464
  document.body.removeChild(link);
@@ -1471,7 +1486,7 @@ export default {
1471
1486
  height: field.dialogHeight + "px",
1472
1487
  documentHeight: self.documentHeight,
1473
1488
  documentWidth: self.documentWidth,
1474
- flagScroll:true,
1489
+ flagScroll: true,
1475
1490
  },
1476
1491
  on: {
1477
1492
  submit(ev) {
@@ -1572,13 +1587,13 @@ export default {
1572
1587
  self.operationLoading = false;
1573
1588
  if (field.isCallTel) {
1574
1589
  // self.model.doAction(data, field);
1575
- if(self.model.currentCallTel){
1590
+ if (self.model.currentCallTel) {
1576
1591
  self.$refs[self.model.currentCallTel][0].closeCallTel()
1577
1592
  }
1578
- self.model.currentCallTel='router'+field.id+field.rowindex;
1579
- self.$refs['router'+field.id+field.rowindex][0].callTelClick(data);
1593
+ self.model.currentCallTel = 'router' + field.id + field.rowindex;
1594
+ self.$refs['router' + field.id + field.rowindex][0].callTelClick(data);
1580
1595
  }
1581
- else{
1596
+ else {
1582
1597
  if (!field.flagFreshCurrentRow && !field.flagAddRowAfterAction) {
1583
1598
  self.model.doAction({ responseData: data });
1584
1599
  self.$emit("refreshRowHandle");
@@ -1661,17 +1676,17 @@ export default {
1661
1676
  //若不是客户端方法,则直接访问接口
1662
1677
  if (!field.isClientFuntion) {
1663
1678
  // 外部框架tab页打开
1664
- if(field.isTabInSystem){
1665
- if(field.isOpenBaiduMap){
1679
+ if (field.isTabInSystem) {
1680
+ if (field.isOpenBaiduMap) {
1666
1681
  submitData = field.getActionPara(submitData).para;
1667
- self.$common.getDataDrivenOpts().handler.openTabBaiduMap(submitData,field.pageTitle || field.label);
1682
+ self.$common.getDataDrivenOpts().handler.openTabBaiduMap(submitData, field.pageTitle || field.label);
1668
1683
  }
1669
1684
  }
1670
- else if(field.isTabInBrowse){
1671
-
1685
+ else if (field.isTabInBrowse) {
1686
+
1672
1687
  }
1673
- else if(field.isLayerInSystem){
1674
- if(field.isOpenBaiduMap){
1688
+ else if (field.isLayerInSystem) {
1689
+ if (field.isOpenBaiduMap) {
1675
1690
  var dialogOption = {
1676
1691
  title: field.pageTitle,
1677
1692
  pane: self.$common.getParentPane(self),
@@ -1691,7 +1706,7 @@ export default {
1691
1706
  }
1692
1707
  self.$common.closeDialog(dialogOption.dialog);
1693
1708
  },
1694
- closeDialog(ev) {
1709
+ closeDialog(ev) {
1695
1710
  }
1696
1711
  },
1697
1712
  },
@@ -1774,7 +1789,7 @@ export default {
1774
1789
  showTitle: false,
1775
1790
  width: field.dialogWidth + "px",
1776
1791
  height: field.dialogHeight + "px",
1777
- flagScroll:true,
1792
+ flagScroll: true,
1778
1793
  },
1779
1794
  on: {
1780
1795
  submit(ev) {
@@ -1982,7 +1997,7 @@ export default {
1982
1997
  }
1983
1998
  });
1984
1999
  },
1985
- updateCurrentRow(router, data,flagSimple) {
2000
+ updateCurrentRow(router, data, flagSimple) {
1986
2001
  let self = this;
1987
2002
  if (router.flagFreshCurrentRow || router.flagAddRowAfterAction) {
1988
2003
  self.tableComplate = true;
@@ -1991,7 +2006,7 @@ export default {
1991
2006
  self.$forceUpdate();
1992
2007
  self.tableComplate = false;
1993
2008
  self.$emit("searchComplate");
1994
- if(data && !flagSimple){
2009
+ if (data && !flagSimple) {
1995
2010
  self.$emit("simpleRouterRefreshHandler");
1996
2011
  }
1997
2012
  },
@@ -2002,36 +2017,36 @@ export default {
2002
2017
  },
2003
2018
  importComplete(res, field) {
2004
2019
  var self = this;
2005
- if(res && res.rtnCode && res.rtnCode===201){
2006
- if(res.rtnMsg){
2020
+ if (res && res.rtnCode && res.rtnCode === 201) {
2021
+ if (res.rtnMsg) {
2007
2022
  self.$message({
2008
2023
  message: data.rtnMsg,
2009
2024
  type: 'warning',
2010
- showClose:true,
2025
+ showClose: true,
2011
2026
  });
2012
2027
  }
2013
2028
  return;
2014
2029
  }
2015
- else if(res && res.rtnCode && res.rtnCode===202 && res.rtnMsg){
2016
- self.$common.confirm(res.rtnMsg, '提示', {confirmButtonText: '确定',cancelButtonText: '取消',type: 'warning'}).then(() => {
2030
+ else if (res && res.rtnCode && res.rtnCode === 202 && res.rtnMsg) {
2031
+ self.$common.confirm(res.rtnMsg, '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' }).then(() => {
2017
2032
  let file = field.self.$refs.fileUpload.uploadFiles[0].raw;
2018
- field.self.uploadData.flagHaveAlert=1;
2033
+ field.self.uploadData.flagHaveAlert = 1;
2019
2034
  field.self.$refs.fileUpload.clearFiles();
2020
2035
  self.$nextTick(() => {
2021
2036
  field.self.$refs.fileUpload.handleStart(file);
2022
2037
  field.self.$refs.fileUpload.isUpdateSupport = 1;
2023
- field.self.$refs.fileUpload.submit();
2024
- field.self.uploadData.flagHaveAlert=0;
2025
- return;
2038
+ field.self.$refs.fileUpload.submit();
2039
+ field.self.uploadData.flagHaveAlert = 0;
2040
+ return;
2026
2041
  });
2027
2042
  })
2028
- .catch(() => {
2029
- });
2043
+ .catch(() => {
2044
+ });
2030
2045
  }
2031
2046
  else if (field.flagAsync) {
2032
- if(res.rtnCode && res.rtnCode===202 && res.rtnMsg){
2033
- self.$common.confirm(res.rtnMsg, '提示', {confirmButtonText: '确定',cancelButtonText: '取消',type: 'warning'}).then(() => {
2034
- submitData.flagHaveAlert=1;
2047
+ if (res.rtnCode && res.rtnCode === 202 && res.rtnMsg) {
2048
+ self.$common.confirm(res.rtnMsg, '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' }).then(() => {
2049
+ submitData.flagHaveAlert = 1;
2035
2050
  if (res.content && res.content.action) {
2036
2051
  var dialogOption = {
2037
2052
  title: field.pageTitle || field.label,
@@ -2051,7 +2066,7 @@ export default {
2051
2066
  self.$message({
2052
2067
  message: data.rtnMsg,
2053
2068
  type: 'success',
2054
- showClose:true,
2069
+ showClose: true,
2055
2070
  });
2056
2071
  }
2057
2072
  self.getPage(1);
@@ -2061,7 +2076,7 @@ export default {
2061
2076
  self.$message({
2062
2077
  message: data.rtnMsg,
2063
2078
  type: 'warning',
2064
- showClose:true,
2079
+ showClose: true,
2065
2080
  });
2066
2081
  }
2067
2082
  }
@@ -2070,9 +2085,9 @@ export default {
2070
2085
  self.$common.openDialog(dialogOption);
2071
2086
  }
2072
2087
  })
2073
- .catch(() => { });
2088
+ .catch(() => { });
2074
2089
  }
2075
- else{
2090
+ else {
2076
2091
  if (res.content && res.content.action) {
2077
2092
  var dialogOption = {
2078
2093
  title: field.pageTitle || field.label,
@@ -2092,7 +2107,7 @@ export default {
2092
2107
  self.$message({
2093
2108
  message: data.rtnMsg,
2094
2109
  type: 'success',
2095
- showClose:true,
2110
+ showClose: true,
2096
2111
  });
2097
2112
  }
2098
2113
  self.getPage(1);
@@ -2102,7 +2117,7 @@ export default {
2102
2117
  self.$message({
2103
2118
  message: data.rtnMsg,
2104
2119
  type: 'warning',
2105
- showClose:true,
2120
+ showClose: true,
2106
2121
  });
2107
2122
  }
2108
2123
  }
@@ -2127,7 +2142,7 @@ export default {
2127
2142
  }
2128
2143
 
2129
2144
  //合并行
2130
- if ( row.$rowspan !== 0 && this.model.rowMergedColumns.indexOf(column.id) > -1 ) {
2145
+ if (row.$rowspan !== 0 && this.model.rowMergedColumns.indexOf(column.id) > -1) {
2131
2146
  return row.$rowspan;
2132
2147
  }
2133
2148
 
@@ -2139,7 +2154,7 @@ export default {
2139
2154
  }
2140
2155
 
2141
2156
  //合并行
2142
- if ( row.$rowspan === 0 && this.model.rowMergedColumns.indexOf(column.id) > -1) {
2157
+ if (row.$rowspan === 0 && this.model.rowMergedColumns.indexOf(column.id) > -1) {
2143
2158
  return false;
2144
2159
  }
2145
2160
 
@@ -2162,8 +2177,8 @@ export default {
2162
2177
  let self = this;
2163
2178
  self.model.searchStats = m;
2164
2179
  if (flagRefreshTable) {
2165
- self.disabledStats=true;
2166
- self.getPage(1,true);
2180
+ self.disabledStats = true;
2181
+ self.getPage(1, true);
2167
2182
  }
2168
2183
  },
2169
2184
  getRowRouterShow(row) {
@@ -2204,15 +2219,15 @@ export default {
2204
2219
  }
2205
2220
  self.$forceUpdate();
2206
2221
  self.$refs.footer.$forceUpdate();
2207
- self.updateCurrentRow(field, data,true);
2208
- }
2222
+ self.updateCurrentRow(field, data, true);
2223
+ }
2209
2224
  else {
2210
2225
  if (!field.flagFreshCurrentRow && !field.flagAddRowAfterAction && data) {
2211
2226
  self.model.doAction({ responseData: data });
2212
2227
  }
2213
2228
  self.$forceUpdate();
2214
2229
  self.$refs.footer.$forceUpdate();
2215
- self.updateCurrentRow(field, data,true);
2230
+ self.updateCurrentRow(field, data, true);
2216
2231
  }
2217
2232
  },
2218
2233
  refreshTableColumns(data) {
@@ -2223,14 +2238,13 @@ export default {
2223
2238
  self.currentRow.children[i].classList.remove("select");
2224
2239
  }
2225
2240
  }
2226
- if (!data.content.columns || data.content.columns.length < 1)
2227
- {
2228
- this.$message({
2241
+ if (!data.content.columns || data.content.columns.length < 1) {
2242
+ this.$message({
2229
2243
  message: "请配置展示列",
2230
2244
  type: 'error',
2231
- showClose:true,
2232
- });
2233
- return ;
2245
+ showClose: true,
2246
+ });
2247
+ return;
2234
2248
  }
2235
2249
  if (typeof self.$refs.tableParent !== "undefined") {
2236
2250
  self.$refs.tableParent.scrollTop = 0;
@@ -2239,10 +2253,10 @@ export default {
2239
2253
  self.scrollLeft = 0;
2240
2254
  }
2241
2255
  let searchStats = [];
2242
- if(this.$refs.tableStats){
2243
- searchStats = this.$refs.tableStats.getsearchStats();
2256
+ if (this.$refs.tableStats) {
2257
+ searchStats = this.$refs.tableStats.getsearchStats();
2244
2258
  }
2245
-
2259
+
2246
2260
  if (data) {
2247
2261
  self.loaderObj.SearchTable(data, self.load, self.model.searchModel, true, false, null, self.api)
2248
2262
  }
@@ -2262,16 +2276,16 @@ export default {
2262
2276
  this.$message({
2263
2277
  message: "请先选择数据",
2264
2278
  type: 'error',
2265
- showClose:true,
2279
+ showClose: true,
2266
2280
  });
2267
2281
  }
2268
2282
  },
2269
-
2270
- drop(e, row,column, name) {
2283
+
2284
+ drop(e, row, column, name) {
2271
2285
  let self = this;
2272
2286
  let routerKey = "edit";
2273
2287
  let submitData = {};
2274
- if (this.dragStartName == "top" &&name == "body" &&column.paramName == "drop") {
2288
+ if (this.dragStartName == "top" && name == "body" && column.paramName == "drop") {
2275
2289
  var actionRouter = self.model.actionRouter;
2276
2290
  let field = actionRouter.find((b) => {
2277
2291
  return b.id === routerKey;
@@ -2283,7 +2297,7 @@ export default {
2283
2297
  submitData[k] = row[keyLower] || row[keyUpper];
2284
2298
  });
2285
2299
  submitData["columnFieldName"] = column.id;
2286
- submitData["dropObject"] = self.dragStartItem;
2300
+ submitData["dropObject"] = self.dragStartItem;
2287
2301
 
2288
2302
  this.$api
2289
2303
  .postHandler(this.$common.globalUri(), {
@@ -2291,53 +2305,53 @@ export default {
2291
2305
  para: submitData,
2292
2306
  })
2293
2307
  .then(function (response) {
2294
- if (response.rtnCode === 200) {
2295
- self.$nextTick(() => {
2296
- let key = column.id;
2297
- if (row[key]!=undefined) {
2298
- row[key] = self.dragStartItem.name;
2299
- } else if (row[self.$common.initialsToUpperCase(key)]!=undefined) {
2300
- row[self.$common.initialsToUpperCase(key)] =
2301
- self.dragStartItem.name;
2302
- } else if (row[self.$common.initialsToLowerCase(key)]!=undefined) {
2303
- row[self.$common.initialsToLowerCase(key)] =
2304
- self.dragStartItem.name;
2305
- }
2306
- self.$forceUpdate();
2307
- });
2308
+ if (response.rtnCode === 200) {
2309
+ self.$nextTick(() => {
2310
+ let key = column.id;
2311
+ if (row[key] != undefined) {
2312
+ row[key] = self.dragStartItem.name;
2313
+ } else if (row[self.$common.initialsToUpperCase(key)] != undefined) {
2314
+ row[self.$common.initialsToUpperCase(key)] =
2315
+ self.dragStartItem.name;
2316
+ } else if (row[self.$common.initialsToLowerCase(key)] != undefined) {
2317
+ row[self.$common.initialsToLowerCase(key)] =
2318
+ self.dragStartItem.name;
2319
+ }
2320
+ self.$forceUpdate();
2321
+ });
2308
2322
  }
2309
2323
  });
2310
2324
 
2311
2325
  if (name === "body") {
2312
- let el=e.target.nodeName.toLowerCase()=="td"?e.target:this.getTDOfParents(e.target);
2313
- this.removeClass(el, "dragEnterHover");
2326
+ let el = e.target.nodeName.toLowerCase() == "td" ? e.target : this.getTDOfParents(e.target);
2327
+ this.removeClass(el, "dragEnterHover");
2314
2328
  }
2315
2329
  }
2316
2330
 
2317
2331
  this.$emit("drop", row, column);
2318
2332
 
2319
2333
  },
2320
- dragenter(e,column, name) {
2321
- let el=e.target.nodeName.toLowerCase()=="td"?e.target:this.getTDOfParents(e.target);
2322
- if (name === "body"&&column.paramName == "drop") {
2334
+ dragenter(e, column, name) {
2335
+ let el = e.target.nodeName.toLowerCase() == "td" ? e.target : this.getTDOfParents(e.target);
2336
+ if (name === "body" && column.paramName == "drop") {
2323
2337
  this.addClass(el, "dragEnterHover");
2324
- }
2325
- this.dragenterEl=el;
2338
+ }
2339
+ this.dragenterEl = el;
2326
2340
 
2327
2341
  },
2328
- dragleave(e, column,name) {
2329
- let el=e.target.nodeName.toLowerCase()=="td"?e.target:this.getTDOfParents(e.target);
2342
+ dragleave(e, column, name) {
2343
+ let el = e.target.nodeName.toLowerCase() == "td" ? e.target : this.getTDOfParents(e.target);
2330
2344
  // 目标节点的背景色恢复原样
2331
- if (name === "body"&&this.dragenterEl!=el) {
2345
+ if (name === "body" && this.dragenterEl != el) {
2332
2346
  this.removeClass(el, "dragEnterHover");
2333
2347
  }
2334
2348
 
2335
2349
  },
2336
- getTDOfParents(element) {
2350
+ getTDOfParents(element) {
2337
2351
  let currentElement = element.parentElement;
2338
-
2339
- while (currentElement&&currentElement.nodeName.toLowerCase()!="td") {
2340
-
2352
+
2353
+ while (currentElement && currentElement.nodeName.toLowerCase() != "td") {
2354
+
2341
2355
  currentElement = currentElement.parentElement;
2342
2356
  }
2343
2357
  return currentElement;
@@ -2383,6 +2397,7 @@ export default {
2383
2397
  min-width: 100%;
2384
2398
  border-collapse: collapse;
2385
2399
  }
2400
+
2386
2401
  .ct-searchtable .ct-table-Shadow {
2387
2402
  border-collapse: separate;
2388
2403
  }
@@ -2494,6 +2509,7 @@ export default {
2494
2509
  .ct-table .ct-td.select {
2495
2510
  background-color: var(backgroundColor) !important;
2496
2511
  }
2512
+
2497
2513
  .ct-table .ct-tr:hover .ct-td.select {
2498
2514
  background-color: var(backgroundColor) !important;
2499
2515
  }
@@ -2501,6 +2517,7 @@ export default {
2501
2517
  .ct-table .ct-td.selectMerged {
2502
2518
  background-color: var(backgroundColor) !important;
2503
2519
  }
2520
+
2504
2521
  .ct-table .ct-tr:hover .ct-td.selectMerged {
2505
2522
  background-color: var(backgroundColor) !important;
2506
2523
  }
@@ -2624,65 +2641,82 @@ export default {
2624
2641
  box-shadow: 0 2px 10px 0 rgb(0 0 0 / 10%);
2625
2642
  margin-bottom: 4px;
2626
2643
  }
2644
+
2627
2645
  .theadLine {
2628
- position: relative;
2646
+ position: relative;
2629
2647
  }
2648
+
2630
2649
  .theadLine::before {
2631
- position: absolute; /*绝对定位*/
2632
- top: 50%; /*Y轴方向偏移自身高度的50%*/
2633
- transform: translatey(-50%); /*Y轴方向偏移微调*/
2634
- right: 0; /*紧靠容器右边缘*/
2635
- content: ''; /*伪元素需要有内容才能显示*/
2636
- width: 1px; /*伪元素宽度*/
2637
- height: 18px; /*伪元素高度*/
2638
- background-color: #919296; /*伪元素颜色*/
2650
+ position: absolute;
2651
+ /*绝对定位*/
2652
+ top: 50%;
2653
+ /*Y轴方向偏移自身高度的50%*/
2654
+ transform: translatey(-50%);
2655
+ /*Y轴方向偏移微调*/
2656
+ right: 0;
2657
+ /*紧靠容器右边缘*/
2658
+ content: '';
2659
+ /*伪元素需要有内容才能显示*/
2660
+ width: 1px;
2661
+ /*伪元素宽度*/
2662
+ height: 18px;
2663
+ /*伪元素高度*/
2664
+ background-color: #919296;
2665
+ /*伪元素颜色*/
2639
2666
  }
2640
- .theadLine:last-child::before{
2667
+
2668
+ .theadLine:last-child::before {
2641
2669
  width: 0px !important;
2642
2670
  }
2643
- .theadTitle{
2671
+
2672
+ .theadTitle {
2644
2673
  position: absolute;
2645
2674
  z-index: 999;
2646
2675
  padding: 1px 6px;
2647
- border-radius: 4px;
2648
- background-color: #fff;
2649
- color: var(--centalineBlack);
2650
- border: 1px solid var(--centalineBlack);
2651
- font-size: 12px;
2652
- font-weight: 500;
2653
- white-space: nowrap;
2676
+ border-radius: 4px;
2677
+ background-color: #fff;
2678
+ color: var(--centalineBlack);
2679
+ border: 1px solid var(--centalineBlack);
2680
+ font-size: 12px;
2681
+ font-weight: 500;
2682
+ white-space: nowrap;
2654
2683
  }
2655
- .box-card {
2656
- position: absolute;
2657
- z-index: 1000;
2658
- padding: 1px 6px;
2659
- border-radius:4px;
2660
- background-color: #fff;
2661
- color: #606266;
2662
- border: 1px solid;
2663
- font-size: 12px;
2664
- left: 50%;
2665
- top: 50%;
2666
- transform: translate(-50%, -50%);
2684
+
2685
+ .box-card {
2686
+ position: absolute;
2687
+ z-index: 1000;
2688
+ padding: 1px 6px;
2689
+ border-radius: 4px;
2690
+ background-color: #fff;
2691
+ color: #606266;
2692
+ border: 1px solid;
2693
+ font-size: 12px;
2694
+ left: 50%;
2695
+ top: 50%;
2696
+ transform: translate(-50%, -50%);
2667
2697
  }
2668
- .ct-searchtable .el-loading-spinner .circular{
2669
- -webkit-animation:none !important;
2670
- animation:none !important;
2698
+
2699
+ .ct-searchtable .el-loading-spinner .circular {
2700
+ -webkit-animation: none !important;
2701
+ animation: none !important;
2671
2702
  }
2703
+
2672
2704
  .ct-searchtable .dragEnterHover {
2673
2705
  border: 1px dashed #e03333 !important;
2674
- color: #e03333 !important;
2675
- /* box-shadow: 0 15px 20px rgba(0, 0, 0, 0.3); */
2706
+ color: #e03333 !important;
2707
+ /* box-shadow: 0 15px 20px rgba(0, 0, 0, 0.3); */
2708
+ }
2709
+
2710
+ .ct-tablecurrencyItem {
2711
+ text-decoration: none;
2712
+ padding-left: 0px;
2713
+ padding-right: 4px;
2714
+ cursor: pointer;
2715
+ color: #2E58E6;
2716
+ }
2717
+
2718
+ .ct-tablecurrencyItem:hover {
2719
+ color: #23527c;
2676
2720
  }
2677
- .ct-tablecurrencyItem {
2678
- text-decoration: none;
2679
- padding-left: 0px;
2680
- padding-right: 4px;
2681
- cursor: pointer;
2682
- color: #2E58E6;
2683
- }
2684
- .ct-tablecurrencyItem:hover{
2685
- color: #23527c;
2686
- }
2687
2721
  </style>
2688
2722