jufubao-base 1.0.186 → 1.0.187-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.
@@ -0,0 +1,246 @@
1
+ <template>
2
+ <view class="xd-tfk-order-item">
3
+ <view class="o_header">
4
+ <view class="h_l">
5
+ <xd-font-icon
6
+ v-if="item.biz_code_icon"
7
+ :icon="item.biz_code_icon"
8
+ :size="item['biz_code_icon_size']"
9
+ ></xd-font-icon>
10
+ <view :class="{ marginLeft: item.biz_code_icon }" style="margin-left: 20rpx;">{{item.biz_code_name }}</view>
11
+ </view>
12
+ <view v-if="isShowOrderNo==='N'" class="o_status" :style="{
13
+ color:item.status.status_type !== 'error' ? mainColor : '#999999',
14
+ }">{{ item.status.status_name }}</view>
15
+ </view>
16
+ <view class="o_title" v-if="isShowOrderNo==='Y'">
17
+ <view class="o_number">订单编号:{{ item.main_order_id }}</view>
18
+ <view class="o_status" :style="{
19
+ color:item.status.status_type !== 'error' ? mainColor : '#999999',
20
+ }">{{ item.status.status_name }}</view>
21
+ </view>
22
+ <view class="prod_list">
23
+ <!-- 单个商品展示商品信息 -->
24
+ <template v-if="item.products.length == 1">
25
+ <view class="one_prod" v-for="Sitem in item.products" :key="Sitem.key">
26
+ <view class="prod_img">
27
+ <image :src="Sitem.product_thumb" style="background: #ffffff" mode="aspectFill"></image>
28
+ </view>
29
+ <view class="prod_info">
30
+ <view class="prod_name">{{ Sitem.product_name }}</view>
31
+ <view v-if="Sitem.brand_name" class="prod_brand" :style="{color: brandTextColor}">{{ Sitem.brand_name }}</view>
32
+ <view v-if="Sitem.product_sku_name" class="prod_sku">规格:{{ Sitem.product_sku_name }}</view>
33
+ <view class="prod_price">
34
+ <view>¥448</view>
35
+ <view class="info-price">
36
+ <text>x</text>
37
+ <text>{{ Sitem.product_num }}</text>
38
+ </view>
39
+ </view>
40
+ </view>
41
+ </view>
42
+ </template>
43
+
44
+ <!-- 多个商品展示更多商品信息 -->
45
+ <view v-if="item.products.length > 1" class="more_prod">
46
+ <view class="img_list">
47
+ <view class="prod_img" v-for="prod in item.products" :key="prod.key">
48
+ <image :src="prod.product_thumb" style="background: #ffffff" mode="aspectFit"></image>
49
+ </view>
50
+ </view>
51
+ <view class="right_arrow">
52
+ <xd-font-icon icon='iconxiangyou_xian' :size="26" color="#bdc0c5"></xd-font-icon>
53
+ </view>
54
+ </view>
55
+ </view>
56
+ <view class="prod_total">
57
+ <view></view>
58
+ <view style="display: flex;align-items: center;">
59
+ 共{{item.products.length}}件商品 实付
60
+ <xd-unit
61
+ :isOld="false"
62
+ :price="item.total_amount"
63
+ :color="mainColor"
64
+ :fontSize="28"></xd-unit>
65
+ </view>
66
+ </view>
67
+ <view v-if="item.buttons.length" class="prod_footer">
68
+ <view style="flex: 1;"></view>
69
+ <view class="btn"
70
+ v-for="(btn,index) in item.buttons" :key="btn.key"
71
+ @click="handleBtnEvent(btn.action, item)"
72
+ >{{btn.text}}</view>
73
+ </view>
74
+ </view>
75
+ </template>
76
+
77
+ <script>
78
+ import XdFontIcon from "@/components/XdFontIcon/XdFontIcon"
79
+ import XdUnit from "@/components/XdUnit/XdUnit"
80
+ export default{
81
+ name:"XdTfkOrderItem",
82
+ components: {
83
+ XdFontIcon,
84
+ XdUnit,
85
+ },
86
+ props:{
87
+ item: Object,
88
+ mainColor: String,
89
+ isShowOrderNo: {
90
+ type: String,
91
+ },
92
+ brandTextColor: String
93
+ },
94
+ data(){
95
+ return{
96
+ }
97
+ },
98
+ methods:{
99
+ handleBtnEvent(action){
100
+ this.$emit('handleBtnEvent', action)
101
+ },
102
+ }
103
+ }
104
+ </script>
105
+
106
+ <style lang="less" scoped>
107
+ .xd-tfk-order-item{
108
+ padding-left: 30rpx;
109
+ overflow: hidden;
110
+ .o_header{
111
+ height: 90rpx;
112
+ display: flex;
113
+ align-items: center;
114
+ justify-content: space-between;
115
+ border-bottom: 1px solid #EDEDED;
116
+ padding-right: 30rpx;
117
+ color: #333333;
118
+ font-size: 28rpx;
119
+
120
+ .h_l{
121
+ display: flex;
122
+ align-items: center;
123
+ }
124
+ }
125
+ .o_title{
126
+ height: 80rpx;
127
+ display: flex;
128
+ align-items: center;
129
+ justify-content: space-between;
130
+ padding-right: 30rpx;
131
+ color: #333333;
132
+ font-size: 24rpx;
133
+ border-bottom: 1px solid #EDEDED;
134
+ }
135
+ .one_prod{
136
+ display: flex;
137
+ align-items: center;
138
+ width: 100%;
139
+ padding: 30rpx 30rpx 30rpx 0;
140
+ box-sizing: border-box;
141
+ .prod_img{
142
+ width: 140rpx;
143
+ height: 140rpx;
144
+ background-color: #f5f5f9;
145
+ image{
146
+ width: 100%;
147
+ height: 100%;
148
+ }
149
+ }
150
+ .prod_info{
151
+ flex: 1;
152
+ padding-left: 30rpx;
153
+ .prod_name{
154
+ color: #2e2f30;
155
+ font-size: 30rpx;
156
+ }
157
+ .prod_brand{
158
+ font-size: 24rpx;
159
+ margin-top: 8rpx;
160
+ }
161
+ .prod_sku{
162
+ color: #797d82;
163
+ font-size: 24rpx;
164
+ margin-top: 8rpx;
165
+ }
166
+ }
167
+ .prod_price{
168
+ display: flex;
169
+ justify-content: space-between;
170
+ align-items: center;
171
+ color: rgb(46, 47, 48);
172
+ font-size: 30rpx;
173
+ margin-top: 12rpx;
174
+ .info-price{
175
+ display: flex;
176
+ color: #bdc0c5;
177
+ font-size: 26rpx;
178
+ }
179
+ }
180
+ }
181
+ .prod_list{
182
+ position: relative;
183
+ .right_arrow{
184
+ position: absolute;
185
+ right: 0px;
186
+ height: 100%;
187
+ width: 60rpx;
188
+ top: 0;
189
+ background: #FFF;
190
+ display: flex;
191
+ align-items: center;
192
+ justify-content: center;
193
+ }
194
+ }
195
+ .more_prod{
196
+ display: flex;
197
+ flex-wrap: nowrap;
198
+ overflow: auto;
199
+ padding: 30rpx 30rpx 30rpx 0;
200
+ width: 100%;
201
+ .img_list{
202
+ display: flex;
203
+ flex-wrap: nowrap;
204
+ padding-right: 60rpx;
205
+ }
206
+ .prod_img{
207
+ width: 140rpx;
208
+ height: 140rpx;
209
+ display: flex;
210
+ align-items: center;
211
+ justify-content: center;
212
+ image{
213
+ width: 100%;
214
+ height: 100%;
215
+ }
216
+ }
217
+ }
218
+ .prod_total{
219
+ height: 80rpx;
220
+ display: flex;
221
+ align-items: center;
222
+ justify-content: space-between;
223
+ padding-right: 30rpx;
224
+ border-top: 1px solid #EDEDED;
225
+ color: #2e2f30;
226
+ font-size: 26rpx;
227
+ }
228
+ .prod_footer{
229
+ padding: 16rpx 30rpx 16rpx 0;
230
+ display: flex;
231
+ align-items: center;
232
+ border-top: 1px solid #EDEDED;
233
+ .btn{
234
+ width: 170rpx;
235
+ height: 66rpx;
236
+ border: 1px solid #EDEDED;
237
+ display: flex;
238
+ align-items: center;
239
+ justify-content: center;
240
+ margin-left: 20rpx;
241
+ color: #2e2f30;
242
+ font-size: 24rpx;
243
+ }
244
+ }
245
+ }
246
+ </style>
@@ -167,7 +167,6 @@
167
167
  ],
168
168
  data() {
169
169
  return {
170
- // hideMask: true,
171
170
  menuType: "card", // card, coupon
172
171
  loadingList: true,
173
172
  cardList: [],
@@ -24,15 +24,26 @@ export default {
24
24
  className: 'input80',
25
25
  rules: [
26
26
  {
27
- required: true,
27
+ required: false,
28
28
  validator: (rule, value, callback) => {
29
29
  value = value.trim();
30
+ if(value.length === 0) return callback()
30
31
  if (value.length < 1 || value.length > 4) callback('卡券自定义名称长度为:1-4字符');
31
32
  else callback()
32
33
  },
33
34
  trigger: 'blur'
34
35
  }
35
36
  ],
37
+ notice: '卡券自定义名称设置,默认值:<span style="color:red">卡券</span>,长度为:1-4字符',
38
+ inline: false,
39
+ },
40
+
41
+ //style
42
+ {
43
+ ele: 'title',
44
+ label: '轮廓设置',
45
+ size: 'small',
46
+ groupKey:'style',
36
47
  },
37
48
  {
38
49
  label: '卡券文字颜色:',
@@ -42,13 +53,7 @@ export default {
42
53
  value: data['cardNameColor'] || null,
43
54
  placeholder: '请选择卡券文字颜色',
44
55
  classNmae: 'input80',
45
- },
46
-
47
- {
48
- ele: 'title',
49
- label: '整体风格',
50
- size: 'small',
51
- groupKey:'style',
56
+ hidden:true,
52
57
  },
53
58
  {
54
59
  label: '背景颜色:',
@@ -79,13 +84,13 @@ export default {
79
84
  },
80
85
  },
81
86
  {
82
- label: '间距:',
87
+ label: '行间距:',
83
88
  ele: 'el-input',
84
89
  type: 'number',
85
90
  valueKey: 'padding',
86
91
  groupKey:'style',
87
92
  value: data.padding || '',
88
- placeholder: '请输入间距',
93
+ placeholder: '请输入行间距',
89
94
  className: 'input60',
90
95
  inline: false,
91
96
  notice: '设置间距,<span style="color: red">单位:像素</span>。默认值:<span style="color: red">20</span>像素',
@@ -118,10 +123,160 @@ export default {
118
123
  },
119
124
  {
120
125
  ele: 'title',
121
- label: '内容区域风格',
126
+ label: '标题设置',
127
+ size: 'small',
128
+ groupKey:'style',
129
+ },
130
+ {
131
+ label: "标题样式设置",
132
+ ele: "xd-text-and-bgc",
133
+ groupKey:'style',
134
+ valueKey: 'titleStyle',
135
+ value: data['titleStyle'] || null,
136
+ setting: {
137
+ fontSize: true,
138
+ color: true,
139
+ bgColor: false,
140
+ weight: true,
141
+ selected:false
142
+ },
143
+ handleCustom({action, data}) {
144
+ XdBus.getParentApi('getOptionsSettingList')({setting_id: 'edtix_style_font_size'})
145
+ .then(res => {
146
+ data.cb(res.list)
147
+ })
148
+ .catch(error => {
149
+ console.error(error);
150
+ data.cb([])
151
+ });
152
+ },
153
+ },
154
+ {
155
+ ele: 'title',
156
+ label: `添加${data['cardName'] || '卡券'}设置`,
157
+ size: 'small',
158
+ groupKey:'style',
159
+ },
160
+ {
161
+ label: "文字样式设置",
162
+ ele: "xd-text-and-bgc",
163
+ groupKey:'style',
164
+ valueKey: 'addBtnStyle',
165
+ value: data['addBtnStyle'] || null,
166
+ setting: {
167
+ fontSize: true,
168
+ color: true,
169
+ bgColor: false,
170
+ weight: true,
171
+ selected:false
172
+ },
173
+ handleCustom({action, data}) {
174
+ XdBus.getParentApi('getOptionsSettingList')({setting_id: 'edtix_style_font_size'})
175
+ .then(res => {
176
+ data.cb(res.list)
177
+ })
178
+ .catch(error => {
179
+ console.error(error);
180
+ data.cb([])
181
+ });
182
+ },
183
+ },
184
+ {
185
+ label: '圆角设置:',
186
+ ele: 'xd-site-select-list',
187
+ valueKey: 'addBtnRadius',
188
+ groupKey:'style',
189
+ value: data['addBtnRadius'] || '40',
190
+ placeholder: '请选择圆角设置',
191
+ multiple: false,
192
+ className: 'input80',
193
+ handleCustom({action, data}) {
194
+ XdBus.getParentApi('getOptionsSettingList')({setting_id: 'edtix_style_radius'})
195
+ .then(res => {
196
+ data.cb(res.list)
197
+ })
198
+ .catch(error => {
199
+ console.error(error);
200
+ });
201
+ },
202
+ },
203
+ {
204
+ label: '背景颜色:',
205
+ ele: 'xd-color',
206
+ valueKey: 'addBtnBgColor',
207
+ groupKey:'style',
208
+ value: data['addBtnBgColor'] || null,
209
+ placeholder: '请选择背景颜色',
210
+ classNmae: 'input80',
211
+ },
212
+ {
213
+ label: '投影设置:',
214
+ ele: 'xd-shadow',
215
+ groupKey:'style',
216
+ valueKey: 'addBtnShadow',
217
+ value: data['addBtnShadow'] || '',
218
+ setting: {
219
+ selected: 'N'
220
+ },
221
+ handleCustom({action, data}) {
222
+ XdBus.getParentApi('getOptionsSettingList')({setting_id: 'edtix_style_radius'})
223
+ .then(res => {
224
+ data.cb(res.list)
225
+ })
226
+ .catch(error => {
227
+ console.error(error);
228
+ data.cb([])
229
+ });
230
+ },
231
+ },
232
+ {
233
+ label: '边框设置:',
234
+ ele: 'xd-border',
235
+ groupKey:'style',
236
+ valueKey: 'addBtnBorder',
237
+ value: data['addBtnBorder'] || {},
238
+ setting: {
239
+ selected:'N'
240
+ },
241
+ },
242
+ {
243
+ ele: 'title',
244
+ label: `进入我的${data['cardName'] || '卡券'}设置`,
122
245
  size: 'small',
123
246
  groupKey:'style',
124
247
  },
248
+ {
249
+ label: '填充:',
250
+ ele: 'xd-margin-padding',
251
+ valueKey: 'contentPadding',
252
+ groupKey:'style',
253
+ value: data['contentPadding'] || null,
254
+ setting: {
255
+ type: 'padding',
256
+ },
257
+ placeholder: '请设填充',
258
+ inline: false,
259
+ notice: '设置填充值,<span style="color: red">单位:像素</span>。默认值:<span style="color:red">40</span>像素',
260
+ },
261
+ {
262
+ label: '圆角设置:',
263
+ ele: 'xd-site-select-list',
264
+ valueKey: 'radius',
265
+ groupKey:'style',
266
+ value: data['radius'] || '10',
267
+ placeholder: '请选择内容圆角设置',
268
+ multiple: false,
269
+ className: 'input80',
270
+ handleCustom({action, data}) {
271
+ XdBus.getParentApi('getOptionsSettingList')({setting_id: 'edtix_style_radius'})
272
+ .then(res => {
273
+ data.cb(res.list)
274
+ })
275
+ .catch(error => {
276
+ console.error(error);
277
+ });
278
+ },
279
+ },
125
280
  {
126
281
  label: '背景颜色:',
127
282
  ele: 'xd-color',
@@ -132,30 +287,88 @@ export default {
132
287
  classNmae: 'input80',
133
288
  },
134
289
  {
135
- label: '按钮背景颜色:',
290
+ label: '投影设置:',
291
+ ele: 'xd-shadow',
292
+ groupKey:'style',
293
+ valueKey: 'contShadow',
294
+ value: data['contShadow'] || '',
295
+ setting: {
296
+ selected: 'N'
297
+ },
298
+ handleCustom({action, data}) {
299
+ XdBus.getParentApi('getOptionsSettingList')({setting_id: 'edtix_style_radius'})
300
+ .then(res => {
301
+ data.cb(res.list)
302
+ })
303
+ .catch(error => {
304
+ console.error(error);
305
+ data.cb([])
306
+ });
307
+ },
308
+ },
309
+ {
310
+ label: '边框设置:',
311
+ ele: 'xd-border',
312
+ groupKey:'style',
313
+ valueKey: 'contBorder',
314
+ value: data['contBorder'] || {},
315
+ setting: {
316
+ selected:'N'
317
+ },
318
+ },
319
+ {
320
+ ele: 'title',
321
+ label: `进入我的${data['cardName'] || '卡券'}按钮样式设置`,
322
+ size: 'small',
323
+ groupKey:'style',
324
+ },
325
+ {
326
+ label: '圆角设置:',
327
+ ele: 'xd-site-select-list',
328
+ valueKey: 'btnRadius',
329
+ value: data['btnRadius'] || '40',
330
+ groupKey:'style',
331
+ placeholder: '请选择圆角设置',
332
+ multiple: false,
333
+ className: 'input60',
334
+ handleCustom({action, data}) {
335
+ XdBus.getParentApi('getOptionsSettingList')({
336
+ setting_id: 'edtix_style_radius',
337
+ key: Date.now()
338
+ })
339
+ .then(res => {
340
+ data.cb(res.list)
341
+ })
342
+ .catch(error => {
343
+ console.error(error);
344
+ });
345
+ },
346
+ },
347
+ {
348
+ label: '背景颜色:',
136
349
  ele: 'xd-color',
137
350
  valueKey: 'btnBgColor',
138
351
  groupKey:'style',
139
352
  value: data['btnBgColor'] || null,
140
- placeholder: '请选择按钮背景颜色',
353
+ placeholder: '请选择背景颜色',
141
354
  classNmae: 'input80',
142
355
  },
143
356
  {
144
- label: '按钮文字颜色:',
357
+ label: '文字颜色:',
145
358
  ele: 'xd-color',
146
359
  valueKey: 'btnTextColor',
147
360
  groupKey:'style',
148
361
  value: data['btnTextColor'] || null,
149
- placeholder: '请选择按钮文字颜色',
362
+ placeholder: '请选择文字颜色',
150
363
  classNmae: 'input80',
151
364
  },
152
365
  {
153
- label: '按钮文字大小:',
366
+ label: '文字大小:',
154
367
  ele: 'xd-site-select-list',
155
368
  valueKey: 'btnFontSize',
156
369
  groupKey:'style',
157
370
  value: data['btnFontSize'] || '',
158
- placeholder: '请选择按钮文字大小',
371
+ placeholder: '请选择文字大小',
159
372
  multiple: false,
160
373
  className: 'input80',
161
374
  handleCustom({action, data}) {
@@ -171,11 +384,13 @@ export default {
171
384
  },
172
385
  },
173
386
 
387
+ //=====属性已废弃(不能删除,已隐藏)====
174
388
  {
175
389
  ele: 'title',
176
390
  label: '边框设置',
177
391
  size: 'small',
178
392
  groupKey:'style',
393
+ hidden: true
179
394
  },
180
395
  {
181
396
  label: '是否有边框:',
@@ -186,6 +401,7 @@ export default {
186
401
  placeholder: '请选择是否有边框',
187
402
  multiple: false,
188
403
  className: 'input80',
404
+ hidden: true,
189
405
  list: [
190
406
  {label: '是', value: 'Y'},
191
407
  {label: '否', value: 'N'},
@@ -199,6 +415,7 @@ export default {
199
415
  value: data['is_border_c'] || '',
200
416
  placeholder: '请选择边框颜色',
201
417
  classNmae: 'input80',
418
+ hidden: true
202
419
  },
203
420
  data['is_border'] === 'Y' && {
204
421
  label: '边框大小:',
@@ -209,26 +426,10 @@ export default {
209
426
  value: data['is_border_w'] || '',
210
427
  placeholder: '请输入边框颜色',
211
428
  className: 'input80',
429
+ hidden: true
212
430
  },
213
- {
214
- label: '内容圆角设置:',
215
- ele: 'xd-site-select-list',
216
- valueKey: 'radius',
217
- groupKey:'style',
218
- value: data['radius'] || '10',
219
- placeholder: '请选择内容圆角设置',
220
- multiple: false,
221
- className: 'input80',
222
- handleCustom({action, data}) {
223
- XdBus.getParentApi('getOptionsSettingList')({setting_id: 'edtix_style_radius'})
224
- .then(res => {
225
- data.cb(res.list)
226
- })
227
- .catch(error => {
228
- console.error(error);
229
- });
230
- },
231
- },
431
+ //=====属性已废弃(不能删除,已隐藏)====
432
+
232
433
  {
233
434
  label: '添加卡券路径:',
234
435
  ele: 'xd-select-pages-path',
@@ -236,43 +437,34 @@ export default {
236
437
  groupKey:'advanced',
237
438
  placeholder: '请选择添加卡券路径',
238
439
  value: data['add_url'] || null,
440
+ className: 'input100',
239
441
  setting: {
240
442
  router: XdBus.getParentApi('getPagesTree'),
241
443
  },
242
- rules: [
243
- {required: true, message: '请选择添加卡券路径', trigger: 'change'},
244
- ],
245
- inline: false,
246
444
  },
247
445
  {
248
446
  label: '设置支付密码路径:',
249
447
  ele: 'xd-select-pages-path',
250
448
  valueKey: 'pwd_url',
251
449
  groupKey:'advanced',
450
+ className: 'input100',
252
451
  placeholder: '请选择设置支付密码路径',
253
452
  value: data['pwd_url'] || null,
254
453
  setting: {
255
454
  router: XdBus.getParentApi('getPagesTree'),
256
455
  },
257
- rules: [
258
- {required: true, message: '请选择设置支付密码路径', trigger: 'change'},
259
- ],
260
- inline: false,
261
456
  },
262
457
  {
263
458
  label: '进入我的票券路径:',
264
459
  ele: 'xd-select-pages-path',
265
460
  valueKey: 'card_url',
266
461
  groupKey:'advanced',
462
+ className: 'input100',
267
463
  placeholder: '请选择进入我的票券路径',
268
464
  value: data['card_url'] || null,
269
465
  setting: {
270
466
  router: XdBus.getParentApi('getPagesTree'),
271
467
  },
272
- rules: [
273
- {required: true, message: '请选择进入我的票券路径', trigger: 'change'},
274
- ],
275
- inline: false,
276
468
  },
277
469
  {
278
470
  label: '',