centaline-data-driven 1.3.18 → 1.3.21
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 +1 -1
- package/src/Detail.vue +1 -1
- package/src/Form.vue +2 -2
- package/src/SearchList.vue +4 -2
- package/src/centaline/common/index.js +123 -92
- package/src/centaline/css/common.css +15 -2
- package/src/centaline/dynamicBtn/src/dynamicBtn.vue +8 -0
- package/src/centaline/dynamicDetail/src/dynamicContactList.vue +4 -0
- package/src/centaline/dynamicDetail/src/dynamicPropertyDetailOFI.vue +17 -4
- package/src/centaline/dynamicDetail/src/dynamicPropertyDetailRET.vue +83 -149
- package/src/centaline/dynamicDetail/src/dynamicPropertySimpleDetailRET.vue +13 -8
- package/src/centaline/dynamicForm/src/dynamicForm.vue +19 -14
- package/src/centaline/dynamicLayout/src/dynamicLayout.vue +5 -2
- package/src/centaline/dynamicLayout/src/dynamicLayoutChildren.vue +9 -3
- package/src/centaline/dynamicLayout/src/dynamicLayoutChildrenFor.vue +7 -2
- package/src/centaline/dynamicLayout/src/dynamicLayoutImage.vue +13 -2
- package/src/centaline/dynamicLayout/src/dynamicLayoutLabel.vue +7 -2
- package/src/centaline/dynamicLayout/src/dynamicLayoutLine.vue +4 -1
- package/src/centaline/dynamicSearchList/src/dynamicSearchList.vue +6 -2
- package/src/centaline/dynamicSearchList/src/dynamicSearchTable.vue +1340 -1153
- package/src/centaline/loader/src/ctl/CellLayout.js +13 -1
- package/src/centaline/loader/src/ctl/Contact.js +1 -1
- package/src/centaline/loader/src/ctl/ContactList.js +1 -1
- package/src/centaline/loader/src/ctl/Detail.js +22 -0
- package/src/centaline/loader/src/ctl/Router.js +35 -31
- package/src/centaline/loader/src/ctl/SearchTable.js +1 -1
- package/src/centaline/loader/src/ctl/lib/Enum.js +124 -133
- package/src/centaline/quickInputSos/src/quickInput.vue +19 -30
- package/src/main.js +6 -4
- package/wwwroot/static/centaline/centaline-data-driven.js +3 -3
- package/wwwroot/static/centaline/centaline-data-driven.js.map +1 -1
|
@@ -10,30 +10,13 @@
|
|
|
10
10
|
<span>{{ model.fields1Dic.EstateName.value }}</span>
|
|
11
11
|
<span> {{ model.fields1Dic.BuildingName.value }}</span>
|
|
12
12
|
<span>{{ model.fields1Dic.RoomNo.value }}</span>
|
|
13
|
-
<img
|
|
14
|
-
:src="model.fields1Dic.FavoriteUrl.value"
|
|
15
|
-
alt=""
|
|
16
|
-
class="collection"
|
|
17
|
-
/>
|
|
13
|
+
<img :src="model.fields1Dic.FavoriteUrl.value" alt="" class="collection"/>
|
|
18
14
|
</div>
|
|
19
15
|
<div class="title-other">
|
|
20
|
-
<span
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
<span
|
|
25
|
-
>{{ model.fields1Dic.GovNo.label
|
|
26
|
-
}}{{ model.fields1Dic.GovNo.value }}</span
|
|
27
|
-
>
|
|
28
|
-
<span class="mr10">{{
|
|
29
|
-
model.fields1Dic["DistrictName"].value +
|
|
30
|
-
model.fields1Dic.AreaName.value
|
|
31
|
-
}}</span>
|
|
32
|
-
<img
|
|
33
|
-
:src="model.fields1Dic.LocationUrl.value"
|
|
34
|
-
alt=""
|
|
35
|
-
class="location"
|
|
36
|
-
/>
|
|
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"/>
|
|
37
20
|
</div>
|
|
38
21
|
<div class="title-tags">
|
|
39
22
|
<div
|
|
@@ -49,20 +32,9 @@
|
|
|
49
32
|
{{ tag.label }}
|
|
50
33
|
</div>
|
|
51
34
|
</div>
|
|
52
|
-
<div
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
style="
|
|
56
|
-
font-weight: bold;
|
|
57
|
-
font-size: 13px;
|
|
58
|
-
margin-top: 10px;
|
|
59
|
-
background: rgb(236, 249, 255);
|
|
60
|
-
flex: 1;
|
|
61
|
-
align-items: center;
|
|
62
|
-
padding: 5px;
|
|
63
|
-
border-radius: 5px;
|
|
64
|
-
"
|
|
65
|
-
></div>
|
|
35
|
+
<div v-if="model.fields1Dic.PropertyDepict" v-html="model.fields1Dic.PropertyDepict.value"
|
|
36
|
+
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;">
|
|
37
|
+
</div>
|
|
66
38
|
</div>
|
|
67
39
|
<div class="head-but">
|
|
68
40
|
<div>
|
|
@@ -170,100 +142,54 @@
|
|
|
170
142
|
</div>
|
|
171
143
|
</div>
|
|
172
144
|
</div>
|
|
173
|
-
<div
|
|
174
|
-
ref="
|
|
175
|
-
class="details-mid y-auto"
|
|
176
|
-
@scroll="scrollHandle($event)"
|
|
177
|
-
:style="{
|
|
178
|
-
height: model.detailHeight ? model.detailHeight + 'px' : '780px',
|
|
179
|
-
}"
|
|
180
|
-
>
|
|
181
|
-
<div
|
|
182
|
-
ref="midl"
|
|
183
|
-
class="mid-l"
|
|
184
|
-
:style="{
|
|
185
|
-
width: model.midlWidth ? model.midlWidth + 'px' : '1200px',
|
|
186
|
-
}"
|
|
187
|
-
>
|
|
145
|
+
<div ref="detail" class="details-mid y-auto" @scroll="scrollHandle($event)" :style="{height: model.detailHeight ? model.detailHeight + 'px' : '780px',}">
|
|
146
|
+
<div ref="midl" class="mid-l" :style="{ width: model.midlWidth ? model.midlWidth + 'px' : '1200px',}">
|
|
188
147
|
<!-- 图片内容部分 -->
|
|
189
148
|
<div class="hous-info base-box">
|
|
190
149
|
<div class="info-conten">
|
|
191
150
|
<div class="hous-t">
|
|
192
|
-
<ct-albums
|
|
193
|
-
:mediaAlbums="model.mediaAlbums"
|
|
194
|
-
:noMediaUrl="model.noMediaUrl"
|
|
195
|
-
@addMedia="addMedia"
|
|
196
|
-
:title="model.title"
|
|
197
|
-
>
|
|
151
|
+
<ct-albums :mediaAlbums="model.mediaAlbums" :noMediaUrl="model.noMediaUrl" @addMedia="addMedia" :title="model.title">
|
|
198
152
|
</ct-albums>
|
|
199
153
|
</div>
|
|
200
154
|
<div class="hous-b">
|
|
201
|
-
<img
|
|
202
|
-
:src="model.fields1Dic.ewmUrl.value"
|
|
203
|
-
alt=""
|
|
204
|
-
class="code-ewm"
|
|
205
|
-
/>
|
|
155
|
+
<img :src="model.fields1Dic.ewmUrl.value" alt="" class="code-ewm"/>
|
|
206
156
|
<div class="info-row mb20 mt5">
|
|
207
157
|
<div class="row-i">
|
|
208
|
-
<span>{{ model.fields1Dic.Price.label }}</span
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
v-html="model.fields1Dic.Price.value"
|
|
212
|
-
></span
|
|
213
|
-
><span class="base-clolr">{{
|
|
214
|
-
model.fields1Dic.Price.unitName
|
|
215
|
-
}}</span>
|
|
158
|
+
<span>{{ model.fields1Dic.Price.label }}</span>
|
|
159
|
+
<span class="base-clolr expand-f" v-html="model.fields1Dic.Price.value"></span>
|
|
160
|
+
<span class="base-clolr">{{ model.fields1Dic.Price.unitName}}</span>
|
|
216
161
|
<img src="../../../assets/jsq.png" class="img-jsq" alt="" />
|
|
217
162
|
</div>
|
|
218
163
|
<div class="row-i">
|
|
219
|
-
<span>{{ model.fields1Dic.PriceUnit.label }}</span
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
></span
|
|
224
|
-
><span class="base-clolr">{{
|
|
225
|
-
model.fields1Dic.PriceUnit.unitName
|
|
226
|
-
}}</span>
|
|
164
|
+
<span>{{ model.fields1Dic.PriceUnit.label }}</span>
|
|
165
|
+
<span class="base-clolr expand-f" v-html="model.fields1Dic.PriceUnit.value">
|
|
166
|
+
</span>
|
|
167
|
+
<span class="base-clolr">{{ model.fields1Dic.PriceUnit.unitName}}</span>
|
|
227
168
|
</div>
|
|
228
169
|
<div v-if="model.fields1Dic.PriceLine" class="row-i">
|
|
229
170
|
<span>{{ model.fields1Dic.PriceLine.label }}</span>
|
|
230
171
|
<div>
|
|
231
|
-
{{ model.fields1Dic.PriceLine.value
|
|
232
|
-
}}{{ model.fields1Dic.PriceLine.unitName }}
|
|
172
|
+
{{ model.fields1Dic.PriceLine.value}}{{ model.fields1Dic.PriceLine.unitName }}
|
|
233
173
|
</div>
|
|
234
174
|
</div>
|
|
235
175
|
</div>
|
|
236
176
|
<div class="info-row">
|
|
237
177
|
<div v-if="model.fields1Dic.PriceLine" class="row-i">
|
|
238
|
-
<span>{{ model.fields1Dic.MarketRateOfReturn.label }}</span
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
><span>{{
|
|
242
|
-
model.fields1Dic.MarketRateOfReturn.unitName
|
|
243
|
-
}}</span>
|
|
178
|
+
<span>{{ model.fields1Dic.MarketRateOfReturn.label }}</span>
|
|
179
|
+
<span>{{ model.fields1Dic.MarketRateOfReturn.value }}</span>
|
|
180
|
+
<span>{{model.fields1Dic.MarketRateOfReturn.unitName}}</span>
|
|
244
181
|
</div>
|
|
245
182
|
<div v-if="model.fields1Dic.EstimatePriceRent" class="row-i">
|
|
246
183
|
<span>{{ model.fields1Dic.EstimatePriceRent.label }}</span>
|
|
247
184
|
<div>
|
|
248
|
-
{{ model.fields1Dic.EstimatePriceRent.value
|
|
249
|
-
|
|
250
|
-
model.fields1Dic.EstimatePriceRent.unitName
|
|
251
|
-
}}</span>
|
|
185
|
+
{{ model.fields1Dic.EstimatePriceRent.value}}
|
|
186
|
+
<span>{{model.fields1Dic.EstimatePriceRent.unitName}}</span>
|
|
252
187
|
</div>
|
|
253
188
|
</div>
|
|
254
|
-
<div
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
<span>{{
|
|
259
|
-
model.fields1Dic.EstimatePriceRentUnit.label
|
|
260
|
-
}}</span
|
|
261
|
-
><span>{{
|
|
262
|
-
model.fields1Dic.EstimatePriceRentUnit.value
|
|
263
|
-
}}</span
|
|
264
|
-
><span>{{
|
|
265
|
-
model.fields1Dic.EstimatePriceRentUnit.unitName
|
|
266
|
-
}}</span>
|
|
189
|
+
<div v-if="model.fields1Dic.EstimatePriceRentUnit" class="row-i">
|
|
190
|
+
<span>{{model.fields1Dic.EstimatePriceRentUnit.label}}</span>
|
|
191
|
+
<span>{{model.fields1Dic.EstimatePriceRentUnit.value}}</span>
|
|
192
|
+
<span>{{ model.fields1Dic.EstimatePriceRentUnit.unitName}}</span>
|
|
267
193
|
</div>
|
|
268
194
|
</div>
|
|
269
195
|
|
|
@@ -271,15 +197,13 @@
|
|
|
271
197
|
<div class="mid-i">
|
|
272
198
|
<div>{{ model.fields1Dic.Area.label }}</div>
|
|
273
199
|
<div>
|
|
274
|
-
{{ model.fields1Dic.Area.value
|
|
275
|
-
}}{{ model.fields1Dic.Area.unitName }}
|
|
200
|
+
{{ model.fields1Dic.Area.value}}{{ model.fields1Dic.Area.unitName }}
|
|
276
201
|
</div>
|
|
277
202
|
</div>
|
|
278
203
|
<div class="mid-i">
|
|
279
204
|
<div>{{ model.fields1Dic.AreaNet.label }}</div>
|
|
280
205
|
<div>
|
|
281
|
-
{{ model.fields1Dic.AreaNet.value
|
|
282
|
-
}}{{ model.fields1Dic.AreaNet.unitName }}
|
|
206
|
+
{{ model.fields1Dic.AreaNet.value}}{{ model.fields1Dic.AreaNet.unitName }}
|
|
283
207
|
</div>
|
|
284
208
|
</div>
|
|
285
209
|
<div class="mid-i">
|
|
@@ -293,20 +217,10 @@
|
|
|
293
217
|
</div>
|
|
294
218
|
</div>
|
|
295
219
|
</div>
|
|
296
|
-
<div
|
|
297
|
-
v-for="(col, index) in collapse"
|
|
298
|
-
:key="index"
|
|
299
|
-
class="info-conten-b"
|
|
300
|
-
v-show="allInfo"
|
|
301
|
-
>
|
|
220
|
+
<div v-for="(col, index) in collapse" :key="index" class="info-conten-b" v-show="allInfo">
|
|
302
221
|
<div class="info-row mb20">
|
|
303
|
-
<div
|
|
304
|
-
|
|
305
|
-
:key="i"
|
|
306
|
-
:class="c.singleLine === true ? 'row-i100' : 'row-i'"
|
|
307
|
-
>
|
|
308
|
-
<span>{{ c.label }}</span
|
|
309
|
-
><span>{{ c.value }}</span>
|
|
222
|
+
<div v-for="(c, i) in col" :key="i" :class="c.singleLine === true ? 'row-i100' : 'row-i'">
|
|
223
|
+
<span>{{ c.label }}</span><span>{{ c.value }}</span>
|
|
310
224
|
</div>
|
|
311
225
|
</div>
|
|
312
226
|
</div>
|
|
@@ -737,31 +651,28 @@ export default {
|
|
|
737
651
|
}
|
|
738
652
|
);
|
|
739
653
|
this.$nextTick(function () {
|
|
740
|
-
if (
|
|
741
|
-
self.parentModel &&
|
|
742
|
-
self.parentModel.$refs &&
|
|
743
|
-
self.parentModel.$refs.table
|
|
744
|
-
) {
|
|
654
|
+
if ( self.parentModel && self.parentModel.$refs && self.parentModel.$refs.table ) {
|
|
745
655
|
if (self.parentModel.$refs.table.model.selectIndex <= 0) {
|
|
746
656
|
self.flagDisabledPrev = true;
|
|
747
657
|
}
|
|
748
|
-
if (
|
|
749
|
-
|
|
750
|
-
self.parentModel.$refs.table.model.selectIndex ===
|
|
751
|
-
self.parentModel.$refs.table.model.listData.length - 1
|
|
658
|
+
if ( self.parentModel.$refs.table.model.listData
|
|
659
|
+
&& self.parentModel.$refs.table.model.selectIndex === self.parentModel.$refs.table.model.listData.length - 1
|
|
752
660
|
) {
|
|
753
661
|
self.flagDisabledNext = true;
|
|
754
662
|
}
|
|
755
|
-
}
|
|
663
|
+
}
|
|
664
|
+
else {
|
|
756
665
|
self.flagDisabledPrev = true;
|
|
757
666
|
self.flagDisabledNext = true;
|
|
758
667
|
}
|
|
759
668
|
|
|
760
669
|
if (self.vmodel) {
|
|
761
670
|
self.load(self.vmodel);
|
|
762
|
-
}
|
|
671
|
+
}
|
|
672
|
+
else if (typeof self.source !== "undefined") {
|
|
763
673
|
self.loaderObj.Detail(self.source, null, self.load);
|
|
764
|
-
}
|
|
674
|
+
}
|
|
675
|
+
else if (typeof self.api !== "undefined") {
|
|
765
676
|
self.loaderObj.Detail(self.api, self.apiParam, self.load);
|
|
766
677
|
}
|
|
767
678
|
});
|
|
@@ -860,7 +771,8 @@ export default {
|
|
|
860
771
|
if (v.type === 13) {
|
|
861
772
|
collapseItemArr = [];
|
|
862
773
|
col = 0;
|
|
863
|
-
}
|
|
774
|
+
}
|
|
775
|
+
else if (v.singleLine) {
|
|
864
776
|
if (collapseItemArr.length > 0) {
|
|
865
777
|
self.collapse.push(collapseItemArr);
|
|
866
778
|
collapseItemArr = [];
|
|
@@ -869,7 +781,8 @@ export default {
|
|
|
869
781
|
self.collapse.push(collapseItemArr);
|
|
870
782
|
collapseItemArr = [];
|
|
871
783
|
col = 0;
|
|
872
|
-
}
|
|
784
|
+
}
|
|
785
|
+
else if (v.spanCols) {
|
|
873
786
|
collapseItemArr.push(v);
|
|
874
787
|
col = col + v.spanCols;
|
|
875
788
|
if (col === colCount || index === self.model.fields2Dic.length - 1) {
|
|
@@ -877,7 +790,8 @@ export default {
|
|
|
877
790
|
collapseItemArr = [];
|
|
878
791
|
col = 0;
|
|
879
792
|
}
|
|
880
|
-
}
|
|
793
|
+
}
|
|
794
|
+
else {
|
|
881
795
|
collapseItemArr.push(v);
|
|
882
796
|
col = col + 1;
|
|
883
797
|
if (col === colCount || index === self.model.fields2Dic.length - 1) {
|
|
@@ -899,6 +813,9 @@ export default {
|
|
|
899
813
|
lookOwner() {
|
|
900
814
|
this.codeOwner = true;
|
|
901
815
|
},
|
|
816
|
+
loadBaseInfo() {
|
|
817
|
+
this.model.loadBaseInfo();
|
|
818
|
+
},
|
|
902
819
|
handleClick(tab, event) {
|
|
903
820
|
let i = tab.index;
|
|
904
821
|
if (this.model.tags2 && this.model.tags2[i]) {
|
|
@@ -977,16 +894,26 @@ export default {
|
|
|
977
894
|
router.submitFormField.forEach((v) => {
|
|
978
895
|
submitData[v] = field.list[field.listIndex].code;
|
|
979
896
|
});
|
|
980
|
-
}
|
|
897
|
+
}
|
|
898
|
+
else {
|
|
981
899
|
router.submitFormField.forEach((v) => {
|
|
982
900
|
submitData[v] = self.model.fields1Dic[v].value;
|
|
983
901
|
});
|
|
984
902
|
}
|
|
903
|
+
if(router.id=="PropertyEdit"){
|
|
904
|
+
callBack="loadBaseInfo"
|
|
905
|
+
}
|
|
985
906
|
}
|
|
986
907
|
|
|
987
|
-
if (callBack
|
|
988
|
-
|
|
989
|
-
|
|
908
|
+
if (callBack) {
|
|
909
|
+
if(callBack=='loadOperation'){
|
|
910
|
+
this.routerClickHandler(router, submitData, self.loadOperation);
|
|
911
|
+
}
|
|
912
|
+
else if(callBack=='loadBaseInfo'){
|
|
913
|
+
this.routerClickHandler(router, submitData, self.loadBaseInfo);
|
|
914
|
+
}
|
|
915
|
+
}
|
|
916
|
+
else {
|
|
990
917
|
this.routerClickHandler(router, submitData);
|
|
991
918
|
}
|
|
992
919
|
},
|
|
@@ -1034,7 +961,8 @@ export default {
|
|
|
1034
961
|
],
|
|
1035
962
|
};
|
|
1036
963
|
self.$common.openDialog(dialogOption);
|
|
1037
|
-
}
|
|
964
|
+
}
|
|
965
|
+
else if (field.isOpenList) {
|
|
1038
966
|
var dialogOption = {
|
|
1039
967
|
title: field.pageTitle,
|
|
1040
968
|
pane: self.$common.getParentPane(self),
|
|
@@ -1062,7 +990,8 @@ export default {
|
|
|
1062
990
|
],
|
|
1063
991
|
};
|
|
1064
992
|
self.$common.openDialog(dialogOption);
|
|
1065
|
-
}
|
|
993
|
+
}
|
|
994
|
+
else if (field.isFormPageInTab) {
|
|
1066
995
|
// 外部框架tab页打开
|
|
1067
996
|
submitData = field.getActionPara(submitData).para;
|
|
1068
997
|
self.$common
|
|
@@ -1074,24 +1003,29 @@ export default {
|
|
|
1074
1003
|
self.model,
|
|
1075
1004
|
field.dialogWidth
|
|
1076
1005
|
);
|
|
1077
|
-
}
|
|
1006
|
+
}
|
|
1007
|
+
else if (field.isSearchPageInTab) {
|
|
1078
1008
|
// 外部框架tab页打开
|
|
1079
1009
|
submitData = field.getActionPara(submitData).para;
|
|
1080
1010
|
self.$common
|
|
1081
1011
|
.getDataDrivenOpts()
|
|
1082
1012
|
.handler.openTabSearch(field, submitData);
|
|
1083
|
-
}
|
|
1013
|
+
}
|
|
1014
|
+
else if (field.isBrowserNewTab) {
|
|
1084
1015
|
// 浏览器打开
|
|
1085
1016
|
submitData = field.getActionPara(submitData).para;
|
|
1086
1017
|
let query = self.$common.objectToQueryStr(submitData);
|
|
1087
1018
|
window.open(field.action + query, "_blank");
|
|
1088
|
-
}
|
|
1019
|
+
}
|
|
1020
|
+
else if (field.isOpenUrlInBrowse) {
|
|
1089
1021
|
// 浏览器打开
|
|
1090
1022
|
window.open(submitData[field.submitFormField], "_blank");
|
|
1091
|
-
}
|
|
1023
|
+
}
|
|
1024
|
+
else if (field.isSeeVoice) {
|
|
1092
1025
|
//看视频
|
|
1093
1026
|
self.$common.browseVideo(field, submitData);
|
|
1094
|
-
}
|
|
1027
|
+
}
|
|
1028
|
+
else {
|
|
1095
1029
|
field.doAction(submitData, (data) => {
|
|
1096
1030
|
self.model.doAction(data, field);
|
|
1097
1031
|
if (callBack) {
|
|
@@ -1116,8 +1050,7 @@ export default {
|
|
|
1116
1050
|
}
|
|
1117
1051
|
|
|
1118
1052
|
if (field.alert) {
|
|
1119
|
-
self.$common
|
|
1120
|
-
.confirm(field.alertMsg, field.alertCaption, {
|
|
1053
|
+
self.$common.confirm(field.alertMsg, field.alertCaption, {
|
|
1121
1054
|
confirmButtonText: field.alertOKButtonText,
|
|
1122
1055
|
cancelButtonText: field.alertCancelButtonText,
|
|
1123
1056
|
//type: 'warning'
|
|
@@ -1127,7 +1060,8 @@ export default {
|
|
|
1127
1060
|
clickAcion(field, submitData);
|
|
1128
1061
|
})
|
|
1129
1062
|
.catch(() => {});
|
|
1130
|
-
}
|
|
1063
|
+
}
|
|
1064
|
+
else {
|
|
1131
1065
|
clickAcion(field, submitData);
|
|
1132
1066
|
}
|
|
1133
1067
|
},
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
<ct-contact :key="refreshKey" :apiRouter="model.contactApiRouter" :api="model.contactApiRouter.action" :apiParam="model.contactApiRouter.getSearchPara()"></ct-contact>
|
|
53
53
|
</div>
|
|
54
54
|
<div ref="routers" style="margin-top: 16px;display: flex;">
|
|
55
|
-
<component v-for="(router, index) in model.actionRoutersSimple.slice(0,showIndex>0?showIndex:model.actionRoutersSimple.length
|
|
55
|
+
<component v-for="(router, index) in model.actionRoutersSimple.slice(0,showIndex>0?showIndex:model.actionRoutersSimple.length)" :key="index"
|
|
56
56
|
:ref="'routers'+index"
|
|
57
57
|
v-if="!router.rightField || (model.fields1Dic[router.rightField] && model.fields1Dic[router.rightField].value == 1)"
|
|
58
58
|
:is="router.is" :vmodel="router" :api="model.optionApi" @click="fieldClickHandler(router)">
|
|
@@ -168,7 +168,6 @@
|
|
|
168
168
|
}
|
|
169
169
|
}
|
|
170
170
|
}
|
|
171
|
-
// this.loadOperation();
|
|
172
171
|
this.setDetailStyle();
|
|
173
172
|
this.$nextTick(() => {
|
|
174
173
|
window.addEventListener("resize", (ev) => {
|
|
@@ -249,10 +248,8 @@
|
|
|
249
248
|
}
|
|
250
249
|
});
|
|
251
250
|
},
|
|
252
|
-
|
|
253
|
-
this.model.
|
|
254
|
-
this.model._operationRouters=[];
|
|
255
|
-
this.model.getOperationList();
|
|
251
|
+
loadBaseInfo() {
|
|
252
|
+
this.model.loadBaseInfo();
|
|
256
253
|
},
|
|
257
254
|
handleClick(tab, event) {
|
|
258
255
|
let i=tab.index;
|
|
@@ -310,10 +307,18 @@
|
|
|
310
307
|
submitData[v] = self.model.fields1Dic[v].value;
|
|
311
308
|
});
|
|
312
309
|
}
|
|
310
|
+
if(router.id=="PropertyEdit"){
|
|
311
|
+
callBack="loadBaseInfo"
|
|
312
|
+
}
|
|
313
313
|
}
|
|
314
314
|
|
|
315
|
-
if(callBack
|
|
316
|
-
|
|
315
|
+
if(callBack){
|
|
316
|
+
if(callBack=='loadOperation'){
|
|
317
|
+
this.routerClickHandler(router, submitData, self.loadOperation);
|
|
318
|
+
}
|
|
319
|
+
else if(callBack=='loadBaseInfo'){
|
|
320
|
+
this.routerClickHandler(router, submitData, self.loadBaseInfo);
|
|
321
|
+
}
|
|
317
322
|
}
|
|
318
323
|
else{
|
|
319
324
|
this.routerClickHandler(router,submitData);
|
|
@@ -10,9 +10,9 @@
|
|
|
10
10
|
<!--头部元素-->
|
|
11
11
|
<el-row v-if="collapseFieldsRow.length > 0">
|
|
12
12
|
<el-col v-for="(col, index) in collapseFieldsRow[0]" :key="index" v-if="col.show !== false" :span="col.colspan" style="padding:5px">
|
|
13
|
-
<component ref="Fields" :is="col.is" :vmodel="col" :api="model.optionApi" v-bind="col.bindPara" :fileData="getFileData(col)" :from="'form'"
|
|
13
|
+
<component ref="Fields" :is="col.is" :vmodel="col" :api="model.optionApi" :parentModel="model" v-bind="col.bindPara" :fileData="getFileData(col)" :from="'form'"
|
|
14
14
|
@click="fieldClickHandler(col,$event)" @change="changeHandler(col,$event)" @enter="enterHandler(col,$event)"
|
|
15
|
-
@input="inputHandler(col,$event)"
|
|
15
|
+
@input="inputHandler(col,$event)" @importComplete="importComplete"
|
|
16
16
|
@popupSearchList="popupSearchListHandler"
|
|
17
17
|
@tableButtonClick="clickHandler"></component>
|
|
18
18
|
</el-col>
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
v-for="(item, index) in collapse" v-if="item.show !== false" :key="index">
|
|
25
25
|
<el-row>
|
|
26
26
|
<el-col v-for="(col, index) in collapseFieldsRow[index + 1]" :key="index" :span="col.colspan" v-if="col.show !== false" style="padding:5px">
|
|
27
|
-
<component ref="Fields" :is="col.is" :vmodel="col" :api="model.optionApi" :parentModel="model" v-bind="col.bindPara" :fileData="getFileData(col)"
|
|
27
|
+
<component ref="Fields" :is="col.is" :vmodel="col" :api="model.optionApi" :parentModel="model" v-bind="col.bindPara" :fileData="getFileData(col)" :from="'form'"
|
|
28
28
|
@click="fieldClickHandler(col,$event)" @change="changeHandler(col,$event)" @enter="enterHandler(col,$event)"
|
|
29
29
|
@input="inputHandler(col,$event)" @importComplete="importComplete"
|
|
30
30
|
@popupSearchList="popupSearchListHandler"
|
|
@@ -56,9 +56,9 @@
|
|
|
56
56
|
<!--尾部元素-->
|
|
57
57
|
<el-row v-if="independentItem.length > 0" style="margin-top: 20px;">
|
|
58
58
|
<el-col v-for="(col, index) in independentItem" :key="index" v-if="col.show !== false" :span="col.colspan" style="padding:5px">
|
|
59
|
-
<component ref="Fields" :is="col.is" :vmodel="col" :api="model.optionApi" v-bind="col.bindPara" :fileData="getFileData(col)"
|
|
59
|
+
<component ref="Fields" :is="col.is" :vmodel="col" :api="model.optionApi" :parentModel="model" v-bind="col.bindPara" :fileData="getFileData(col)" :from="'form'"
|
|
60
60
|
@click="fieldClickHandler(col,$event)" @change="changeHandler(col,$event)"
|
|
61
|
-
@input="inputHandler(col,$event)"
|
|
61
|
+
@input="inputHandler(col,$event)" @importComplete="importComplete"
|
|
62
62
|
@popupSearchList="popupSearchListHandler"
|
|
63
63
|
@tableButtonClick="clickHandler"></component>
|
|
64
64
|
</el-col>
|
|
@@ -428,7 +428,7 @@
|
|
|
428
428
|
submitData = {};
|
|
429
429
|
var tempFormData = self.model.getFormObj();
|
|
430
430
|
field.submitFormField.forEach((v) => {
|
|
431
|
-
submitData[v] = tempFormData
|
|
431
|
+
submitData[v] = self.$common.getDataOfUpperLower(tempFormData,v);
|
|
432
432
|
});
|
|
433
433
|
}
|
|
434
434
|
submitData = field.getActionPara(submitData).para;
|
|
@@ -539,7 +539,7 @@
|
|
|
539
539
|
var check = true;
|
|
540
540
|
var checkMsg;
|
|
541
541
|
router.submitFormField.forEach((v) => {
|
|
542
|
-
submitData[v] = tempFormData
|
|
542
|
+
submitData[v] = self.$common.getDataOfUpperLower(tempFormData,v);
|
|
543
543
|
if (typeof tempFormData[v] === "undefined") {
|
|
544
544
|
if (self.model.fieldsDic[v]) {
|
|
545
545
|
checkMsg = "请先录入" + self.model.fieldsDic[v].label;
|
|
@@ -595,7 +595,17 @@
|
|
|
595
595
|
self.$message.error(f.validMessage);
|
|
596
596
|
}
|
|
597
597
|
else{
|
|
598
|
-
|
|
598
|
+
if(f.validMessage){
|
|
599
|
+
if(f.validMessage=='必填'){
|
|
600
|
+
self.$message.error('【'+f.model.label+'】'+f.validMessage);
|
|
601
|
+
}
|
|
602
|
+
else{
|
|
603
|
+
self.$message.error(f.validMessage);
|
|
604
|
+
}
|
|
605
|
+
}
|
|
606
|
+
else{
|
|
607
|
+
self.$message.error('【'+f.model.label+'】不能为空!');
|
|
608
|
+
}
|
|
599
609
|
}
|
|
600
610
|
}
|
|
601
611
|
i++;
|
|
@@ -671,12 +681,7 @@
|
|
|
671
681
|
else{
|
|
672
682
|
if(field.submitFormField){
|
|
673
683
|
field.submitFormField.forEach((v) => {
|
|
674
|
-
|
|
675
|
-
submitData[v] = tempFormData[v];
|
|
676
|
-
}
|
|
677
|
-
else{
|
|
678
|
-
submitData[v] = tempFormData[self.$common.initialsToUpperCase(v)];
|
|
679
|
-
}
|
|
684
|
+
submitData[v] = self.$common.getDataOfUpperLower(tempFormData,v);
|
|
680
685
|
});
|
|
681
686
|
}
|
|
682
687
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div v-loading="loading" class="ct-Layout" v-if="Layout !== null && !loading">
|
|
3
|
-
<ct-layoutchildren :rowindex="rowindex" :vmodel="Layout" @click="clickHandler"></ct-layoutchildren>
|
|
3
|
+
<ct-layoutchildren :rowindex="rowindex" :actionRouter="actionRouter" :rowdata="vmodel" :vmodel="Layout" @click="clickHandler"></ct-layoutchildren>
|
|
4
4
|
</div>
|
|
5
5
|
</template>
|
|
6
6
|
<script>
|
|
@@ -225,7 +225,10 @@
|
|
|
225
225
|
},
|
|
226
226
|
mounted() {
|
|
227
227
|
|
|
228
|
-
}
|
|
228
|
+
},
|
|
229
|
+
beforeDestroy() {
|
|
230
|
+
this.Layout = [];
|
|
231
|
+
},
|
|
229
232
|
}
|
|
230
233
|
</script>
|
|
231
234
|
<style>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<el-container v-if="model.visibility!='0'" :direction="model.orientation" :style="model.styleObject" ref="layoutchildren">
|
|
3
|
-
<component v-for="(item, index) in model.fields" :key="index" :is="item.is" :vmodel="item" :rowindex="rowindex" :forname="forname" :forrowindex="forrowindex" @click="clickHandler"></component>
|
|
3
|
+
<component v-for="(item, index) in model.fields" :actionRouter="actionRouter" :rowdata="rowdata" :key="index" :is="item.is" :vmodel="item" :rowindex="rowindex" :forname="forname" :forrowindex="forrowindex" @click="clickHandler"></component>
|
|
4
4
|
</el-container>
|
|
5
5
|
</template>
|
|
6
6
|
<script>
|
|
@@ -20,9 +20,12 @@
|
|
|
20
20
|
},
|
|
21
21
|
props: {
|
|
22
22
|
vmodel: Object,
|
|
23
|
+
rowdata: Object,
|
|
24
|
+
actionRouter: Array,
|
|
23
25
|
rowindex: Number,
|
|
24
26
|
forname: String,
|
|
25
|
-
forrowindex: String
|
|
27
|
+
forrowindex: String,
|
|
28
|
+
|
|
26
29
|
},
|
|
27
30
|
data() {
|
|
28
31
|
return {
|
|
@@ -39,7 +42,10 @@
|
|
|
39
42
|
},
|
|
40
43
|
mounted() {
|
|
41
44
|
|
|
42
|
-
}
|
|
45
|
+
},
|
|
46
|
+
beforeDestroy() {
|
|
47
|
+
this.model = {};
|
|
48
|
+
},
|
|
43
49
|
}
|
|
44
50
|
</script>
|
|
45
51
|
<style>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<el-container v-if="model.visibility!='0'" :direction="model.orientation" :style="model.styleObject">
|
|
3
|
-
<ct-layoutchildren v-for="(item, index) in model.fields" :key="index" :rowindex="rowindex" :forrowindex="model.forrowindex" :vmodel="item" :forname="model.forname" @click="clickHandler"></ct-layoutchildren>
|
|
3
|
+
<ct-layoutchildren v-for="(item, index) in model.fields" :rowdata="rowdata" :actionRouter="actionRouter" :key="index" :rowindex="rowindex" :forrowindex="model.forrowindex" :vmodel="item" :forname="model.forname" @click="clickHandler"></ct-layoutchildren>
|
|
4
4
|
</el-container>
|
|
5
5
|
</template>
|
|
6
6
|
<script>
|
|
@@ -13,6 +13,8 @@
|
|
|
13
13
|
},
|
|
14
14
|
props: {
|
|
15
15
|
vmodel: Object,
|
|
16
|
+
rowdata: Object,
|
|
17
|
+
actionRouter: Array,
|
|
16
18
|
rowindex: Number
|
|
17
19
|
},
|
|
18
20
|
data() {
|
|
@@ -31,7 +33,10 @@
|
|
|
31
33
|
},
|
|
32
34
|
mounted() {
|
|
33
35
|
|
|
34
|
-
}
|
|
36
|
+
},
|
|
37
|
+
beforeDestroy() {
|
|
38
|
+
this.model = {};
|
|
39
|
+
},
|
|
35
40
|
}
|
|
36
41
|
</script>
|
|
37
42
|
<style>
|
|
@@ -24,6 +24,8 @@
|
|
|
24
24
|
mixins: [dynamicElement],
|
|
25
25
|
props: {
|
|
26
26
|
vmodel: Object,
|
|
27
|
+
rowdata: Object,
|
|
28
|
+
actionRouter: Array,
|
|
27
29
|
rowindex: Number,
|
|
28
30
|
forname: String,
|
|
29
31
|
forrowindex: String
|
|
@@ -47,7 +49,7 @@
|
|
|
47
49
|
},
|
|
48
50
|
created() {
|
|
49
51
|
if (typeof this.vmodel !== 'undefined') {
|
|
50
|
-
this.model = this.loaderObj.CellLayout(this.vmodel);
|
|
52
|
+
this.model = this.loaderObj.CellLayout(this.vmodel, this.actionRouter, this.rowdata, this.forname, this.forrowindex);
|
|
51
53
|
}
|
|
52
54
|
},
|
|
53
55
|
|
|
@@ -80,9 +82,18 @@
|
|
|
80
82
|
if (data.content.imgUrl) this.tellImgUrl = data.content.imgUrl;
|
|
81
83
|
}
|
|
82
84
|
},
|
|
85
|
+
closeCallTel() {
|
|
86
|
+
if (this.visible) {
|
|
87
|
+
this.visible = false;
|
|
88
|
+
this.tellImgUrl = '';
|
|
89
|
+
}
|
|
90
|
+
},
|
|
83
91
|
},
|
|
84
92
|
computed: {
|
|
85
93
|
|
|
86
|
-
}
|
|
94
|
+
},
|
|
95
|
+
beforeDestroy() {
|
|
96
|
+
this.model = {};
|
|
97
|
+
},
|
|
87
98
|
}
|
|
88
99
|
</script>
|