jufubao-third 1.0.21 → 1.0.22-beta10

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 (67) hide show
  1. package/.claude/settings.local.json +12 -0
  2. package/package.json +1 -1
  3. package/src/components/JfbThirdPay/WalletMix.js +1 -0
  4. package/src/components/JfbThirdRideCheckPay/Api.js +18 -0
  5. package/src/components/JfbThirdRideCheckPay/Attr.js +17 -0
  6. package/src/components/JfbThirdRideCheckPay/JfbThirdRideCheckPay.vue +217 -0
  7. package/src/components/JfbThirdRideCheckPay/JfbThirdRideCheckPayLess.less +80 -0
  8. package/src/components/JfbThirdRideCheckPay/JfbThirdRideCheckPayMixin.js +30 -0
  9. package/src/components/JfbThirdRideCheckPay/Mock.js +7 -0
  10. package/src/components/JfbThirdRideCheckPay/cusAttr/advanced.js +28 -0
  11. package/src/components/JfbThirdRideCheckPay/cusAttr/content.js +27 -0
  12. package/src/components/JfbThirdRideCheckPay/cusAttr/style.js +7 -0
  13. package/src/components/JfbThirdRideConfirm/Api.js +37 -0
  14. package/src/components/JfbThirdRideConfirm/Attr.js +17 -0
  15. package/src/components/JfbThirdRideConfirm/JfbThirdRideConfirm.vue +527 -0
  16. package/src/components/JfbThirdRideConfirm/JfbThirdRideConfirmLess.less +80 -0
  17. package/src/components/JfbThirdRideConfirm/JfbThirdRideConfirmMixin.js +30 -0
  18. package/src/components/JfbThirdRideConfirm/Mock.js +69 -0
  19. package/src/components/JfbThirdRideConfirm/cusAttr/advanced.js +7 -0
  20. package/src/components/JfbThirdRideConfirm/cusAttr/content.js +27 -0
  21. package/src/components/JfbThirdRideConfirm/cusAttr/style.js +7 -0
  22. package/src/components/JfbThirdRideGenOrder/Api.js +21 -0
  23. package/src/components/JfbThirdRideGenOrder/Attr.js +17 -0
  24. package/src/components/JfbThirdRideGenOrder/JfbThirdRideGenOrder.vue +234 -0
  25. package/src/components/JfbThirdRideGenOrder/JfbThirdRideGenOrderLess.less +80 -0
  26. package/src/components/JfbThirdRideGenOrder/JfbThirdRideGenOrderMixin.js +30 -0
  27. package/src/components/JfbThirdRideGenOrder/Mock.js +11 -0
  28. package/src/components/JfbThirdRideGenOrder/cusAttr/advanced.js +37 -0
  29. package/src/components/JfbThirdRideGenOrder/cusAttr/content.js +7 -0
  30. package/src/components/JfbThirdRideGenOrder/cusAttr/style.js +7 -0
  31. package/src/components/JfbThirdRideHome/Api.js +44 -0
  32. package/src/components/JfbThirdRideHome/Attr.js +17 -0
  33. package/src/components/JfbThirdRideHome/JfbThirdRideHome.vue +831 -0
  34. package/src/components/JfbThirdRideHome/JfbThirdRideHomeLess.less +80 -0
  35. package/src/components/JfbThirdRideHome/JfbThirdRideHomeMixin.js +30 -0
  36. package/src/components/JfbThirdRideHome/Mock.js +13 -0
  37. package/src/components/JfbThirdRideHome/cusAttr/advanced.js +52 -0
  38. package/src/components/JfbThirdRideHome/cusAttr/content.js +27 -0
  39. package/src/components/JfbThirdRideHome/cusAttr/style.js +7 -0
  40. package/src/components/JfbThirdRideLand/Api.js +58 -0
  41. package/src/components/JfbThirdRideLand/Attr.js +17 -0
  42. package/src/components/JfbThirdRideLand/JfbThirdRideLand.vue +256 -0
  43. package/src/components/JfbThirdRideLand/JfbThirdRideLandLess.less +80 -0
  44. package/src/components/JfbThirdRideLand/JfbThirdRideLandMixin.js +30 -0
  45. package/src/components/JfbThirdRideLand/Mock.js +13 -0
  46. package/src/components/JfbThirdRideLand/cusAttr/advanced.js +22 -0
  47. package/src/components/JfbThirdRideLand/cusAttr/content.js +60 -0
  48. package/src/components/JfbThirdRideLand/cusAttr/style.js +109 -0
  49. package/src/components/JfbThirdRideRecord/Api.js +33 -0
  50. package/src/components/JfbThirdRideRecord/Attr.js +17 -0
  51. package/src/components/JfbThirdRideRecord/JfbThirdRideRecord.vue +533 -0
  52. package/src/components/JfbThirdRideRecord/JfbThirdRideRecordLess.less +80 -0
  53. package/src/components/JfbThirdRideRecord/JfbThirdRideRecordMixin.js +30 -0
  54. package/src/components/JfbThirdRideRecord/Mock.js +44 -0
  55. package/src/components/JfbThirdRideRecord/cusAttr/advanced.js +22 -0
  56. package/src/components/JfbThirdRideRecord/cusAttr/content.js +27 -0
  57. package/src/components/JfbThirdRideRecord/cusAttr/style.js +7 -0
  58. package/src/components/JfbThirdRideStartEnd/Api.js +20 -0
  59. package/src/components/JfbThirdRideStartEnd/Attr.js +17 -0
  60. package/src/components/JfbThirdRideStartEnd/JfbThirdRideStartEnd.vue +382 -0
  61. package/src/components/JfbThirdRideStartEnd/JfbThirdRideStartEndLess.less +80 -0
  62. package/src/components/JfbThirdRideStartEnd/JfbThirdRideStartEndMixin.js +30 -0
  63. package/src/components/JfbThirdRideStartEnd/Mock.js +17 -0
  64. package/src/components/JfbThirdRideStartEnd/cusAttr/advanced.js +22 -0
  65. package/src/components/JfbThirdRideStartEnd/cusAttr/content.js +27 -0
  66. package/src/components/JfbThirdRideStartEnd/cusAttr/style.js +7 -0
  67. package/src/mixins/getCoordinatesMixins.js +407 -0
@@ -0,0 +1,527 @@
1
+ <template>
2
+ <view
3
+ class="jfb-third-ride-confirm"
4
+ @click="handleEditxSelect"
5
+ :class="{ editx : isEditx && active }"
6
+ >
7
+ <!--#ifdef H5-->
8
+ <view
9
+ class="jfb-third-ride-confirm__edit"
10
+ :class="{ editx : isEditx && active }"
11
+ v-if="isEditx && active"
12
+ >
13
+ <view class="jfb-third-ride-confirm__edit-icon" @click.stop="delEdit">
14
+ <xd-font-icon icon="iconshanchu-01" color="#fff" size="30"></xd-font-icon>
15
+ </view>
16
+ </view>
17
+ <!-- #endif -->
18
+ <view v-if="estimateInfo" class="jfb-third-ride-confirm__body">
19
+ <!-- 路线信息 -->
20
+ <view class="ride-route">
21
+ <view class="ride-route__content">
22
+ <view class="ride-route__indicator">
23
+ <view class="ride-dot ride-dot--start"></view>
24
+ <view class="ride-route__vline"></view>
25
+ <view class="ride-dot ride-dot--end"></view>
26
+ </view>
27
+ <view class="ride-route__info">
28
+ <view class="ride-route__addr">
29
+ <text class="ride-addr">{{ startName }}</text>
30
+ <xd-font-icon icon="iconjiantou" color="#666" size="28" class="ride-route__arrow-icon"></xd-font-icon>
31
+ <text class="ride-addr">{{ endName }}</text>
32
+ </view>
33
+ <view class="ride-meta">
34
+ <view class="ride-tag">
35
+ <xd-font-icon icon="iconshandian" color="#FF8D1A" size="20"></xd-font-icon>
36
+ <text>即时用车</text>
37
+ </view>
38
+ <text class="ride-dist">{{ estimateDistanceName }} · 约{{ estimateTimeName }}</text>
39
+ </view>
40
+ </view>
41
+ <view class="ride-route__edit-btn" @click.stop="handleEdit">
42
+ <xd-font-icon icon="iconbianji-01" color="#999" size="32"></xd-font-icon>
43
+ </view>
44
+ </view>
45
+ </view>
46
+
47
+ <!-- 车型选择 -->
48
+ <view class="ride-cars">
49
+ <view class="ride-cars__title">选择车型</view>
50
+ <view
51
+ v-for="(item, index) in carTypes"
52
+ :key="index"
53
+ class="ride-car"
54
+ :class="{ 'ride-car--active': selectedIndex === index }"
55
+ @click="selectCar(index)"
56
+ >
57
+ <view class="ride-car__thumb">
58
+ <image :src="item.image" mode="aspectFit" class="ride-car__img"></image>
59
+ </view>
60
+ <view class="ride-car__info">
61
+ <view class="ride-car__name">{{ item.ride_type_name }}{{ item.ride_type_name.indexOf('型') === -1 ? '型' : '' }}</view>
62
+ <view class="ride-car__desc">{{ item.estimate_distance_name }}</view>
63
+ <view class="ride-car__time">约{{ item.estimate_time_name }}到达</view>
64
+ </view>
65
+ <view class="ride-price">
66
+ <view class="ride-price__val">
67
+ <text class="ride-price__sym">¥</text>
68
+ <text class="ride-price__num">{{ item.min_estimate_price }}</text>
69
+ </view>
70
+ <view class="ride-price__label">预估</view>
71
+ </view>
72
+ </view>
73
+ </view>
74
+
75
+ <!-- 费用明细 -->
76
+ <!-- <view class="ride-cost">
77
+ <view class="ride-cost__head">
78
+ <text class="ride-cost__title">费用明细</text>
79
+ <xd-font-icon icon="iconxiajiantou" color="#999" size="24"></xd-font-icon>
80
+ </view>
81
+ </view> -->
82
+
83
+ <!-- 呼叫用车按钮 -->
84
+ <view class="ride-submit">
85
+ <view class="ride-submit__btn" @click="handleCallRide">
86
+ <text class="ride-submit__text">呼叫用车</text>
87
+ </view>
88
+ </view>
89
+ </view>
90
+ </view>
91
+ </template>
92
+
93
+ <script>
94
+ import XdFontIcon from "@/components/XdFontIcon/XdFontIcon";
95
+ import { jfbRootExec } from "@/utils/xd.event";
96
+ import JfbThirdRideConfirmMixin from "./JfbThirdRideConfirmMixin";
97
+ import { getContainerPropsValue } from "@/utils/xd.base";
98
+ import componentsMixins from "@/mixins/componentsMixins";
99
+ import extsMixins from "@/mixins/extsMixins";
100
+ import getServiceUrl from "@/common/getServiceUrl"
101
+ export default {
102
+ name: "JfbThirdRideConfirm",
103
+ components: {
104
+ XdFontIcon
105
+ },
106
+ mixins: [
107
+ componentsMixins, extsMixins, JfbThirdRideConfirmMixin
108
+ ],
109
+ data() {
110
+ return {
111
+ xnamespace: '',
112
+ estimateInfo: null,
113
+ estimate_id: "",
114
+ selectedIndex: 0,
115
+ startName: '',
116
+ endName: '',
117
+ startLng: '',
118
+ startLat: '',
119
+ endLng: '',
120
+ endLat: '',
121
+ serviceType: 1,
122
+ rideTypes: '',
123
+ estimateDistanceName: '',
124
+ estimateTimeName: '',
125
+ carTypes: [],
126
+ carTypeImages: {
127
+ 1: '/common/car/economy.png',
128
+ 3: '/common/car/business.png',
129
+ 4: '/common/car/luxury.png',
130
+ 12: '/common/car/vip.png'
131
+ }
132
+ }
133
+ },
134
+ watch: {
135
+ container(value, oldValue) {
136
+ if (JSON.stringify(value) === JSON.stringify(oldValue)) return;
137
+ if (this.$configProject['isPreview']) this.init(value)
138
+ },
139
+ },
140
+ created() {
141
+ this.init(this.container);
142
+ },
143
+ methods: {
144
+ onJfbLoad(options) {
145
+ this.setNameSpace(options);
146
+ this.estimate_id = options.estimate_id;
147
+ this.p_rideEstimatePriceResult();
148
+ },
149
+ p_rideEstimatePriceResult(){
150
+ this.$xdShowLoading({});
151
+ jfbRootExec("rideEstimatePriceResult", {
152
+ vm: this,
153
+ data: {
154
+ xnamespace: this.xnamespace,
155
+ estimate_id: this.estimate_id
156
+ }
157
+ }).then(res => {
158
+ this.$xdHideLoading();
159
+ if (!res || !res.list || !res.list.length) return;
160
+ this.estimateInfo = res;
161
+ // 路线信息
162
+ this.startName = res.start_name || '';
163
+ this.endName = res.end_name || '';
164
+ this.startLng = res.start_lng || '';
165
+ this.startLat = res.start_lat || '';
166
+ this.endLng = res.end_lng || '';
167
+ this.endLat = res.end_lat || '';
168
+ this.serviceType = res.service_type || 1;
169
+ this.rideTypes = res.ride_types || '';
170
+ const firstItem = res.list[0];
171
+ this.estimateDistanceName = firstItem.estimate_distance_name || '';
172
+ this.estimateTimeName = firstItem.estimate_time_name || '';
173
+ // 车型列表
174
+ this.carTypes = res.list.map(item => {
175
+ const typeName = item.ride_type_name + (item.ride_type_name.indexOf('型') === -1 ? '型' : '');
176
+ return {
177
+ ...item,
178
+ ride_type_name: typeName,
179
+ image: getServiceUrl(this.carTypeImages[item.ride_type] || ''),
180
+ min_estimate_price: this.$xdUniHelper.divisionFloatNumber(item.min_estimate_price, 100),
181
+ // max_estimate_price: this.$xdUniHelper.divisionFloatNumber(item.max_estimate_price, 100)
182
+ };
183
+ });
184
+ })
185
+ },
186
+ selectCar(index) {
187
+ this.selectedIndex = index
188
+ },
189
+ handleEdit() {
190
+ this.$xdUniHelper.navigateBack();
191
+ },
192
+ handleCallRide() {
193
+ const car = this.carTypes[this.selectedIndex]
194
+ jfbRootExec('rideH5Url', {
195
+ vm: this,
196
+ data: {
197
+ xnamespace: this.xnamespace,
198
+ start_lng: this.startLng,
199
+ start_lat: this.startLat,
200
+ end_lng: this.endLng,
201
+ end_lat: this.endLat,
202
+ service_type: this.serviceType,
203
+ ride_types: String(car.ride_type),
204
+ max_estimate_price: car.max_estimate_price,
205
+ start_name: this.startName,
206
+ end_name: this.endName,
207
+ start_address: this.startName,
208
+ end_address: this.endName
209
+ }
210
+ }).then(res => {
211
+ if(res.can_order){
212
+ // #ifdef H5
213
+ window.location.href = res.h5_url;
214
+ // #endif
215
+
216
+ // #ifdef MP-WEIXIN
217
+ uni.navigateTo({
218
+ url: `/pages/thirdview/thirdview?seatUrl=${Base64.encodeURI(res.h5_url)}`
219
+ });
220
+ // #endif
221
+ }
222
+ })
223
+ },
224
+ /**
225
+ * @description 监听事件变化
226
+ * @param container {object} 业务组件对象自己
227
+ */
228
+ init(container) {
229
+ this.xnamespace = getContainerPropsValue(container, 'content.xnamespace', this.projectAttr.business_code || '');
230
+ },
231
+ onJfbScroll(options) {
232
+ console.log('event.onJfbScroll', options)
233
+ },
234
+ onJfbReachBottom(options) {
235
+ console.log('event.onJfbReachBottom', options)
236
+ },
237
+ onJfbShow(options) {
238
+ console.log('event.onJfbShow', options)
239
+ },
240
+ onJfbHide(options) {
241
+ console.log('event.onJfbHide', options)
242
+ },
243
+ onJfbBack(options) {
244
+ console.log('event.onJfbBack', options)
245
+ },
246
+ onJfbUpdate(...data) {
247
+ console.log('event.onJfbUpdate', data)
248
+ },
249
+ onJfbCustomEvent(options) {
250
+ console.log('event.onJfbReachBottom', options)
251
+ },
252
+ }
253
+ }
254
+
255
+ </script>
256
+
257
+ <style scoped lang="less">
258
+ @import "./JfbThirdRideConfirmLess.less";
259
+
260
+ .jfb-third-ride-confirm {
261
+ background: #FFFFFF;
262
+ min-height: 100vh;
263
+
264
+ &__body {
265
+ padding-bottom: 180rpx;
266
+ }
267
+ }
268
+
269
+ // 路线信息
270
+ .ride-route {
271
+ background: #fff;
272
+ padding: 32rpx 32rpx 28rpx;
273
+ position: relative;
274
+
275
+ //底部分隔线,距左右32rpx
276
+ &::after {
277
+ content: '';
278
+ position: absolute;
279
+ left: 32rpx;
280
+ right: 32rpx;
281
+ bottom: 0;
282
+ height: 1px;
283
+ background: #EEEEEE;
284
+ }
285
+
286
+ &__content {
287
+ display: flex;
288
+ align-items: flex-start;
289
+ }
290
+
291
+ &__indicator {
292
+ display: flex;
293
+ flex-direction: column;
294
+ align-items: center;
295
+ padding-top: 8rpx;
296
+ margin-right: 32rpx;
297
+ flex-shrink: 0;
298
+ }
299
+
300
+ &__vline {
301
+ width: 2rpx;
302
+ height: 32rpx;
303
+ background: #ddd;
304
+ margin: 8rpx 0;
305
+ }
306
+
307
+ &__info {
308
+ flex: 1;
309
+ min-width: 0;
310
+ }
311
+
312
+ &__addr {
313
+ display: flex;
314
+ align-items: center;
315
+ margin-bottom: 16rpx;
316
+ }
317
+
318
+ &__arrow-icon {
319
+ margin: 0 16rpx;
320
+ flex-shrink: 0;
321
+ }
322
+
323
+ &__edit-btn {
324
+ width: 64rpx;
325
+ height: 64rpx;
326
+ display: flex;
327
+ align-items: center;
328
+ justify-content: center;
329
+ background: #F8F8F8;
330
+ border: 1px solid #EEEEEE;
331
+ border-radius: 20rpx;
332
+ flex-shrink: 0;
333
+ margin-left: 16rpx;
334
+ }
335
+ }
336
+
337
+ .ride-dot {
338
+ width: 16rpx;
339
+ height: 16rpx;
340
+ border-radius: 50%;
341
+ flex-shrink: 0;
342
+
343
+ &--start {
344
+ background: #52c41a;
345
+ }
346
+
347
+ &--end {
348
+ background: #ff4d4f;
349
+ }
350
+ }
351
+
352
+ .ride-addr {
353
+ font-size: 28rpx;
354
+ color: #333;
355
+ font-weight: 500;
356
+ }
357
+
358
+ .ride-meta {
359
+ display: flex;
360
+ align-items: center;
361
+ }
362
+
363
+ .ride-tag {
364
+ display: flex;
365
+ align-items: center;
366
+ background: rgba(85, 75, 230, 0.05);
367
+ color: #554BE6;
368
+ font-size: 24rpx;
369
+ padding: 8rpx 16rpx;
370
+ border-radius: 20rpx;
371
+ margin-right: 16rpx;
372
+
373
+ text {
374
+ margin-left: 16rpx;
375
+ }
376
+ }
377
+
378
+ .ride-dist {
379
+ font-size: 24rpx;
380
+ color: #999;
381
+ }
382
+
383
+ // 车型选择
384
+ .ride-cars {
385
+ margin-top: 24rpx;
386
+
387
+ &__title {
388
+ font-size: 28rpx;
389
+ color: #333;
390
+ font-weight: 400;
391
+ padding: 0 30rpx;
392
+ margin-bottom: 24rpx;
393
+ }
394
+ }
395
+
396
+ .ride-car {
397
+ display: flex;
398
+ align-items: center;
399
+ background: #fff;
400
+ margin: 0 32rpx 16rpx;
401
+ padding: 28rpx 24rpx;
402
+ border-radius: 16rpx;
403
+ border: 2rpx solid #EEEEEE;
404
+ transition: all 0.2s;
405
+
406
+ &--active {
407
+ border-color: #E5010E;
408
+ background: #FFEDEC;
409
+ }
410
+
411
+ &__thumb {
412
+ width: 108rpx;
413
+ height: 108rpx;
414
+ display: flex;
415
+ align-items: center;
416
+ justify-content: center;
417
+ border-radius: 12rpx;
418
+ margin-right: 24rpx;
419
+ flex-shrink: 0;
420
+ overflow: hidden;
421
+ }
422
+
423
+ &__img {
424
+ width: 108rpx;
425
+ height: 108rpx;
426
+ }
427
+
428
+ &__info {
429
+ flex: 1;
430
+ min-width: 0;
431
+ }
432
+
433
+ &__name {
434
+ font-size: 28rpx;
435
+ color: #333;
436
+ font-weight: 500;
437
+ margin-bottom: 8rpx;
438
+ }
439
+
440
+ &__desc {
441
+ font-size: 20rpx;
442
+ color: #999;
443
+ margin-bottom: 4rpx;
444
+ }
445
+
446
+ &__time {
447
+ font-size: 20rpx;
448
+ color: #999;
449
+ }
450
+ }
451
+
452
+ .ride-price {
453
+ text-align: right;
454
+ flex-shrink: 0;
455
+ margin-left: 16rpx;
456
+
457
+ &__val {
458
+ display: flex;
459
+ align-items: baseline;
460
+ justify-content: flex-end;
461
+ }
462
+
463
+ &__sym {
464
+ font-size: 28rpx;
465
+ color: #333;
466
+ font-weight: 600;
467
+ }
468
+
469
+ &__num {
470
+ font-size: 40rpx;
471
+ color: #333;
472
+ font-weight: 700;
473
+ }
474
+
475
+ &__label {
476
+ font-size: 24rpx;
477
+ color: #999;
478
+ text-align: right;
479
+ }
480
+ }
481
+
482
+ // 费用明细
483
+ .ride-cost {
484
+ background: #fff;
485
+ margin-top: 20rpx;
486
+ padding: 30rpx;
487
+
488
+ &__head {
489
+ display: flex;
490
+ align-items: center;
491
+ justify-content: space-between;
492
+ }
493
+
494
+ &__title {
495
+ font-size: 32rpx;
496
+ color: #333;
497
+ font-weight: 600;
498
+ }
499
+ }
500
+
501
+ // 呼叫用车按钮
502
+ .ride-submit {
503
+ position: fixed;
504
+ bottom: 0;
505
+ left: 0;
506
+ right: 0;
507
+ padding: 24rpx 30rpx;
508
+ padding-bottom: calc(24rpx + env(safe-area-inset-bottom));
509
+ background: #fff;
510
+ z-index: 100;
511
+
512
+ &__btn {
513
+ background: #E5010E;
514
+ border-radius: 24rpx;
515
+ padding: 24rpx 0;
516
+ text-align: center;
517
+ box-shadow: 0 4rpx 12rpx rgba(255, 77, 79, 0.3);
518
+ }
519
+
520
+ &__text {
521
+ color: #fff;
522
+ font-size: 28rpx;
523
+ font-weight: 500;
524
+ letter-spacing: 2rpx;
525
+ }
526
+ }
527
+ </style>
@@ -0,0 +1,80 @@
1
+ /**
2
+ * @desc 获取绝对路径完整地址
3
+ * @param @path
4
+ **/
5
+ //例如:https://image.jufubao.cn/20220501010108/image/bg/default_gonghui_bg.png
6
+ @basePath: 'business/';
7
+ @doMain: '//sandbox-img.jufubao.cn/';
8
+
9
+ .getBusinessImageUrl(@path, @size: 'size8') {
10
+ @url: "@{doMain}@{basePath}@{path}?x-oss-process=style/@{size}";
11
+ background-image: url(@url);
12
+ }
13
+
14
+ //start
15
+ .jfb-third-ride-confirm {
16
+ box-sizing: border-box;
17
+
18
+ &__body{
19
+ position: relative;
20
+ overflow: hidden;
21
+ z-index: 2
22
+ }
23
+
24
+ &.editx,&.editx:hover {
25
+ position: relative;
26
+ min-height: unit(100, rpx);
27
+ z-index: 3;
28
+ &::after {
29
+ border: 2rpx dashed blue;
30
+ content: " ";
31
+ position: absolute;
32
+ top:0;
33
+ left:0;
34
+ bottom:0;
35
+ right:0;
36
+ z-index: var(--preview-z-index);
37
+ cursor: pointer;
38
+ }
39
+
40
+ }
41
+
42
+
43
+ &__edit {
44
+ cursor: pointer;
45
+ position: absolute;
46
+ right: unit(0, rpx);
47
+ top: unit(0, rpx);
48
+ height: unit(50, rpx);
49
+ z-index: 100;
50
+ display: flex;
51
+ justify-content: center;
52
+ align-items: center;
53
+ background: rgba(0, 0, 0, .4);
54
+ border-radius: 0 0 0 20rpx;
55
+ box-shadow: 0 0 10px rbga(0, 0, 0, 0.3);
56
+ color: #fff;
57
+ font-size: unit(22, rpx);
58
+ padding: 0 6rpx 0 6px;
59
+
60
+ &-icon{
61
+ padding: 0 unit(20, rpx);
62
+ }
63
+
64
+ &.editx {
65
+ box-sizing: border-box;
66
+
67
+ }
68
+ }
69
+ }
70
+ //end
71
+
72
+
73
+ /**notPreview**/
74
+ .jfb-third-ride-confirm {
75
+ //&:before {
76
+ //content: " ";
77
+ //display: table;
78
+ //}
79
+ }
80
+ /**endNotPreview**/
@@ -0,0 +1,30 @@
1
+ 'use strict';
2
+
3
+
4
+ //@AttrImport
5
+ import Attr from "./Attr";
6
+ //@EndAttrImport
7
+
8
+
9
+ export default {
10
+ data() {
11
+ return {
12
+ //#ifdef H5
13
+
14
+ //@AttrData
15
+ Attr:{}, //对外开发编辑属性
16
+ //@EndAttrData
17
+
18
+ // #endif
19
+ cssRoot: 'jfb-third-ride-confirm'
20
+ }
21
+ },
22
+ created() {
23
+
24
+ //@AttrDataCreated
25
+ this.Attr = this.$xdUniHelper.customClone(Attr);
26
+ //@EndAttrDataCreated
27
+
28
+
29
+ },
30
+ }
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+
3
+ module.exports = {
4
+ rideEstimatePriceResult: {
5
+ start_lng: "116.32",
6
+ start_lat: "39.89",
7
+ end_lng: "116.33",
8
+ end_lat: "40.00",
9
+ start_name: "北京西站",
10
+ end_name: "清华大学",
11
+ start_address: "北京西站",
12
+ end_address: "清华大学",
13
+ service_type: 1,
14
+ ride_types: "1,12,3,4",
15
+ max_estimate_price: 0,
16
+ departure_time: 1763133707228,
17
+ list: [
18
+ {
19
+ ride_type: 1,
20
+ ride_type_name: "经济",
21
+ min_estimate_price: 2166,
22
+ max_estimate_price: 22067,
23
+ estimate_distance: 20952,
24
+ estimate_time: 2145,
25
+ min_estimate_price_name: "21.66元",
26
+ max_estimate_price_name: "220.67元",
27
+ estimate_distance_name: "21公里",
28
+ estimate_time_name: "36分钟"
29
+ },
30
+ {
31
+ ride_type: 12,
32
+ ride_type_name: "品质专车",
33
+ min_estimate_price: 3167,
34
+ max_estimate_price: 12994,
35
+ estimate_distance: 20952,
36
+ estimate_time: 2145,
37
+ min_estimate_price_name: "31.67元",
38
+ max_estimate_price_name: "129.94元",
39
+ estimate_distance_name: "21公里",
40
+ estimate_time_name: "36分钟"
41
+ },
42
+ {
43
+ ride_type: 3,
44
+ ride_type_name: "商务",
45
+ min_estimate_price: 2510,
46
+ max_estimate_price: 14875,
47
+ estimate_distance: 20952,
48
+ estimate_time: 2145,
49
+ min_estimate_price_name: "25.10元",
50
+ max_estimate_price_name: "148.75元",
51
+ estimate_distance_name: "21公里",
52
+ estimate_time_name: "36分钟"
53
+ },
54
+ {
55
+ ride_type: 4,
56
+ ride_type_name: "豪华",
57
+ min_estimate_price: 4566,
58
+ max_estimate_price: 21461,
59
+ estimate_distance: 20952,
60
+ estimate_time: 2145,
61
+ min_estimate_price_name: "45.66元",
62
+ max_estimate_price_name: "214.61元",
63
+ estimate_distance_name: "21公里",
64
+ estimate_time_name: "36分钟"
65
+ }
66
+ ],
67
+ request_id: "7b906b3bb44c373a"
68
+ }
69
+ };
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ export default (data, gValue, gColor, oldData) => {
4
+ return [
5
+ //高级
6
+ ].filter(i=>i)
7
+ }