centaline-data-driven 1.4.93 → 1.4.95

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 (34) hide show
  1. package/package.json +1 -1
  2. package/src/SearchTree.vue +2 -2
  3. package/src/assets/B1.png +0 -0
  4. package/src/assets/T1.png +0 -0
  5. package/src/assets/more1.png +0 -0
  6. package/src/centaline/css/common.css +46 -30
  7. package/src/centaline/css/max.css +112 -42
  8. package/src/centaline/dynamicComboBoxWithTextBox/src/dynamicComboBoxWithTextBox.vue +1 -1
  9. package/src/centaline/dynamicDetail/src/dynamicContactList.vue +15 -16
  10. package/src/centaline/dynamicDetail/src/dynamicPropertyDetailOFI.vue +40 -37
  11. package/src/centaline/dynamicDetail/src/dynamicPropertyDetailRET.vue +42 -38
  12. package/src/centaline/dynamicDetail/src/dynamicPropertySimpleDetailRET.vue +652 -602
  13. package/src/centaline/dynamicFile/src/dynamicFile.vue +2 -2
  14. package/src/centaline/dynamicIti/src/dynamicIti.vue +1 -1
  15. package/src/centaline/dynamicLayout/src/dynamicLayoutLabel.vue +1 -1
  16. package/src/centaline/dynamicMo/src/dynamicMo.vue +3 -3
  17. package/src/centaline/dynamicSearchList/src/dynamicSearchCategory.vue +12 -6
  18. package/src/centaline/dynamicSearchList/src/dynamicSearchTable.vue +5 -5
  19. package/src/centaline/dynamicSearchList/src/dynamicTableStats.vue +6 -6
  20. package/src/centaline/dynamicSearchList/src/dynamicTableTip.vue +1 -1
  21. package/src/centaline/dynamicSearchListTab/src/dynamicSearchListOne.vue +372 -0
  22. package/src/centaline/dynamicSearchListTab/src/dynamicSearchListTab.vue +36 -249
  23. package/src/centaline/dynamicSo/src/dynamicSo.vue +4 -4
  24. package/src/centaline/dynamicT/src/dynamicT.vue +1 -1
  25. package/src/centaline/dynamicTags/src/dynamicTags.vue +3 -3
  26. package/src/centaline/dynamicTree/src/dynamicTree.vue +1 -1
  27. package/src/centaline/loader/src/ctl/lib/LibFunction.js +1 -1
  28. package/src/centaline/quickInput/src/quickInput.vue +1 -1
  29. package/src/centaline/quickInputSos/src/quickInput.vue +1 -1
  30. package/src/centaline/selectOption/src/selectOptionVertical.vue +1 -1
  31. package/src/centaline/templateControls/src/dynamicTableCurrency.vue +1 -1
  32. package/src/main.js +5 -5
  33. package/wwwroot/static/centaline/centaline-data-driven.js +3 -3
  34. package/wwwroot/static/centaline/centaline-data-driven.js.map +1 -1
@@ -1,712 +1,762 @@
1
1
  <template>
2
- <div ref="main" class="main" v-if="model!==null">
3
- <div style="height:36px;margin-top: 10px;display: flex;border-bottom: solid 2px #EE6B6B;">
4
- <el-popover v-if="model.routerForQRCode !== null" placement="left-start" trigger="hover" @show="fieldClickHandler(model.routerForQRCode, $event)">
5
- <div style="border-bottom:none">
6
- <div style="text-align: center;margin-bottom:10px;">APP扫码</div>
7
- <div style="width:200px; height:200px;"><img :src="model.QRCode" @click="fieldClickHandler(model.routerForQRCode, $event)" /></div>
8
- <div style="text-align: center;margin-top:10px;">点击二维码刷新</div>
9
- </div>
10
- <img class="code-ewm" slot="reference" :src="model.fields1Dic.ewmUrl.value" style="width: 26px;height: 26px;vertical-align: bottom;margin-left:22px;" />
11
- </el-popover>
12
- <div :style="{'width':topWidth+'px'}" style="font-size: 14px;color: #333333;padding-left: 10px;line-height: 26px;">
13
- <span>{{model.fields1Dic.PropertyNo.label}}</span>
14
- <span>{{model.fields1Dic.PropertyNo.value}}</span>
2
+ <div ref="main" class="main" v-if="model !== null">
3
+ <div style="height:36px;margin-top: 10px;display: flex;border-bottom: solid 2px var(--chinaRed);">
4
+ <el-popover v-if="model.routerForQRCode !== null" placement="left-start" trigger="hover"
5
+ @show="fieldClickHandler(model.routerForQRCode, $event)">
6
+ <div style="border-bottom:none">
7
+ <div style="text-align: center;margin-bottom:10px;">APP扫码</div>
8
+ <div style="width:200px; height:200px;"><img :src="model.QRCode"
9
+ @click="fieldClickHandler(model.routerForQRCode, $event)" /></div>
10
+ <div style="text-align: center;margin-top:10px;">点击二维码刷新</div>
15
11
  </div>
16
- <img :class="{'domDisabled':selectIndex<=0}" @click="clickPrevHandler" src="../../../assets/T.png" alt=""
17
- style="width: 26px;height: 26px;vertical-align: bottom;margin-right:11px;cursor: pointer">
18
- <img :class="{'domDisabled':selectIndex===rowCount-1}" @click="clickNextHandler" src="../../../assets/B.png" alt=""
19
- style="width: 26px;height: 26px;vertical-align: bottom;margin-right:8px;cursor: pointer">
20
- <div v-if="!model.flagAppMode" class="el-icon-close cursor" style="padding-top: 5px;" @click="closeSideHandler"></div>
21
- <span v-if="model.flagAppMode" :slot="showIndex>0?'reference':''" class="more" style="margin-right: 10px;" @click="drawer = true"></span>
22
- <el-drawer
23
- title="更多操作"
24
- :visible.sync="drawer"
25
- direction="ttb"
26
- :modal="false"
27
- class="drawerMore"
28
- size="30%">
29
- <div style="display: flex;flex-flow:row wrap ">
30
- <component v-for="(router, index) in model.actionRoutersSimple.slice(showIndex)" :key="index" class="drawerButton"
31
- v-if="!router.rightField || (model.fields1Dic[router.rightField] && model.fields1Dic[router.rightField].value == 1)"
32
- :is="router.is" :vmodel="router" :flagAppMode="model.flagAppMode" :api="model.optionApi" @click="fieldClickHandler(router)">
33
- </component>
34
- </div>
35
- </el-drawer>
12
+ <img class="code-ewm" slot="reference" :src="model.fields1Dic.ewmUrl.value"
13
+ style="width: 26px;height: 26px;vertical-align: bottom;margin-left:22px;" />
14
+ </el-popover>
15
+ <div :style="{ 'width': topWidth + 'px' }"
16
+ style="font-size: 14px;color: var(--centalineBlack);padding-left: 10px;line-height: 26px;">
17
+ <span>{{ model.fields1Dic.PropertyNo.label }}</span>
18
+ <span>{{ model.fields1Dic.PropertyNo.value }}</span>
36
19
  </div>
37
- <div style="padding-left: 20px;padding-right: 20px;">
38
- <div ref="title" style="margin-top: 18px;">
39
- <div style="font-weight: Bold;font-size: 16px;color: #333333;display: flex;">
40
- <img v-if="model.actionRouterFavorite" :src="model.actionRouterFavorite.imgUrl" alt="" @click="fieldClickHandler(model.actionRouterFavorite, $event)" class="Simplecollection" />
41
- <span class="cursorLink" @click="fieldClickHandler(model.actionRouterEstate, $event)">{{model.fields1Dic.EstateName.value}}</span>
42
- <span>{{model.fields1Dic.BuildingName.value}}</span>
43
- <span>{{model.fields1Dic.RoomNo.value}}</span>
44
- <div style="border: 1px solid #E0E0E0;font-size: 12px;color: #333333;padding-top: 3px;
45
- width: 68px;height: 26px;border-radius: 6px;text-align: center;margin-left: auto;">
46
- {{model.fields1Dic.StatusName.value}}
47
- </div>
48
- </div>
49
- <div style="font-size: 12px;color: #999999;margin-top: 7px;">
50
- <span>{{model.fields1Dic.DistrictName.value}}</span>
51
- <span>{{model.fields1Dic.AreaName.value}}</span>
52
- </div>
53
- <div style="display: flex;flex-wrap: wrap;">
54
- <div v-for="(tag, index) in model.actionRouterLabel" :key="index" class="t-tag" style="margin-top: 7px;"
55
- :style="{color:tag.textColor,backgroundColor:tag.bgColor,borderColor:tag.borderColor}">
56
- {{tag.label}}
57
- </div>
58
- </div>
59
- <div v-if="model.fields1Dic.PropertyDepict && model.fields1Dic.PropertyDepict.value !== ''" v-html="model.fields1Dic.PropertyDepict.value"
60
- style="font-weight: bold;font-size: 13px; margin-top: 10px;background: rgb(236, 249, 255); flex: 1;align-items: center;padding: 5px;border-radius: 5px; word-break: break-all;">
20
+ <img :class="{ 'domDisabled': selectIndex <= 0 }" @click="clickPrevHandler" src="../../../assets/T1.png" alt=""
21
+ style="width: 26px;height: 26px;vertical-align: bottom;margin-right:11px;cursor: pointer">
22
+ <img :class="{ 'domDisabled': selectIndex === rowCount - 1 }" @click="clickNextHandler" src="../../../assets/B1.png"
23
+ alt="" style="width: 26px;height: 26px;vertical-align: bottom;margin-right:8px;cursor: pointer">
24
+ <div v-if="!model.flagAppMode" class="el-icon-close cursor" style="padding-top: 5px;" @click="closeSideHandler">
25
+ </div>
26
+ <span v-if="model.flagAppMode" :slot="showIndex > 0 ? 'reference' : ''" class="more" style="margin-right: 10px;"
27
+ @click="drawer = true"></span>
28
+ <el-drawer title="更多操作" :visible.sync="drawer" direction="ttb" :modal="false" class="drawerMore" size="30%">
29
+ <div style="display: flex;flex-flow:row wrap ">
30
+ <component v-for="(router, index) in model.actionRoutersSimple.slice(showIndex)" :key="index"
31
+ class="drawerButton"
32
+ v-if="!router.rightField || (model.fields1Dic[router.rightField] && model.fields1Dic[router.rightField].value == 1)"
33
+ :is="router.is" :vmodel="router" :flagAppMode="model.flagAppMode" :api="model.optionApi"
34
+ @click="fieldClickHandler(router)">
35
+ </component>
36
+ </div>
37
+ </el-drawer>
38
+ </div>
39
+ <div style="padding-left: 20px;padding-right: 20px;">
40
+ <div ref="title" style="margin-top: 18px;">
41
+ <div style="font-weight: Bold;font-size: 16px;color: #333333;display: flex;">
42
+ <img v-if="model.actionRouterFavorite" :src="model.actionRouterFavorite.imgUrl" alt=""
43
+ @click="fieldClickHandler(model.actionRouterFavorite, $event)" class="Simplecollection" />
44
+ <span class="cursorLink" @click="fieldClickHandler(model.actionRouterEstate, $event)">{{
45
+ model.fields1Dic.EstateName.value }}</span>
46
+ <span>{{ model.fields1Dic.BuildingName.value }}</span>
47
+ <span>{{ model.fields1Dic.RoomNo.value }}</span>
48
+ <div style="border: 1px solid #E0E0E0;font-size: 12px;color: #333333;padding-top: 3px;
49
+ width: 68px;height: 26px;border-radius: 6px;text-align: center;margin-left: auto;">
50
+ {{ model.fields1Dic.StatusName.value }}
61
51
  </div>
62
52
  </div>
63
- <div v-if="model.flagHiddenSensitiveInfo" style="display: flex;align-items: center;justify-content: center;margin-top: 50%;height: 0px;">
64
- <div v-html="model.hiddenSensitiveInfoReason"></div>
53
+ <div style="font-size: 12px;color: #999999;margin-top: 7px;">
54
+ <span>{{ model.fields1Dic.DistrictName.value }}</span>
55
+ <span>{{ model.fields1Dic.AreaName.value }}</span>
65
56
  </div>
66
- <div v-if="!model.flagHiddenSensitiveInfo" style="margin-top: 16px;display: flex;height: 65px;border: 1px solid #ECEFF2;box-shadow: 0 2px 4px 0 rgba(0,0,0,0.06);border-radius: 6px;text-align: center;">
67
- <div style="width: 33.33%;">
68
- <div style="margin-top: 13px;font-size: 12px;">{{model.fields1Dic.Area.label.replace(':','')}}</div>
69
- <div style="margin-top: 7px;font-size: 14px;font-weight: Bold;color: #EE6B6B;">{{model.fields1Dic.Area.value}}{{model.fields1Dic.Area.unitName}}</div>
70
- </div>
71
- <div style="width: 33.33%;">
72
- <div style="margin-top: 13px;font-size: 12px;">{{model.fields1Dic.Price.label.replace(':','')}}</div>
73
- <div style="margin-top: 7px;font-size: 14px;font-weight: Bold;color: #EE6B6B;"><span v-html="model.fields1Dic.Price.value"></span><span>{{model.fields1Dic.Price.unitName}}</span></div>
74
- </div>
75
- <div style="width: 33.33%;">
76
- <div style="margin-top: 13px;font-size: 12px;">{{model.fields1Dic.FloorName.label.replace(':','')}}</div>
77
- <div style="margin-top: 7px;font-size: 14px;font-weight: Bold;color: #EE6B6B;">{{model.fields1Dic.FloorName.value}}</div>
57
+ <div style="display: flex;flex-wrap: wrap;">
58
+ <div v-for="(tag, index) in model.actionRouterLabel" :key="index" class="t-tag" style="margin-top: 7px;"
59
+ :style="{ color: tag.textColor, backgroundColor: tag.bgColor, borderColor: tag.borderColor }">
60
+ {{ tag.label }}
78
61
  </div>
79
62
  </div>
80
- <div ref="contact" id="contact" style="margin-top: 16px;" v-if="!model.flagHiddenSensitiveInfo && model.contactApiRouter!==null">
81
- <ct-contact :key="refreshKey" :apiRouter="model.contactApiRouter" :api="model.contactApiRouter.action" :apiParam="model.contactApiRouter.getSearchPara()"></ct-contact>
63
+ <div v-if="model.fields1Dic.PropertyDepict && model.fields1Dic.PropertyDepict.value !== ''"
64
+ v-html="model.fields1Dic.PropertyDepict.value"
65
+ style="font-weight: bold;font-size: 13px; margin-top: 10px;background: rgb(236, 249, 255); flex: 1;align-items: center;padding: 5px;border-radius: 5px; word-break: break-all;">
82
66
  </div>
83
- <div ref="routers" v-if="!model.flagAppMode && !model.flagHiddenSensitiveInfo && model.actionRoutersSimple!==null" style="margin-top: 16px;display: flex;">
84
- <component v-for="(router, index) in model.actionRoutersSimple.slice(0,showIndex>0?showIndex:model.actionRoutersSimple.length)" :key="index"
85
- :ref="'routers'+index"
86
- v-if="!router.rightField || (model.fields1Dic[router.rightField] && model.fields1Dic[router.rightField].value == 1)"
87
- :is="router.is" :vmodel="router" :api="model.optionApi" @click="fieldClickHandler(router)">
88
- </component>
89
- <el-popover v-if="showIndex>0" ref="popover0" :append-to-table="option.appendId?option.appendId:''"
90
- class="Stats-popover" popper-class="elPopoverCenta" :placement="option.placement?option.placement:'left'"
91
- :trigger="option.trigger?option.trigger:''">
92
- <div class="tab-list" style="border-bottom:none;display: flex;flex-direction: column;">
93
- <component v-for="(router, index) in model.actionRoutersSimple.slice(showIndex)" :key="index" style="margin-bottom: 10px;margin-left: 0px;"
94
- v-if="!router.rightField || (model.fields1Dic[router.rightField] && model.fields1Dic[router.rightField].value == 1)"
95
- :is="router.is" :vmodel="router" :api="model.optionApi" @click="fieldClickHandler(router)">
96
- </component>
97
- </div>
98
- <span :slot="showIndex>0?'reference':''" class="more" style="margin-left: 10px;"></span>
99
- </el-popover>
67
+ </div>
68
+ <div v-if="model.flagHiddenSensitiveInfo"
69
+ style="display: flex;align-items: center;justify-content: center;margin-top: 50%;height: 0px;">
70
+ <div v-html="model.hiddenSensitiveInfoReason"></div>
71
+ </div>
72
+ <div v-if="!model.flagHiddenSensitiveInfo" class="areaValue">
73
+ <div style="width: 33.33%;">
74
+ <div class="areaValuetile">{{ model.fields1Dic.Area.label.replace('', '') }}</div>
75
+ <div class="areaValueRed">
76
+ {{ model.fields1Dic.Area.value }}{{ model.fields1Dic.Area.unitName }}</div>
100
77
  </div>
101
- <div ref="shortcutFollow" v-if="!model.flagHiddenSensitiveInfo && model.shortcutFollowForm!==undefined && model.shortcutFollowForm!==null" class="shortcutFollow" style="margin-top: 16px;">
102
- <ct-form :source="model.shortcutFollowForm" @submit="saveShortcutFollow"></ct-form>
78
+ <div style="width: 33.33%;">
79
+ <div class="areaValuetile">{{ model.fields1Dic.Price.label.replace(':', '') }}</div>
80
+ <div class="areaValueRed"><span
81
+ v-html="model.fields1Dic.Price.value"></span><span>{{ model.fields1Dic.Price.unitName }}</span></div>
103
82
  </div>
104
- <div v-if="!model.flagHiddenSensitiveInfo" class="tablist-info base-box">
105
- <div class="details-tabs-box">
106
- <el-tabs :value="model.activeIndex1" @tab-click="handleSelect">
107
- <el-tab-pane v-for="(col, index) in model.tags1" :key="col.appID"
108
- :index="index.toString()" :name="index.toString()">
109
- <div slot="label" v-html="col.appName"></div>
110
- </el-tab-pane>
111
- </el-tabs>
112
- <ct-searchlist ref="searchlist" v-if="model.searchConditionApiTags1" :key="'list'+listKey.toString()+refershKey"
113
- :apiParam="model.paramDataTags1" :flagFocus="false"
114
- :searchConditionApi="model.searchConditionApiTags1"
115
- :searchDataApi="model.searchDataApiTags1" :flagAppMode="model.flagAppMode"></ct-searchlist>
83
+ <div style="width: 33.33%;">
84
+ <div class="areaValuetile">{{ model.fields1Dic.FloorName.label.replace(':', '') }}</div>
85
+ <div class="areaValueRed">
86
+ {{ model.fields1Dic.FloorName.value }}</div>
87
+ </div>
88
+ </div>
89
+ <div ref="contact" id="contact" style="margin-top: 16px;"
90
+ v-if="!model.flagHiddenSensitiveInfo && model.contactApiRouter !== null">
91
+ <ct-contact :key="refreshKey" :apiRouter="model.contactApiRouter" :api="model.contactApiRouter.action"
92
+ :apiParam="model.contactApiRouter.getSearchPara()"></ct-contact>
93
+ </div>
94
+ <div ref="routers" v-if="!model.flagAppMode && !model.flagHiddenSensitiveInfo && model.actionRoutersSimple !== null"
95
+ style="margin-top: 16px;display: flex;">
96
+ <component
97
+ v-for="(router, index) in model.actionRoutersSimple.slice(0, showIndex > 0 ? showIndex : model.actionRoutersSimple.length)"
98
+ :key="index" :ref="'routers' + index"
99
+ v-if="!router.rightField || (model.fields1Dic[router.rightField] && model.fields1Dic[router.rightField].value == 1)"
100
+ :is="router.is" :vmodel="router" :api="model.optionApi" @click="fieldClickHandler(router)">
101
+ </component>
102
+ <el-popover v-if="showIndex > 0" ref="popover0" :append-to-table="option.appendId ? option.appendId : ''"
103
+ class="Stats-popover" popper-class="elPopoverCenta" :placement="option.placement ? option.placement : 'left'"
104
+ :trigger="option.trigger ? option.trigger : ''">
105
+ <div class="tab-list" style="border-bottom:none;display: flex;flex-direction: column;">
106
+ <component v-for="(router, index) in model.actionRoutersSimple.slice(showIndex)" :key="index"
107
+ style="margin-bottom: 10px;margin-left: 0px;"
108
+ v-if="!router.rightField || (model.fields1Dic[router.rightField] && model.fields1Dic[router.rightField].value == 1)"
109
+ :is="router.is" :vmodel="router" :api="model.optionApi" @click="fieldClickHandler(router)">
110
+ </component>
116
111
  </div>
112
+ <span :slot="showIndex > 0 ? 'reference' : ''" class="more" style="margin-left: 10px;"></span>
113
+ </el-popover>
114
+ </div>
115
+ <div ref="shortcutFollow"
116
+ v-if="!model.flagHiddenSensitiveInfo && model.shortcutFollowForm !== undefined && model.shortcutFollowForm !== null"
117
+ class="shortcutFollow" style="margin-top: 16px;">
118
+ <ct-form :source="model.shortcutFollowForm" @submit="saveShortcutFollow"></ct-form>
119
+ </div>
120
+ <div v-if="!model.flagHiddenSensitiveInfo" class="tablist-info base-box">
121
+ <div class="details-tabs-box">
122
+ <el-tabs :value="model.activeIndex1" @tab-click="handleSelect">
123
+ <el-tab-pane v-for="(col, index) in model.tags1" :key="col.appID" :index="index.toString()"
124
+ :name="index.toString()">
125
+ <div slot="label" v-html="col.appName"></div>
126
+ </el-tab-pane>
127
+ </el-tabs>
128
+ <ct-searchlist ref="searchlist" v-if="model.searchConditionApiTags1"
129
+ :key="'list' + listKey.toString() + refershKey" :apiParam="model.paramDataTags1" :flagFocus="false"
130
+ :searchConditionApi="model.searchConditionApiTags1" :searchDataApi="model.searchDataApiTags1"
131
+ :flagAppMode="model.flagAppMode"></ct-searchlist>
117
132
  </div>
118
133
  </div>
119
134
  </div>
135
+ </div>
120
136
  </template>
121
137
 
122
138
  <script>
123
- import dynamicElement from '../../mixins/dynamicElement';
124
- import dynamicContact from '../../dynamicContact/src/dynamicContact.vue';
125
- import dynamicForm from '../../dynamicForm/src/dynamicForm.vue';
126
- export default {
127
- name: 'ct-PropertySimpleDetailRET',
128
- mixins: [dynamicElement],
129
- components: {
130
- 'ct-contact': dynamicContact,
131
- 'ct-form': dynamicForm,
132
- },
133
- props: {
134
- vmodel: Object,
135
- api: String,
136
- apiParam: Object,
137
- selectIndex:Number,
138
- rowCount:Number,
139
- drowerClose:String,
140
- },
141
- computed: {
142
- },
143
- data() {
144
- return {
145
- refreshKey:0,
146
- topWidth:300,
147
- showIndex: 0,
148
- listKey: 0,
149
- option: {
150
- isHidden: true,//是否开启操作栏隐藏设置,默认开启
151
- showNum: 3,//如果isHidden为true时,个数大于3就会隐藏,默认是3
152
- appendId: '',//将浮动栏添加到对应id或者class节点中。或者.xxx。传空字符串是添加到body中。
153
- trigger: 'hover',//触发方式,传值可查看Popper UI组件trigger属性
154
- placement: 'left-start',//方向,传值可查看Popper UI组件placement属性
155
- },
156
- drawer: false,
157
- }
158
- },
159
- watch: {
160
- drowerClose(newValue) {
161
- if (newValue=='open') {
139
+ import dynamicElement from '../../mixins/dynamicElement';
140
+ import dynamicContact from '../../dynamicContact/src/dynamicContact.vue';
141
+ import dynamicForm from '../../dynamicForm/src/dynamicForm.vue';
142
+ export default {
143
+ name: 'ct-PropertySimpleDetailRET',
144
+ mixins: [dynamicElement],
145
+ components: {
146
+ 'ct-contact': dynamicContact,
147
+ 'ct-form': dynamicForm,
148
+ },
149
+ props: {
150
+ vmodel: Object,
151
+ api: String,
152
+ apiParam: Object,
153
+ selectIndex: Number,
154
+ rowCount: Number,
155
+ drowerClose: String,
156
+ },
157
+ computed: {
158
+ },
159
+ data() {
160
+ return {
161
+ refreshKey: 0,
162
+ topWidth: 300,
163
+ showIndex: 0,
164
+ listKey: 0,
165
+ option: {
166
+ isHidden: true,//是否开启操作栏隐藏设置,默认开启
167
+ showNum: 3,//如果isHidden为true时,个数大于3就会隐藏,默认是3
168
+ appendId: '',//将浮动栏添加到对应id或者class节点中。或者.xxx。传空字符串是添加到body中。
169
+ trigger: 'hover',//触发方式,传值可查看Popper UI组件trigger属性
170
+ placement: 'left-start',//方向,传值可查看Popper UI组件placement属性
171
+ },
172
+ drawer: false,
173
+ }
174
+ },
175
+ watch: {
176
+ drowerClose(newValue) {
177
+ if (newValue == 'open') {
162
178
  this.handleClose();
163
179
  }
164
180
  }
165
181
  },
166
- mounted() {
182
+ mounted() {
183
+ var self = this;
184
+ this.$nextTick(function () {
185
+ if (self.vmodel) {
186
+ self.load(self.vmodel);
187
+ }
188
+ else if (typeof self.source !== 'undefined') {
189
+ self.loaderObj.Detail(self.source, null, self.load);
190
+ }
191
+ else if (typeof self.api !== 'undefined' && self.apiParam) {
192
+ self.loaderObj.Detail(self.api, self.apiParam, self.load);
193
+ }
194
+ });
195
+ },
196
+ activated() {
197
+ this.$nextTick(() => {
198
+ this.setDetailStyle();
199
+ })
200
+ },
201
+ methods: {
202
+ load(data) {
167
203
  var self = this;
168
- this.$nextTick(function () {
169
- if (self.vmodel) {
170
- self.load(self.vmodel);
171
- }
172
- else if (typeof self.source !== 'undefined') {
173
- self.loaderObj.Detail(self.source,null,self.load);
174
- }
175
- else if (typeof self.api !== 'undefined' && self.apiParam) {
176
- self.loaderObj.Detail(self.api,self.apiParam, self.load);
204
+ this.refershKey = this.refershKey + 1;
205
+ this.model = data;
206
+ this.model.$vue = self;
207
+ this.loadFields();
208
+ if (this.model.tags2 && this.model.tags2[0]) {
209
+ this.model.getTags2List(0);
210
+ }
211
+ if (typeof window.localStorage !== 'undefined') {
212
+ var tagkey = window.localStorage.getItem('simpletagkey');
213
+ if (self.model.tags1) {
214
+ for (var i = 0; i < self.model.tags1.length; i++) {
215
+ if (tagkey == self.model.tags1[i].appID) {
216
+ self.model.activeIndex1 = i.toString();
217
+ if (self.model.tags1 && self.model.tags1[i]) {
218
+ self.listKey = self.listKey + 1;
219
+ self.model.searchConditionApiTags1 = self.model.tags1[i].searchConditionAction || '';
220
+ self.model.searchDataApiTags1 = self.model.tags1[i].searchDataAction || '';
221
+ self.model.paramDataTags1 = self.model.tags1[i].paramData || '';
222
+ }
223
+ }
224
+ }
177
225
  }
226
+ }
227
+ this.setDetailStyle();
228
+ this.$nextTick(() => {
229
+ window.addEventListener("resize", (ev) => {
230
+ self.setDetailStyle();
231
+ });
178
232
  });
179
233
  },
180
- activated() {
234
+ setDetailStyle() {
235
+ let self = this;
181
236
  this.$nextTick(() => {
182
- this.setDetailStyle();
183
- })
184
- },
185
- methods: {
186
- load(data) {
187
- var self = this;
188
- this.refershKey = this.refershKey + 1;
189
- this.model = data;
190
- this.model.$vue = self;
191
- this.loadFields();
192
- if(this.model.tags2 && this.model.tags2[0]){
193
- this.model.getTags2List(0);
237
+ if (this.$refs.main) {
238
+ this.topWidth = this.$refs.main.clientWidth - 140;
239
+ }
240
+
241
+ let totalWidth = 0;
242
+ let sumWidth = 0;
243
+ let moreWidth = 20;
244
+ if (self.$refs.routers) {
245
+ totalWidth = self.$refs.routers.offsetWidth;
194
246
  }
195
- if (typeof window.localStorage !== 'undefined') {
196
- var tagkey = window.localStorage.getItem('simpletagkey');
197
- if(self.model.tags1){
198
- for (var i = 0; i < self.model.tags1.length;i++) {
199
- if (tagkey == self.model.tags1[i].appID) {
200
- self.model.activeIndex1 = i.toString();
201
- if (self.model.tags1 && self.model.tags1[i]) {
202
- self.listKey = self.listKey + 1;
203
- self.model.searchConditionApiTags1 = self.model.tags1[i].searchConditionAction || '';
204
- self.model.searchDataApiTags1 = self.model.tags1[i].searchDataAction || '';
205
- self.model.paramDataTags1 = self.model.tags1[i].paramData || '';
247
+ if (self.model && self.model.actionRoutersSimple) {
248
+ self.model.actionRoutersSimple.forEach((v, i) => {
249
+ if (!v.rightField || (self.model.fields1Dic[v.rightField] && self.model.fields1Dic[v.rightField].value == 1)) {
250
+ if (self.$refs['routers' + i] && self.$refs['routers' + i].length > 0 && self.$refs['routers' + i][0] && self.$refs['routers' + i][0].$el) {
251
+ if (sumWidth + self.$refs['routers' + i][0].$el.offsetWidth + moreWidth + 10 > totalWidth && self.showIndex === 0) {
252
+ self.showIndex = i;
253
+ }
254
+ else {
255
+ sumWidth = sumWidth + self.$refs['routers' + i][0].$el.offsetWidth + (i > 0 ? 10 : 0);
206
256
  }
207
257
  }
208
258
  }
209
- }
210
- }
211
- this.setDetailStyle();
212
- this.$nextTick(() => {
213
- window.addEventListener("resize", (ev) => {
214
- self.setDetailStyle();
215
259
  });
216
- });
217
- },
218
- setDetailStyle() {
219
- let self=this;
220
- this.$nextTick(() => {
221
- if(this.$refs.main){
222
- this.topWidth=this.$refs.main.clientWidth-140;
223
- }
224
-
225
- let totalWidth=0;
226
- let sumWidth=0;
227
- let moreWidth = 20;
228
- if(self.$refs.routers){
229
- totalWidth=self.$refs.routers.offsetWidth;
230
- }
231
- if(self.model && self.model.actionRoutersSimple){
232
- self.model.actionRoutersSimple.forEach((v,i) => {
233
- if(!v.rightField || (self.model.fields1Dic[v.rightField] && self.model.fields1Dic[v.rightField].value == 1)){
234
- if(self.$refs['routers'+i] && self.$refs['routers'+i].length>0 && self.$refs['routers'+i][0] && self.$refs['routers'+i][0].$el){
235
- if(sumWidth+self.$refs['routers'+i][0].$el.offsetWidth+moreWidth+10>totalWidth && self.showIndex===0){
236
- self.showIndex=i;
237
- }
238
- else{
239
- sumWidth=sumWidth+self.$refs['routers'+i][0].$el.offsetWidth+(i>0?10:0);
240
- }
241
- }
242
- }
243
- });
244
- }
245
- });
246
- },
247
- refreshPage(){
248
- this.refreshKey=this.refreshKey+1;
249
- this.showIndex=0;
250
- this.setDetailStyle();
251
- },
252
- loadFields() {
253
- var self = this;
254
- if(!self.model.fields2Dic) return;
255
- self.collapse=[];
256
- var collapseItemArr = [];
257
- var col=0;
258
- var colCount=4;
259
- self.model.fields2Dic.forEach((v, index) => {
260
- if(v.type===13){
260
+ }
261
+ });
262
+ },
263
+ refreshPage() {
264
+ this.refreshKey = this.refreshKey + 1;
265
+ this.showIndex = 0;
266
+ this.setDetailStyle();
267
+ },
268
+ loadFields() {
269
+ var self = this;
270
+ if (!self.model.fields2Dic) return;
271
+ self.collapse = [];
272
+ var collapseItemArr = [];
273
+ var col = 0;
274
+ var colCount = 4;
275
+ self.model.fields2Dic.forEach((v, index) => {
276
+ if (v.type === 13) {
277
+ collapseItemArr = [];
278
+ col = 0;
279
+ }
280
+ else if (v.singleLine) {
281
+ if (collapseItemArr.length > 0) {
282
+ self.collapse.push(collapseItemArr);
261
283
  collapseItemArr = [];
262
- col=0;
263
284
  }
264
- else if(v.singleLine){
265
- if(collapseItemArr.length>0){
266
- self.collapse.push(collapseItemArr);
267
- collapseItemArr = [];
268
- }
269
- collapseItemArr.push(v);
285
+ collapseItemArr.push(v);
286
+ self.collapse.push(collapseItemArr);
287
+ collapseItemArr = [];
288
+ col = 0;
289
+ }
290
+ else if (v.spanCols) {
291
+ collapseItemArr.push(v);
292
+ col = col + v.spanCols;
293
+ if (col === colCount || index === self.model.fields2Dic.length - 1) {
270
294
  self.collapse.push(collapseItemArr);
271
295
  collapseItemArr = [];
272
- col=0;
273
- }
274
- else if(v.spanCols){
275
- collapseItemArr.push(v);
276
- col=col+v.spanCols;
277
- if(col===colCount || index===self.model.fields2Dic.length-1){
278
- self.collapse.push(collapseItemArr);
279
- collapseItemArr = [];
280
- col=0;
281
- }
296
+ col = 0;
282
297
  }
283
- else{
284
- collapseItemArr.push(v);
285
- col=col+1;
286
- if(col===colCount || index===self.model.fields2Dic.length-1){
287
- self.collapse.push(collapseItemArr);
288
- collapseItemArr = [];
289
- col=0;
290
- }
298
+ }
299
+ else {
300
+ collapseItemArr.push(v);
301
+ col = col + 1;
302
+ if (col === colCount || index === self.model.fields2Dic.length - 1) {
303
+ self.collapse.push(collapseItemArr);
304
+ collapseItemArr = [];
305
+ col = 0;
291
306
  }
307
+ }
308
+ });
309
+ },
310
+ loadBaseInfo() {
311
+ this.model.loadBaseInfo();
312
+ },
313
+ loadFavorite() {
314
+ this.model.loadFavorite();
315
+ },
316
+ loadqrCode() {
317
+ this.model.loadqrCode();
318
+ },
319
+ handleClick(tab, event) {
320
+ let i = tab.index;
321
+ if (this.model.tags2 && this.model.tags2[i]) {
322
+ this.model.getTags2List(i);
323
+ }
324
+ },
325
+ handleSelect(key, keyPath) {
326
+ let i = key.index;
327
+ this.model.activeIndex1 = i;
328
+ if (this.model.tags1 && this.model.tags1[i]) {
329
+ this.listKey = this.listKey + 1;
330
+ this.model.searchConditionApiTags1 = this.model.tags1[i].searchConditionAction || '';
331
+ this.model.searchDataApiTags1 = this.model.tags1[i].searchDataAction || '';
332
+ this.model.paramDataTags1 = this.model.tags1[i].paramData || '';
333
+ window.localStorage.setItem("simpletagkey", this.model.tags1[i].appID);//存储
334
+ }
335
+ },
336
+ fieldClickHandler(field) {
337
+ if (this.$refs['popover0']) {
338
+ this.$refs['popover0'].doClose();
339
+ }
340
+ if (field == null || field == undefined) {
341
+ return;
342
+ }
343
+ var self = this;
344
+ self.handleClose();
345
+ var callBack = null;
346
+ let submitData = {};
347
+ var router = this.model.actionRouters.find((v) => {
348
+ return v.id === field.id;
349
+ });
350
+ if (router == undefined && this.model.actionRoutersMoreList) {
351
+ router = this.model.actionRoutersMoreList.find((v) => {
352
+ return v.id === field.id;
292
353
  });
293
- },
294
- loadBaseInfo() {
295
- this.model.loadBaseInfo();
296
- },
297
- loadFavorite() {
298
- this.model.loadFavorite();
299
- },
300
- loadqrCode() {
301
- this.model.loadqrCode();
302
- },
303
- handleClick(tab, event) {
304
- let i=tab.index;
305
- if(this.model.tags2 && this.model.tags2[i]){
306
- this.model.getTags2List(i);
354
+ }
355
+ if (router == undefined && this.model.otherTradeActionRouter) {
356
+ if (field.id === this.model.otherTradeActionRouter.id) {
357
+ router = this.model.otherTradeActionRouter
307
358
  }
308
- },
309
- handleSelect(key, keyPath) {
310
- let i=key.index;
311
- this.model.activeIndex1=i;
312
- if(this.model.tags1 && this.model.tags1[i]){
313
- this.listKey = this.listKey + 1;
314
- this.model.searchConditionApiTags1 = this.model.tags1[i].searchConditionAction || '';
315
- this.model.searchDataApiTags1 = this.model.tags1[i].searchDataAction || '';
316
- this.model.paramDataTags1 = this.model.tags1[i].paramData || '';
317
- window.localStorage.setItem("simpletagkey", this.model.tags1[i].appID);//存储
359
+ }
360
+ if (router == undefined && this.model.operationRouters) {
361
+ router = this.model.operationRouters.find((v) => {
362
+ return v.id === field.id;
363
+ });
364
+ callBack = "loadOperation";
365
+ }
366
+ if (router == undefined && this.model.actionRouterFavorite) {
367
+ if (field.id === this.model.actionRouterFavorite.id) {
368
+ router = this.model.actionRouterFavorite;
318
369
  }
319
- },
320
- fieldClickHandler(field) {
321
- if(this.$refs['popover0']){
322
- this.$refs['popover0'].doClose();
370
+ }
371
+ if (router == undefined && this.model.routerForQRCode) {
372
+ if (field.id === this.model.routerForQRCode.id) {
373
+ router = this.model.routerForQRCode;
323
374
  }
324
- if(field == null || field==undefined){
325
- return;
375
+ }
376
+ if (router == undefined && this.model.actionRouterEstate) {
377
+ if (field.id === this.model.actionRouterEstate.id) {
378
+ router = this.model.actionRouterEstate;
326
379
  }
327
- var self = this;
328
- self.handleClose();
329
- var callBack=null;
330
- let submitData={};
331
- var router = this.model.actionRouters.find((v) => {
332
- return v.id === field.id;
333
- });
334
- if(router==undefined && this.model.actionRoutersMoreList){
335
- router = this.model.actionRoutersMoreList.find((v) => {
336
- return v.id === field.id;
380
+ }
381
+ if (router == undefined && this.model.actionRouterMap) {
382
+ if (field.id === this.model.actionRouterMap.id) {
383
+ router = this.model.actionRouterMap;
384
+ }
385
+ }
386
+
387
+ if (router) {
388
+ if (field.isSubmitDataFromSelf) {
389
+ router.submitFormField.forEach((v) => {
390
+ submitData[v] = field.list[field.listIndex].code;
337
391
  });
338
392
  }
339
- if(router==undefined && this.model.otherTradeActionRouter){
340
- if(field.id===this.model.otherTradeActionRouter.id){
341
- router = this.model.otherTradeActionRouter
342
- }
393
+ else {
394
+ router.submitFormField.forEach((v) => {
395
+ submitData[v] = self.model.fields1Dic[v].value;
396
+ });
343
397
  }
344
- if(router==undefined && this.model.operationRouters){
345
- router = this.model.operationRouters.find((v) => {
346
- return v.id === field.id;
347
- });
348
- callBack="loadOperation";
398
+ if (router.id == "PropertyEdit") {
399
+ callBack = "loadBaseInfo"
349
400
  }
350
- if (router == undefined && this.model.actionRouterFavorite) {
351
- if (field.id === this.model.actionRouterFavorite.id) {
352
- router = this.model.actionRouterFavorite;
353
- }
401
+ else if (router.id == "Favorite") {
402
+ callBack = "loadFavorite"
354
403
  }
355
- if (router == undefined && this.model.routerForQRCode) {
356
- if (field.id === this.model.routerForQRCode.id) {
357
- router = this.model.routerForQRCode;
358
- }
404
+ else if (router.id == "qrCode") {
405
+ callBack = "loadqrCode"
359
406
  }
360
- if (router == undefined && this.model.actionRouterEstate) {
361
- if (field.id === this.model.actionRouterEstate.id) {
362
- router = this.model.actionRouterEstate;
363
- }
407
+ }
408
+
409
+ if (callBack) {
410
+ if (callBack == 'loadOperation') {
411
+ this.routerClickHandler(router, submitData, self.loadOperation);
364
412
  }
365
- if (router == undefined && this.model.actionRouterMap) {
366
- if (field.id === this.model.actionRouterMap.id) {
367
- router = this.model.actionRouterMap;
368
- }
413
+ else if (callBack == 'loadBaseInfo') {
414
+ this.routerClickHandler(router, submitData, self.loadBaseInfo);
369
415
  }
370
-
371
- if(router){
372
- if(field.isSubmitDataFromSelf){
373
- router.submitFormField.forEach((v) => {
374
- submitData[v] = field.list[field.listIndex].code;
375
- });
376
- }
377
- else{
378
- router.submitFormField.forEach((v) => {
379
- submitData[v] = self.model.fields1Dic[v].value;
380
- });
381
- }
382
- if(router.id=="PropertyEdit"){
383
- callBack="loadBaseInfo"
384
- }
385
- else if (router.id == "Favorite") {
386
- callBack = "loadFavorite"
387
- }
388
- else if (router.id == "qrCode") {
389
- callBack = "loadqrCode"
390
- }
416
+ else if (callBack == 'loadFavorite') {
417
+ this.routerClickHandler(router, submitData, self.loadFavorite);
391
418
  }
419
+ else if (callBack == 'loadqrCode') {
420
+ self.loadqrCode();
421
+ }
422
+ }
423
+ else {
424
+ this.routerClickHandler(router, submitData);
425
+ }
426
+ },
427
+ routerClickHandler(field, submitData, callBack) {
428
+ var self = this;
429
+ // this.model.scripts.$fd = field.id;
430
+ // this.model.scripts.$result = [];
392
431
 
393
- if(callBack){
394
- if(callBack=='loadOperation'){
395
- this.routerClickHandler(router, submitData, self.loadOperation);
396
- }
397
- else if(callBack=='loadBaseInfo'){
398
- this.routerClickHandler(router, submitData, self.loadBaseInfo);
399
- }
400
- else if (callBack == 'loadFavorite') {
401
- this.routerClickHandler(router, submitData, self.loadFavorite);
432
+ var clickAcion = function (field) {
433
+ //若不是客户端方法,则直接访问接口
434
+ if (!field.isClientFuntion) {
435
+ // if (typeof field.onClick !== 'undefined') {
436
+ // verified = self.$common.excute.call(self.model.scripts, field.onClick);
437
+ // }
438
+
439
+ if (field.isTabInSystem) {
440
+ if (field.isOpenBaiduMap) {
441
+ submitData = field.getActionPara(submitData).para;
442
+ self.$common.getDataDrivenOpts().handler.openTabBaiduMap(submitData, field.pageTitle || field.label);
443
+ }
402
444
  }
403
- else if (callBack == 'loadqrCode') {
404
- self.loadqrCode();
445
+ else if (field.isTabInBrowse) {
446
+
405
447
  }
406
- }
407
- else{
408
- this.routerClickHandler(router,submitData);
409
- }
410
- },
411
- routerClickHandler(field, submitData,callBack) {
412
- var self = this;
413
- // this.model.scripts.$fd = field.id;
414
- // this.model.scripts.$result = [];
415
-
416
- var clickAcion = function (field) {
417
- //若不是客户端方法,则直接访问接口
418
- if (!field.isClientFuntion) {
419
- // if (typeof field.onClick !== 'undefined') {
420
- // verified = self.$common.excute.call(self.model.scripts, field.onClick);
421
- // }
422
-
423
- if(field.isTabInSystem){
424
- if(field.isOpenBaiduMap){
425
- submitData = field.getActionPara(submitData).para;
426
- self.$common.getDataDrivenOpts().handler.openTabBaiduMap(submitData,field.pageTitle || field.label);
427
- }
428
- }
429
- else if(field.isTabInBrowse){
430
-
431
- }
432
- else if(field.isLayerInSystem){
433
- if(field.isOpenBaiduMap){
434
- var dialogOption = {
435
- title: field.pageTitle,
436
- pane: self.$common.getParentPane(self),
437
- content: [
438
- {
439
- component: "ct-mapBaidu",
440
- attrs: {
441
- field: field,
442
- apiParam: field.getActionPara(submitData).para,
443
- width: field.dialogWidth + "px",
444
- height: field.dialogHeight + "px",
445
- },
446
- on: {
447
- submit(ev) {
448
- if (callBack) {
449
- callBack(field);
450
- }
451
- self.$common.closeDialog(dialogOption.dialog);
452
- },
453
- closeDialog(ev) {
454
- }
455
- },
456
- },
457
- ],
458
- };
459
- self.$common.openDialog(dialogOption);
460
- }
461
- }
462
- else if (field.isOpenForm) {
448
+ else if (field.isLayerInSystem) {
449
+ if (field.isOpenBaiduMap) {
463
450
  var dialogOption = {
464
451
  title: field.pageTitle,
465
452
  pane: self.$common.getParentPane(self),
466
- content: [{
467
- component: 'ct-form',
468
- attrs: {
469
- api: field.action,
470
- apiParam: field.getActionPara(submitData).para,
471
- showTitle: false,
472
- width: field.dialogWidth + 'px',
473
- height: field.dialogHeight + 'px'
474
- },
475
- on: {
476
- submit(ev) {
477
- self.model.doAction(ev,field);
478
- if(callBack){
479
- callBack();
480
- }
481
- self.$common.closeDialog(dialogOption.dialog);
482
- if (field.id != "Favorite") {
483
- self.$emit('simpleRouterclickHandler', field, ev);
453
+ content: [
454
+ {
455
+ component: "ct-mapBaidu",
456
+ attrs: {
457
+ field: field,
458
+ apiParam: field.getActionPara(submitData).para,
459
+ width: field.dialogWidth + "px",
460
+ height: field.dialogHeight + "px",
461
+ },
462
+ on: {
463
+ submit(ev) {
464
+ if (callBack) {
465
+ callBack(field);
466
+ }
467
+ self.$common.closeDialog(dialogOption.dialog);
468
+ },
469
+ closeDialog(ev) {
484
470
  }
485
- }
486
- }
487
- }]
471
+ },
472
+ },
473
+ ],
488
474
  };
489
475
  self.$common.openDialog(dialogOption);
490
476
  }
491
- else if (field.isOpenList) {
492
- var dialogOption = {
493
- title: field.pageTitle,
494
- pane: self.$common.getParentPane(self),
495
- content: [{
496
- component: 'ct-searchlist',
497
- attrs: {
498
- searchConditionApi: field.actionForSearchLayout,
499
- searchDataApi: field.actionForSearch,
500
- apiParam: submitData,
501
- width: field.dialogWidth + 'px',
502
- height: field.dialogHeight + 'px'
503
- },
504
- on: {
505
- submit(ev) {
506
- self.model.updateFields(ev, () => {
507
- self.$refs.Fields.forEach((fd) => {
508
- fd.$forceUpdate();
509
- });
510
- });
511
- self.$common.closeDialog(dialogOption.dialog);
512
- },
513
- closeDialog(ev) {
514
- if (field.id == "Favorite" && callBack) {
515
- callBack();
516
- }
477
+ }
478
+ else if (field.isOpenForm) {
479
+ var dialogOption = {
480
+ title: field.pageTitle,
481
+ pane: self.$common.getParentPane(self),
482
+ content: [{
483
+ component: 'ct-form',
484
+ attrs: {
485
+ api: field.action,
486
+ apiParam: field.getActionPara(submitData).para,
487
+ showTitle: false,
488
+ width: field.dialogWidth + 'px',
489
+ height: field.dialogHeight + 'px'
490
+ },
491
+ on: {
492
+ submit(ev) {
493
+ self.model.doAction(ev, field);
494
+ if (callBack) {
495
+ callBack();
496
+ }
497
+ self.$common.closeDialog(dialogOption.dialog);
498
+ if (field.id != "Favorite") {
499
+ self.$emit('simpleRouterclickHandler', field, ev);
517
500
  }
518
501
  }
519
- }]
520
- };
521
- self.$common.openDialog(dialogOption);
522
- }
523
- else if (field.isFormPageInTab) {// 外部框架tab页打开
524
- submitData = field.getActionPara(submitData).para;
525
- self.$common.getDataDrivenOpts().handler.openTab(field.action, submitData, field.pageTitle, self.model,field.dialogWidth);
526
- }
527
- else if (field.isSearchPageInTab) {// 外部框架tab页打开
528
- submitData = field.getActionPara(submitData).para;
529
- self.$common.getDataDrivenOpts().handler.openTabSearch(field, submitData);
530
- }
531
- else if (field.isUrlInSystemTab) {//外部框架tab页打开URl
532
- submitData = field.getActionPara(submitData).para;
533
- let query = self.$common.objectToQueryStr(submitData);
534
- let urlTab = field.action + query;
535
- if(field.action.indexOf('?')>-1 && query.indexOf('?')>-1){
536
- urlTab = field.action + '&' +query.substr(1, query.length);
537
- }
538
- self.$common.getDataDrivenOpts().handler.openTabUrl(urlTab,field.pageTitle||field.label);
539
- }
540
- else if (field.isBrowserNewTab) {// 浏览器打开
541
- submitData = field.getActionPara(submitData).para;
542
- let query = self.$common.objectToQueryStr(submitData);
543
- let urlTab = field.action + query;
544
- if(field.action.indexOf('?')>-1 && query.indexOf('?')>-1){
545
- urlTab = field.action + '&' +query.substr(1, query.length);
546
- }
547
- window.open(urlTab, "_blank");
548
- }
549
- else if (field.isOpenUrlInBrowse) {// 浏览器打开
550
- window.open(submitData[field.submitFormField], "_blank");
551
- }
552
- else if (field.isSeeVoice) {//看视频
553
- self.$common.browseVideo(field,submitData)
554
- }
555
- else{
556
- field.doAction(submitData, (data) => {
557
- if(callBack){
558
- callBack();
559
502
  }
560
- if (field.isCallTel) {
561
- self.model.doAction(data, field);
562
- if(self.model.currentCallTel){
563
- self.$refs[self.model.currentCallTel][0].closeCallTel()
503
+ }]
504
+ };
505
+ self.$common.openDialog(dialogOption);
506
+ }
507
+ else if (field.isOpenList) {
508
+ var dialogOption = {
509
+ title: field.pageTitle,
510
+ pane: self.$common.getParentPane(self),
511
+ content: [{
512
+ component: 'ct-searchlist',
513
+ attrs: {
514
+ searchConditionApi: field.actionForSearchLayout,
515
+ searchDataApi: field.actionForSearch,
516
+ apiParam: submitData,
517
+ width: field.dialogWidth + 'px',
518
+ height: field.dialogHeight + 'px'
519
+ },
520
+ on: {
521
+ submit(ev) {
522
+ self.model.updateFields(ev, () => {
523
+ self.$refs.Fields.forEach((fd) => {
524
+ fd.$forceUpdate();
525
+ });
526
+ });
527
+ self.$common.closeDialog(dialogOption.dialog);
528
+ },
529
+ closeDialog(ev) {
530
+ if (field.id == "Favorite" && callBack) {
531
+ callBack();
532
+ }
564
533
  }
565
- self.model.currentCallTel='router'+field.id+field.rowindex;
566
- self.$refs['router'+field.id+field.rowindex][0].callTelClick(data);
567
- }
568
- else{
569
- self.model.doAction(data,field);
570
- self.$emit('simpleRouterclickHandler',field,data);
571
534
  }
572
- })
535
+ }]
536
+ };
537
+ self.$common.openDialog(dialogOption);
538
+ }
539
+ else if (field.isFormPageInTab) {// 外部框架tab页打开
540
+ submitData = field.getActionPara(submitData).para;
541
+ self.$common.getDataDrivenOpts().handler.openTab(field.action, submitData, field.pageTitle, self.model, field.dialogWidth);
542
+ }
543
+ else if (field.isSearchPageInTab) {// 外部框架tab页打开
544
+ submitData = field.getActionPara(submitData).para;
545
+ self.$common.getDataDrivenOpts().handler.openTabSearch(field, submitData);
546
+ }
547
+ else if (field.isUrlInSystemTab) {//外部框架tab页打开URl
548
+ submitData = field.getActionPara(submitData).para;
549
+ let query = self.$common.objectToQueryStr(submitData);
550
+ let urlTab = field.action + query;
551
+ if (field.action.indexOf('?') > -1 && query.indexOf('?') > -1) {
552
+ urlTab = field.action + '&' + query.substr(1, query.length);
573
553
  }
554
+ self.$common.getDataDrivenOpts().handler.openTabUrl(urlTab, field.pageTitle || field.label);
574
555
  }
575
- //执行客户端脚本
576
- else {
556
+ else if (field.isBrowserNewTab) {// 浏览器打开
577
557
  submitData = field.getActionPara(submitData).para;
578
- let title=field.pageTitle==undefined ?field.label:field.pageTitle;
579
- submitData.actionType=field.actionType;
580
- var fun =self.$common.getDataDrivenOpts().handler[field.action];
581
- fun(submitData,title,self.model);
558
+ let query = self.$common.objectToQueryStr(submitData);
559
+ let urlTab = field.action + query;
560
+ if (field.action.indexOf('?') > -1 && query.indexOf('?') > -1) {
561
+ urlTab = field.action + '&' + query.substr(1, query.length);
562
+ }
563
+ window.open(urlTab, "_blank");
564
+ }
565
+ else if (field.isOpenUrlInBrowse) {// 浏览器打开
566
+ window.open(submitData[field.submitFormField], "_blank");
567
+ }
568
+ else if (field.isSeeVoice) {//看视频
569
+ self.$common.browseVideo(field, submitData)
570
+ }
571
+ else {
572
+ field.doAction(submitData, (data) => {
573
+ if (callBack) {
574
+ callBack();
575
+ }
576
+ if (field.isCallTel) {
577
+ self.model.doAction(data, field);
578
+ if (self.model.currentCallTel) {
579
+ self.$refs[self.model.currentCallTel][0].closeCallTel()
580
+ }
581
+ self.model.currentCallTel = 'router' + field.id + field.rowindex;
582
+ self.$refs['router' + field.id + field.rowindex][0].callTelClick(data);
583
+ }
584
+ else {
585
+ self.model.doAction(data, field);
586
+ self.$emit('simpleRouterclickHandler', field, data);
587
+ }
588
+ })
582
589
  }
583
590
  }
584
-
585
- if (field.isSubmit && !self.validExcute()) {
586
- return;
587
- }
588
-
589
- if (field.alert) {
590
- self.$common.confirm(field.alertMsg, field.alertCaption, {
591
- confirmButtonText: field.alertOKButtonText,
592
- cancelButtonText: field.alertCancelButtonText,
593
- //type: 'warning'
594
- center: field.alertCenter
595
- }).then(() => {
596
- clickAcion(field,submitData);
597
- }).catch(() => {
598
- });
599
- }
591
+ //执行客户端脚本
600
592
  else {
601
- clickAcion(field,submitData);
593
+ submitData = field.getActionPara(submitData).para;
594
+ let title = field.pageTitle == undefined ? field.label : field.pageTitle;
595
+ submitData.actionType = field.actionType;
596
+ var fun = self.$common.getDataDrivenOpts().handler[field.action];
597
+ fun(submitData, title, self.model);
602
598
  }
603
- },
604
- handleClose(){
605
- let self = this;
606
- self.drawer=false;
607
- },
608
- closeSideHandler() {
609
- this.$emit('closeSideHandler');
610
- },
611
- setBtnHandler(index,count) {
612
- this.selectIndex=index;
613
- this.count=count;
614
- },
615
- clickNextHandler() {
616
- this.$emit('clickNextHandler');
617
- },
618
- clickPrevHandler() {
619
- this.$emit('clickPrevHandler');
620
- },
621
- saveShortcutFollow(){
622
- var self=this;
623
- self.model.tags1.forEach((v,i) => {
624
- if(v.appID=='Follow'){
625
- self.model.activeIndex1=i.toString();
626
- self.listKey=self.listKey+1;
627
- self.model.searchConditionApiTags1=v.searchConditionAction||'';
628
- self.model.searchDataApiTags1=v.searchDataAction||'';
629
- self.model.paramDataTags1 = v.paramData || '';
630
- }
599
+ }
600
+
601
+ if (field.isSubmit && !self.validExcute()) {
602
+ return;
603
+ }
604
+
605
+ if (field.alert) {
606
+ self.$common.confirm(field.alertMsg, field.alertCaption, {
607
+ confirmButtonText: field.alertOKButtonText,
608
+ cancelButtonText: field.alertCancelButtonText,
609
+ //type: 'warning'
610
+ center: field.alertCenter
611
+ }).then(() => {
612
+ clickAcion(field, submitData);
613
+ }).catch(() => {
631
614
  });
632
- },
633
- }
615
+ }
616
+ else {
617
+ clickAcion(field, submitData);
618
+ }
619
+ },
620
+ handleClose() {
621
+ let self = this;
622
+ self.drawer = false;
623
+ },
624
+ closeSideHandler() {
625
+ this.$emit('closeSideHandler');
626
+ },
627
+ setBtnHandler(index, count) {
628
+ this.selectIndex = index;
629
+ this.count = count;
630
+ },
631
+ clickNextHandler() {
632
+ this.$emit('clickNextHandler');
633
+ },
634
+ clickPrevHandler() {
635
+ this.$emit('clickPrevHandler');
636
+ },
637
+ saveShortcutFollow() {
638
+ var self = this;
639
+ self.model.tags1.forEach((v, i) => {
640
+ if (v.appID == 'Follow') {
641
+ self.model.activeIndex1 = i.toString();
642
+ self.listKey = self.listKey + 1;
643
+ self.model.searchConditionApiTags1 = v.searchConditionAction || '';
644
+ self.model.searchDataApiTags1 = v.searchDataAction || '';
645
+ self.model.paramDataTags1 = v.paramData || '';
646
+ }
647
+ });
648
+ },
634
649
  }
650
+ }
635
651
  </script>
636
652
  <style lang="scss" scoped>
637
653
  .t-tag {
638
- color: #999;
639
- background: #f3f3f3;
640
- border: 1px solid #d8d8d8;
641
- padding: 2px 9px;
642
- border-radius: 3px;
643
- margin-right: 10px;
644
- font-size: 12px;
654
+ color: #999;
655
+ background: #f3f3f3;
656
+ border: 1px solid #d8d8d8;
657
+ padding: 2px 9px;
658
+ border-radius: 3px;
659
+ margin-right: 10px;
660
+ font-size: 12px;
645
661
  }
646
- .more{
647
- background: url('../../../assets/more.png')no-repeat;
648
- background-size: 100% 100%;
649
- width: 26px;
650
- height: 26px;
651
- display: table-caption;
652
- cursor: pointer;
662
+
663
+ .more {
664
+ background: url('../../../assets/more1.png')no-repeat;
665
+ background-size: 100% 100%;
666
+ width: 26px;
667
+ height: 26px;
668
+ display: table-caption;
669
+ cursor: pointer;
653
670
  }
654
671
  </style>
655
672
  <style>
656
- .drawerMore{
673
+ .drawerMore {
657
674
  width: 410px;
658
- left: auto;
659
- top:18px;
675
+ left: auto;
676
+ top: 18px;
660
677
  }
678
+
661
679
  .v-modal {
662
- position: relative;
680
+ position: relative;
663
681
  }
664
- .drawerMore .el-drawer__container{
682
+
683
+ .drawerMore .el-drawer__container {
665
684
  top: 70px;
666
685
  }
686
+
667
687
  .drawerMore .el-drawer.ttb {
668
- height: auto !important;
669
- background:rgba(47, 47, 47, 0.8);
670
- padding-bottom: 10px;
688
+ height: auto !important;
689
+ background: rgba(47, 47, 47, 0.8);
690
+ padding-bottom: 10px;
671
691
  }
672
- .drawerMore .el-drawer__header{
692
+
693
+ .drawerMore .el-drawer__header {
673
694
  margin-bottom: 5px;
674
695
  color: #fff;
675
696
  padding-top: 10px;
676
697
  padding-left: 10px;
677
698
  font-size: 14px;
678
699
  }
679
- .drawerMore .el-drawer__body{
700
+
701
+ .drawerMore .el-drawer__body {
680
702
  padding-left: 3px;
681
703
  }
682
- .drawerMore .el-drawer__header i.el-dialog__close.el-icon.el-icon-close{
683
- color: #fff;
704
+
705
+ .drawerMore .el-drawer__header i.el-dialog__close.el-icon.el-icon-close {
706
+ color: #fff;
684
707
  }
685
- .drawerButton{
708
+
709
+ .drawerButton {
686
710
  margin-bottom: 10px !important;
687
711
  margin-left: 6px !important;
688
- background-color: #181818 !important;
689
- border-color: #181818 !important;
690
- width: 94px !important;
691
- height: 56px !important;
712
+ background-color: #181818 !important;
713
+ border-color: #181818 !important;
714
+ width: 94px !important;
715
+ height: 56px !important;
692
716
  }
693
- .drawerButton.el-button--primary:hover{
717
+
718
+ .drawerButton.el-button--primary:hover {
694
719
  background: #2b2b2b;
695
- border-color: #2b2b2b;
696
- color: #FFF;
720
+ border-color: #2b2b2b;
721
+ color: #FFF;
697
722
  }
723
+
698
724
  .drawerMore .el-icon-close:before {
699
- content: "\E6DB";
725
+ content: "\E6DB";
726
+ }
727
+
728
+ .Simplecollection {
729
+ font-size: 18px;
730
+ margin-right: 10px;
731
+ cursor: pointer;
732
+ vertical-align: -2.85px;
733
+ width: 18px;
734
+ height: 18px;
735
+ margin-top: 2px;
736
+ }
737
+
738
+ .areaValue {
739
+ margin-top: 16px;
740
+ display: flex;
741
+ height: 65px;
742
+ border: 1px solid #ECEFF2;
743
+ box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.06);
744
+ border-radius: 6px;
745
+ text-align: center;
746
+ color: var(--centalineBlack);
747
+ }
748
+
749
+ .areaValuetile {
750
+ margin-top: 13px;
751
+ font-size: 12px;
752
+ }
753
+
754
+ .areaValueRed {
755
+ margin-top: 7px;
756
+ font-size: 14px;
757
+ font-weight: Bold;
758
+ color: var(--chinaRed);
700
759
  }
701
- .Simplecollection {
702
- font-size: 18px;
703
- margin-right: 10px;
704
- cursor: pointer;
705
- vertical-align: -2.85px;
706
- width: 18px;
707
- height: 18px;
708
- margin-top: 2px;
709
- }
710
760
  </style>
711
761
 
712
762