centaline-data-driven 1.2.93 → 1.2.96

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 (31) hide show
  1. package/build/centaline/centaline.path.js +1 -0
  2. package/package.json +1 -1
  3. package/src/Detail.vue +1 -1
  4. package/src/Form.vue +6 -17
  5. package/src/SearchList.vue +0 -2
  6. package/src/centaline/browseVideo/index.js +11 -0
  7. package/src/centaline/browseVideo/src/browseVideo.vue +30 -0
  8. package/src/centaline/common/index.js +28 -1
  9. package/src/centaline/dynamicCompound/src/dynamicCompound.vue +1 -1
  10. package/src/centaline/dynamicContact/src/dynamicContact.vue +3 -0
  11. package/src/centaline/dynamicDetail/src/dynamicContactList.vue +3 -0
  12. package/src/centaline/dynamicDetail/src/dynamicPropertyDetailRET.vue +20 -2
  13. package/src/centaline/dynamicDetail/src/dynamicPropertySimpleDetailRET.vue +3 -0
  14. package/src/centaline/dynamicForm/src/dynamicForm.vue +3 -0
  15. package/src/centaline/dynamicLayout/src/dynamicLayoutChildren.vue +1 -1
  16. package/src/centaline/dynamicLayout/src/dynamicLayoutChildrenFor.vue +1 -1
  17. package/src/centaline/dynamicLayout/src/dynamicLayoutImage.vue +2 -2
  18. package/src/centaline/dynamicLayout/src/dynamicLayoutLabel.vue +2 -2
  19. package/src/centaline/dynamicPopupSearchList/src/dynamicPopupSearchList.vue +1 -1
  20. package/src/centaline/dynamicPopupSearchList/src/dynamicPopupSearchListTable.vue +5 -2
  21. package/src/centaline/dynamicSearchList/src/dynamicSearchList.vue +5 -0
  22. package/src/centaline/dynamicSearchList/src/dynamicSearchScreen.vue +1 -14
  23. package/src/centaline/dynamicSearchList/src/dynamicSearchTable.vue +5 -28
  24. package/src/centaline/loader/src/ctl/CellLayout.js +11 -0
  25. package/src/centaline/loader/src/ctl/Form.js +6 -0
  26. package/src/centaline/loader/src/ctl/SearchScreen.js +12 -3
  27. package/src/centaline/loader/src/ctl/SearchTable.js +6 -1
  28. package/src/centaline/loader/src/ctl/lib/Enum.js +4 -0
  29. package/src/main.js +2 -2
  30. package/wwwroot/static/centaline/centaline-data-driven.js +3 -3
  31. package/wwwroot/static/centaline/centaline-data-driven.js.map +1 -1
@@ -44,6 +44,7 @@ const paths = {
44
44
  "dynamicCompound": "./src/centaline/dynamicCompound/index.js",//复合控件
45
45
  "dynamicContact": "./src/centaline/dynamicContact/index.js",//联系人电话
46
46
  "dynamicLayout": "./src/centaline/dynamicLayout/index.js",//Layout组件
47
+ "browseVideo": "./src/centaline/browseVideo/index.js",//确认框组件
47
48
  },
48
49
  "plugs": {
49
50
  "api": "./src/centaline/api/index.js",//调用API插件
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "centaline-data-driven",
3
- "version": "1.2.93",
3
+ "version": "1.2.96",
4
4
  "description": "ccai",
5
5
  "author": "hjc <3226136347@qq.com>",
6
6
  "private": false,
package/src/Detail.vue CHANGED
@@ -10,7 +10,7 @@
10
10
  name: 'DataDrivendetail',
11
11
  data() {
12
12
  return {
13
- apiParam: {actionType: 1,chanceID: "1508323251514904576"} ,
13
+ apiParam: {actionType: 1,chanceID: "1"} ,
14
14
  }
15
15
  },
16
16
  mounted() {
package/src/Form.vue CHANGED
@@ -2,7 +2,7 @@
2
2
  <div id="app-form" class="data-driven" style="width:100%;height:100%;overflow:auto">
3
3
  <!-- <ct-form :api="'/PropertyRET/getLayoutOfNew'" :apiParam="apiParam"></ct-form> -->
4
4
  <!-- <ct-form :source="formdata.content" :apiParam="apiParam"></ct-form> -->
5
- <ct-form :api="'/salematter/agent/readDetail'" :apiParam="apiParam"></ct-form>
5
+ <ct-form :api="'/api/third-dept-tran/transaction/detail'" :apiParam="apiParam"></ct-form>
6
6
  <!--<ct-form :api="'api/Form/formdata'"></ct-form>-->
7
7
  <ct-dialog-list></ct-dialog-list>
8
8
  </div>
@@ -13,23 +13,12 @@
13
13
  name: 'App',
14
14
  data() {
15
15
  return {
16
- // apiParam: {profitReturnId: "1504359257134055426", actionType: 1, pageStyle: 2, pageTitle: "查看返利", pageOnly: true} ,
17
- // apiParam: {headerParam: {}, urlParam: {contractID: "06cad32e-4d0d-4b6f-bd24-16a28629a550", actionType: "0"}}
18
- // apiParam: {originalTraId: "1475658732246241281", actionType: 2, chanceID: "1"} ,
19
- // apiParam: {originalTraId: "1516290587463507969", actionType: "3", pageStyle: "2", pageTitle: "成交报告",pageOnly: "true"}
20
16
  apiParam:{
21
- actionType: 2,
22
- jsonData: {
23
- searchFields: {
24
- fields: [{
25
- fieldName1: "estateId",
26
- groupName: "estateId",
27
- operation: 2,
28
- searchDataType: 3,
29
- searchValue1: "201703020943128D8A8FCF463E4016D6"
30
- }]
31
- }
32
- }
17
+ actionType: 3,
18
+ originalTraId: "1530076554013306882",
19
+ pageOnly: true,
20
+ pageStyle: 2,
21
+ pageTitle: "成交报告",
33
22
  }
34
23
  }
35
24
  },
@@ -13,8 +13,6 @@
13
13
  :searchStatsApi="'/exampleList/getListStats'"
14
14
  ></ct-searchlist>
15
15
 
16
- <!--<ct-searchlist :searchConditionApi="'/api/invoice-info/search-condition'" :searchDataApi="'/api/invoice-info/list'" :searchDataStatisticsApi="'api/ContractList/GetLayoutOfStatisticsTool'" :apiParam="para"></ct-searchlist>-->
17
- <!-- <ct-searchlist :searchConditionApi="'/PropertyStatusList/getLayoutOfSearch'" :searchDataApi="'/PropertyStatusList/getListOfSearchModel'" :apiParam="para"></ct-searchlist> -->
18
16
  <ct-dialog-list></ct-dialog-list>
19
17
  </div>
20
18
  </template>
@@ -0,0 +1,11 @@
1
+ import browseVideo from './src/browseVideo'
2
+
3
+ browseVideo.install = function (Vue) {
4
+ Vue.component(browseVideo.name, browseVideo);
5
+ }
6
+
7
+ if (typeof window !== 'undefined' && window.Vue) {
8
+ window.Vue.use(browseVideo);
9
+ }
10
+
11
+ export default browseVideo;
@@ -0,0 +1,30 @@
1
+ <template>
2
+ <div>
3
+ <div class="alert fade in" role="alert" style="padding:0px;border-bottom:none;display: table-caption;margin-left: 5px;">
4
+ <video :src="submitData[router.submitFormField]" controls="true" autoplay controlslist="nodownload"
5
+ :height="router.dialogHeight?router.dialogHeight-10:'40'" :width="router.dialogWidth?router.dialogWidth-10:'100%'">您的浏览器不支持 video 标签。
6
+ </video>
7
+ </div>
8
+ </div>
9
+ </template>
10
+ <script>
11
+ export default {
12
+ name: 'ct-video',
13
+ props: {
14
+ router: Object,
15
+ submitData: Object,
16
+ },
17
+ data() {
18
+ return {
19
+
20
+ };
21
+ },
22
+ methods: {
23
+ clickHandler(ev, v) {
24
+ }
25
+ }
26
+ }
27
+ </script>
28
+ <style scoped>
29
+
30
+ </style>
@@ -215,7 +215,10 @@ const common = {
215
215
  */
216
216
  closeDialog(vmodel) {
217
217
  if (vmodel) {
218
- if (vmodel.name === 'ct-comfirm' || vmodel.$options.name === 'ctDialog' || vmodel.$options.name === 'ct-dialog') {
218
+ if (vmodel.name === 'ct-comfirm'
219
+ || vmodel.$options.name === 'ctDialog'
220
+ || vmodel.$options.name === 'ct-dialog'
221
+ || vmodel.$options.name === 'ct-video') {
219
222
  this.dialogList.deleteDialog(vmodel);
220
223
  return;
221
224
  }
@@ -269,6 +272,30 @@ const common = {
269
272
 
270
273
  },
271
274
 
275
+ browseVideo(router, submitData) {
276
+ let self = this;
277
+
278
+ return new Promise((resolve, reject) => {
279
+ var dialogOption = {
280
+ title: router.pageTitle,
281
+ name: 'ct-video',
282
+ vmodel: {},
283
+ content: [{
284
+ component: 'ct-video',
285
+ attrs: {
286
+ router: router,
287
+ submitData: submitData,
288
+ width: router.dialogWidth + 'px',
289
+ height: router.dialogHeight + 'px'
290
+ },
291
+ on: {
292
+ }
293
+ }]
294
+ };
295
+ this.openDialog(dialogOption);
296
+ })
297
+ },
298
+
272
299
  /**
273
300
  * @method
274
301
  * @param {Object} evControl 指定Vue对象
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <el-container v-if="model.fields.length > 0">
3
- <div v-for="(col, index) in model.fields" :key="index" v-if="col.show !== false" :class="index>0&&col.label==''?'complex-left-10':''" :style="{'width':(col.width!='0'?col.width+'px':'100%'),'flex':(col.width!='0'?'0 0 '+col.width+'px':'100%')}">
3
+ <div v-for="(col, index) in model.fields" :key="index" v-if="col.show !== false" :class="index>0&&(col.label==''||col.is=='ct-btn')?'complex-left-10':''" :style="{'width':(col.width!='0'?col.width+'px':'100%'),'flex':(col.width!='0'?'0 0 '+col.width+'px':'100%')}">
4
4
  <component ref="Fields" :is="col.is" :vmodel="col" :api="model.OptApi" v-bind="col.bindPara"
5
5
  @click="fieldClickHandler(col,$event)" @change="changeHandler(col,$event)" @enter="enterHandler(col,$event)"
6
6
  @input="inputHandler(col,$event)"></component>
@@ -261,6 +261,9 @@
261
261
  else if (field.isOpenUrlInBrowse) {// 浏览器打开
262
262
  window.open(submitData[field.submitFormField], "_blank");
263
263
  }
264
+ else if (field.isSeeVoice) {//看视频
265
+ self.$common.browseVideo(field,submitData)
266
+ }
264
267
  else{
265
268
  field.doAction(submitData, (data) => {
266
269
  self.model.doAction(data,field);
@@ -402,6 +402,9 @@
402
402
  else if (field.isOpenUrlInBrowse) {// 浏览器打开
403
403
  window.open(submitData[field.submitFormField], "_blank");
404
404
  }
405
+ else if (field.isSeeVoice) {//看视频
406
+ self.$common.browseVideo(field,submitData)
407
+ }
405
408
  else{
406
409
  field.doAction(submitData, (data) => {
407
410
  self.model.doAction(data,field);
@@ -24,6 +24,10 @@
24
24
  {{tag.label}}
25
25
  </div>
26
26
  </div>
27
+ <div v-if="model.fields1Dic.PropertyDepict" v-html="model.fields1Dic.PropertyDepict.value"
28
+ style=" color: rgb(25, 137, 250);font-size: 13px;margin-top: 10px;background: rgb(236, 249, 255);
29
+ flex: 1;align-items: center;padding: 5px;border-radius: 5px;">
30
+ </div>
27
31
  </div>
28
32
  <div class="head-but">
29
33
  <div>
@@ -217,7 +221,18 @@
217
221
  </div>
218
222
  </div>
219
223
  <div v-else class="el-tabs__content" :key="model.tags2Key">
220
- <div v-for="(m, i) in col.list" class="text" :key="i">{{m.dutyEmpName}}</div>
224
+ <div v-if="col.list" role="tabpanel" aria-labelledby="tab-first" class="el-tab-pane">
225
+ <div v-for="(info, i) in col.list" :key="i" class="tab-conten">
226
+ <img :src="info.dutyEmpUrl">
227
+ <div class="user-name" style="display: block;padding-top: 5px;">
228
+ <div style="display: flex;">
229
+ <div class="text">{{info.dutyEmpName}}</div>
230
+ <span class="user-but">{{info.dutyDeptName}}</span>
231
+ </div>
232
+ <div class="text">{{info.mobileNo}}</div>
233
+ </div>
234
+ </div>
235
+ </div>
221
236
  </div>
222
237
  </el-tab-pane>
223
238
  </el-tabs>
@@ -587,6 +602,9 @@
587
602
  else if (field.isOpenUrlInBrowse) {// 浏览器打开
588
603
  window.open(submitData[field.submitFormField], "_blank");
589
604
  }
605
+ else if (field.isSeeVoice) {//看视频
606
+ self.$common.browseVideo(field,submitData)
607
+ }
590
608
  else{
591
609
  field.doAction(submitData, (data) => {
592
610
  self.model.doAction(data,field);
@@ -1196,7 +1214,7 @@
1196
1214
  // align-items: center;
1197
1215
  border-bottom: 1px solid #e0e0e0;
1198
1216
  .t-item {
1199
- padding: 0 16px;
1217
+ padding: 5px 16px;
1200
1218
  font-size: 14px;
1201
1219
  flex: 1;
1202
1220
  position: relative;
@@ -401,6 +401,9 @@
401
401
  else if (field.isOpenUrlInBrowse) {// 浏览器打开
402
402
  window.open(submitData[field.submitFormField], "_blank");
403
403
  }
404
+ else if (field.isSeeVoice) {//看视频
405
+ self.$common.browseVideo(field,submitData)
406
+ }
404
407
  else{
405
408
  field.doAction(submitData, (data) => {
406
409
  self.model.doAction(data,field);
@@ -402,6 +402,9 @@
402
402
  else if (field.isOpenUrlInBrowse) {// 浏览器打开
403
403
  window.open(submitData[field.submitFormField], "_blank");
404
404
  }
405
+ else if (field.isSeeVoice) {//看视频
406
+ self.$common.browseVideo(field,submitData)
407
+ }
405
408
  else if (field.isExport) {
406
409
  submitData = field.getActionPara(submitData).para;
407
410
  self.model.export(field, submitData);
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <el-container :direction="model.orientation" :style="model.styleObject" ref="layoutchildren">
2
+ <el-container v-if="model.visibility!='0'" :direction="model.orientation" :style="model.styleObject" ref="layoutchildren">
3
3
  <component v-for="(item, index) in model.fields" :key="index" :is="item.is" :vmodel="item" :rowindex="rowindex" :forname="forname" :forrowindex="forrowindex" @click="clickHandler"></component>
4
4
  </el-container>
5
5
  </template>
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <el-container :direction="model.orientation" :style="model.styleObject">
2
+ <el-container v-if="model.visibility!='0'" :direction="model.orientation" :style="model.styleObject">
3
3
  <ct-layoutchildren v-for="(item, index) in model.fields" :key="index" :rowindex="rowindex" :forrowindex="model.forrowindex" :vmodel="item" :forname="model.forname" @click="clickHandler"></ct-layoutchildren>
4
4
  </el-container>
5
5
  </template>
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <div v-if="model.routerKey">
2
+ <div v-if="model.routerKey&&model.visibility!='0'">
3
3
  <div v-if="model.rightRouter&&model.value!=''" :ref="'router'+forname+forrowindex" :style="model.styleObject">
4
4
  <el-popover class="Stats-popover" :placement="option.placement?option.placement:'left'"
5
5
  v-model="visible" :trigger="option.trigger?option.trigger:''">
@@ -11,7 +11,7 @@
11
11
  </el-popover>
12
12
  </div>
13
13
  </div>
14
- <div v-else-if="model.value!=''" :style="model.styleObject">
14
+ <div v-else-if="model.value!=''&&model.visibility!='0'" :style="model.styleObject">
15
15
  <el-image :src="model.value"
16
16
  fit="fit"></el-image>
17
17
  </div>
@@ -1,12 +1,12 @@
1
1
  <template>
2
- <div v-if="model.routerKey">
2
+ <div v-if="model.routerKey&&model.visibility!='0'">
3
3
  <div v-if="model.rightRouter&&model.value!=''" :style="model.styleObject">
4
4
  <a href="javascript:void(0);" @click="clickHandler($event)" class="ct-tablecurrencyItem">
5
5
  {{model.value}}
6
6
  </a>
7
7
  </div>
8
8
  </div>
9
- <div v-else-if="model.value!=''" :style="model.styleObject" v-html="model.value">
9
+ <div v-else-if="model.value!=''&&model.visibility!='0'" :style="model.styleObject" v-html="model.value">
10
10
  </div>
11
11
  </template>
12
12
 
@@ -64,7 +64,7 @@
64
64
  }
65
65
  this.loadFields();
66
66
  this.$nextTick(() => {
67
- this.$refs.table.searchComplate(this.model);
67
+ this.$refs.table.searchComplate(this.model,this.model.flagSearch);
68
68
  });
69
69
  this.loading = false;
70
70
 
@@ -182,9 +182,10 @@
182
182
  c.width = (c.maxLen + 2) * 6;
183
183
  });
184
184
  },
185
- searchComplate(searchModel) {
185
+ searchComplate(searchModel,flagSearch) {
186
186
  var self = this;
187
187
  this.loading = true;
188
+ if(flagSearch==undefined)flagSearch=true;
188
189
  this.$nextTick(function () {
189
190
  if (typeof self.api !== 'undefined' && typeof searchModel !== 'undefined') {
190
191
  var postData;
@@ -205,7 +206,9 @@
205
206
  }
206
207
  postData.fields.push(retains);
207
208
  }
208
- self.loaderObj.SearchTable(self.api, self.load, searchModel, true, postData);
209
+ self.loaderObj.SearchTable(self.api, self.load, searchModel, flagSearch, postData,function(){
210
+ self.loading = false;
211
+ });
209
212
  }
210
213
  if (typeof self.source !== 'undefined') {
211
214
  self.load(self.loaderObj.SearchTable(self.source));
@@ -185,6 +185,7 @@
185
185
  },
186
186
  tableLoaded() {
187
187
  if(this.$refs.table.model.listData.length>0){
188
+ this.flagSideBarOfData=true;
188
189
  this.flagSideBar=this.$refs.table.model.flagSideBar;
189
190
  this.flagDefaultDisplaySideBar=this.$refs.table.model.flagDefaultDisplaySideBar;
190
191
 
@@ -209,6 +210,10 @@
209
210
  }
210
211
  }
211
212
  }
213
+ else{
214
+ this.flagSideBarOfData=false;
215
+ this.searchWidth=0;
216
+ }
212
217
  this.$emit('tableLoaded', this.$refs.table.model);
213
218
  },
214
219
  rowClickHandle() {
@@ -8,22 +8,8 @@
8
8
  </template>
9
9
  <component v-for="(col, index) in model.btnScreen" :key="index" :is="col.is" :vmodel="col" :api="model.optionApi" @click="clickHandler(col)"></component>
10
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
11
  <el-popover class="SeachScreenPop max-seachpopper" placement="top" transition="el-zoom-in-top" v-model="highScreen" trigger="click" visible-arrow="false">
21
12
  <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
13
  <template v-for="(col, index) in highScreenRow" v-if="col.show !== false">
28
14
  <br v-if="col.is === 'ct-linefeed'" />
29
15
  <component v-else class="list-field" v-bind="col.listBind" :is="col.is" :vmodel="col" :api="model.optionApi" @click="clickHandler(col)"></component>
@@ -107,6 +93,7 @@
107
93
  },
108
94
  loadScreen() {
109
95
  var self = this;
96
+ console.log(self.model)
110
97
  var hasParent = self.model.screen.filter((v) => {
111
98
  return typeof v.parentName !== 'undefined';
112
99
  });
@@ -757,34 +757,8 @@
757
757
  else if (field.isOpenUrlInBrowse) {// 浏览器打开
758
758
  window.open(submitData[field.submitFormField], "_blank");
759
759
  }
760
- else if (field.isSeeVoice && false) {//看视频
761
- var dialogOption = {
762
- title: field.pageTitle,
763
- pane: self.$common.getParentPane(self),
764
- content: [{
765
- component: 'ct-form',
766
- attrs: {
767
- //ssource: data.content,
768
- api: field.action,
769
- apiParam: field.getActionPara(submitData).para,
770
- showTitle: false,
771
- width: field.dialogWidth + 'px',
772
- height: field.dialogHeight + 'px'
773
- },
774
- on: {
775
- submit(ev) {
776
- self.model.updateFields(ev, () => {
777
- self.$refs.Fields.forEach((fd) => {
778
- fd.$forceUpdate();
779
- });
780
- });
781
- self.$common.closeDialog(dialogOption.dialog);
782
- }
783
- }
784
- }]
785
- };
786
- self.$common.openDialog(dialogOption);
787
- window.open(submitData[field.submitFormField], "_blank");
760
+ else if (field.isSeeVoice) {//看视频
761
+ self.$common.browseVideo(field,submitData)
788
762
  }
789
763
  else {
790
764
  //self.operationLoading = true;
@@ -967,6 +941,9 @@
967
941
  else if (field.isOpenUrlInBrowse) {// 浏览器打开
968
942
  window.open(submitData[field.submitFormField], "_blank");
969
943
  }
944
+ else if (field.isSeeVoice) {//看视频
945
+ self.$common.browseVideo(field,submitData)
946
+ }
970
947
  else {
971
948
  //self.operationLoading = true;
972
949
 
@@ -25,6 +25,14 @@ const CellLayout = function (source) {
25
25
  get orientation() {
26
26
  return source.orientation;
27
27
  },
28
+ get visibility() {
29
+ if (source.visibility == 'gone' || source.visibility == 'hidden' || source.visibility == 'false' || source.visibility == '0' || source.visibility == '0.0') {
30
+ return '0';
31
+ }
32
+ else {
33
+ return source.visibility;
34
+ }
35
+ },
28
36
  get placeholder() {
29
37
  return source.placeholder;
30
38
  },
@@ -177,6 +185,9 @@ const CellLayout = function (source) {
177
185
  if (typeof source.weight !== 'undefined') {
178
186
  self._styleObject.flex = source.weight;
179
187
  }
188
+ if (typeof source.lineHeight !== 'undefined') {
189
+ self._styleObject.lineHeight = source.lineHeight+'px';
190
+ }
180
191
  if (typeof source.maxLines !== 'undefined') {
181
192
  self._styleObject.WebkitLineClamp = source.maxLines;
182
193
  self._styleObject.WebkitBoxOrient = "vertical";
@@ -13,6 +13,12 @@ const Form = function (source, callBack, apiParam, failCallBack, isFormList) {
13
13
  get source() {
14
14
  return source;
15
15
  },
16
+ get flagSearch() {
17
+ if(source.flagSearch!=undefined){
18
+ return source.flagSearch;
19
+ }
20
+ return true;
21
+ },
16
22
  get title() {
17
23
  return source.title;
18
24
  },
@@ -68,7 +68,7 @@ const SearchScreen = function (source, callBack, screenPara) {
68
68
  return v.controlType === Enum.ControlType.ButtonSearch;
69
69
  });
70
70
  var screens = rtn.sourceFieldsArr.filter((v, i) => {
71
- return advIndex === -1 || i < advIndex;
71
+ return (advIndex === -1 || i < advIndex) && v.controlType!==Enum.ControlType.From;
72
72
  });
73
73
 
74
74
  rtnscreens = this.initScreen(screens);
@@ -93,7 +93,7 @@ const SearchScreen = function (source, callBack, screenPara) {
93
93
 
94
94
  if (buttonSearchIndex > -1) {
95
95
  var screens = rtn.sourceFieldsArr.filter((v, i) => {
96
- return buttonSearchIndex <= i && (buttonAdvancedSearchIndex === -1 || i <= buttonAdvancedSearchIndex);
96
+ return buttonSearchIndex <= i && (buttonAdvancedSearchIndex === -1 || i <= buttonAdvancedSearchIndex) && v.controlType!==Enum.ControlType.From;
97
97
  });
98
98
 
99
99
  rtnscreens = this.initScreen(screens);
@@ -121,7 +121,7 @@ const SearchScreen = function (source, callBack, screenPara) {
121
121
  });
122
122
  }
123
123
  var screens = rtn.sourceFieldsArr.filter((v, i) => {
124
- return advIndex !== -1 && i > advIndex;
124
+ return (advIndex !== -1 && i > advIndex) && v.controlType!==Enum.ControlType.From;
125
125
  });
126
126
  rtnscreens = this.initScreen(screens);
127
127
  rtnscreens.forEach((v)=>{
@@ -130,6 +130,15 @@ const SearchScreen = function (source, callBack, screenPara) {
130
130
  this._highScreen = rtnscreens;
131
131
  return rtnscreens;
132
132
  },
133
+ get shortcutForm() {
134
+ var screens = rtn.sourceFieldsArr.filter((v, i) => {
135
+ return v.controlType!==Enum.ControlType.From;
136
+ });
137
+ if(screens && screens.length>0){
138
+ return screens[0];
139
+ }
140
+ return null;
141
+ },
133
142
  setBtnLoading(loading) {
134
143
  this.btnScreen.forEach(btn => {
135
144
  btn.disabled = loading;
@@ -4,7 +4,7 @@ import Router from './Router';
4
4
  import Vue from 'vue';
5
5
  import Enum from './lib/Enum';
6
6
  import formData from '../../../formData';
7
- const SearchTable = function (data, callBack, searchModel, flagSearch, defaultSearchData) {
7
+ const SearchTable = function (data, callBack, searchModel, flagSearch, defaultSearchData,postThenHandler) {
8
8
  var init = function (source) {
9
9
  var rtn = {
10
10
  $vue: null,
@@ -890,6 +890,11 @@ const SearchTable = function (data, callBack, searchModel, flagSearch, defaultSe
890
890
  callBack(rtn);
891
891
  }
892
892
  }
893
+ else{
894
+ if(postThenHandler){
895
+ postThenHandler();
896
+ }
897
+ }
893
898
  }
894
899
  );
895
900
  }
@@ -233,6 +233,10 @@ const Enum = {
233
233
  /// 复合控件
234
234
  /// </summary>
235
235
  Compound: 48,
236
+ /// <summary>
237
+ /// 表单
238
+ /// </summary>
239
+ From: 49,
236
240
  },
237
241
 
238
242
  //返回状态码
package/src/main.js CHANGED
@@ -12,7 +12,7 @@ Vue.use(ElementUI, { size: 'mini'});
12
12
  // 关闭生产模式下给出的提示
13
13
  Vue.config.productionTip = false;
14
14
  Vue.use(centaline, {
15
- baseUrl: "http://10.88.22.13:7070/v1/form/router",
15
+ baseUrl: "http://10.88.22.46:7070/v1/form/router",
16
16
  // baseUrl: "http://10.88.23.22:9999/v1/form/router",
17
17
  // baseUrl: "http://10.88.22.69:8080/",
18
18
  // flagRouterSelf: true,
@@ -39,7 +39,7 @@ Vue.use(centaline, {
39
39
  // 获取请求头
40
40
  getRequestHeaders: function () {
41
41
  return {
42
- oldToken: 'd7a1705d-d8f4-4fee-9778-f9f6e402eacd',
42
+ oldToken: '059a0de9-385e-49d1-85a7-c04e4c1c0a18',
43
43
  originalRequestURL: 'http://10.88.22.67:8080',
44
44
  EstateInfo: '{"estateId":"201703020943128D8A8FCF463E4016D6","estateName":"%E4%B8%87%E7%A7%91%E4%BA%91%E5%9F%8E"}',
45
45
  Authorization:'Bearer eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6Ijc4N2U5ZDA1LThlMGItNDY0ZS1iMThjLTQzNjEyZWIyZDQ1ZCJ9.1W1c_YwAF9jfjAtOq9twaB6FH4KiySPuZmWIzcLSDxjfJTgXu7fcf4Cu8kyWcRC2bXrzNQoOYsHAR1vfMAQvGA',