centaline-data-driven 1.1.58 → 1.1.62
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/config/dev.env.js +1 -1
- package/package.json +1 -1
- package/src/SearchList.vue +2 -2
- package/src/centaline/dynamicDetail/src/dynamicPropertyDetailRET.vue +50 -125
- package/src/centaline/dynamicForm/src/dynamicForm.vue +6 -2
- package/src/centaline/dynamicPopupSearchList/src/dynamicPopupSearchListTable.vue +4 -0
- package/src/centaline/dynamicSearchList/src/dynamicSearchTable.vue +4 -0
- package/src/centaline/loader/src/ctl/Detail.js +45 -1
- package/src/centaline/loader/src/ctl/SearchTable.js +4 -1
- package/wwwroot/static/centaline/centaline-data-driven.js +1 -1
- package/wwwroot/static/centaline/centaline-data-driven.js.map +1 -1
package/config/dev.env.js
CHANGED
|
@@ -5,7 +5,7 @@ const prodEnv = require('./prod.env')
|
|
|
5
5
|
module.exports = merge(prodEnv, {
|
|
6
6
|
NODE_ENV: '"development"',
|
|
7
7
|
// BASE_API: '"http://10.88.1.151:8085/v1/form/router"',//aplus黄兰
|
|
8
|
-
BASE_API: '"http://10.88.22.
|
|
8
|
+
BASE_API: '"http://10.88.22.13:7070/v1/form/router"',//max本地
|
|
9
9
|
//BASE_API: '"http://10.88.22.71:5008/api/doaction/router"',
|
|
10
10
|
// BASE_API: '"http://tjcptest.centaline.com.cn/v1/form/router"',
|
|
11
11
|
// BASE_API: '"http://10.88.200.31:5000/gateway/redirect"',
|
package/package.json
CHANGED
package/src/SearchList.vue
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div id="app-search" style="height:100%;position: fixed;">
|
|
3
3
|
<!-- <ct-searchlist :searchConditionApi="'/api/third-dept-tran/tran-list/layout'" :searchDataApi="'/api/third-dept-tran/tran-list'"></ct-searchlist> -->
|
|
4
|
-
|
|
5
|
-
<ct-searchlist :searchConditionApi="'/WorklistList/getLayoutOfSearch'" :searchDataApi="'/WorklistList/getListOfSearchModel'" :searchCategoryApi="'/WorklistList/getLayoutOfSearchCategory'"></ct-searchlist>
|
|
4
|
+
<ct-searchlist :searchConditionApi="'/PropertyRETList/getLayoutOfSearch'" :searchDataApi="'/PropertyRETList/getListOfSearchModel'" :searchCategoryApi="'/PropertyRETList/getLayoutOfSearchCategory'"></ct-searchlist>
|
|
5
|
+
<!-- <ct-searchlist :searchConditionApi="'/WorklistList/getLayoutOfSearch'" :searchDataApi="'/WorklistList/getListOfSearchModel'" :searchCategoryApi="'/WorklistList/getLayoutOfSearchCategory'"></ct-searchlist> -->
|
|
6
6
|
<!--<ct-searchlist :searchConditionApi="'/api/invoice-info/search-condition'" :searchDataApi="'/api/invoice-info/list'" :searchDataStatisticsApi="'api/ContractList/GetLayoutOfStatisticsTool'" :apiParam="para"></ct-searchlist>-->
|
|
7
7
|
<ct-dialog-list></ct-dialog-list>
|
|
8
8
|
</div>
|
|
@@ -180,86 +180,19 @@
|
|
|
180
180
|
</div>
|
|
181
181
|
<div class="tablist-info base-box">
|
|
182
182
|
<div class="details-tabs-box">
|
|
183
|
-
<el-menu :default-active="model.
|
|
183
|
+
<!-- <el-menu :default-active="model.activeIndex1" class="el-menu-demo el-menu-detail" mode="horizontal" @select="handleSelect">
|
|
184
184
|
<el-menu-item v-for="(col, index) in model.tags1" :key="col.appID" :index="index.toString()">
|
|
185
185
|
{{col.appName}}
|
|
186
186
|
</el-menu-item>
|
|
187
|
-
</el-menu>
|
|
187
|
+
</el-menu> -->
|
|
188
|
+
<el-tabs :value="model.activeIndex1" @tab-click="handleSelect">
|
|
189
|
+
<el-tab-pane v-for="(col, index) in model.tags1" :key="col.appID"
|
|
190
|
+
:index="index.toString()" :name="index.toString()" :label="col.appName"></el-tab-pane>
|
|
191
|
+
</el-tabs>
|
|
188
192
|
<ct-searchlist v-if="model.searchConditionApiTags1" :key="model.searchlistKey"
|
|
189
193
|
:apiParam="model.paramDataTags1"
|
|
190
194
|
:searchConditionApi="model.searchConditionApiTags1"
|
|
191
195
|
:searchDataApi="model.searchDataApiTags1"></ct-searchlist>
|
|
192
|
-
<!-- <el-tabs v-model="follow">
|
|
193
|
-
<el-tab-pane label="跟进" name="first">
|
|
194
|
-
<el-form
|
|
195
|
-
class="follow-search-bar"
|
|
196
|
-
>
|
|
197
|
-
<!-- <el-select
|
|
198
|
-
v-model="value"
|
|
199
|
-
placeholder="跟进类型"
|
|
200
|
-
class="mr10"
|
|
201
|
-
>
|
|
202
|
-
<el-option
|
|
203
|
-
v-for="item in options"
|
|
204
|
-
:key="item.value"
|
|
205
|
-
:label="item.label"
|
|
206
|
-
:value="item.value"
|
|
207
|
-
>
|
|
208
|
-
</el-option>
|
|
209
|
-
</el-select>
|
|
210
|
-
<el-input
|
|
211
|
-
class="w300 mr10"
|
|
212
|
-
placeholder="请输入"
|
|
213
|
-
maxlength="500"
|
|
214
|
-
></el-input>
|
|
215
|
-
<el-button
|
|
216
|
-
type="primary"
|
|
217
|
-
@click="onSearch"
|
|
218
|
-
>保存</el-button>
|
|
219
|
-
<button class="el-button el-button--primary el-button--mini max-btn-add">新增跟进</button>
|
|
220
|
-
</el-form>
|
|
221
|
-
|
|
222
|
-
<el-table
|
|
223
|
-
:data="followData"
|
|
224
|
-
stripe
|
|
225
|
-
style="width: 100%;margin-top:20px;height:200px;overflow:auto"
|
|
226
|
-
:header-cell-style="{background:'#f3f3f3',color:'#333333'}"
|
|
227
|
-
>
|
|
228
|
-
<el-table-column
|
|
229
|
-
prop="date"
|
|
230
|
-
label="日期"
|
|
231
|
-
width="180">
|
|
232
|
-
</el-table-column>
|
|
233
|
-
<el-table-column
|
|
234
|
-
prop="name"
|
|
235
|
-
label="状态"
|
|
236
|
-
width="180">
|
|
237
|
-
</el-table-column>
|
|
238
|
-
<el-table-column
|
|
239
|
-
prop="address"
|
|
240
|
-
label="跟进人">
|
|
241
|
-
</el-table-column>
|
|
242
|
-
<el-table-column
|
|
243
|
-
prop="address"
|
|
244
|
-
label="跟进人部门">
|
|
245
|
-
</el-table-column>
|
|
246
|
-
<el-table-column
|
|
247
|
-
prop="address"
|
|
248
|
-
label="跟进时间">
|
|
249
|
-
</el-table-column>
|
|
250
|
-
</el-table>
|
|
251
|
-
</el-tab-pane>
|
|
252
|
-
<el-tab-pane label="委托" name="second">委托</el-tab-pane>
|
|
253
|
-
<el-tab-pane label="钥匙" name="third">钥匙</el-tab-pane>
|
|
254
|
-
<el-tab-pane label="交易变更" name="fourth">交易变更</el-tab-pane>
|
|
255
|
-
<el-tab-pane label="多媒体记录" name="">多媒体记录</el-tab-pane>
|
|
256
|
-
<el-tab-pane label="业绩分配" name="">业绩分配</el-tab-pane>
|
|
257
|
-
<el-tab-pane label="楼主历史" name="">楼主历史</el-tab-pane>
|
|
258
|
-
<el-tab-pane label="租户信息" name="">租户信息</el-tab-pane>
|
|
259
|
-
<el-tab-pane label="合并盘" name="">合并盘</el-tab-pane>
|
|
260
|
-
<el-tab-pane label="佐证" name="">佐证</el-tab-pane>
|
|
261
|
-
<el-tab-pane label="销控表" name="">销控表</el-tab-pane>
|
|
262
|
-
</el-tabs> -->
|
|
263
196
|
</div>
|
|
264
197
|
</div>
|
|
265
198
|
<div class="contribute-info base-box">
|
|
@@ -299,29 +232,35 @@
|
|
|
299
232
|
<div>最近7天带看<span class="red-text">{{model.fields1Dic.CustomerLookCount7.value}}</span>次,总带看<span class="red-text">{{model.fields1Dic.CustomerLookCountAll.value}}</span>次。</div>
|
|
300
233
|
</div>
|
|
301
234
|
<div class="staff-info base-box">
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
235
|
+
<el-tabs :value="model.activeIndex2" @tab-click="handleClick">
|
|
236
|
+
<el-tab-pane v-for="(col, index) in model.tags2" :key="col.appID"
|
|
237
|
+
:index="index.toString()" :name="index.toString()" :label="col.appName">
|
|
238
|
+
<div class="el-tabs__content">
|
|
239
|
+
<div v-if="col.appID==='Maintain'" role="tabpanel" id="pane-first" aria-labelledby="tab-first" class="el-tab-pane">
|
|
240
|
+
<div class="tab-conten">
|
|
241
|
+
<img src="/static/img/user-head.d2916812.png">
|
|
242
|
+
<div class="user-name">
|
|
243
|
+
<div class="text">柳晓青</div><span class="user-but">系统管理组</span>
|
|
244
|
+
</div>
|
|
245
|
+
<div class="text">13736376666</div>
|
|
246
|
+
</div>
|
|
247
|
+
<div v-show="allIn" class="tab-conten">
|
|
248
|
+
<img src="/static/img/user-head.d2916812.png">
|
|
249
|
+
<div class="user-name">
|
|
250
|
+
<div class="text">柳晓青1</div><span class="user-but">系统管理组</span>
|
|
316
251
|
</div>
|
|
252
|
+
<div class="text">13736376666</div>
|
|
253
|
+
</div>
|
|
254
|
+
<div class="open-mero" @click="allIn=!allIn">{{allIn?'收起全部':'查看全部'}}
|
|
255
|
+
<img src="../../../assets/mero.png" alt="" class="mero" > <!--:class="allIn?'more-colose':'more-open'" -->
|
|
256
|
+
</div>
|
|
317
257
|
</div>
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
</div>
|
|
258
|
+
<div v-else>
|
|
259
|
+
22222222222222
|
|
260
|
+
</div>
|
|
261
|
+
</div>
|
|
262
|
+
</el-tab-pane>
|
|
263
|
+
</el-tabs>
|
|
325
264
|
</div>
|
|
326
265
|
<!-- <div class="operation-list p0">
|
|
327
266
|
<button data-v-6fe32525="" type="button" class="el-button list-item base-box el-button--default">编辑房源</button>
|
|
@@ -557,26 +496,6 @@
|
|
|
557
496
|
remarks: '删除',
|
|
558
497
|
isIcon: true,
|
|
559
498
|
},
|
|
560
|
-
],
|
|
561
|
-
follow:'first',
|
|
562
|
-
followData:[
|
|
563
|
-
{
|
|
564
|
-
date:'20/12/2020',
|
|
565
|
-
name:'出售',
|
|
566
|
-
address:'kenly',
|
|
567
|
-
|
|
568
|
-
}
|
|
569
|
-
],
|
|
570
|
-
options: [{
|
|
571
|
-
value: '选项1',
|
|
572
|
-
label: '本盘跟进'
|
|
573
|
-
}, {
|
|
574
|
-
value: '选项2',
|
|
575
|
-
label: '全部跟进'
|
|
576
|
-
}, {value: '选项3',
|
|
577
|
-
label: '合开盘跟进'
|
|
578
|
-
},
|
|
579
|
-
|
|
580
499
|
],
|
|
581
500
|
opening:'first',
|
|
582
501
|
}
|
|
@@ -602,8 +521,15 @@
|
|
|
602
521
|
},
|
|
603
522
|
methods: {
|
|
604
523
|
load(data) {
|
|
524
|
+
var self = this;
|
|
605
525
|
this.model = data;
|
|
606
526
|
this.loadFields();
|
|
527
|
+
this.setDetailHeight();
|
|
528
|
+
this.$nextTick(() => {
|
|
529
|
+
window.addEventListener("resize", (ev) => {
|
|
530
|
+
self.setDetailHeight();
|
|
531
|
+
});
|
|
532
|
+
});
|
|
607
533
|
},
|
|
608
534
|
loadFields() {
|
|
609
535
|
var self = this;
|
|
@@ -657,23 +583,22 @@
|
|
|
657
583
|
},
|
|
658
584
|
setDetailHeight() {
|
|
659
585
|
this.$nextTick(() => {
|
|
660
|
-
if (this.$refs.detail) {
|
|
661
|
-
var h1 =
|
|
662
|
-
var h2 = this.$refs.
|
|
663
|
-
|
|
586
|
+
if (this.$refs.detail && this.$refs.main) {
|
|
587
|
+
var h1 = document.documentElement.clientHeight | 0;
|
|
588
|
+
var h2 = this.$refs.main.parentElement.offsetTop | 0;
|
|
589
|
+
var h3 = this.$refs.detail.offsetTop | 0;
|
|
590
|
+
let detailHeight = h1 - h3 - 65;
|
|
664
591
|
this.model.detailHeight = detailHeight < 40 ? 350 : detailHeight;
|
|
665
|
-
console.log(h1);
|
|
666
|
-
console.log(h2);
|
|
667
|
-
console.log(this.model.detailHeight);
|
|
668
592
|
}
|
|
669
593
|
});
|
|
670
594
|
},
|
|
671
595
|
handleSelect(key, keyPath) {
|
|
672
|
-
|
|
596
|
+
let i=key.index;
|
|
597
|
+
if(this.model.tags1 && this.model.tags1[i]){
|
|
673
598
|
this.model.searchlistKey=this.model.searchlistKey+1;
|
|
674
|
-
this.model.searchConditionApiTags1=this.model.tags1[
|
|
675
|
-
this.model.searchDataApiTags1=this.model.tags1[
|
|
676
|
-
this.model.paramDataTags1=this.model.tags1[
|
|
599
|
+
this.model.searchConditionApiTags1=this.model.tags1[i].searchConditionApiUrl||'';
|
|
600
|
+
this.model.searchDataApiTags1=this.model.tags1[i].searchDataApiUrl||'';
|
|
601
|
+
this.model.paramDataTags1=this.model.tags1[i].paramData||'';
|
|
677
602
|
}
|
|
678
603
|
},
|
|
679
604
|
}
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
</el-tabs>
|
|
34
34
|
<!--分组-->
|
|
35
35
|
<el-collapse v-else v-model="collapseActiveNames" @change="collapseHandleChange">
|
|
36
|
-
<el-collapse-item v-for="(item, index) in collapse" v-if="item.show !== false" :key="index" :title="item.label" :name="index" :disabled="item.lock">
|
|
36
|
+
<el-collapse-item v-for="(item, index) in collapse" v-if="item.show !== false" :key="index" :title="item.label" :name="index" :disabled="item.lock" :class="item.lock?'ct-collapse-item-title':''">
|
|
37
37
|
<template slot="title">
|
|
38
38
|
<i class="sign"></i>
|
|
39
39
|
{{item.label}}
|
|
@@ -557,8 +557,12 @@
|
|
|
557
557
|
}
|
|
558
558
|
}
|
|
559
559
|
</script>
|
|
560
|
-
<style
|
|
560
|
+
<style>
|
|
561
561
|
.el-collapse{
|
|
562
562
|
border-top: none;
|
|
563
563
|
}
|
|
564
|
+
.ct-collapse-item-title .el-collapse-item__header
|
|
565
|
+
{
|
|
566
|
+
color:#303133 !important;
|
|
567
|
+
}
|
|
564
568
|
</style>
|
|
@@ -880,6 +880,7 @@
|
|
|
880
880
|
|
|
881
881
|
.ct-searchtable .ct-table {
|
|
882
882
|
min-width: 100%;
|
|
883
|
+
border-collapse: separate;
|
|
883
884
|
}
|
|
884
885
|
|
|
885
886
|
.ct-searchtable .ct-table th {
|
|
@@ -900,6 +901,9 @@
|
|
|
900
901
|
border-right: 1px solid #e7e8eb;
|
|
901
902
|
border-left: 1px solid #e7e8eb;
|
|
902
903
|
}
|
|
904
|
+
.ct-searchtable .ct-tr:last-child > .ct-td1 {
|
|
905
|
+
border-bottom: 1px solid #e7e8eb;
|
|
906
|
+
}
|
|
903
907
|
.ct-searchtable .ct-tr > .ct-td2 {
|
|
904
908
|
border-bottom: 1px solid #e7e8eb;
|
|
905
909
|
}
|
|
@@ -14,11 +14,15 @@ const Detail = function (source,para ,callBack) {
|
|
|
14
14
|
_actionRouters:null,//页面上的动作行为
|
|
15
15
|
_actionRoutersMoreList:null,//页面上的更多动作行为
|
|
16
16
|
detailHeight:750,
|
|
17
|
-
|
|
17
|
+
activeIndex1:'0',
|
|
18
|
+
activeIndex2:'0',
|
|
18
19
|
searchlistKey:0,
|
|
19
20
|
_searchConditionApiTags1:null,
|
|
20
21
|
_searchDataApiTags1:null,
|
|
21
22
|
_paramDataTags1:null,
|
|
23
|
+
_searchConditionApiTags2:null,
|
|
24
|
+
_searchDataApiTags2:null,
|
|
25
|
+
_paramDataTags2:null,
|
|
22
26
|
get fields1() {
|
|
23
27
|
return data.fields1;
|
|
24
28
|
},
|
|
@@ -206,6 +210,46 @@ const Detail = function (source,para ,callBack) {
|
|
|
206
210
|
rtn._paramDataTags1={};
|
|
207
211
|
if(v)rtn._paramDataTags1 = JSON.parse(v);
|
|
208
212
|
},
|
|
213
|
+
get tags2() {
|
|
214
|
+
return data.tags2;
|
|
215
|
+
},
|
|
216
|
+
get searchConditionApiTags2() {
|
|
217
|
+
if (rtn._searchConditionApiTags2 !==null){
|
|
218
|
+
return rtn._searchConditionApiTags2;
|
|
219
|
+
}
|
|
220
|
+
else if(rtn.tags2 && rtn.tags2.length>0){
|
|
221
|
+
rtn._searchConditionApiTags2= rtn.tags2[0].searchConditionApiUrl;
|
|
222
|
+
return rtn._searchConditionApiTags2;
|
|
223
|
+
}
|
|
224
|
+
},
|
|
225
|
+
set searchConditionApiTags2(v) {
|
|
226
|
+
rtn._searchConditionApiTags2 = v;
|
|
227
|
+
},
|
|
228
|
+
get searchDataApiTags2() {
|
|
229
|
+
if (rtn._searchDataApiTags2 !==null){
|
|
230
|
+
return rtn._searchDataApiTags2;
|
|
231
|
+
}
|
|
232
|
+
else if(rtn.tags2 && rtn.tags2.length>0){
|
|
233
|
+
rtn._searchDataApiTags2= rtn.tags2[0].searchDataApiUrl;
|
|
234
|
+
return rtn._searchDataApiTags2;
|
|
235
|
+
}
|
|
236
|
+
},
|
|
237
|
+
set searchDataApiTags2(v) {
|
|
238
|
+
rtn._searchDataApiTags2 = v;
|
|
239
|
+
},
|
|
240
|
+
get paramDataTags2() {
|
|
241
|
+
if (rtn._paramDataTags2){
|
|
242
|
+
return rtn._paramDataTags2;
|
|
243
|
+
}
|
|
244
|
+
else if(rtn.tags2 && rtn.tags2.length>0){
|
|
245
|
+
rtn._paramDataTags2= JSON.parse(rtn.tags2[0].paramData);
|
|
246
|
+
return rtn._paramDataTags2;
|
|
247
|
+
}
|
|
248
|
+
},
|
|
249
|
+
set paramDataTags2(v) {
|
|
250
|
+
rtn._paramDataTags2={};
|
|
251
|
+
if(v)rtn._paramDataTags2 = JSON.parse(v);
|
|
252
|
+
},
|
|
209
253
|
};
|
|
210
254
|
return rtn;
|
|
211
255
|
}
|
|
@@ -494,7 +494,7 @@ const SearchTable = function (data, callBack, searchModel, flagSearch, defaultSe
|
|
|
494
494
|
var searchFields = this.searchModel ? this.searchModel.searchData : { fields: [] };
|
|
495
495
|
if (self.primaryKey) {
|
|
496
496
|
searchFields.fields.push({
|
|
497
|
-
fieldName1: self.primaryKey,
|
|
497
|
+
fieldName1: self.primaryFieldMappingDBName?self.primaryFieldMappingDBName:self.primaryKey,
|
|
498
498
|
groupName: self.primaryKey,
|
|
499
499
|
operation: 2,
|
|
500
500
|
searchDataType: 3,
|
|
@@ -563,6 +563,9 @@ const SearchTable = function (data, callBack, searchModel, flagSearch, defaultSe
|
|
|
563
563
|
get primaryKey() {
|
|
564
564
|
return common.initialsToUpperCase(source.content.primaryFieldName);
|
|
565
565
|
},
|
|
566
|
+
get primaryFieldMappingDBName() {
|
|
567
|
+
return source.content.primaryFieldMappingDBName;
|
|
568
|
+
},
|
|
566
569
|
get $index() {
|
|
567
570
|
if (this.$rowCount > 0) {
|
|
568
571
|
return this.selectIndex + 1;
|