centaline-data-driven 1.1.55 → 1.1.56

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.
Files changed (193) hide show
  1. package/.babelrc +12 -12
  2. package/.editorconfig +9 -9
  3. package/.gitattributes +63 -63
  4. package/.postcssrc.js +10 -10
  5. package/Centaline.Front_End.DataDriven.csproj +37 -37
  6. package/Centaline.Front_End.DataDriven.sln +25 -25
  7. package/Properties/launchSettings.json +26 -26
  8. package/README.md +140 -140
  9. package/build/build.js +41 -41
  10. package/build/centaline/centaline.path.js +59 -59
  11. package/build/centaline/webpack.centaline.conf.js +106 -106
  12. package/build/check-versions.js +54 -54
  13. package/build/utils.js +102 -102
  14. package/build/vue-loader.conf.js +22 -22
  15. package/build/webpack.base.conf.js +82 -82
  16. package/build/webpack.dev.conf.js +111 -111
  17. package/build/webpack.prod.conf.js +145 -145
  18. package/config/dev.env.js +12 -12
  19. package/config/index.js +73 -73
  20. package/config/prod.env.js +4 -4
  21. package/index.html +14 -14
  22. package/package.json +75 -75
  23. package/src/App.vue +10 -10
  24. package/src/Detail.vue +26 -26
  25. package/src/Edit.vue +66 -32
  26. package/src/Form.vue +30 -29
  27. package/src/SearchList.vue +40 -40
  28. package/src/SearchTree.vue +55 -51
  29. package/src/Tabs.vue +19 -19
  30. package/src/centaline/api/index.js +249 -249
  31. package/src/centaline/comfirm/index.js +11 -11
  32. package/src/centaline/comfirm/src/comfirm.vue +44 -44
  33. package/src/centaline/common/index.js +738 -738
  34. package/src/centaline/css/common.css +748 -748
  35. package/src/centaline/css/max.css +207 -207
  36. package/src/centaline/dialogList/index.js +11 -11
  37. package/src/centaline/dialogList/src/dialog.vue +210 -210
  38. package/src/centaline/dialogList/src/dialogList.vue +65 -65
  39. package/src/centaline/dialogList/src/dialogNew.vue +78 -78
  40. package/src/centaline/dialogList/src/drag.js +77 -77
  41. package/src/centaline/directives/index.js +23 -23
  42. package/src/centaline/dynamicBtn/index.js +11 -11
  43. package/src/centaline/dynamicBtn/src/dynamicBtn.vue +100 -100
  44. package/src/centaline/dynamicCb/index.js +11 -11
  45. package/src/centaline/dynamicCb/src/dynamicCb.vue +72 -72
  46. package/src/centaline/dynamicCheckbox/index.js +11 -11
  47. package/src/centaline/dynamicCheckbox/src/dynamicCheckbox.vue +128 -128
  48. package/src/centaline/dynamicComboBoxWithTextBox/index.js +11 -11
  49. package/src/centaline/dynamicComboBoxWithTextBox/src/dynamicComboBoxWithTextBox.vue +240 -240
  50. package/src/centaline/dynamicD/index.js +11 -11
  51. package/src/centaline/dynamicD/src/dynamicD.vue +92 -92
  52. package/src/centaline/dynamicDetail/index.js +10 -10
  53. package/src/centaline/dynamicDetail/src/dynamicDetail.vue +40 -40
  54. package/src/centaline/dynamicDetail/src/dynamicPropertyDetailOFI.vue +1280 -1280
  55. package/src/centaline/dynamicDetail/src/dynamicPropertyDetailRET.vue +1293 -1293
  56. package/src/centaline/dynamicDrop/index.js +11 -11
  57. package/src/centaline/dynamicDrop/src/dynamicDrop.vue +54 -54
  58. package/src/centaline/dynamicDtd/index.js +11 -11
  59. package/src/centaline/dynamicDtd/src/dynamicDtd.vue +125 -125
  60. package/src/centaline/dynamicDtd/src/dynamicDtdOld.vue +93 -93
  61. package/src/centaline/dynamicFile/index.js +11 -11
  62. package/src/centaline/dynamicFile/src/dynamicFile.vue +288 -288
  63. package/src/centaline/dynamicForm/index.js +24 -24
  64. package/src/centaline/dynamicForm/src/dynamicForm.vue +564 -564
  65. package/src/centaline/dynamicForm/src/dynamicFormList.vue +209 -209
  66. package/src/centaline/dynamicForm/src/dynamicFormListTable.vue +376 -376
  67. package/src/centaline/dynamicGp/index.js +11 -11
  68. package/src/centaline/dynamicGp/src/dynamicGp.vue +27 -27
  69. package/src/centaline/dynamicHyperLink/index.js +11 -11
  70. package/src/centaline/dynamicHyperLink/src/dynamicHyperLink.vue +54 -54
  71. package/src/centaline/dynamicInput/index.js +35 -35
  72. package/src/centaline/dynamicInput/src/dynamicInput.vue +35 -35
  73. package/src/centaline/dynamicInputNumber/index.js +11 -11
  74. package/src/centaline/dynamicInputNumber/src/dynamicInputNumber.vue +157 -157
  75. package/src/centaline/dynamicIti/index.js +11 -11
  76. package/src/centaline/dynamicIti/src/dynamicIti.vue +148 -148
  77. package/src/centaline/dynamicL/index.js +11 -11
  78. package/src/centaline/dynamicL/src/dynamicL.vue +37 -37
  79. package/src/centaline/dynamicLabel/index.js +11 -11
  80. package/src/centaline/dynamicLabel/src/dynamicLabel.vue +73 -73
  81. package/src/centaline/dynamicLs/index.js +22 -22
  82. package/src/centaline/dynamicLs/src/dynamicLs.vue +233 -233
  83. package/src/centaline/dynamicMo/index.js +13 -13
  84. package/src/centaline/dynamicMo/src/dynamicMo.vue +421 -421
  85. package/src/centaline/dynamicMt/index.js +11 -11
  86. package/src/centaline/dynamicMt/src/dynamicMt.vue +44 -44
  87. package/src/centaline/dynamicPlaceHolder/index.js +11 -11
  88. package/src/centaline/dynamicPlaceHolder/src/dynamicPlaceHolder.vue +29 -29
  89. package/src/centaline/dynamicPopupSearchList/index.js +11 -11
  90. package/src/centaline/dynamicPopupSearchList/src/dynamicPopupSearchList.vue +157 -157
  91. package/src/centaline/dynamicPopupSearchList/src/dynamicPopupSearchListTable.vue +239 -239
  92. package/src/centaline/dynamicRichText/index.js +11 -11
  93. package/src/centaline/dynamicRichText/src/dynamicRichText.vue +33 -33
  94. package/src/centaline/dynamicSearchList/index.js +11 -11
  95. package/src/centaline/dynamicSearchList/src/dynamicSearchCategory.vue +121 -121
  96. package/src/centaline/dynamicSearchList/src/dynamicSearchList.vue +135 -135
  97. package/src/centaline/dynamicSearchList/src/dynamicSearchScreen.vue +206 -206
  98. package/src/centaline/dynamicSearchList/src/dynamicSearchTable.vue +1069 -1069
  99. package/src/centaline/dynamicSearchList/src/dynamicTableStatistics.vue +41 -41
  100. package/src/centaline/dynamicSearchList/src/dynamicTableTip.vue +46 -46
  101. package/src/centaline/dynamicSearchList/src/dynamicTableToolbar.vue +61 -61
  102. package/src/centaline/dynamicSeg/index.js +11 -11
  103. package/src/centaline/dynamicSeg/src/dynamicSeg.vue +100 -100
  104. package/src/centaline/dynamicSensitiveEye/index.js +11 -11
  105. package/src/centaline/dynamicSensitiveEye/src/dynamicSensitiveEye.vue +74 -74
  106. package/src/centaline/dynamicSo/index.js +14 -14
  107. package/src/centaline/dynamicSo/src/dynamicSo.vue +328 -328
  108. package/src/centaline/dynamicSo/src/dynamicSo/345/211/257/346/234/254.vue +69 -69
  109. package/src/centaline/dynamicSos/index.js +14 -14
  110. package/src/centaline/dynamicSos/src/dynamicSos - /345/244/215/345/210/266.vue" +223 -223
  111. package/src/centaline/dynamicSos/src/dynamicSos.vue +260 -260
  112. package/src/centaline/dynamicSw/index.js +11 -11
  113. package/src/centaline/dynamicSw/src/dynamicSw.vue +74 -74
  114. package/src/centaline/dynamicT/index.js +11 -11
  115. package/src/centaline/dynamicT/src/dynamicT.vue +79 -79
  116. package/src/centaline/dynamicTab/index.js +11 -11
  117. package/src/centaline/dynamicTab/src/dynamicTab.vue +49 -49
  118. package/src/centaline/dynamicTabs/index.js +11 -11
  119. package/src/centaline/dynamicTabs/src/dynamicTabs.vue +69 -69
  120. package/src/centaline/dynamicTags/index.js +13 -13
  121. package/src/centaline/dynamicTags/src/dynamicTags - /345/244/215/345/210/266.vue" +391 -391
  122. package/src/centaline/dynamicTags/src/dynamicTags.vue +427 -427
  123. package/src/centaline/dynamicTimeSelect/index.js +11 -11
  124. package/src/centaline/dynamicTimeSelect/src/dynamicTimeSelect.vue +141 -141
  125. package/src/centaline/dynamicTree/index.js +11 -11
  126. package/src/centaline/dynamicTree/src/dynamicSearchTree.vue +66 -66
  127. package/src/centaline/dynamicTree/src/dynamicTree.vue +233 -233
  128. package/src/centaline/dynamicTree/src/dynamicTreeList.vue +74 -74
  129. package/src/centaline/formData/index.js +289 -290
  130. package/src/centaline/imgPreview/index.js +42 -42
  131. package/src/centaline/imgPreview/src/imgPreview.vue +26 -26
  132. package/src/centaline/index.js +51 -51
  133. package/src/centaline/loader/index.js +157 -157
  134. package/src/centaline/loader/src/ctl/Base.js +261 -261
  135. package/src/centaline/loader/src/ctl/Button.js +44 -44
  136. package/src/centaline/loader/src/ctl/Cb.js +27 -27
  137. package/src/centaline/loader/src/ctl/Checkbox.js +107 -107
  138. package/src/centaline/loader/src/ctl/ComboBoxWithTextBox.js +162 -162
  139. package/src/centaline/loader/src/ctl/D.js +31 -31
  140. package/src/centaline/loader/src/ctl/Detail.js +175 -175
  141. package/src/centaline/loader/src/ctl/Dtd.js +115 -115
  142. package/src/centaline/loader/src/ctl/DtdOld.js +129 -129
  143. package/src/centaline/loader/src/ctl/File.js +296 -292
  144. package/src/centaline/loader/src/ctl/Form.js +380 -380
  145. package/src/centaline/loader/src/ctl/FormList.js +428 -428
  146. package/src/centaline/loader/src/ctl/GM.js +20 -20
  147. package/src/centaline/loader/src/ctl/Gp.js +9 -9
  148. package/src/centaline/loader/src/ctl/Hd.js +13 -13
  149. package/src/centaline/loader/src/ctl/HyperLink.js +24 -24
  150. package/src/centaline/loader/src/ctl/InputNumber.js +51 -51
  151. package/src/centaline/loader/src/ctl/Iti.js +108 -108
  152. package/src/centaline/loader/src/ctl/L.js +18 -18
  153. package/src/centaline/loader/src/ctl/Mo.js +183 -183
  154. package/src/centaline/loader/src/ctl/Mt.js +20 -20
  155. package/src/centaline/loader/src/ctl/PlaceHolder.js +17 -17
  156. package/src/centaline/loader/src/ctl/Router.js +273 -273
  157. package/src/centaline/loader/src/ctl/SearchCategory.js +54 -54
  158. package/src/centaline/loader/src/ctl/SearchScreen.js +236 -236
  159. package/src/centaline/loader/src/ctl/SearchTable.js +772 -772
  160. package/src/centaline/loader/src/ctl/Seg.js +37 -37
  161. package/src/centaline/loader/src/ctl/SensitiveEye.js +65 -65
  162. package/src/centaline/loader/src/ctl/So.js +117 -117
  163. package/src/centaline/loader/src/ctl/Sos.js +128 -128
  164. package/src/centaline/loader/src/ctl/Sw.js +27 -27
  165. package/src/centaline/loader/src/ctl/T.js +65 -65
  166. package/src/centaline/loader/src/ctl/Tabs.js +57 -57
  167. package/src/centaline/loader/src/ctl/Tags.js +191 -191
  168. package/src/centaline/loader/src/ctl/TimeSelect.js +87 -87
  169. package/src/centaline/loader/src/ctl/Tree.js +151 -151
  170. package/src/centaline/loader/src/ctl/Ttts.js +78 -78
  171. package/src/centaline/loader/src/ctl/lib/Enum.js +563 -563
  172. package/src/centaline/loader/src/ctl/lib/LibFunction.js +364 -364
  173. package/src/centaline/loader/src/ctl.js +36 -36
  174. package/src/centaline/mixins/dynamicElement.js +151 -151
  175. package/src/centaline/mixins/dynamicSelect.js +84 -84
  176. package/src/centaline/mixins/emitter.js +33 -33
  177. package/src/centaline/progress/index.js +11 -11
  178. package/src/centaline/progress/src/progress.vue +70 -70
  179. package/src/centaline/quickInput/src/quickInput.vue +64 -64
  180. package/src/centaline/selectOption/src/selectOption.vue +61 -61
  181. package/src/centaline/selectOption/src/selectOptionVertical.vue +80 -80
  182. package/src/centaline/templateControls/index.js +17 -17
  183. package/src/centaline/templateControls/src/dynamicTableA.vue +20 -20
  184. package/src/centaline/templateControls/src/dynamicTableCurrency.vue +62 -62
  185. package/src/centaline/templateControls/src/dynamicTableImg.vue +25 -25
  186. package/src/centaline/templates/index.js +34 -34
  187. package/src/centaline/templates/src/ContractSearch.js +67 -67
  188. package/src/centaline/templates/src/test.js +44 -44
  189. package/src/centaline/validate/index.js +332 -332
  190. package/src/main.js +47 -46
  191. package/src/router/index.js +44 -44
  192. package/wwwroot/static/centaline/centaline-data-driven.js +1 -1
  193. package/wwwroot/static/centaline/centaline-data-driven.js.map +1 -1
@@ -1,239 +1,239 @@
1
- <template>
2
- <div style="padding:0 8px 0 10px">
3
- <div v-if="model !== null && !loading">
4
- <el-table ref="multipleTable"
5
- :data="tableData"
6
- highlight-current-row
7
- tooltip-effect="dark"
8
- size="mini"
9
- style="width: 100%;"
10
- max-height="450"
11
- fit
12
- :row-class-name="tableRowClassName"
13
- @selection-change="handleSelectionChange"
14
- @current-change="handleCurrentChange">
15
- <el-table-column type="selection"
16
- width="55" v-if="!singleSelectio">
17
- </el-table-column>
18
- <el-table-column v-for="(col, index) in model.columns" v-if="col.show" :key="index"
19
- :prop="col.id" :label="col.name" :min-width="col.width">
20
- </el-table-column>
21
- </el-table>
22
- <div style="margin-top: 20px; width:100%;">
23
- <el-input v-if="jumpBtnName" size="mini" v-model="jumpStr" placeholder="定位" style="width:150px"></el-input>
24
- <el-button v-if="jumpBtnName" size="mini" @click="jumpClickHandler()">{{jumpBtnName}}</el-button>
25
- <el-button v-if="filterBtnName" size="mini" @click="filterClickHandler()" style="margin-left: 0px;">{{filterBtnName}}</el-button>
26
- <el-button size="mini" @click="confirmClickHandler()" class="max-search-btn" style="float:right;" type="primary">确认</el-button>
27
- </div>
28
- </div>
29
- <div style="min-height:250px" v-loading="loading" v-if="loading"></div>
30
- </div>
31
- </template>
32
-
33
- <script>
34
- import dynamicElement from '../../mixins/dynamicElement'
35
- export default {
36
- name: 'ct-popupSearchListTable',
37
- mixins: [dynamicElement],
38
- props: {
39
- api: String,
40
- vmodel: Object,
41
- source: Object,
42
- jumpBtnName: String,
43
- filterBtnName: String,
44
- singleSelectio: {
45
- type: Boolean,
46
- default: false
47
- }
48
- },
49
- data() {
50
- return {
51
- width:120,
52
- tableData: [],
53
- multipleSelection: [],
54
- currentRow: null,
55
- loading: true,
56
- jumpStr: ''
57
- }
58
- },
59
-
60
- methods: {
61
- load(data) {
62
- this.model = data;
63
- this.loadFields();
64
- this.loading = false;
65
- //this.
66
- this.resetTabelWidth();
67
-
68
- //通知父组件加载完成
69
- this.$emit('loaded');
70
- },
71
- loadFields() {
72
- var self = this;
73
- self.tableData = [];
74
-
75
- if (this.isKeep()) {
76
- self.tableData = this.multipleSelection.concat();
77
- this.$nextTick(() => {
78
- this.multipleSelection.forEach(row => {
79
- this.$refs.multipleTable.toggleRowSelection(row);
80
- });
81
- });
82
- }
83
- else {
84
- this.multipleSelection = [];
85
- }
86
-
87
- //self.tableData.concat(this.model.listData);
88
- self.tableData.push.apply(self.tableData, this.model.listData);
89
- },
90
- //是否需要保留已选
91
- isKeep(searchModel) {
92
- var self = this;
93
- searchModel = searchModel ? searchModel : self.model.searchModel;
94
- var reepFields = searchModel.fields.filter((v) => {
95
- return v.id === 'RetainType';
96
- });
97
- if (reepFields.length > 0 && reepFields[0].value === '1') {
98
- return true;
99
- }
100
- else {
101
- return false;
102
- }
103
- },
104
- //当多选项发生变化时会触发该事件
105
- handleSelectionChange(val) {
106
- this.multipleSelection = val;
107
- },
108
- //当单选项发生变化时会触发该事件
109
- handleCurrentChange(val) {
110
- this.currentRow = val;
111
- },
112
- filterClickHandler() {
113
- this.tableData = this.multipleSelection;
114
-
115
- this.$nextTick(function () {
116
- this.$refs.multipleTable.toggleAllSelection();
117
- });
118
- },
119
- tableRowClassName({ row, rowIndex }) {
120
- //把每一行的索引放进row
121
- row.tableIndex = rowIndex;
122
- },
123
- jumpClickHandler() {
124
- var self = this;
125
- var jumpRow;
126
-
127
- if (!this.jumpStr) {
128
- this.$message('请输入定位值!');
129
- return;
130
- }
131
-
132
- var jumpField = self.model.searchModel.fields.filter((v) => {
133
- return v.id === 'btnJump';
134
- });
135
- var jumpFieldStr = jumpField.length > 0 ? jumpField[0].value1 : '';
136
- var jumpFieldArr = jumpFieldStr.split(',');
137
-
138
- for (var i = 0; i < this.tableData.length; i++) {
139
- var row = self.tableData[i];
140
-
141
- jumpFieldArr.forEach((v) => {
142
- console.log(eval("row." + v));
143
- if (typeof eval("row." + v) !== 'undefined' && eval("row." + v).indexOf(self.jumpStr) >= 0) {
144
- jumpRow = row;
145
- return false;
146
- }
147
- });
148
-
149
- if (jumpRow) {
150
- //定位到找到的行
151
- self.$refs.multipleTable.bodyWrapper.scrollTop = this.$refs.multipleTable.bodyWrapper.getElementsByClassName("el-table__row")[jumpRow.tableIndex].offsetTop;
152
- this.$refs.multipleTable.setCurrentRow(jumpRow);
153
- break;
154
- }
155
- }
156
- },
157
- confirmClickHandler() {
158
- if (this.singleSelectio) {
159
- if (this.currentRow) {
160
- this.$emit('submit', this.currentRow);
161
- }
162
- else {
163
- this.$message.error("请先选择数据");
164
- }
165
- }
166
- else {
167
- this.$emit('submit', this.multipleSelection);
168
- }
169
- },
170
- //重置列宽(自适应列宽)
171
- resetTabelWidth() {
172
- var maxLen = [];
173
- this.model.columns.forEach((c) => {
174
- this.tableData.forEach((t) => {
175
- var colStr = eval("t." + c.id);//动态获取每列的属性值
176
- c.maxLen = c.maxLen ? c.maxLen : this.$common.strCharLen(c.name);
177
- c.maxLen = c.maxLen > this.$common.strCharLen(colStr) ? c.maxLen : this.$common.strCharLen(colStr);
178
- });
179
- });
180
-
181
- this.model.columns.forEach((c) => {
182
- c.width = (c.maxLen + 2) * 6;
183
- });
184
- },
185
- searchComplate(searchModel) {
186
- var self = this;
187
- this.loading = true;
188
- this.$nextTick(function () {
189
- if (typeof self.api !== 'undefined' && typeof searchModel !== 'undefined') {
190
- var postData;
191
- postData = searchModel.searchData;
192
- if (this.isKeep(searchModel)) {
193
- var selectionStr = '';
194
- this.multipleSelection.forEach((v) => {
195
- selectionStr = selectionStr + v.code + '^';
196
- });
197
-
198
- var retains = {
199
- groupName: "Retains",
200
- fieldName1: "Retains",
201
- fieldName2: "",
202
- operation: "不等于",
203
- searchValue: selectionStr,
204
- dataType: "Text"
205
- }
206
- postData.fields.push(retains);
207
- }
208
- self.loaderObj.SearchTable(self.api, self.load, searchModel, true, postData);
209
- }
210
- if (typeof self.source !== 'undefined') {
211
- self.load(self.loaderObj.SearchTable(self.source));
212
- }
213
- if (self.vmodel) {
214
- self.load(self.vmodel);
215
- }
216
- });
217
- }
218
- }
219
- }
220
- </script>
221
-
222
- <style>
223
- .el-table .cell, .el-table th div, .el-table--border td:first-child .cell, .el-table--border th:first-child .cell {
224
- padding-left: 0 !important;
225
- }
226
-
227
- .el-table .cell, .el-table th div {
228
- padding-right: 0 !important;
229
- }
230
-
231
- .el-table {
232
- font-size: 12px !important;
233
- }
234
- .el-table .el-table__header th {
235
- background-color: #f4f7fa!important;
236
- padding-left: 5px;
237
- padding-right: 5px;
238
- }
239
- </style>
1
+ <template>
2
+ <div style="padding:0 8px 0 10px">
3
+ <div v-if="model !== null && !loading">
4
+ <el-table ref="multipleTable"
5
+ :data="tableData"
6
+ highlight-current-row
7
+ tooltip-effect="dark"
8
+ size="mini"
9
+ style="width: 100%;"
10
+ max-height="450"
11
+ fit
12
+ :row-class-name="tableRowClassName"
13
+ @selection-change="handleSelectionChange"
14
+ @current-change="handleCurrentChange">
15
+ <el-table-column type="selection"
16
+ width="55" v-if="!singleSelectio">
17
+ </el-table-column>
18
+ <el-table-column v-for="(col, index) in model.columns" v-if="col.show" :key="index"
19
+ :prop="col.id" :label="col.name" :min-width="col.width">
20
+ </el-table-column>
21
+ </el-table>
22
+ <div style="margin-top: 20px; width:100%;">
23
+ <el-input v-if="jumpBtnName" size="mini" v-model="jumpStr" placeholder="定位" style="width:150px"></el-input>
24
+ <el-button v-if="jumpBtnName" size="mini" @click="jumpClickHandler()">{{jumpBtnName}}</el-button>
25
+ <el-button v-if="filterBtnName" size="mini" @click="filterClickHandler()" style="margin-left: 0px;">{{filterBtnName}}</el-button>
26
+ <el-button size="mini" @click="confirmClickHandler()" class="max-search-btn" style="float:right;" type="primary">确认</el-button>
27
+ </div>
28
+ </div>
29
+ <div style="min-height:250px" v-loading="loading" v-if="loading"></div>
30
+ </div>
31
+ </template>
32
+
33
+ <script>
34
+ import dynamicElement from '../../mixins/dynamicElement'
35
+ export default {
36
+ name: 'ct-popupSearchListTable',
37
+ mixins: [dynamicElement],
38
+ props: {
39
+ api: String,
40
+ vmodel: Object,
41
+ source: Object,
42
+ jumpBtnName: String,
43
+ filterBtnName: String,
44
+ singleSelectio: {
45
+ type: Boolean,
46
+ default: false
47
+ }
48
+ },
49
+ data() {
50
+ return {
51
+ width:120,
52
+ tableData: [],
53
+ multipleSelection: [],
54
+ currentRow: null,
55
+ loading: true,
56
+ jumpStr: ''
57
+ }
58
+ },
59
+
60
+ methods: {
61
+ load(data) {
62
+ this.model = data;
63
+ this.loadFields();
64
+ this.loading = false;
65
+ //this.
66
+ this.resetTabelWidth();
67
+
68
+ //通知父组件加载完成
69
+ this.$emit('loaded');
70
+ },
71
+ loadFields() {
72
+ var self = this;
73
+ self.tableData = [];
74
+
75
+ if (this.isKeep()) {
76
+ self.tableData = this.multipleSelection.concat();
77
+ this.$nextTick(() => {
78
+ this.multipleSelection.forEach(row => {
79
+ this.$refs.multipleTable.toggleRowSelection(row);
80
+ });
81
+ });
82
+ }
83
+ else {
84
+ this.multipleSelection = [];
85
+ }
86
+
87
+ //self.tableData.concat(this.model.listData);
88
+ self.tableData.push.apply(self.tableData, this.model.listData);
89
+ },
90
+ //是否需要保留已选
91
+ isKeep(searchModel) {
92
+ var self = this;
93
+ searchModel = searchModel ? searchModel : self.model.searchModel;
94
+ var reepFields = searchModel.fields.filter((v) => {
95
+ return v.id === 'RetainType';
96
+ });
97
+ if (reepFields.length > 0 && reepFields[0].value === '1') {
98
+ return true;
99
+ }
100
+ else {
101
+ return false;
102
+ }
103
+ },
104
+ //当多选项发生变化时会触发该事件
105
+ handleSelectionChange(val) {
106
+ this.multipleSelection = val;
107
+ },
108
+ //当单选项发生变化时会触发该事件
109
+ handleCurrentChange(val) {
110
+ this.currentRow = val;
111
+ },
112
+ filterClickHandler() {
113
+ this.tableData = this.multipleSelection;
114
+
115
+ this.$nextTick(function () {
116
+ this.$refs.multipleTable.toggleAllSelection();
117
+ });
118
+ },
119
+ tableRowClassName({ row, rowIndex }) {
120
+ //把每一行的索引放进row
121
+ row.tableIndex = rowIndex;
122
+ },
123
+ jumpClickHandler() {
124
+ var self = this;
125
+ var jumpRow;
126
+
127
+ if (!this.jumpStr) {
128
+ this.$message('请输入定位值!');
129
+ return;
130
+ }
131
+
132
+ var jumpField = self.model.searchModel.fields.filter((v) => {
133
+ return v.id === 'btnJump';
134
+ });
135
+ var jumpFieldStr = jumpField.length > 0 ? jumpField[0].value1 : '';
136
+ var jumpFieldArr = jumpFieldStr.split(',');
137
+
138
+ for (var i = 0; i < this.tableData.length; i++) {
139
+ var row = self.tableData[i];
140
+
141
+ jumpFieldArr.forEach((v) => {
142
+ console.log(eval("row." + v));
143
+ if (typeof eval("row." + v) !== 'undefined' && eval("row." + v).indexOf(self.jumpStr) >= 0) {
144
+ jumpRow = row;
145
+ return false;
146
+ }
147
+ });
148
+
149
+ if (jumpRow) {
150
+ //定位到找到的行
151
+ self.$refs.multipleTable.bodyWrapper.scrollTop = this.$refs.multipleTable.bodyWrapper.getElementsByClassName("el-table__row")[jumpRow.tableIndex].offsetTop;
152
+ this.$refs.multipleTable.setCurrentRow(jumpRow);
153
+ break;
154
+ }
155
+ }
156
+ },
157
+ confirmClickHandler() {
158
+ if (this.singleSelectio) {
159
+ if (this.currentRow) {
160
+ this.$emit('submit', this.currentRow);
161
+ }
162
+ else {
163
+ this.$message.error("请先选择数据");
164
+ }
165
+ }
166
+ else {
167
+ this.$emit('submit', this.multipleSelection);
168
+ }
169
+ },
170
+ //重置列宽(自适应列宽)
171
+ resetTabelWidth() {
172
+ var maxLen = [];
173
+ this.model.columns.forEach((c) => {
174
+ this.tableData.forEach((t) => {
175
+ var colStr = eval("t." + c.id);//动态获取每列的属性值
176
+ c.maxLen = c.maxLen ? c.maxLen : this.$common.strCharLen(c.name);
177
+ c.maxLen = c.maxLen > this.$common.strCharLen(colStr) ? c.maxLen : this.$common.strCharLen(colStr);
178
+ });
179
+ });
180
+
181
+ this.model.columns.forEach((c) => {
182
+ c.width = (c.maxLen + 2) * 6;
183
+ });
184
+ },
185
+ searchComplate(searchModel) {
186
+ var self = this;
187
+ this.loading = true;
188
+ this.$nextTick(function () {
189
+ if (typeof self.api !== 'undefined' && typeof searchModel !== 'undefined') {
190
+ var postData;
191
+ postData = searchModel.searchData;
192
+ if (this.isKeep(searchModel)) {
193
+ var selectionStr = '';
194
+ this.multipleSelection.forEach((v) => {
195
+ selectionStr = selectionStr + v.code + '^';
196
+ });
197
+
198
+ var retains = {
199
+ groupName: "Retains",
200
+ fieldName1: "Retains",
201
+ fieldName2: "",
202
+ operation: "不等于",
203
+ searchValue: selectionStr,
204
+ dataType: "Text"
205
+ }
206
+ postData.fields.push(retains);
207
+ }
208
+ self.loaderObj.SearchTable(self.api, self.load, searchModel, true, postData);
209
+ }
210
+ if (typeof self.source !== 'undefined') {
211
+ self.load(self.loaderObj.SearchTable(self.source));
212
+ }
213
+ if (self.vmodel) {
214
+ self.load(self.vmodel);
215
+ }
216
+ });
217
+ }
218
+ }
219
+ }
220
+ </script>
221
+
222
+ <style>
223
+ .el-table .cell, .el-table th div, .el-table--border td:first-child .cell, .el-table--border th:first-child .cell {
224
+ padding-left: 0 !important;
225
+ }
226
+
227
+ .el-table .cell, .el-table th div {
228
+ padding-right: 0 !important;
229
+ }
230
+
231
+ .el-table {
232
+ font-size: 12px !important;
233
+ }
234
+ .el-table .el-table__header th {
235
+ background-color: #f4f7fa!important;
236
+ padding-left: 5px;
237
+ padding-right: 5px;
238
+ }
239
+ </style>
@@ -1,11 +1,11 @@
1
- import dynamic from './src/dynamicRichText';
2
-
3
- dynamic.install = function (Vue) {
4
- Vue.component(dynamic.name, dynamic);
5
- }
6
-
7
- if (typeof window !== 'undefined' && window.Vue) {
8
- window.Vue.use(dynamic);
9
- }
10
-
11
- export default dynamic;
1
+ import dynamic from './src/dynamicRichText';
2
+
3
+ dynamic.install = function (Vue) {
4
+ Vue.component(dynamic.name, dynamic);
5
+ }
6
+
7
+ if (typeof window !== 'undefined' && window.Vue) {
8
+ window.Vue.use(dynamic);
9
+ }
10
+
11
+ export default dynamic;
@@ -1,33 +1,33 @@
1
- <template>
2
- <div class="field-top">
3
- <div class="ct-rich-text" style="width:100%;display:flex" v-if="model !== null">
4
- <p v-html="model.value"></p>
5
- </div>
6
- </div>
7
- </template>
8
- <script>
9
- import dynamicElement from '../../mixins/dynamicElement';
10
- export default {
11
- name: 'ct-rich-text',
12
- mixins: [dynamicElement],
13
- props: {
14
- vmodel: Object
15
- },
16
- data() {
17
- return {
18
- }
19
- },
20
- created() {
21
- if (typeof this.vmodel === 'undefined') {
22
- this.model = this.loaderObj.Base(this.source);
23
- }
24
- else {
25
- this.model = this.vmodel;
26
- }
27
- }
28
- }</script>
29
- <style>
30
- .ct-rich-text {
31
- min-height: 28px;
32
- }
33
- </style>
1
+ <template>
2
+ <div class="field-top">
3
+ <div class="ct-rich-text" style="width:100%;display:flex" v-if="model !== null">
4
+ <p v-html="model.value"></p>
5
+ </div>
6
+ </div>
7
+ </template>
8
+ <script>
9
+ import dynamicElement from '../../mixins/dynamicElement';
10
+ export default {
11
+ name: 'ct-rich-text',
12
+ mixins: [dynamicElement],
13
+ props: {
14
+ vmodel: Object
15
+ },
16
+ data() {
17
+ return {
18
+ }
19
+ },
20
+ created() {
21
+ if (typeof this.vmodel === 'undefined') {
22
+ this.model = this.loaderObj.Base(this.source);
23
+ }
24
+ else {
25
+ this.model = this.vmodel;
26
+ }
27
+ }
28
+ }</script>
29
+ <style>
30
+ .ct-rich-text {
31
+ min-height: 28px;
32
+ }
33
+ </style>
@@ -1,11 +1,11 @@
1
- import dynamicSearchList from './src/dynamicSearchList'
2
-
3
- dynamicSearchList.install = function (Vue) {
4
- Vue.component(dynamicSearchList.name, dynamicSearchList);
5
- }
6
-
7
- if (typeof window !== 'undefined' && window.Vue) {
8
- window.Vue.use(dynamicSearchList);
9
- }
10
-
11
- export default dynamicSearchList;
1
+ import dynamicSearchList from './src/dynamicSearchList'
2
+
3
+ dynamicSearchList.install = function (Vue) {
4
+ Vue.component(dynamicSearchList.name, dynamicSearchList);
5
+ }
6
+
7
+ if (typeof window !== 'undefined' && window.Vue) {
8
+ window.Vue.use(dynamicSearchList);
9
+ }
10
+
11
+ export default dynamicSearchList;