jufubao-movie 1.0.67 → 1.0.68-beta2

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.
@@ -8,11 +8,11 @@
8
8
  */
9
9
  const getPackagePath = (threePackagePath, packname = 'gxd-commands-bussiness')=>{
10
10
  if(packname === 'gxd-commands-bussiness') {
11
- return `/Users/shiyonggao/home/root/Base-Jufubao/xd-commands-bussiness/${threePackagePath}`;
11
+ return `/Users/shiyonggao/Desktop/code/BASE/UNIAPP/xd-commands-bussiness/${threePackagePath}`;
12
12
  }
13
13
 
14
14
  if (packname === 'gxd-uni-library-editx') {
15
- return `/Users/shiyonggao/home/root/Base-Jufubao/xd-uni-library-editx/${threePackagePath}`;
15
+ return `/Users/shiyonggao/Desktop/code/BASE/UNIAPP/xd-uni-library-editx/${threePackagePath}`;
16
16
  }
17
17
 
18
18
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jufubao-movie",
3
- "version": "1.0.67",
3
+ "version": "1.0.68-beta2",
4
4
  "private": false,
5
5
  "description": "聚福宝在线选座业务组件插件包",
6
6
  "main": "index.js",
@@ -1,100 +1,15 @@
1
1
  'use strict';
2
+ import Style from './cusAttr/style'
3
+ import Advanced from './cusAttr/advanced'
4
+ import Content from './cusAttr/content'
2
5
 
3
6
  export default {
4
7
  style: [],
5
- content: (data)=>{
8
+ content: (data, gValue, gColor, oldData) => {
6
9
  return [
7
- {
8
- label: '排序方式:',
9
- ele: 'xd-site-select-list',
10
- valueKey: 'sort_consume_mode',
11
- value: data['sort_consume_mode'] || '',
12
- groupKey:'content',
13
- placeholder: '请选择排序方式',
14
- multiple: false,
15
- className: 'input80',
16
- handleCustom({ action, data }) {
17
- XdBus.getParentApi('getOptionsSettingList')({
18
- setting_id: 'sort_consume_mode',
19
- key: Date.now()
20
- })
21
- .then(res => {
22
- data.cb(res.list)
23
- })
24
- .catch(error => {
25
- console.error(error);
26
- });
27
- },
28
- },
29
- {
30
- label: "是否显示到店使用:",
31
- ele: "xd-radio",
32
- valueKey: "is_show_sell",
33
- value: data['is_show_sell'] || 'N',
34
- groupKey: 'content',
35
- list: [
36
- { label: '显示', value: "Y" },
37
- { label: '不显示', value: "N" },
38
- ]
39
- },
40
- {
41
- label: "到店使用名称自定义:",
42
- ele: "el-input",
43
- valueKey: "sellName",
44
- value: data['sellName'] || '',
45
- groupKey: 'content',
46
- placeholder: "不填写时默认 到店使用",
47
- },
48
- {
49
- label: '选择排期路径:',
50
- ele: 'xd-select-pages-path',
51
- valueKey: 'schedule_choose_path',
52
- placeholder: '请选择排期路径',
53
- className: 'input80',
54
- value: data['schedule_choose_path'] || null,
55
- groupKey:'advanced',
56
- setting: {
57
- router: XdBus.getParentApi('getPagesTree'),
58
- },
59
- },
60
- {
61
- label: '选择城市路径:',
62
- ele: 'xd-select-pages-path',
63
- valueKey: 'choseCityPath',
64
- placeholder: '选择城市路径路径',
65
- value: data.choseCityPath || null,
66
- className: 'input80',
67
- groupKey:'advanced',
68
- setting: {
69
- router: XdBus.getParentApi('getPagesTree'),
70
- },
71
- },
72
- {
73
- label: '电子码兑换:',
74
- ele: 'xd-select-pages-path',
75
- valueKey: 'codeChoosePath',
76
- placeholder: '请选择电子码兑换路径',
77
- value: data.codeChoosePath || null,
78
- className: 'input80',
79
- groupKey:'advanced',
80
- setting: {
81
- router: XdBus.getParentApi('getPagesTree'),
82
- },
83
- inline: false,
84
- },
85
- {
86
- label: '到店使用路径:',
87
- ele: 'xd-select-pages-path',
88
- valueKey: 'sellPath',
89
- placeholder: '请选择到店使用路径',
90
- value: data.sellPath || null,
91
- className: 'input80',
92
- groupKey:'advanced',
93
- setting: {
94
- router: XdBus.getParentApi('getPagesTree'),
95
- },
96
- inline: false,
97
- },
10
+ ...Content(data, gValue, gColor, oldData),
11
+ ...Style(data, gValue, gColor, oldData),
12
+ ...Advanced(data, gValue, gColor, oldData),
98
13
  ].filter(i=>i)
99
14
  },
100
15
  advanced: [],
@@ -13,17 +13,21 @@
13
13
  :class="{ editx: isEditx && active }"
14
14
  v-if="isEditx && active && !noBorder"
15
15
  >
16
- <view class="jfb-movie-line-cinema__edit-icon"@click.stop="delEdit">
17
- <xd-font-icon icon="iconshanchu-01" color="#fff" size="30"></xd-font-icon>
16
+ <view class="jfb-movie-line-cinema__edit-icon" @click.stop="delEdit">
17
+ <xd-font-icon
18
+ icon="iconshanchu-01"
19
+ color="#fff"
20
+ size="30"
21
+ ></xd-font-icon>
18
22
  </view>
19
23
  </view>
20
24
  <!-- #endif -->
21
25
  <view
22
26
  class="jfb-movie-line-cinema__body"
23
- :style="{minHeight: layoutInfo.bodyMinHeight}"
27
+ :style="{ minHeight: layoutInfo.bodyMinHeight }"
24
28
  v-if="loading"
25
29
  >
26
- <view class="cinema_header" :style="{top: layoutInfo.top + 'rpx'}">
30
+ <view class="cinema_header" :style="{ top: layoutInfo.top + 'rpx' }">
27
31
  <view class="addr_point">
28
32
  <xd-city-show
29
33
  city-location-type="baidu"
@@ -83,66 +87,45 @@
83
87
  <view>
84
88
  <view class="item_addr"></view>
85
89
  </view>
86
- <view style="display: flex;justify-content: space-between; align-items: center; margin-top: 24rpx;">
90
+ <view
91
+ style="
92
+ display: flex;
93
+ justify-content: space-between;
94
+ align-items: center;
95
+ margin-top: 24rpx;
96
+ "
97
+ >
87
98
  <view class="item_dist"></view>
88
- <view style="display: flex;">
99
+ <view style="display: flex">
89
100
  <view class="cinema_item-btn"></view>
90
101
  </view>
91
102
  </view>
92
103
  </view>
93
104
  </view>
94
105
  <template v-else>
95
- <view v-if="filterCinemaList.length" class="cinema_list">
96
- <view
97
- class="cinema_item"
98
- v-for="item in filterCinemaList"
99
- :key="item.cinema_id"
100
- @click="toChooseSchedule(item)"
101
- >
102
- <view class="item_main">
103
- <view class="item_name">{{ item.cinema_name }}</view>
104
- </view>
105
- <view>
106
- <view class="item_addr">{{ item.address }}</view>
107
- </view>
108
- <view
109
- style="
110
- display: flex;
111
- justify-content: space-between;
112
- align-items: center;
113
- margin-top: 24rpx;
114
- "
115
- >
116
- <view class="item_dist">
117
- <xd-font-icon icon="icondizhi" size="32" style="margin-right: 30rpx;"></xd-font-icon>
118
- {{ item.distance }}</view
119
- >
120
- <!-- seat_index code_index -->
121
- <view style="display: flex;">
122
- <view
123
- v-if="is_show_sell === 'Y' && item.sell_index > -1"
124
- :style="{background: mainColor}"
125
- class="cinema_item-btn"
126
- @click.stop="toSellPath(item)">{{ sellName }}</view>
127
- <view
128
- v-if="item.code_index > -1"
129
- :style="{background: mainColor, marginLeft: '20rpx'}"
130
- class="cinema_item-btn"
131
- @click.stop="toCodePath(item)">电子码</view>
132
- <view
133
- v-if="item.seat_index > -1"
134
- :style="{background: mainColor, marginLeft: '20rpx'}"
135
- class="cinema_item-btn"
136
- @click.stop="toSchedulePath(item)">在线选座</view>
137
- </view>
138
- </view>
139
- </view>
140
- </view>
141
- <view v-else class="cinema_list">
142
- <view class="empty_cinema">暂无影院数据</view>
106
+ <view v-if="initAttr" :style="[contStyleComp]">
107
+ <cus-shops
108
+ :layout="shopListStyle"
109
+ :select-id="selectIds"
110
+ :is-show-btn="fastEntryStatus"
111
+ :content="cusContent"
112
+ :cus-style="cusStyle"
113
+ :list="filterCinemaList"
114
+ :main-color="mainColor"
115
+ :sub-main-color="subMainColor"
116
+ :names="cusNames"
117
+ :entry="cusEntry"
118
+ :is-auto-jump="isAutoJump"
119
+ :mapKeys="mapKeys"
120
+ @on-event="handleToEvent"
121
+ ></cus-shops>
143
122
  </view>
123
+ <xd-more
124
+ v-if="($configProject['isPreview'] || !hasNext) && (filterCinemaList && filterCinemaList.length > 0)"
125
+ :color="footerColor"
126
+ :background="footerColor"
127
+ ><text>我是有底线的</text></xd-more>
144
128
  </template>
145
-
146
129
  </view>
147
130
  </view>
148
131
  </template>
@@ -156,8 +139,10 @@ import JfbMovieLineCinemaMixin from "./JfbMovieLineCinemaMixin";
156
139
  import componentsMixins from "@/mixins/componentsMixins";
157
140
  import extsMixins from "@/mixins/extsMixins";
158
141
  import XdCityShow from "@/components/XdCityShowApi/XdCityShowApi";
159
- import { getContainerPropsValue } from "@/utils/xd.base";
142
+ import XdMore from "@/components/XdMore/XdMore";
143
+ import { getContainerPropsValue, gCPVal } from "@/utils/xd.base";
160
144
  import { mapState } from "vuex";
145
+ import CusShops from "@/components/CusShops/CusShops.vue";
161
146
  export default {
162
147
  name: "JfbMovieLineCinema",
163
148
  components: {
@@ -165,6 +150,8 @@ export default {
165
150
  XdFormInput,
166
151
  XdSwiper,
167
152
  XdCityShow,
153
+ CusShops,
154
+ XdMore
168
155
  },
169
156
  mixins: [componentsMixins, extsMixins, JfbMovieLineCinemaMixin],
170
157
  data() {
@@ -184,14 +171,36 @@ export default {
184
171
  loadingList: true,
185
172
 
186
173
  //面板
187
- is_show_sell: "",
188
- sellName: "",
189
- sellPath: "",
190
- scheduleChoosePath: "",
174
+ scanPath: "", //扫一扫
175
+ jhdPath: "", //聚好兑
176
+ qpPath: "", //快捷码 scheduleChoosePath: "",
191
177
  codeChoosePath: "",
192
178
  choseCityPath: "",
193
- sort_consume_mode: '',
179
+ sort_consume_mode: "",
194
180
  loading: false, //是否已经加载完成
181
+
182
+ shopListStyle: "v3", //门店风格
183
+ cusContent: [], //显示内容
184
+ fastEntryStatus: false,
185
+ cusNames: {}, //按钮名称
186
+ cusEntry: {}, //入口状态
187
+ isAutoJump: [],
188
+ mapKeys: {
189
+ id: "cinema_id",
190
+ brand_id: "brand_id", //品牌ID
191
+ shop_id: "cinema_id", //整理前的门店ID
192
+ name: "cinema_name", //店铺名字
193
+ distance: "distance", //距离
194
+ address: "address", //店铺地址
195
+ image: "shop_icon", //店铺图片
196
+ mode: "cinema_type", //标签类型[]
197
+ },
198
+ //style
199
+ bodyPadding: {},
200
+ contentBgColor: "rgba(0,0,0,0)",
201
+ cusStyle: {}, //门店样式设置
202
+ initAttr: false, //状态完成
203
+ footerColor:'#ddd',
195
204
  };
196
205
  },
197
206
  computed: {
@@ -199,27 +208,50 @@ export default {
199
208
  stateCity: (state) => state.cityLocation.city,
200
209
  stateLocation: (state) => state.cityLocation.location || {},
201
210
  }),
202
- filterCinemaList(){
203
- let keywordFilterList = this.cinema_name ? this.cinemaList.filter(item => item.cinema_name.indexOf(this.cinema_name) > -1) : this.cinemaList;
204
- if(this.subIndex == 0){
211
+ filterCinemaList() {
212
+ let keywordFilterList = this.cinema_name
213
+ ? this.cinemaList.filter(
214
+ (item) => item.cinema_name.indexOf(this.cinema_name) > -1
215
+ )
216
+ : this.cinemaList;
217
+ if (this.subIndex == 0) {
205
218
  return keywordFilterList;
206
- }else{
219
+ } else {
207
220
  let area_code = this.citySubs[this.subIndex].value;
208
- return keywordFilterList.filter(item => item.area_code == area_code)
221
+ return keywordFilterList.filter((item) => item.area_code == area_code);
209
222
  }
210
223
  // return this.cinemaList.filter(item => item.cinema_name.indexOf(this.cinema_name) > -1 || item.address.indexOf(this.cinema_name) > -1)
211
224
  },
212
225
  listMarginTop() {
213
226
  return {
214
227
  // marginTop: (this.layoutInfo.top + 20) + "rpx"
215
- marginTop: '100rpx'
216
- }
228
+ marginTop: "100rpx",
229
+ };
230
+ },
231
+ selectIds() {
232
+ let id = "";
233
+ if (!id && this.resource_shop_id) id = this.cinema_id;
234
+ if (!id && this.brand_id) id = this.brand_id;
235
+ if (!id && this.shop_id) id = this.cinema_id;
236
+ return id;
237
+ },
238
+ contStyleComp() {
239
+ let height = this.layoutInfo.bodyMinHeightRpx - 80;
240
+ //大于一个标签显示标签
241
+ //if(this.titleList.length > 1) height = height - 100;
242
+ //if(this.mapIsExtend) height = height - 400;
243
+ height = height - this.getPMValue(this.bodyPadding, "TB", 0);
244
+ return {
245
+ minHeight: height + "rpx",
246
+ padding: this.getMarginAndPadding(this.bodyPadding, 0),
247
+ backgroundColor: this.contentBgColor,
248
+ };
217
249
  },
218
250
  },
219
251
  watch: {
220
- container(value,oldValue) {
221
- if(JSON.stringify(value) === JSON.stringify(oldValue)) return;
222
- if (this.$configProject['isPreview']) this.init(value)
252
+ container(value, oldValue) {
253
+ if (JSON.stringify(value) === JSON.stringify(oldValue)) return;
254
+ if (this.$configProject["isPreview"]) this.init(value);
223
255
  },
224
256
  stateCity(n, o) {
225
257
  if (n && JSON.stringify(n) != JSON.stringify(o)) {
@@ -228,8 +260,7 @@ export default {
228
260
  this.getList();
229
261
  }
230
262
  },
231
- cinemaList(n){
232
- }
263
+ cinemaList(n) {},
233
264
  },
234
265
  created() {
235
266
  this.init(this.container);
@@ -244,49 +275,173 @@ export default {
244
275
  * @param container {object} 业务组件对象自己
245
276
  */
246
277
  init(container) {
247
- this.scheduleChoosePath = getContainerPropsValue(
248
- container,
249
- "content.schedule_choose_path",
250
- { value: "" }
251
- ).value;
252
- this.codeChoosePath = getContainerPropsValue(
278
+ //content
279
+ this.sort_consume_mode = gCPVal(container, "sort_consume_mode", "");
280
+ //内容显示
281
+ let cusContent = [];
282
+ if (gCPVal(container, "showStoreAddress", "Y") === "Y")
283
+ cusContent.push("address"); //门店地址
284
+ if (gCPVal(container, "showStoreDistance", "Y") === "Y")
285
+ cusContent.push("distance"); //地址
286
+ this.cusContent = cusContent;
287
+ this.fastEntryStatus = gCPVal(container, "fastEntryStatus", "N") === "Y";
288
+ let cusNames = {},
289
+ cusEntry = {};
290
+ let fastEntry = gCPVal(container, "fastEntry", []).filter((item) => {
291
+ return item.check === true;
292
+ });
293
+ if (this.fastEntryStatus) {
294
+ for (let i = 0; i < fastEntry.length; i++) {
295
+ if (fastEntry[i].input)
296
+ cusNames[fastEntry[i].value] = fastEntry[i].input;
297
+ cusEntry[fastEntry[i].value] = fastEntry[i].check;
298
+ }
299
+ }
300
+ this.cusNames = cusNames;
301
+ this.cusEntry = cusEntry;
302
+ //style
303
+ this.shopListStyle = gCPVal(container, "shopListStyle", "v3");
304
+ let sValue = `{"cardItemSpace":16,"margin":{"bottom":16,"left":0,"right":0,"top":16},"backgroundColor":"rgba(245, 245, 245, 1)"}`;
305
+ let shopStyle = this.getRelationStatus(container,'shopStyle', { cardItemSpaceStatus:['cardItemSpace'],bodyPaddingStatus:['bodyPadding']}, sValue);
306
+ this.bodyPadding = gCPVal(container,'bodyPadding', [{ bottom:0,left:16, right:16,top:16}], {sKey:'bodyPaddingStatus',fields:['bodyPadding'],cusFields: ['shopStyle','margin',shopStyle],isPMR: true});
307
+ this.contentBgColor = gCPVal(container, "contentBgColor", "#f8f8f8", {
308
+ sKey: "contentBgColorStatus",
309
+ fields: ["contentBgColor"],
310
+ });
311
+ let cardItemSpace = gCPVal(container, "cardItemSpace", [16, 20], {
312
+ sKey: "cardItemSpaceStatus",
313
+ fields: ["cardItemSpace"],
314
+ cusFields: ["shopStyle", "cardItemSpace", shopStyle],
315
+ });
316
+ let cardItemRadius =
317
+ gCPVal(
318
+ container,
319
+ "cardItemRadius",
320
+ [sValue === shopStyle ? 0 : this.gStyleValue.radius, 0],
321
+ { sKey: "cardItemRadiusStatus", fields: ["listItemRadius"] }
322
+ ) || 0;
323
+ let cardItemShadow = gCPVal(
253
324
  container,
254
- "content.codeChoosePath",
255
- { value: "" }
256
- ).value;
257
- this.choseCityPath = getContainerPropsValue(
325
+ "cardItemShadow",
326
+ [this.gStyleValue.shadow, { color: "", width: "0" }],
327
+ { isShadow: true }
328
+ );
329
+ let cardItemBorder = gCPVal(
258
330
  container,
259
- "content.choseCityPath",
260
- { value: "" }
261
- ).value;
262
- this.sellPath = getContainerPropsValue(container, "content.sellPath", {value: ""}).value;
263
- this.sort_consume_mode = getContainerPropsValue(container, 'content.sort_consume_mode', '');
264
- this.is_show_sell = getContainerPropsValue(container, 'content.is_show_sell', '');
265
- this.sellName = getContainerPropsValue(container, 'content.sellName', '到店使用');
266
- },
267
- toChooseSchedule(item) {
268
- if(item.seat_index > -1) this.toSchedulePath(item);
269
- else if(item.code_index > -1) this.toCodePath(item);
270
- },
271
- toCodePath(item){
272
- this.$xdUniHelper.navigateTo({
273
- url: this.codeChoosePath + `?cinema_id=${item.cinema_id}`,
331
+ "cardItemBorder",
332
+ [
333
+ { color: "#f8f8f8", width: 0, style: "solid" },
334
+ { color: "#f8f8f8", width: 0, style: "solid" },
335
+ ],
336
+ { isBorder: true }
337
+ );
338
+ let distanceColor = gCPVal(container, "distanceColor", "#999", {
339
+ sKey: "distanceColorStatus",
340
+ fields: ["distanceColor"],
274
341
  });
275
- },
276
- toSellPath(item){
277
- let params = {
278
- 'x-params': Base64.encodeURI(`shop_id:${item.cinema_id}`),
279
- }
280
- let options = this.$xdUniHelper.jsonToParams(params);
281
- this.$xdUniHelper.navigateTo({
282
- url: this.sellPath + `?${options}`,
342
+ let cardItemBgColor = gCPVal(container, "cardItemBgColor", "", {
343
+ sKey: "cardItemBgColorStatus",
344
+ fields: ["cardItemBgColor"],
283
345
  });
346
+ let itemPadding = gCPVal(
347
+ container,
348
+ "itemPadding",
349
+ [{ top: 16, left: 16, right: 16, bottom: 16 }, 20],
350
+ { sKey: "itemPaddingStatus", fields: ["itemPadding"], isPMR: true }
351
+ );
352
+ this.cusStyle = {
353
+ item: {
354
+ "margin-bottom": `${cardItemSpace}rpx`,
355
+ "border-radius": cardItemRadius + "rpx",
356
+ "box-shadow": cardItemShadow,
357
+ border: cardItemBorder,
358
+ backgroundColor: cardItemBgColor,
359
+ padding: this.getMarginAndPadding(itemPadding, 0),
360
+ },
361
+ distance: {
362
+ color: distanceColor,
363
+ },
364
+ };
365
+
366
+ this.scheduleChoosePath = gCPVal(container, "scheduleChoosePath", {
367
+ value: "",
368
+ }).value;
369
+ this.codeChoosePath = gCPVal(container, "codeChoosePath", {
370
+ value: "",
371
+ }).value;
372
+ this.choseCityPath = gCPVal(container, "choseCityPath", {
373
+ value: "",
374
+ }).value;
375
+ this.scanPath = gCPVal(container, "cscanPath", { value: "" }).value;
376
+ this.jhdPath = gCPVal(container, "jhdPath", { value: "" }).value;
377
+ this.qpPath = gCPVal(container, "qpPath", { value: "" }).value;
378
+ this.initAttr = true;
284
379
  },
285
- toSchedulePath(item){
380
+ //==evnet===
381
+ handleToEvent({ item, type }) {
382
+ let url = "";
383
+ let parmas = [];
384
+ //扫一扫
385
+ if (type === "WB") url = this.scanPath;
386
+ //聚好兑
387
+ if (type === "JHD") url = this.jhdPath;
388
+ //快捷码
389
+ if (type === "QP") url = this.qpPath;
390
+ //电子码
391
+ if (type === "CODE") url = this.codeChoosePath;
392
+ //在线选择
393
+ if (type === "SEAT") url = this.scheduleChoosePath;
394
+
395
+ if (item.resource_shop_id)
396
+ parmas.push(`resource_shop_id=${item.resource_shop_id}`);
397
+ if (item.brand_id) parmas.push(`brand_id=${item.brand_id}`);
398
+ if (item.consume_mode)
399
+ parmas.push(`consume_mode=${item.consume_mode.join(",")}`);
400
+ if (item.shop_id) parmas.push(`shop_id=${item.shop_id}`);
401
+
402
+ //详情增加扩张参数
403
+ if (item.exts_params) parmas.push(`exts_params=${item.exts_params}`);
404
+
405
+ //详情增加扩张参数
406
+ if (["DL", "JHD", "QP"].includes(type)) {
407
+ parmas.push(
408
+ `resource_shop=${Base64.encodeURI(
409
+ JSON.stringify({
410
+ shop_id: item.shop_id,
411
+ resource_shop_id: item.resource_shop_id,
412
+ })
413
+ )}`
414
+ );
415
+ }
416
+
417
+ //在线选择,电子码传惨处理
418
+ if (["SEAT", "CODE"].includes(type))
419
+ parmas = [`cinema_id=${item.resource_shop_id}`];
420
+ if (["WB"].includes(type))
421
+ parmas = [`x-params=${Base64.encodeURI(`shop_id:${item.shop_id}`)}`];
422
+ if (["JHD"].includes(type)) {
423
+ parmas.push(`x-jfb-os=jhd`);
424
+ parmas.push(this.$xdUniHelper.jsonToParams(this.options));
425
+ }
426
+ if (["JHD","QP"].includes(type)) {
427
+ parmas.push(`xnamespace=movie`);
428
+ parmas.push(`x-params=${Base64.encodeURI(`shop_id:${item.shop_id}`)}`);
429
+ }
430
+
431
+ //预览模式
432
+ if (this.$configProject["isPreview"]) {
433
+ console.warn(`uri=>${url}?${parmas.join("&")}`);
434
+ return;
435
+ }
436
+
437
+ if (!url) throw new Error(`${type} => 未设置访问地址`);
438
+
439
+ //普通跳转
286
440
  this.$xdUniHelper.navigateTo({
287
- url: this.scheduleChoosePath + `?cinema_id=${item.cinema_id}`,
441
+ url: `${url}?${parmas.join("&")}`,
288
442
  });
289
443
  },
444
+ //==evnet===
290
445
 
291
446
  getList() {
292
447
  const { city, location, citySubs, subIndex, cinema_name } = this;
@@ -308,23 +463,21 @@ export default {
308
463
  const { list, next_page_token, area_list } = res;
309
464
 
310
465
  this.cinemaList = list.map(item => {
311
- let sell_index = item.cinema_type.findIndex(ii => ii == 'SELL'); //线下核销
312
- let seat_index = item.cinema_type.findIndex(ii => ii == 'SEAT'); //在线选座
313
- let code_index = item.cinema_type.findIndex(ii => ii == 'CODE'); //电子码
314
- item['sell_index'] = sell_index;
315
- item['code_index'] = code_index;
316
- item['seat_index'] = seat_index;
317
- return item;
466
+ item.resource_shop_id = item.cinema_id
467
+ return item
318
468
  });
319
469
  this.page_token = next_page_token;
320
- let citySubs = area_list.map(item => {
470
+ this.hasNext = res.next_page_token !== "";
471
+ let citySubs = area_list.map((item) => {
321
472
  return {
322
473
  label: item.area_name,
323
474
  value: item.area_code,
324
- count: item.cinema_count
325
- }
326
- })
327
- this.citySubs = [{ label: "全城", value: "", count: "" }].concat(citySubs);
475
+ count: item.cinema_count,
476
+ };
477
+ });
478
+ this.citySubs = [{ label: "全城", value: "", count: "" }].concat(
479
+ citySubs
480
+ );
328
481
  });
329
482
  },
330
483
  /**城市定位**********************/
@@ -381,11 +534,13 @@ export default {
381
534
  this.subIndex = i;
382
535
  },
383
536
 
384
-
385
- handleCityChange() {
386
- this.$xdUniHelper.navigateTo({
387
- url: this.choseCityPath,
388
- }, true);
537
+ handleCityChange() {
538
+ this.$xdUniHelper.navigateTo(
539
+ {
540
+ url: this.choseCityPath,
541
+ },
542
+ true
543
+ );
389
544
  },
390
545
 
391
546
  handleGetCitySub(city_code) {
@@ -423,7 +578,7 @@ export default {
423
578
  flex-direction: column;
424
579
  .cinema_header {
425
580
  &-mask {
426
- height: unit(108, rpx)
581
+ height: unit(108, rpx);
427
582
  }
428
583
  display: flex;
429
584
  align-items: center;
@@ -504,18 +659,18 @@ export default {
504
659
  padding: unit(24, rpx);
505
660
  flex: 1;
506
661
  overflow: auto;
507
- &.skeleton-wrap{
508
- .cinema_item{
509
- .item_name{
662
+ &.skeleton-wrap {
663
+ .cinema_item {
664
+ .item_name {
510
665
  .skeleton-item(100%, 62rpx);
511
666
  }
512
- .item_addr{
667
+ .item_addr {
513
668
  .skeleton-item(300rpx);
514
669
  }
515
- .item_dist{
670
+ .item_dist {
516
671
  .skeleton-item(100rpx);
517
672
  }
518
- .cinema_item-btn{
673
+ .cinema_item-btn {
519
674
  .skeleton-item(160rpx, 50rpx, 50rpx);
520
675
  }
521
676
  }
@@ -22,7 +22,20 @@ module.exports = {
22
22
  show_cinema_type_name: "在线选座",
23
23
  brand_name: "",
24
24
  area_code: "2809",
25
- area_name: "通州区"
25
+ area_name: "通州区",
26
+ "consume_options": [{
27
+ "consume_mode": "CODE",
28
+ "desc": "电子码",
29
+ "icon": "iconduihuan"
30
+ }, {
31
+ "consume_mode": "SEAT",
32
+ "desc": "在线选座",
33
+ "icon": "iconxuanze"
34
+ }, {
35
+ "consume_mode": "SELL",
36
+ "desc": "线下核销",
37
+ "icon": "iconduihuan"
38
+ }]
26
39
  },
27
40
  {
28
41
  cinema_id: 6785091,
@@ -43,7 +56,20 @@ module.exports = {
43
56
  show_cinema_type_name: "在线选座",
44
57
  brand_name: "",
45
58
  area_code: "2810",
46
- area_name: "大兴区"
59
+ area_name: "大兴区",
60
+ "consume_options": [{
61
+ "consume_mode": "CODE",
62
+ "desc": "电子码",
63
+ "icon": "iconduihuan"
64
+ }, {
65
+ "consume_mode": "SEAT",
66
+ "desc": "在线选座",
67
+ "icon": "iconxuanze"
68
+ }, {
69
+ "consume_mode": "SELL",
70
+ "desc": "线下核销",
71
+ "icon": "iconduihuan"
72
+ }]
47
73
  },
48
74
  {
49
75
  cinema_id: 6771491,
@@ -0,0 +1,119 @@
1
+ 'use strict';
2
+ import {
3
+ dataVal,
4
+ statusDataVal,
5
+ statusShow
6
+ } from "@/utils/AttrTools";
7
+ export default (data, gValue, gColor, oldData = {}) => {
8
+ let scanPath = null, jhdPath = null, qpPath = null
9
+ if (data['scanPath'] !== undefined) {
10
+ scanPath = data['scanPath'];
11
+ } else {
12
+ scanPath = data['sellPath']
13
+ }
14
+ if (data['jhdPath'] !== undefined) {
15
+ jhdPath = data['jhdPath'];
16
+ } else {
17
+ jhdPath = data['sellPath']
18
+ }
19
+ if (data['qpPath'] !== undefined) {
20
+ qpPath = data['qpPath'];
21
+ } else {
22
+ qpPath = data['sellPath']
23
+ }
24
+ return [
25
+ {
26
+ label: '在线选座',
27
+ ele: 'xd-select-pages-path',
28
+ labelInline: true,
29
+ valueKey: 'schedule_choose_path',
30
+ placeholder: '请选择在线选座跳转页面',
31
+ className: 'input100',
32
+ value: dataVal({ data, key: 'schedule_choose_path', dValue: null, gValue }),
33
+ groupKey: 'advanced',
34
+ notice: '点击影院也会跳转到这个地址',
35
+ inline: false,
36
+ setting: {
37
+ mode: 'new',
38
+ router: XdBus.getParentApi('getPagesTree'),
39
+ },
40
+ },
41
+ {
42
+ label: '切换城市',
43
+ ele: 'xd-select-pages-path',
44
+ labelInline: true,
45
+ valueKey: 'choseCityPath',
46
+ placeholder: '选择切换城市跳转页面',
47
+ value: dataVal({ data, key: 'choseCityPath', dValue: null, gValue }),
48
+ className: 'input100',
49
+ groupKey: 'advanced',
50
+ setting: {
51
+ mode: 'new',
52
+ router: XdBus.getParentApi('getPagesTree'),
53
+ },
54
+ },
55
+ {
56
+ label: '电子码',
57
+ ele: 'xd-select-pages-path',
58
+ labelInline: true,
59
+ valueKey: 'codeChoosePath',
60
+ placeholder: '请选择电子码跳转页面',
61
+ value: dataVal({ data, key: 'codeChoosePath', dValue: null, gValue }),
62
+ className: 'input100',
63
+ groupKey: 'advanced',
64
+ setting: {
65
+ mode: 'new',
66
+ router: XdBus.getParentApi('getPagesTree'),
67
+ },
68
+ },
69
+ {
70
+ label: '扫码提货',
71
+ ele: 'xd-select-pages-path',
72
+ valueKey: 'scanPath',
73
+ placeholder: '请选择扫码提货跳转页面',
74
+ groupKey: 'advanced',
75
+ className: 'input100',
76
+ labelInline: true,
77
+ value: scanPath,
78
+ setting: {
79
+ mode: 'new',
80
+ router: XdBus.getParentApi('getPagesTree'),
81
+ },
82
+ inline: false,
83
+ notice: '服务类型为支持 核销时使用'
84
+ },
85
+ {
86
+ label: '聚好兑',
87
+ ele: 'xd-select-pages-path',
88
+ valueKey: 'jhdPath',
89
+ placeholder: '请选择聚好兑跳转页面',
90
+ labelInline: true,
91
+ groupKey: 'advanced',
92
+ className: 'input100',
93
+ value: jhdPath,
94
+ setting: {
95
+ mode: 'new',
96
+ router: XdBus.getParentApi('getPagesTree'),
97
+ },
98
+ inline: false,
99
+ notice: '服务类型为支持 核销时使用'
100
+ },
101
+ {
102
+ label: '展码提货',
103
+ ele: 'xd-select-pages-path',
104
+ valueKey: 'qpPath',
105
+ placeholder: '请选择展码提货跳转页面',
106
+ groupKey: 'advanced',
107
+ labelInline: true,
108
+ className: 'input100',
109
+ value: qpPath,
110
+ setting: {
111
+ mode: 'new',
112
+ router: XdBus.getParentApi('getPagesTree'),
113
+ },
114
+ inline: false,
115
+ notice: '服务类型为支持 核销时使用'
116
+ },
117
+ ].filter(i => i)
118
+ }
119
+
@@ -0,0 +1,203 @@
1
+ 'use strict';
2
+
3
+ import { customVal, dataVal } from "@/utils/AttrTools";
4
+
5
+ export default (data, gValue, gColor, oldData = {}) => {
6
+ let checkFieldsBg = {
7
+ bodyPaddingStatus: ['bodyPadding'],
8
+ cardItemSpaceStatus: ['cardItemSpace']
9
+ }
10
+ let checkJHD = false;
11
+ let checkWB = false;
12
+ let checkQP = false
13
+ if (data['fastEntryStatus']===undefined) {
14
+ if (data['is_show_sell'] === 'Y') {
15
+ checkJHD = true;
16
+ checkWB = true;
17
+ checkQP = true;
18
+ }
19
+ }
20
+ return [
21
+ {
22
+ ele: 'title',
23
+ label: '基础',
24
+ size: 'small',
25
+ groupKey: 'content',
26
+ },
27
+ {
28
+ label: '排序方式',
29
+ ele: 'xd-site-select-list',
30
+ labelInline: true,
31
+ valueKey: 'sort_consume_mode',
32
+ value: dataVal({ data, key: 'sort_consume_mode', dValue: '', gValue }),
33
+ groupKey: 'content',
34
+ placeholder: '请选择排序方式',
35
+ multiple: false,
36
+ className: 'input80',
37
+ handleCustom({ action, data }) {
38
+ XdBus.getParentApi('getOptionsSettingList')({
39
+ setting_id: 'sort_consume_mode',
40
+ key: Date.now()
41
+ })
42
+ .then(res => {
43
+ data.cb(res.list)
44
+ })
45
+ .catch(error => {
46
+ console.error(error);
47
+ });
48
+ },
49
+ },
50
+ {
51
+ ele: 'title',
52
+ label: '组件样式',
53
+ size: 'small',
54
+ groupKey: 'content',
55
+ },
56
+ {
57
+ label: "门店布局",
58
+ ele: "xd-style-image",
59
+ groupKey: 'content',
60
+ valueKey: "shopListStyle",
61
+ value: dataVal({ data, key: 'shopListStyle', dValue: 'v3', gValue }),
62
+ labelInline: true,
63
+ className: 'input100',
64
+ handleCustom(cusRes) {
65
+ XdBus.getParentApi('getCompStylesOptions')({
66
+ layout_ids: '67gEK19OLvv1pnomF15oJ',
67
+ key: Date.now()
68
+ })
69
+ .then(res => {
70
+ res.list = res.list.filter(item => item.value !== 'v2')
71
+ cusRes.data.cb(res)
72
+ })
73
+ .catch(error => {
74
+ console.error(error);
75
+ });
76
+ },
77
+ },
78
+ {
79
+ label: "门店样式",
80
+ ele: "xd-style-image",
81
+ groupKey: 'content',
82
+ valueKey: "shopStyle",
83
+ cusStyle: { marginBottom: '5px' },
84
+ value: customVal({
85
+ data,
86
+ key: 'shopStyle',
87
+ fields: checkFieldsBg,
88
+ gValue,
89
+ sValue: `{"cardItemSpace":16,"margin":{"bottom":16,"left":16,"right":16,"top":16},"backgroundColor":"rgba(245, 245, 245, 1)"}`,
90
+ }),
91
+ labelInline: true,
92
+ className: 'input100',
93
+ handleCustom(cusRes) {
94
+ XdBus.getParentApi('getCompStylesOptions')({
95
+ layout_ids: 'KwoIQ5lXgRFd4LQMYWJIY',
96
+ key: Date.now()
97
+ })
98
+ .then(res => {
99
+ cusRes.data.cb(res)
100
+ })
101
+ .catch(error => {
102
+ console.error(error);
103
+ });
104
+ },
105
+ },
106
+ {
107
+ ele: 'title',
108
+ label: '展示内容',
109
+ size: 'small',
110
+ groupKey: 'content',
111
+ },
112
+ {
113
+ ele: 'xd-line',
114
+ groupKey: 'content'
115
+ },
116
+ {
117
+ label: "是否显示到店使用:",
118
+ ele: "xd-radio",
119
+ valueKey: "is_show_sell",
120
+ value: data['is_show_sell'] || 'N',
121
+ groupKey: 'content',
122
+ hidden: true,
123
+ list: [
124
+ { label: '显示', value: "Y" },
125
+ { label: '不显示', value: "N" },
126
+ ]
127
+ },
128
+ {
129
+ label: '门店地址',
130
+ ele: 'xd-cus-switch',
131
+ valueKey: 'showStoreAddress',
132
+ value: dataVal({ data, key: 'showStoreAddress', dValue: 'Y', gValue }),
133
+ isRefresh: true,
134
+ className: 'input100',
135
+ groupKey: 'content',
136
+ labelInline: true,
137
+ cusStyle: { marginBottom: '10px' },
138
+ setting: {
139
+ isBackType: 'string'
140
+ },
141
+ },
142
+ {
143
+ ele: 'xd-line',
144
+ groupKey: 'content'
145
+ },
146
+ {
147
+ label: '距离',
148
+ ele: 'xd-cus-switch',
149
+ valueKey: 'showStoreDistance',
150
+ value: dataVal({ data, key: 'showStoreDistance', dValue: "Y", gValue }),
151
+ className: 'input100',
152
+ groupKey: 'content',
153
+ labelInline: true,
154
+ cusStyle: { marginBottom: '10px' },
155
+ setting: {
156
+ isBackType: 'string'
157
+ },
158
+ },
159
+ {
160
+ ele: 'xd-line',
161
+ groupKey: 'content'
162
+ },
163
+ {
164
+ label: '快捷入口',
165
+ ele: 'xd-cus-switch',
166
+ valueKey: 'fastEntryStatus',
167
+ value: dataVal({ data, key: 'fastEntryStatus', dValue: "N", gValue }),
168
+ className: 'input100',
169
+ groupKey: 'content',
170
+ labelInline: true,
171
+ cusStyle: { marginBottom: '10px' },
172
+ setting: {
173
+ isBackType: 'string'
174
+ },
175
+ },
176
+ { ele: 'group_start' },
177
+ {
178
+ label: '',
179
+ ele: 'xd-name-check',
180
+ valueKey: 'fastEntry',
181
+ groupKey: 'content',
182
+ value: dataVal({ data, key: 'fastEntry', dValue: [], gValue }),
183
+ className: 'input100',
184
+ setting: {
185
+ isSort: false,
186
+ width: 90,
187
+ },
188
+ labelInline: true,
189
+ hidden: data['fastEntryStatus'] !== 'Y',
190
+ handleCustom({ action, data }) {
191
+ data.cb([
192
+ { value: 'jhd', label: '聚好兑', input: '', def: '聚好兑', check: checkJHD, placeholder: '服务类型为支持核销时使用' },
193
+ { value: 'wb', label: '扫一扫', input: '', def: '扫一扫', check: checkWB, placeholder: '服务类型为支持核销时使用' },
194
+ { value: 'qp', label: '快捷码', input: '', def: '去提货', check: checkQP, placeholder: '服务类型为支持核销时使用' },
195
+ { value: 'seat', label: '在线选座', input: '', def: '去订票', check: false, placeholder: '去订票' },
196
+ { value: 'code', label: '电子码', input: '', def: '电子码', check: false, placeholder: '电子码' },
197
+ ])
198
+ },
199
+ },
200
+ { ele: 'group_end' },
201
+ ].filter(i => i)
202
+ }
203
+
@@ -0,0 +1,242 @@
1
+ 'use strict';
2
+ import {
3
+ dataVal ,
4
+ statusShow,
5
+ statusDataVal,
6
+ getCustomAttr,
7
+ cRaBorShadow
8
+ } from "@/utils/AttrTools";
9
+ export default function (data, gValue, gColor, oldData) {
10
+ console.log('data', data, gValue, gColor, oldData);
11
+ let defCardItemBorder = cRaBorShadow( data, 'cardItemBorder', {dValue:'N'},gValue);
12
+ let defCardItemShadow = cRaBorShadow( data, 'cardItemShadow', {dValue:'N'},gValue);
13
+ let defCardImageBorder = cRaBorShadow( data, 'cardImageBorder', {dValue:'N'},gValue);
14
+ return [
15
+ {
16
+ label: "影院列表样式",
17
+ ele: "title",
18
+ groupKey: "style",
19
+ size: "small",
20
+ },
21
+ {
22
+ label: '内边距',
23
+ ele: 'xd-radio',
24
+ groupKey: 'style',
25
+ valueKey: 'itemPaddingStatus',
26
+ value: statusDataVal({data, key:'itemPaddingStatus', fields:['itemPadding'],gValue}),
27
+ labelInline:true,
28
+ list: [
29
+ {label: '默认', value: 'D'},
30
+ {label: '自定义', value: 'C'},
31
+ ]
32
+ },
33
+ {ele: 'group_start'},
34
+ {
35
+ label: '',
36
+ ele: 'xd-margin-padding',
37
+ groupKey:'style',
38
+ valueKey: 'itemPadding',
39
+ hidden:!statusShow({data, key: 'itemPaddingStatus', fields:['itemPadding'], gValue}),
40
+ value: dataVal({
41
+ data,
42
+ key:'itemPadding',
43
+ dValue:[gValue.isAdd && gValue.isFirst ?{top:16,left:16, right:16, bottom:16}:20],
44
+ gValue,
45
+ isPM: true,
46
+ }),
47
+ setting: {
48
+ type: 'padding',
49
+ },
50
+ },
51
+ {ele: 'group_end'},
52
+ {
53
+ label: '背景色',
54
+ ele: 'xd-radio',
55
+ groupKey: 'style',
56
+ valueKey: 'cardItemBgColorStatus',
57
+ value: statusDataVal({data, key: 'cardItemBgColorStatus', fields:['cardItemBgColor'], gValue}),
58
+ labelInline:true,
59
+ list: [
60
+ {label: '默认', value: 'D'},
61
+ {label: '自定义', value: 'C'},
62
+ ]
63
+ },
64
+ {ele: 'group_start'},
65
+ {
66
+ label: '',
67
+ ele: 'xd-color',
68
+ groupKey:'style',
69
+ valueKey: 'cardItemBgColor',
70
+ labelInline:true,
71
+ value: dataVal({data, key:'cardItemBgColor', dValue:'#FFF', gValue}),
72
+ hidden: !statusShow({data, key: 'cardItemBgColorStatus', fields:['cardItemBgColor'], gValue}),
73
+ placeholder: '请选择背景颜色',
74
+ classNmae: 'input80',
75
+ setting: {
76
+ showAlpha: true
77
+ },
78
+ inline: false,
79
+ },
80
+ {ele: 'group_end'},
81
+ {
82
+ label: '间距设置',
83
+ ele: 'xd-radio',
84
+ groupKey: 'style',
85
+ valueKey: 'cardItemSpaceStatus',
86
+ value: statusDataVal({data, key:'cardItemSpaceStatus', fields:['cardItemSpace'],gValue,cusField:['shopStyle']}),
87
+ labelInline:true,
88
+ list: [
89
+ {label: '默认', value: 'D'},
90
+ {label: '自定义', value: 'C'},
91
+ ]
92
+ },
93
+ {ele: 'group_start'},
94
+ {
95
+ label: "",
96
+ groupKey: 'style',
97
+ ele: 'xd-slider',
98
+ valueKey: "cardItemSpace",
99
+ value: dataVal({data, key:'cardItemSpace', dValue:[gValue.isAdd && gValue.isFirst ?16:20], gValue}),
100
+ hidden: !statusShow({data, key: 'cardItemSpaceStatus', fields:['cardItemSpace'], gValue}),
101
+ className: "input100",
102
+ labelInline: true,
103
+ setting:{
104
+ min: 0,
105
+ max: 100,
106
+ step:1,
107
+ showStops:false,
108
+ showInput:false,
109
+ }
110
+ },
111
+ {ele: 'group_end'},
112
+ {
113
+ label: '圆角',
114
+ ele: 'xd-radio',
115
+ groupKey: 'style',
116
+ valueKey: 'cardItemRadiusStatus',
117
+ value: statusDataVal({data, key:'cardItemRadiusStatus', fields:['cardItemRadius'],gValue}),
118
+ labelInline:true,
119
+ list: [
120
+ {label: '默认', value: 'D'},
121
+ {label: '无圆角', value: 'N'},
122
+ {label: '自定义', value: 'C'},
123
+ ]
124
+ },
125
+ {ele: 'group_start'},
126
+ {
127
+ label: '',
128
+ ele: 'xd-site-select-list',
129
+ labelInline: true,
130
+ valueKey: 'cardItemRadius',
131
+ value: dataVal({data, key:'cardItemRadius', dValue:['10'], gValue}),
132
+ hidden: !statusShow({data, key: 'cardItemRadiusStatus', fields:['cardItemRadius'], gValue}),
133
+ placeholder: '请选择圆角',
134
+ multiple: false,
135
+ className: 'input40',
136
+ groupKey:'style',
137
+ handleCustom({action, data}) {
138
+ XdBus.getParentApi('getOptionsSettingList')({
139
+ setting_id: 'edtix_style_radius',
140
+ key: Date.now()
141
+ })
142
+ .then(res => {
143
+ res.list = res.list.filter(item=>{
144
+ return item.label !== '无';
145
+ });
146
+ data.cb(res.list)
147
+ })
148
+ .catch(error => {
149
+ console.error(error);
150
+ });
151
+ },
152
+ },
153
+ {ele: 'group_end'},
154
+ {
155
+ label: '描边',
156
+ ele: 'xd-border',
157
+ labelInline: true,
158
+ groupKey:'style',
159
+ valueKey: 'cardItemBorder',
160
+ value: defCardItemBorder,
161
+ setting: {
162
+ selected:defCardItemBorder.type,
163
+ isRadio: true,//启用editx默认
164
+ isDef: true, //启动默认选项
165
+ //==设置默认值==
166
+ color: '#f8f8f8',
167
+ width: '2',
168
+ style: 'solid'
169
+ //==设置默认值==
170
+ },
171
+ },
172
+ {
173
+ label: '投影',
174
+ ele: 'xd-shadow',
175
+ labelInline: true,
176
+ groupKey:'style',
177
+ valueKey: 'cardItemShadow',
178
+ value: defCardItemShadow,
179
+ className: 'input100',
180
+ setting: {
181
+ selected: defCardItemShadow.type,
182
+ isRadio:true,
183
+ isDef: true,
184
+ default: {
185
+ color:'rgba(0,0,0,0.1)',
186
+ width:'10',
187
+ }
188
+ },
189
+ handleCustom({action, data}) {
190
+ XdBus.getParentApi('getOptionsSettingList')({setting_id: 'edtix_style_radius'})
191
+ .then(res => {
192
+ res.list = res.list.filter(item=>{
193
+ return item.label !== '无';
194
+ });
195
+ data.cb(res.list)
196
+ })
197
+ .catch(error => {
198
+ console.error(error);
199
+ data.cb([])
200
+ });
201
+ },
202
+ },
203
+ {
204
+ label: "背景颜色:",
205
+ ele: "xd-color",
206
+ valueKey: "bodyBgColor",
207
+ value: data.bodyBgColor || "",
208
+ groupKey: "style",
209
+ hidden:true,
210
+ },
211
+ {
212
+ label: '距离样式',
213
+ ele: 'xd-radio',
214
+ groupKey: 'style',
215
+ valueKey: 'distanceColorStatus',
216
+ value: statusDataVal({data, key: 'distanceColorStatus', fields:['distanceColor'], gValue}),
217
+ labelInline:true,
218
+ list: [
219
+ {label: '默认', value: 'D'},
220
+ {label: '自定义', value: 'C'},
221
+ ]
222
+ },
223
+ {ele: 'group_start'},
224
+ {
225
+ label: '',
226
+ ele: 'xd-color',
227
+ groupKey:'style',
228
+ valueKey: 'distanceColor',
229
+ labelInline:true,
230
+ value: dataVal({data, key:'distanceColor', dValue:'#999999', gValue}),
231
+ hidden: !statusShow({data, key: 'distanceColorStatus', fields:['distanceColor'], gValue}),
232
+ placeholder: '请选择背景颜色',
233
+ classNmae: 'input80',
234
+ setting: {
235
+ showAlpha: true
236
+ },
237
+ inline: false,
238
+ },
239
+ {ele: 'group_end'},
240
+ ].filter(i=>i)
241
+ }
242
+
@@ -0,0 +1,80 @@
1
+ 'use strict';
2
+ import {
3
+ dataVal,
4
+ statusShow,
5
+ statusDataVal,
6
+ } from "@/utils/AttrTools";
7
+ import shops from "./shops";
8
+
9
+ export default function (data, gValue, gColor, oldData) {
10
+ return [
11
+ {
12
+ label: "内容区",
13
+ ele: "title",
14
+ groupKey: "style",
15
+ size: "small",
16
+ },
17
+ {
18
+ label: '内容区边距',
19
+ ele: 'xd-radio',
20
+ groupKey: 'style',
21
+ valueKey: 'bodyPaddingStatus',
22
+ value: statusDataVal({ data, key: 'bodyPaddingStatus', fields: ['bodyPadding'], gValue, cusField: ['shopStyle'] }),
23
+ labelInline: true,
24
+ list: [
25
+ { label: '默认', value: 'D' },
26
+ { label: '自定义', value: 'C' },
27
+ ]
28
+ },
29
+ { ele: 'group_start' },
30
+ {
31
+ label: '',
32
+ ele: 'xd-margin-padding',
33
+ groupKey: 'style',
34
+ valueKey: 'bodyPadding',
35
+ hidden: !statusShow({ data, key: 'bodyPaddingStatus', fields: ['bodyPadding'], gValue }),
36
+ value: dataVal({
37
+ data,
38
+ key: 'bodyPadding',
39
+ dValue: [gValue.isAdd && gValue.isFirst ? { bottom: 0, left: 16, right: 16, top: 16 } : 20],
40
+ gValue,
41
+ isPM: true,
42
+ }),
43
+ setting: {
44
+ type: 'margin',
45
+ },
46
+ },
47
+ { ele: 'group_end' },
48
+ {
49
+ label: '内容区背景',
50
+ ele: 'xd-radio',
51
+ groupKey: 'style',
52
+ valueKey: 'contentBgColorStatus',
53
+ value: statusDataVal({ data, key: 'contentBgColorStatus', fields: ['contentBgColor'], gValue }),
54
+ labelInline: true,
55
+ list: [
56
+ { label: '默认', value: 'D' },
57
+ { label: '自定义', value: 'C' },
58
+ ]
59
+ },
60
+ { ele: 'group_start' },
61
+ {
62
+ label: '',
63
+ ele: 'xd-color',
64
+ groupKey: 'style',
65
+ valueKey: 'contentBgColor',
66
+ labelInline: true,
67
+ value: dataVal({ data, key: 'contentBgColor', dValue: '#f8f8f8', gValue }),
68
+ hidden: !statusShow({ data, key: 'contentBgColorStatus', fields: ['contentBgColor'], gValue }),
69
+ placeholder: '请选择背景颜色',
70
+ classNmae: 'input80',
71
+ setting: {
72
+ showAlpha: true
73
+ },
74
+ inline: false,
75
+ },
76
+ { ele: 'group_end' },
77
+ ...shops(data, gValue, gColor, oldData),
78
+ ].filter(i => i)
79
+ }
80
+