centaline-data-driven 1.1.54 → 1.1.55

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 +32 -32
  26. package/src/Form.vue +29 -29
  27. package/src/SearchList.vue +40 -40
  28. package/src/SearchTree.vue +51 -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 -283
  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 +290 -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 +292 -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 +46 -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,206 +1,206 @@
1
- <template>
2
- <div class="st-serach-screen">
3
- <div v-bind="model.attrs" style="width:100%" v-if="!isLoading">
4
- <div class="ct-ptb5" v-if="showScreen">
5
- <template v-for="(col, index) in model.screen" v-if="col.show !== false">
6
- <br v-if="col.is === 'ct-linefeed'" />
7
- <component v-else class="list-field" v-bind="col.listBind" :is="col.is" :vmodel="col" :api="model.optionApi" @click="clickHandler(col)"></component>
8
- </template>
9
- <component v-for="(col, index) in model.btnScreen" :key="index" :is="col.is" :vmodel="col" :api="model.optionApi" @click="clickHandler(col)"></component>
10
- </div>
11
- <!--<el-row>
12
- <el-col v-for="(col, index) in model.screen" :key="index" :span="col.colspan" style="padding:10px" v-if="col.show !== false">
13
- <component :is="col.is" :vmodel="col" :api="model.optionApi" @click="clickHandler(col)"></component>
14
- </el-col>-->
15
- <!--搜索后面跟的按钮,直接挨个排序-->
16
- <!--<el-col style="padding:5px" v-if="model.btnScreen && model.btnScreen[0]" :span="model.btnScreen[0].colspan">
17
- <component v-for="(col, index) in model.btnScreen" :key="index" :is="col.is" :vmodel="col" :api="model.optionApi" @click="clickHandler(col)"></component>
18
- </el-col>
19
- </el-row>-->
20
- <el-popover class="SeachScreenPop max-seachpopper" placement="top" transition="el-zoom-in-top" v-model="highScreen" trigger="click" visible-arrow="false">
21
- <div style="width:100%">
22
- <!--<el-row v-if="highScreenRow.length > 0">
23
- <el-col v-for="(col, index) in highScreenRow" :key="index" :span="col.colspan" style="padding:10px" v-if="col.show !== false">
24
- <component :is="col.is" :vmodel="col" :api="model.optionApi" :popShow="highScreen" @click="clickHandler(col)"></component>
25
- </el-col>
26
- </el-row>-->
27
- <template v-for="(col, index) in highScreenRow" v-if="col.show !== false">
28
- <br v-if="col.is === 'ct-linefeed'" />
29
- <component v-else class="list-field" v-bind="col.listBind" :is="col.is" :vmodel="col" :api="model.optionApi" @click="clickHandler(col)"></component>
30
- </template>
31
- </div>
32
- </el-popover>
33
- </div>
34
- <div v-if="isLoading" v-loading="isLoading" style="min-height:100px">
35
-
36
- </div>
37
- </div>
38
- </template>
39
- <script>
40
- import dynamicElement from '../../mixins/dynamicElement';
41
- export default {
42
- name: 'ct-searchscreen',
43
- mixins: [dynamicElement],
44
- props: {
45
- api: String,
46
- vmodel: Object,
47
- categoryLoaded:{
48
- type:Boolean,
49
- default:true
50
- },
51
- screenPara: {
52
- type: Object,
53
- default: () => { }
54
- },
55
- },
56
- data() {
57
- return {
58
- isLoading: true,
59
- screenRow: [],
60
- highScreenRow: [],
61
- highScreen: false,
62
- showScreen: true
63
- }
64
- },
65
- mounted() {
66
- var self = this;
67
- if(self.categoryLoaded){
68
- this.$nextTick(function () {
69
- if (typeof self.api !== 'undefined') {
70
- self.loaderObj.SearchScreen(self.api, self.load, self.screenPara);
71
- }
72
- if (typeof self.source !== 'undefined') {
73
- self.load(self.loaderObj.SearchScreen(self.source));
74
- }
75
- if (self.vmodel) {
76
- self.load(self.vmodel);
77
- }
78
- });
79
- }
80
- },
81
- methods: {
82
- clickHandler(model) {
83
- switch (model.action) {
84
- case 'showHigh':
85
- this.$set(this, 'highScreen', !this.highScreen);
86
- //高级搜索需要切换icon样式
87
- if(model.icon==='max-open')
88
- {
89
- model.icon='max-fold'
90
- }else
91
- {
92
- model.icon='max-open'
93
- }
94
- break;
95
- case 'search':
96
- this.$emit('search', this.model);
97
- this.$set(this, 'highScreen', false);
98
- break;
99
- case 'reset':
100
- this.model.reset();
101
- this.$emit('search', this.model);
102
- break;
103
- default:
104
- break;
105
- }
106
-
107
- },
108
- loadScreen() {
109
- var self = this;
110
- var hasParent = self.model.screen.filter((v) => {
111
- return typeof v.parentName !== 'undefined';
112
- });
113
- hasParent.forEach((v, index) => {
114
- var parent = self.model.screen.find((v1) => {
115
- return v1.id === v.parentName;
116
- });
117
- if (parent) {
118
- parent.child = v;
119
- v.parent = parent;
120
- }
121
- });
122
- },
123
- loadHighScreen() {
124
- var self = this;
125
- self.highScreenRow = self.model.highScreen;
126
-
127
- var hasParent = self.model.highScreen.filter((v) => {
128
- return typeof v.parentName !== 'undefined';
129
- });
130
- hasParent.forEach((v, index) => {
131
- var parent = self.model.highScreen.find((v1) => {
132
- return v1.id === v.parentName;
133
- });
134
- if (parent) {
135
- parent.child = v;
136
- v.parent = parent;
137
- }
138
- });
139
- },
140
- //无任何筛选条件时,不显示该div
141
- setScreenShow() {
142
- let showField = this.model.screen.find((v) => {
143
- return v.show !== false;
144
- });
145
- if (!showField) {
146
- showField = this.model.btnScreen.find((v) => {
147
- return v.show !== false;
148
- });
149
- if (!showField) {
150
- this.showScreen = false;
151
- }
152
- }
153
- },
154
- load(data) {
155
- var self = this;
156
- self.model = data;
157
- self.model.$vue = self;
158
- self.loadScreen();
159
- self.loadHighScreen();
160
- self.setScreenShow();
161
- self.isLoading = false;
162
- self.$emit('loaded', self.model.defaultSearch);
163
- self.$emit('showTitle');
164
- },
165
- searchComplate() {
166
- var self = this;
167
- this.$nextTick(function () {
168
- if (typeof self.api !== 'undefined') {
169
- self.loaderObj.SearchScreen(self.api, self.load, self.screenPara);
170
- }
171
- if (typeof self.source !== 'undefined') {
172
- self.load(self.loaderObj.SearchScreen(self.source));
173
- }
174
- if (self.vmodel) {
175
- self.load(self.vmodel);
176
- }
177
- });
178
- },
179
- }
180
- }
181
- </script>
182
- <style>
183
- body {
184
- margin:0px;
185
- padding:0px;
186
- }
187
- .SeachScreenPop .el-popper {
188
- width: 100%;
189
- padding: 5px 0px 5px 0px;
190
- border: 0px;
191
- box-shadow: none;
192
- -webkit-box-shadow: none;
193
- border-radius: 0px;
194
- background-color: #fafafa;
195
- z-index:1990;
196
- }
197
- .SeachScreenPop .el-popper .el-time-panel {
198
- -webkit-box-shadow: none;
199
- box-shadow: none;
200
- }
201
-
202
- .list-field {
203
- padding: 5px;
204
- }
205
-
206
- </style>
1
+ <template>
2
+ <div class="st-serach-screen">
3
+ <div v-bind="model.attrs" style="width:100%" v-if="!isLoading">
4
+ <div class="ct-ptb5" v-if="showScreen">
5
+ <template v-for="(col, index) in model.screen" v-if="col.show !== false">
6
+ <br v-if="col.is === 'ct-linefeed'" />
7
+ <component v-else class="list-field" v-bind="col.listBind" :is="col.is" :vmodel="col" :api="model.optionApi" @click="clickHandler(col)"></component>
8
+ </template>
9
+ <component v-for="(col, index) in model.btnScreen" :key="index" :is="col.is" :vmodel="col" :api="model.optionApi" @click="clickHandler(col)"></component>
10
+ </div>
11
+ <!--<el-row>
12
+ <el-col v-for="(col, index) in model.screen" :key="index" :span="col.colspan" style="padding:10px" v-if="col.show !== false">
13
+ <component :is="col.is" :vmodel="col" :api="model.optionApi" @click="clickHandler(col)"></component>
14
+ </el-col>-->
15
+ <!--搜索后面跟的按钮,直接挨个排序-->
16
+ <!--<el-col style="padding:5px" v-if="model.btnScreen && model.btnScreen[0]" :span="model.btnScreen[0].colspan">
17
+ <component v-for="(col, index) in model.btnScreen" :key="index" :is="col.is" :vmodel="col" :api="model.optionApi" @click="clickHandler(col)"></component>
18
+ </el-col>
19
+ </el-row>-->
20
+ <el-popover class="SeachScreenPop max-seachpopper" placement="top" transition="el-zoom-in-top" v-model="highScreen" trigger="click" visible-arrow="false">
21
+ <div style="width:100%">
22
+ <!--<el-row v-if="highScreenRow.length > 0">
23
+ <el-col v-for="(col, index) in highScreenRow" :key="index" :span="col.colspan" style="padding:10px" v-if="col.show !== false">
24
+ <component :is="col.is" :vmodel="col" :api="model.optionApi" :popShow="highScreen" @click="clickHandler(col)"></component>
25
+ </el-col>
26
+ </el-row>-->
27
+ <template v-for="(col, index) in highScreenRow" v-if="col.show !== false">
28
+ <br v-if="col.is === 'ct-linefeed'" />
29
+ <component v-else class="list-field" v-bind="col.listBind" :is="col.is" :vmodel="col" :api="model.optionApi" @click="clickHandler(col)"></component>
30
+ </template>
31
+ </div>
32
+ </el-popover>
33
+ </div>
34
+ <div v-if="isLoading" v-loading="isLoading" style="min-height:100px">
35
+
36
+ </div>
37
+ </div>
38
+ </template>
39
+ <script>
40
+ import dynamicElement from '../../mixins/dynamicElement';
41
+ export default {
42
+ name: 'ct-searchscreen',
43
+ mixins: [dynamicElement],
44
+ props: {
45
+ api: String,
46
+ vmodel: Object,
47
+ categoryLoaded:{
48
+ type:Boolean,
49
+ default:true
50
+ },
51
+ screenPara: {
52
+ type: Object,
53
+ default: () => { }
54
+ },
55
+ },
56
+ data() {
57
+ return {
58
+ isLoading: true,
59
+ screenRow: [],
60
+ highScreenRow: [],
61
+ highScreen: false,
62
+ showScreen: true
63
+ }
64
+ },
65
+ mounted() {
66
+ var self = this;
67
+ if(self.categoryLoaded){
68
+ this.$nextTick(function () {
69
+ if (typeof self.api !== 'undefined') {
70
+ self.loaderObj.SearchScreen(self.api, self.load, self.screenPara);
71
+ }
72
+ if (typeof self.source !== 'undefined') {
73
+ self.load(self.loaderObj.SearchScreen(self.source));
74
+ }
75
+ if (self.vmodel) {
76
+ self.load(self.vmodel);
77
+ }
78
+ });
79
+ }
80
+ },
81
+ methods: {
82
+ clickHandler(model) {
83
+ switch (model.action) {
84
+ case 'showHigh':
85
+ this.$set(this, 'highScreen', !this.highScreen);
86
+ //高级搜索需要切换icon样式
87
+ if(model.icon==='max-open')
88
+ {
89
+ model.icon='max-fold'
90
+ }else
91
+ {
92
+ model.icon='max-open'
93
+ }
94
+ break;
95
+ case 'search':
96
+ this.$emit('search', this.model);
97
+ this.$set(this, 'highScreen', false);
98
+ break;
99
+ case 'reset':
100
+ this.model.reset();
101
+ this.$emit('search', this.model);
102
+ break;
103
+ default:
104
+ break;
105
+ }
106
+
107
+ },
108
+ loadScreen() {
109
+ var self = this;
110
+ var hasParent = self.model.screen.filter((v) => {
111
+ return typeof v.parentName !== 'undefined';
112
+ });
113
+ hasParent.forEach((v, index) => {
114
+ var parent = self.model.screen.find((v1) => {
115
+ return v1.id === v.parentName;
116
+ });
117
+ if (parent) {
118
+ parent.child = v;
119
+ v.parent = parent;
120
+ }
121
+ });
122
+ },
123
+ loadHighScreen() {
124
+ var self = this;
125
+ self.highScreenRow = self.model.highScreen;
126
+
127
+ var hasParent = self.model.highScreen.filter((v) => {
128
+ return typeof v.parentName !== 'undefined';
129
+ });
130
+ hasParent.forEach((v, index) => {
131
+ var parent = self.model.highScreen.find((v1) => {
132
+ return v1.id === v.parentName;
133
+ });
134
+ if (parent) {
135
+ parent.child = v;
136
+ v.parent = parent;
137
+ }
138
+ });
139
+ },
140
+ //无任何筛选条件时,不显示该div
141
+ setScreenShow() {
142
+ let showField = this.model.screen.find((v) => {
143
+ return v.show !== false;
144
+ });
145
+ if (!showField) {
146
+ showField = this.model.btnScreen.find((v) => {
147
+ return v.show !== false;
148
+ });
149
+ if (!showField) {
150
+ this.showScreen = false;
151
+ }
152
+ }
153
+ },
154
+ load(data) {
155
+ var self = this;
156
+ self.model = data;
157
+ self.model.$vue = self;
158
+ self.loadScreen();
159
+ self.loadHighScreen();
160
+ self.setScreenShow();
161
+ self.isLoading = false;
162
+ self.$emit('loaded', self.model.defaultSearch);
163
+ self.$emit('showTitle');
164
+ },
165
+ searchComplate() {
166
+ var self = this;
167
+ this.$nextTick(function () {
168
+ if (typeof self.api !== 'undefined') {
169
+ self.loaderObj.SearchScreen(self.api, self.load, self.screenPara);
170
+ }
171
+ if (typeof self.source !== 'undefined') {
172
+ self.load(self.loaderObj.SearchScreen(self.source));
173
+ }
174
+ if (self.vmodel) {
175
+ self.load(self.vmodel);
176
+ }
177
+ });
178
+ },
179
+ }
180
+ }
181
+ </script>
182
+ <style>
183
+ body {
184
+ margin:0px;
185
+ padding:0px;
186
+ }
187
+ .SeachScreenPop .el-popper {
188
+ width: 100%;
189
+ padding: 5px 0px 5px 0px;
190
+ border: 0px;
191
+ box-shadow: none;
192
+ -webkit-box-shadow: none;
193
+ border-radius: 0px;
194
+ background-color: #fafafa;
195
+ z-index:1990;
196
+ }
197
+ .SeachScreenPop .el-popper .el-time-panel {
198
+ -webkit-box-shadow: none;
199
+ box-shadow: none;
200
+ }
201
+
202
+ .list-field {
203
+ padding: 5px;
204
+ }
205
+
206
+ </style>