centaline-data-driven 1.1.38 → 1.1.43

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "centaline-data-driven",
3
- "version": "1.1.38",
3
+ "version": "1.1.43",
4
4
  "description": "ccai",
5
5
  "author": "hjc <3226136347@qq.com>",
6
6
  "private": false,
package/src/Detail.vue CHANGED
@@ -1,14 +1,13 @@
1
1
  <template>
2
- <ct-Detail :pageType="'PropertyDetailOFI'"></ct-Detail>
2
+ <ct-Detail :api="'PropertyRET/readDetailForBrowse'" :apiParam="apiParam" :pageType="'PropertyDetailRET'"></ct-Detail>
3
3
  </template>
4
4
 
5
5
  <script>
6
- import Vue from 'vue'
7
6
  export default {
8
7
  name: 'App',
9
8
  data() {
10
9
  return {
11
- para: {}
10
+ apiParam: {actionType: 1,chanceID: "1"} ,
12
11
  }
13
12
  },
14
13
  mounted() {
package/src/Form.vue CHANGED
@@ -1,11 +1,12 @@
1
1
  <template>
2
2
  <div id="app-form" class="data-driven" style="width:100%;height:100%;overflow:auto">
3
- <ct-form :api="'/api/third-dept-tran/transaction/detail'" :apiParam="apiParam"></ct-form>
3
+ <!-- <ct-form :api="'/api/third-dept-tran/transaction/detail'" :apiParam="apiParam"></ct-form> -->
4
4
  <!-- <ct-form :source="formdata.content" :apiParam="apiParam"></ct-form> -->
5
5
  <!--:api="'FormSample/formdata'"-->
6
6
  <!--<ct-form :source="formdata.content"></ct-form>-->
7
7
  <!--<ct-form :api="'/api/form/formdata/contractDetail'" :apiParam="apiParam"></ct-form>-->
8
8
  <!--<ct-form :api="'api/Form/formdata'"></ct-form>-->
9
+ <ct-form :api="'/forminfo/readDetail'" :apiParam="apiParam"></ct-form>
9
10
  <ct-dialog-list></ct-dialog-list>
10
11
  </div>
11
12
  </template>
@@ -15,9 +16,10 @@
15
16
  name: 'App',
16
17
  data() {
17
18
  return {
18
- apiParam: {originalTraId: "1481454808274235394", actionType: 3, pageTitle: "成交报告", pageOnly: true} ,
19
+ // apiParam: {originalTraId: "1481454808274235394", actionType: 3, pageTitle: "成交报告", pageOnly: true} ,
19
20
  // apiParam: {headerParam: {}, urlParam: {contractID: "06cad32e-4d0d-4b6f-bd24-16a28629a550", actionType: "0"}}
20
21
  // apiParam: {SN: "13557_132", UserID: "wuhan3"},
22
+ apiParam: {actionType: 3,formId: "2c12649f-09c5-4aa9-8011-b6d1c7b56a41"} ,
21
23
  }
22
24
  },
23
25
  methods: {
@@ -1,8 +1,9 @@
1
1
  <template>
2
- <div id="app-Tree" style="height:100%;position: fixed;">
2
+ <div id="app-Tree" style="height:100%;position: fixed;width:100%">
3
3
  <ct-treelist :flagsearch="true" :apiParam="apiParam"
4
- :searchConditionApi="'/SystemParameterCatalogList/getLayoutOfSearch'"
5
- :searchDataApi="'/SystemParameterCatalogList/getListOfSearchModel'" @loaded="loaded"></ct-treelist>
4
+ :searchConditionApi="'/SystemParameterCatalogList/getLayoutOfSearch'"
5
+ :searchDataApi="'/SystemParameterCatalogList/getListOfSearchModel'" @loaded="loaded"></ct-treelist>
6
+ <ct-dialog-list></ct-dialog-list>
6
7
  </div>
7
8
  </template>
8
9
 
@@ -650,6 +650,7 @@ const common = {
650
650
  reg = /^(\-)?\d*$/;
651
651
  }
652
652
  else{
653
+ if(dc===-1)dc=12;
653
654
  reg = new RegExp("^(\\-)?\\d*[.]{0,1}(\\d{1," + dc + "})?$");
654
655
  }
655
656
  if (value === '' || reg.test(value)) {
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <div>
3
- <ct-PropertyDetailOFI class="ct-PropertyDetailOFI" v-if="pageType=='PropertyDetailOFI'"></ct-PropertyDetailOFI>
4
- <ct-PropertyDetailRET class="ct-PropertyDetailRET" v-if="pageType=='PropertyDetailRET'"></ct-PropertyDetailRET>
3
+ <ct-PropertyDetailOFI :api="api" :apiParam="apiParam" class="ct-PropertyDetailOFI" v-if="pageType=='PropertyDetailOFI'"></ct-PropertyDetailOFI>
4
+ <ct-PropertyDetailRET :api="api" :apiParam="apiParam" class="ct-PropertyDetailRET" v-if="pageType=='PropertyDetailRET'"></ct-PropertyDetailRET>
5
5
  </div>
6
6
  </template>
7
7
 
@@ -17,6 +17,7 @@
17
17
  props: {
18
18
  vmodel: Object,
19
19
  api: String,
20
+ apiParam: Object,
20
21
  pageType: String,
21
22
  },
22
23
  data() {
@@ -1,27 +1,22 @@
1
1
  <template>
2
- <div class="main">
2
+ <div class="main" v-if="model!==null">
3
3
  <div class="details-content">
4
4
  <div class="details-head base-box mb10">
5
- <div class="head-type">售</div>
5
+ <div class="head-type">{{model.fields1Dic.Trade.value}}</div>
6
6
  <div class="head-info">
7
7
  <div class="title">
8
- <span>有效</span>
8
+ <span>{{model.fields1Dic.StatusName.value}}</span>
9
9
  <span class="head-line"></span>
10
- <span>珠江丽景花园 红帆阁1122</span>
11
- <img src="../../../assets/collection.png" alt="" class="collection">
12
- </div>
13
-
14
- <div class="title-other">
15
- <span>产证名:{{'珠江丽景A-BB珠江08'}}</span>
16
- <span>房源编号:{{'F20210909103029394160'}}</span>
17
- <span class="mr10">楼盘地址:{{'宝安区新安街道新安二路'}}</span>
18
- <img src="../../../assets/location.png" alt="" class="location">
10
+ <span>{{model.fields1Dic.EstateName.value}}</span>
11
+ <span> {{model.fields1Dic.BuildingName.value}}</span>
12
+ <span>{{model.fields1Dic.RoomNo.value}}</span>
13
+ <img :src="model.fields1Dic.FavoriteUrl.value" alt="" class="collection">
19
14
  </div>
20
15
  <div class="title-other">
21
- <span>产证名:{{'珠江丽景A-BB珠江08'}}</span>
22
- <span>房源编号:{{'F20210909103029394160'}}</span>
23
- <span class="mr10">楼盘地址:{{'宝安区新安街道新安二路'}}</span>
24
- <img src="../../../assets/location.png" alt="" class="location">
16
+ <span>{{model.fields1Dic.PropertyNo.label}}{{model.fields1Dic.PropertyNo.value}}</span>
17
+ <span>{{model.fields1Dic.GovNo.label}}{{model.fields1Dic.GovNo.value}}</span>
18
+ <span class="mr10">{{model.fields1Dic["DistrictName"].value+model.fields1Dic.AreaName.value}}</span>
19
+ <img :src="model.fields1Dic.LocationUrl.value" alt="" class="location">
25
20
  </div>
26
21
  <div class="title-tags">
27
22
  <div class="t-tag">联卖</div>
@@ -95,18 +90,17 @@
95
90
  </div>
96
91
  </div>
97
92
  <div class="hous-b">
98
- <img src="../../../assets/ewm.png" alt="" class="code-ewm">
93
+ <img :src="model.fields1Dic.ewmUrl.value" alt="" class="code-ewm">
99
94
  <div class="info-row mb20 mt5">
100
- <div class="row-i"><span>售总价:</span><span class="base-clolr expand-f">1400.00</span><span class="base-clolr">万</span>
95
+ <div class="row-i"><span>{{model.fields1Dic.Price.label}}</span><span class="base-clolr expand-f">{{model.fields1Dic.Price.value}}</span><span class="base-clolr">{{model.fields1Dic.Price.unitName}}</span>
101
96
  <img src="" alt="">
102
97
  </div>
103
- <div class="row-i"><span>售单价:</span><span class="base-clolr">3621</span><span class="base-clolr">元/平</span></div>
104
- <div class="row-i"><span>售底价:</span><div>2732.99元/平</div></div></div>
98
+ <div class="row-i"><span>{{model.fields1Dic.PriceUnit.label}}</span><span class="base-clolr">{{model.fields1Dic.PriceUnit.value}}</span><span class="base-clolr">{{model.fields1Dic.PriceUnit.unitName}}</span></div>
99
+ <div class="row-i"><span>{{model.fields1Dic.PriceLine.label}}</span><div>{{model.fields1Dic.PriceLine.value}}{{model.fields1Dic.PriceLine.unitName}}</div></div></div>
105
100
  <div class="info-row">
106
101
  <div class="row-i">
107
- <span >评估价:</span><span>318.4 </span><span>万</span>
108
- </div>
109
-
102
+ <span >{{model.fields1Dic.AssessPrice.label}}</span><span>{{model.fields1Dic.AssessPrice.value}} </span><span>{{model.fields1Dic.AssessPrice.unitName}}</span>
103
+ </div>
110
104
  <div class="row-i"><span>预估租总价:</span><div>4621
111
105
  <span>万</span></div></div>
112
106
  <div class="row-i"><span>预估租单价:</span><span>11.00</span><span>元/平</span></div>
@@ -217,7 +211,7 @@
217
211
  <el-form
218
212
  class="follow-search-bar"
219
213
  >
220
- <el-select
214
+ <!-- <el-select
221
215
  v-model="value"
222
216
  placeholder="跟进类型"
223
217
  class="mr10"
@@ -229,7 +223,7 @@
229
223
  :value="item.value"
230
224
  >
231
225
  </el-option>
232
- </el-select>
226
+ </el-select> -->
233
227
  <el-input
234
228
  class="w300 mr10"
235
229
  placeholder="请输入"
@@ -500,19 +494,18 @@
500
494
  </div>
501
495
  </template>
502
496
 
503
-
504
497
  <script>
505
- // import max from '../../css/max';
506
-
498
+ import dynamicElement from '../../mixins/dynamicElement';
507
499
  export default {
508
- name: 'ct-PropertyDetailOFI',
500
+ name: 'ct-PropertyDetailRET',
501
+ mixins: [dynamicElement],
509
502
  props: {
510
503
  vmodel: Object,
511
- api: String
504
+ api: String,
505
+ apiParam: Object,
512
506
  },
513
507
  data() {
514
508
  return {
515
- model:null,
516
509
  PropertyInfo: {
517
510
  swiper: [
518
511
  { name: '客厅', url: 'http://10.5.10.44:13031/Images/20210705/112133_b62d7a78-96b3-4801-b94c-47b83263a001.jpg?width=140&height=135&mode=stretch', isVr: true, type: 'vr' },
@@ -564,60 +557,71 @@
564
557
  label: '操作',
565
558
  // width:'180'
566
559
  },
567
- ],
568
- tableData: [
569
- {
570
- name: '王建国先生',
571
- type: '业主',
572
- phone: '13866668888',
573
- tel: '0275-55556666-5896',
574
- wx: '555566665896',
575
- entTime: '2021-10-26 29:27:25',
576
- entUser: '王天',
577
- remarks: '删除',
578
- isIcon: true,
579
- },
580
- ],
581
- follow:'first',
582
- followData:[
583
- {
584
- date:'20/12/2020',
585
- name:'出售',
586
- address:'kenly',
587
-
588
- }
589
- ],
560
+ ],
561
+ tableData: [
562
+ {
563
+ name: '王建国先生',
564
+ type: '业主',
565
+ phone: '13866668888',
566
+ tel: '0275-55556666-5896',
567
+ wx: '555566665896',
568
+ entTime: '2021-10-26 29:27:25',
569
+ entUser: '王天',
570
+ remarks: '删除',
571
+ isIcon: true,
572
+ },
573
+ ],
574
+ follow:'first',
575
+ followData:[
576
+ {
577
+ date:'20/12/2020',
578
+ name:'出售',
579
+ address:'kenly',
590
580
 
591
- options: [{
592
- value: '选项1',
593
- label: '本盘跟进'
594
- }, {
595
- value: '选项2',
596
- label: '全部跟进'
597
- }, {value: '选项3',
598
- label: '合开盘跟进'
599
- },
600
-
601
- ],
602
- opening:'first',
603
-
581
+ }
582
+ ],
583
+ options: [{
584
+ value: '选项1',
585
+ label: '本盘跟进'
586
+ }, {
587
+ value: '选项2',
588
+ label: '全部跟进'
589
+ }, {value: '选项3',
590
+ label: '合开盘跟进'
591
+ },
592
+
593
+ ],
594
+ opening:'first',
604
595
  }
605
596
  },
606
- created() {
607
- this.model = this.vmodel;
597
+ mounted() {
598
+ var self = this;
599
+ this.$nextTick(function () {
600
+ if (self.vmodel) {
601
+ self.load(self.vmodel);
602
+ }
603
+ else if (typeof self.source !== 'undefined') {
604
+ self.loaderObj.Detail(self.source,null,self.load);
605
+ }
606
+ else if (typeof self.api !== 'undefined') {
607
+ self.loaderObj.Detail(self.api,self.apiParam, self.load);
608
+ }
609
+ });
608
610
  },
609
611
  methods: {
610
- //查看业主
611
- lookOwner() {
612
- this.codeOwner = true
613
- },
614
- onSearch() {
615
- console.log('submit!');
616
- },
617
- handleClick(tab, event) {
618
- console.log(tab, event);
619
- }
620
- }
612
+ load(data) {
613
+ this.model = data;
614
+ },
615
+ lookOwner() {
616
+ this.codeOwner = true
617
+ },
618
+ onSearch() {
619
+ console.log('submit!');
620
+ },
621
+ handleClick(tab, event) {
622
+ console.log(tab, event);
623
+ }
624
+ },
621
625
  }
622
626
  </script>
623
627
  <style lang="scss" scoped>
@@ -109,7 +109,9 @@
109
109
  }
110
110
  </script>
111
111
  <style lang="scss">
112
-
112
+ .tree-line:first-child div{
113
+ overflow: hidden;
114
+ }
113
115
  .el-tree-node {
114
116
  position: relative;
115
117
  padding-left: 16px;
@@ -129,13 +131,27 @@
129
131
  width: 1px;
130
132
  position: absolute;
131
133
  left: 27px;
132
- top: -33px;
134
+ top: -1px;
135
+ border-width: 1px;
136
+ border-left: 1px dashed #52627C;
137
+ }
138
+
139
+ .tree-line .el-tree-node:before:last-child{
140
+ top: -35px;
141
+ }
142
+ .el-tree-node__children .el-tree-node::before {
143
+ content: "";
144
+ height: 100%;
145
+ width: 1px;
146
+ position: absolute;
147
+ left: 27px;
148
+ top: -2px;
133
149
  border-width: 1px;
134
150
  border-left: 1px dashed #52627C;
135
151
  }
136
152
  /* 当前最后一个接点的竖线高度 */
137
153
  .el-tree-node:last-child::before {
138
- height: 46px; /*可以自己调整 */
154
+ height: 15px; /*可以自己调整 */
139
155
  }
140
156
 
141
157
  /* 横线 */
@@ -152,7 +168,7 @@
152
168
  }
153
169
 
154
170
  .el-tree:first-child .el-tree-node:before {
155
- height: 46px; /*可以自己调整 */
171
+ // height: 46px; /*可以自己调整 */
156
172
  }
157
173
 
158
174
  .el-tree-node__expand-icon {
@@ -164,7 +180,7 @@
164
180
  }
165
181
 
166
182
  .el-tree > .el-tree-node:first-child:before {
167
- border-left: none;
183
+ // border-left: none;
168
184
  }
169
185
 
170
186
  .tree > .is-leaf {
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <div id="app-Tree" style="height:100%;">
3
3
  <el-container style="height: calc(100vh - 98px);border: 1px solid #eee">
4
- <el-aside width="14%" style="background-color:white">
4
+ <el-aside width="15%" style="background-color:white">
5
5
  <ct-searchtree :flagsearch="true" :searchConditionApi="searchConditionApi" :searchDataApi="searchDataApi" @loaded="loaded"></ct-searchtree>
6
6
  </el-aside>
7
7
  <el-main v-if="isShowSearchlist">
@@ -0,0 +1,50 @@
1
+ import base from '../../index';
2
+ import Base from './Base';
3
+ import valid from '../../../validate/index';
4
+ import Enum from './lib/Enum';
5
+ import common from '../../../common';
6
+ import Vue from 'vue';
7
+ const Detail = function (source,para ,callBack) {
8
+ var init = function (data) {
9
+ var rtn = {
10
+ _fields1Dic: null,//字典,方便取值
11
+ get fields1Dic() {
12
+ if (rtn._fields1Dic !== null) {
13
+ return rtn._fields1Dic;
14
+ }
15
+ rtn._fields1Dic = {};
16
+ if (rtn.fields1) {
17
+ rtn.fields1.forEach((f) => {
18
+ rtn._fields1Dic[f.fieldName1] = Base(f);
19
+ });
20
+ }
21
+ return rtn._fields1Dic;
22
+ },
23
+ get fields1() {
24
+ return data.fields1;
25
+ },
26
+ get fields2() {
27
+ return data.fields2;
28
+ },
29
+ };
30
+ // rtn = base.copy(Base(data), rtn);
31
+ // rtn = base.copy(rtn, valid.Init(rtn));
32
+ return rtn;
33
+ }
34
+ if (typeof source === 'string') {
35
+ Vue.prototype.$api.postHandler(common.globalUri(), { action: source,para:para}).then(
36
+ function (response) {
37
+ if (response.rtnCode === Enum.ReturnCode.Successful) {
38
+ var rtn = init(response.content);
39
+ if (callBack) {
40
+ callBack(rtn);
41
+ }
42
+ }
43
+ }
44
+ );
45
+ }
46
+ else {
47
+ return init(source);
48
+ }
49
+ }
50
+ export default Detail;
@@ -2,14 +2,11 @@ import base from '../../index';
2
2
  import Base from './Base';
3
3
  import valid from '../../../validate/index';
4
4
  import Axios from 'axios';
5
- import Vue from 'vue';
6
5
  const box = function (source, callBack) {
7
6
  var self = this;
8
7
  var init = function (data) {
9
8
  var rtn = {
10
-
11
- get clearable() {
12
-
9
+ get clearable() {
13
10
  if (typeof source.clear === 'undefined'&&!source.locked) {
14
11
  return true;
15
12
  }
@@ -22,11 +19,16 @@ const box = function (source, callBack) {
22
19
  },
23
20
  set clearable(v) {
24
21
  source.clear = v;
25
- },
26
-
22
+ },
27
23
  get decimals() {
28
24
  return data.decimals1;
29
- }
25
+ },
26
+ get value() {
27
+ return source.code1;
28
+ },
29
+ set value(v) {
30
+ source.code1 = v;
31
+ },
30
32
  };
31
33
  rtn = base.copy(Base(data), rtn);
32
34
  rtn = base.copy(rtn, valid.Init(rtn));
@@ -16,7 +16,13 @@ const Iti = function (source) {
16
16
  },
17
17
  set clearable(v) {
18
18
  source.clear = v;
19
- },
19
+ },
20
+ get value() {
21
+ return source.code1;
22
+ },
23
+ set value(v) {
24
+ source.code1 = v;
25
+ },
20
26
  get value1() {
21
27
  return source.code2||'';
22
28
  },
@@ -105,6 +105,16 @@ const SearchScreen = function (source, callBack, screenPara) {
105
105
  var advIndex = rtn.sourceFieldsArr.findIndex((v) => {
106
106
  return v.controlType === Enum.ControlType.ButtonAdvancedSearch;
107
107
  });
108
+ if(advIndex === -1){
109
+ advIndex = rtn.sourceFieldsArr.findIndex((v) => {
110
+ return v.controlType === Enum.ControlType.ButtonReset;
111
+ });
112
+ }
113
+ if(advIndex === -1){
114
+ advIndex = rtn.sourceFieldsArr.findIndex((v) => {
115
+ return v.controlType === Enum.ControlType.ButtonSearch;
116
+ });
117
+ }
108
118
  var screens = rtn.sourceFieldsArr.filter((v, i) => {
109
119
  return advIndex !== -1 && i > advIndex;
110
120
  });
@@ -29,6 +29,7 @@ const loader = {
29
29
  File: require("./ctl/File.js").default,
30
30
  Tree: require("./ctl/Tree.js").default,
31
31
  SearchCategory: require("./ctl/SearchCategory.js").default,
32
+ Detail: require("./ctl/Detail.js").default,
32
33
  };
33
34
 
34
35
  export default loader;
@@ -69,6 +69,7 @@ const actions = {
69
69
  reg = /^(\-)?\d*$/;
70
70
  }
71
71
  else{
72
+ if(dc===-1)dc=12;
72
73
  reg = new RegExp("^(\\-)?\\d*[.]{0,1}(\\d{1," + dc + "})?$");
73
74
  }
74
75
  if (v.value === '') {
@@ -102,6 +103,7 @@ const actions = {
102
103
  reg = /^(\-)?\d*$/;
103
104
  }
104
105
  else{
106
+ if(dc===-1)dc=12;
105
107
  reg = new RegExp("^(\\-)?\\d*[.]{0,1}(\\d{1," + dc + "})?$");
106
108
  }
107
109
  if (v.value === '' && v.value1 === '') {
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: process.env.BASE_API,
15
+ baseUrl: "http://10.88.22.46:7070/v1/form/router",
16
16
  zindex: 999,
17
17
  showRequestErrorMessage: true,
18
18
  handler: {
@@ -35,6 +35,8 @@ Vue.use(centaline, {
35
35
  return {
36
36
  oldToken: '2db49cf6-0026-428b-9167-4273376a076f',
37
37
  estateId: '20210729104021C49F04B55C50F6AF58',
38
+ originalRequestURL: 'http://10.88.22.67:8080',
39
+ Authorization:'Bearer eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6IjE0NmU5ZjEzLTVjMmYtNGVlMy1hM2U5LWIxM2QyZThjZTBhZSJ9.Gl8K5lbG7t5DyCqouu7Ux7Oh9xuAxqdOXr4JnoHCN-YwC3b2zPO-C2sHbYJUZHYQPa7kTNRmg1xJiwugpVo5Xw',
38
40
  };
39
41
  },
40
42
  // 请求完成事件,可判断是否登录过期执行响应操作