centaline-data-driven 1.2.22 → 1.2.23

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.2.22",
3
+ "version": "1.2.23",
4
4
  "description": "ccai",
5
5
  "author": "hjc <3226136347@qq.com>",
6
6
  "private": false,
@@ -214,6 +214,14 @@ const api = {
214
214
  }
215
215
  else {
216
216
  Vue.prototype.$message.error(response.data.rtnMsg);
217
+ // Vue.prototype.$message({
218
+ // message: response.data.rtnMsg,//消息文字
219
+ // dangerouslyUseHTMLString: false,
220
+ // type: 'error',//主题:success/warning/info/error
221
+ // center: true,//是否居中
222
+ // duration: 0, //显示时间, 毫秒。设为 0 则不会自动关闭
223
+ // showClose: true,//是否显示关闭按钮
224
+ // });
217
225
  }
218
226
  }
219
227
  return Promise.reject(response);
@@ -768,4 +768,12 @@ html {
768
768
  }
769
769
  .ct-table-content .checkbox-td .el-checkbox{
770
770
  min-width: initial;
771
- }
771
+ }
772
+
773
+ .el-message__content{
774
+ white-space: pre-line;
775
+ line-height: 20px;
776
+ }
777
+ .details-mid .st-serach-screen,.details-mid .ct-searchtable{
778
+ border-radius: initial;
779
+ }
@@ -3,7 +3,9 @@
3
3
  <!-- 联系人 -->
4
4
  <div class="contacts-head">
5
5
  <div class="title-l">联系人信息</div>
6
- <button type="button" v-if="!codeOwner" @click="lookOwner" class="el-button contacts-but el-button--info el-button--mini max-info">查看业主</button>
6
+ <component class="el-button contacts-but el-button--info el-button--mini max-info"
7
+ v-if="apiRouter!==null && !flagLook" :is="apiRouter.is" :vmodel="apiRouter"
8
+ @click="lookOwner(apiRouter,$event)"></component>
7
9
  <div class="contacts-tips" v-else>
8
10
  <button class="el-button el-button--primary el-button--mini max-btn-add">新增联系人</button>
9
11
  <button class="el-button el-button--primary el-button--mini max-btn-add">通话记录</button>
@@ -11,33 +13,18 @@
11
13
  </div>
12
14
  </div>
13
15
  <!-- 表格 -->
14
- <div class="contacts-table" v-show="codeOwner">
15
- <el-table
16
- :data="tableData"
17
- stripe
18
- fit
19
- style="width: 100%"
20
- :header-cell-style="{background:'#f3f3f3',color:'#333333'}">
21
- <el-table-column
22
- v-for="(item,index) in columnList"
23
- :key="index"
24
- :property="item.prop"
25
- :label="item.label"
26
- :min-width="item.width"
27
- >
28
- <template slot-scope="scope">
29
- <span v-if="scope.column.property=='phone'">{{ scope.row.phone }}
30
-
31
- </span>
32
- <span v-else-if="scope.column.property=='tel'">
33
- {{scope.row.tel}}
34
-
35
- </span>
36
- <span v-else>
37
- {{scope.row[scope.column.property]}}
38
- </span>
39
- </template>
40
- </el-table-column>
16
+ <div class="contacts-table" v-show="flagLook">
17
+ <el-table :data="tableData" stripe fit style="width: 100%" :header-cell-style="{background:'#f3f3f3',color:'#333333'}">
18
+ <el-table-column v-for="(item,index) in columnList" :key="index"
19
+ :property="item.prop" :label="item.label" :min-width="item.width" >
20
+ <template slot-scope="scope">
21
+ <span v-if="scope.column.property=='phone'">{{scope.row.phone }}</span>
22
+ <span v-else-if="scope.column.property=='tel'">{{scope.row.tel}}</span>
23
+ <span v-else>
24
+ {{scope.row[scope.column.property]}}
25
+ </span>
26
+ </template>
27
+ </el-table-column>
41
28
  </el-table>
42
29
  </div>
43
30
  </div>
@@ -53,10 +40,14 @@
53
40
  vmodel: Object,
54
41
  api: String,
55
42
  apiParam: Object,
43
+ apiRouter: {
44
+ Object,
45
+ default:{}
46
+ },
56
47
  },
57
48
  data() {
58
49
  return {
59
- codeOwner: false,
50
+ flagLook: false,
60
51
  columnList: [
61
52
  {
62
53
  prop: 'name',
@@ -115,40 +106,31 @@
115
106
  opening:'first',
116
107
  }
117
108
  },
118
- mounted() {
119
- var self = this;
120
- this.$nextTick(function () {
121
- if (self.vmodel) {
122
- self.load(self.vmodel);
123
- }
124
- else if (typeof self.source !== 'undefined') {
125
- self.loaderObj.Detail(self.source,null,self.load);
126
- }
127
- else if (typeof self.api !== 'undefined') {
128
- self.loaderObj.Detail(self.api,self.apiParam, self.load);
129
- }
130
- });
109
+ mounted() {
131
110
  },
132
111
  activated() {
133
112
  this.$nextTick(() => {
134
- this.setDetailHeight();
113
+ this.setDetailHeight();
135
114
  })
136
115
  },
137
116
  methods: {
138
117
  load(data) {
139
118
  var self = this;
140
- this.model = data;
119
+ this.model = data;
141
120
  this.model.$vue = self;
142
-
143
121
  },
144
122
  loadFields() {
145
123
  var self = this;
146
124
  },
147
- lookOwner() {
148
- this.codeOwner = true
149
- },
150
- onSearch() {
151
- console.log('submit!');
125
+ lookOwner(router) {
126
+ var self = this;
127
+ var submitData=router.getActionPara({}).para;
128
+ router.doAction(submitData, (res) => {
129
+ if (res.rtnCode === Enum.ReturnCode.Successful) {
130
+ self.loaderObj.ContactList(res.content,null,self.load);
131
+ self.flagLook = true;
132
+ }
133
+ });
152
134
  },
153
135
  setDetailHeight() {
154
136
  this.$nextTick(() => {
@@ -320,53 +302,6 @@
320
302
  }
321
303
  </script>
322
304
  <style lang="scss" scoped>
323
- .main{
324
- background: #ECEFF2;
325
- }
326
- .rel{
327
- position: relative;
328
- }
329
- .y-auto {
330
- overflow-y: auto;
331
- overflow-x: auto;
332
- }
333
- .w64{width: 64px!important}
334
- .w93{width: 93px!important}
335
- .w300 {
336
- width: 300px;
337
- }
338
- .mt5{
339
- margin-top: 5px;
340
- }
341
- .mt10{
342
- margin-top: 10px;
343
- }
344
- .mt15{
345
- margin-top: 15px;
346
- }
347
- .mb10{
348
- margin-bottom: 10px;
349
- }
350
- .mb20 {
351
- margin-bottom: 20px;
352
- }
353
- .mr10{
354
- margin-right: 10px;
355
- }
356
- .p0 {
357
- padding: 0 !important;
358
- }
359
- .pb10{
360
- padding-bottom: 10px!important;
361
- }
362
- .f-wb {
363
- font-weight: bold;
364
- }
365
- .base-box {
366
- background: #FFFFFF;
367
- border-radius: 6px;
368
- width: 100%;
369
- }
370
305
  .details-content{
371
306
  font-size: 12px;
372
307
  .title-l{
@@ -963,36 +898,33 @@
963
898
  }
964
899
  }
965
900
  // 按钮
966
- .max-info{
967
- height: 26px;
968
- color: #333333;
969
- background-color: #FFFFFF;
970
- border: 1px solid #E0E0E0;
971
- border-radius: 6px;
972
- font-size: 12px;
973
- }
974
- .max-default{
975
- border: 1px solid #EE6B6B;
976
- color: #EE6B6B;
977
- height: 26px;
978
-
979
- border-radius: 6px;
980
- font-size: 12px;
981
- }
982
- .max-info:hover,.max-default:hover{
983
- background-color:#FF9393;
984
- border-color: #FF9393;
985
- color: #fff;
986
- }
987
- // .max-infon:hover.report,.max-info:active.report{
988
- // color: #fff;
989
- // }
990
- .max-info:active,.max-default:active{
991
- background-color: #B33136;
992
- border-color: #B33136;
993
- color: #fff;
994
- }
995
- .max-btn-add button{ /*list-button*/
901
+ .max-info{
902
+ height: 26px;
903
+ color: #333333;
904
+ background-color: #FFFFFF;
905
+ border: 1px solid #E0E0E0;
906
+ border-radius: 6px;
907
+ font-size: 12px;
908
+ }
909
+ .max-default{
910
+ border: 1px solid #EE6B6B;
911
+ color: #EE6B6B;
912
+ height: 26px;
913
+
914
+ border-radius: 6px;
915
+ font-size: 12px;
916
+ }
917
+ .max-info:hover,.max-default:hover{
918
+ background-color:#FF9393;
919
+ border-color: #FF9393;
920
+ color: #fff;
921
+ }
922
+ .max-info:active,.max-default:active{
923
+ background-color: #B33136;
924
+ border-color: #B33136;
925
+ color: #fff;
926
+ }
927
+ .max-btn-add button{ /*list-button*/
996
928
  height: 26px;
997
929
  background: #EE6B6B;
998
930
  box-shadow: 0px 2px 4px 0px rgba(238,107,107,0.25);
@@ -1010,11 +942,7 @@
1010
942
  height: 26px;
1011
943
  border-radius: 6px;
1012
944
  }
1013
- .follow-search-bar{
1014
- display: flex;
1015
- }
1016
945
  .r{
1017
946
  float: right;
1018
947
  }
1019
-
1020
948
  </style>
@@ -135,12 +135,11 @@
135
135
  </div>
136
136
  </div>
137
137
  <div class="open-mero" @click="allInfo=!allInfo">{{allInfo?'收起全部':'查看全部'}}
138
- <!-- <img src="../../../assets/mero.png" alt="" class="mero" > :class="allInfo?'more-colose':'more-open'" -->
139
138
  <i :class="allInfo?'more-colose':'mero-open'"></i>
140
139
  </div>
141
140
  </div>
142
141
  <div class="contacts-info base-box">
143
- <ct-contactList v-if="model.searchConditionApiTags1" :key="model.searchlistKey" :apiParam="model.paramDataTags1" ></ct-contactList>
142
+ <ct-contactList v-if="model.contactApiRouter!==null" :apiRouter="model.contactApiRouter" ></ct-contactList>
144
143
  </div>
145
144
  <div class="tablist-info base-box">
146
145
  <div class="details-tabs-box">
@@ -327,66 +326,10 @@
327
326
  { name: '餐厅', url: 'http://10.5.10.44:13031/Images/20210705/112124_4f83c6d5-36bd-444f-9ea1-fa4e3f4de5e0.jpg?width=140&height=135&mode=stretch', isVr: false, type: 'img' },
328
327
  { name: '户型图', url: 'http://10.5.10.44:13031/Images/20210705/112505_6a3cb2d4-c773-4aba-91af-df6721eadb34.jpg?width=140&height=135&mode=stretch', isVr: false, type: 'video' },
329
328
  { name: '其它', url: 'http://10.5.10.44:13031/Images/20210705/112133_b62d7a78-96b3-4801-b94c-47b83263a001.jpg?width=140&height=135&mode=stretch', isVr: false, type: 'video' },
330
- ],},
331
- allInfo: false,
332
- allIn:false,
333
- codeOwner: false,
334
- columnList: [
335
- {
336
- prop: 'name',
337
- label: '联系人',
338
- width: '80'
339
- },
340
- {
341
- prop: 'type',
342
- label: '类型',
343
- width: '60'
344
- },
345
- {
346
- prop: 'phone',
347
- label: '手机',
348
- width: '125'
349
- },
350
- {
351
- prop: 'tel',
352
- label: '座机',
353
- width: '170'
354
- },
355
- {
356
- prop: 'wx',
357
- label: '微信',
358
- width: '150'
329
+ ],
359
330
  },
360
- {
361
- prop: 'entTime',
362
- label: '录入时间',
363
- width: '150'
364
- },
365
- {
366
- prop: 'entUser',
367
- label: '录入人',
368
- width: '80'
369
- },
370
- {
371
- prop: 'remarks',
372
- label: '操作',
373
- // width:'180'
374
- },
375
- ],
376
- tableData: [
377
- {
378
- name: '王建国先生',
379
- type: '业主',
380
- phone: '13866668888',
381
- tel: '0275-55556666-5896',
382
- wx: '555566665896',
383
- entTime: '2021-10-26 29:27:25',
384
- entUser: '王天',
385
- remarks: '删除',
386
- isIcon: true,
387
- },
388
- ],
389
- opening:'first',
331
+ allInfo: false,
332
+ allIn:false,
390
333
  }
391
334
  },
392
335
  mounted() {
@@ -0,0 +1,31 @@
1
+ import base from '../../index';
2
+ import Base from './Base';
3
+ import Enum from './lib/Enum';
4
+ import common from '../../../common';
5
+ import Router from './Router';
6
+ import Vue from 'vue';
7
+ const ContactList = function (source,para ,callBack) {
8
+ var init = function (data) {
9
+ var rtn = {
10
+ $vue: null,
11
+
12
+ };
13
+ return rtn;
14
+ }
15
+ if (typeof source === 'string') {
16
+ Vue.prototype.$api.postHandler(common.globalUri(), { action: source,para:para}).then(
17
+ function (response) {
18
+ if (response.rtnCode === Enum.ReturnCode.Successful) {
19
+ var rtn = init(response.content);
20
+ if (callBack) {
21
+ callBack(rtn);
22
+ }
23
+ }
24
+ }
25
+ );
26
+ }
27
+ else {
28
+ return init(source);
29
+ }
30
+ }
31
+ export default ContactList;
@@ -14,6 +14,7 @@ const Detail = function (source,para ,callBack) {
14
14
  _otherTradeActionRouter: null,//对应另外种交易的 router 如:本盘出售 则可能对应的出租的交易,没有则为空
15
15
  _actionRouters:null,//页面上的动作行为
16
16
  _actionRoutersMoreList:null,//页面上的更多动作行为
17
+ _contactApiRouter:null,//查看联系人
17
18
  detailHeight:750,
18
19
  activeIndex1:'0',
19
20
  activeIndex2:'0',
@@ -130,6 +131,20 @@ const Detail = function (source,para ,callBack) {
130
131
  }
131
132
  return rtn._otherTradeActionRouter;
132
133
  }
134
+ },
135
+ get contactApiRouter() {
136
+ if (rtn._contactApiRouter !== null) {
137
+ return rtn._contactApiRouter;
138
+ }
139
+ else {
140
+ if (data.contactApiRouter) {
141
+ var router = Router(data.contactApiRouter);
142
+ router.is = "ct-btn";
143
+ router.attrs = { size: "mini" }
144
+ rtn._contactApiRouter=router;
145
+ }
146
+ return rtn._contactApiRouter;
147
+ }
133
148
  },
134
149
  get actionRouters() {
135
150
  if (rtn._actionRouters !== null) {
@@ -36,6 +36,7 @@ const loader = {
36
36
  PhotoSelect: require("./ctl/PhotoSelect.js").default,
37
37
  PhotoSelectList: require("./ctl/PhotoSelectList.js").default,
38
38
  QuickInputSos: require("./ctl/QuickInputSos.js").default,
39
+ ContactList: require("./ctl/ContactList.js").default,
39
40
  };
40
41
 
41
42
  export default loader;