jufubao-base 1.0.111 → 1.0.113-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.
- package/package.json +1 -1
- package/src/components/JfbBaseCardInfo/JfbBaseCardInfo.vue +18 -37
- package/src/components/JfbBaseCardInfoEntry/JfbBaseCardInfoEntry.vue +17 -37
- package/src/components/JfbBaseConDialog/Api.js +0 -35
- package/src/components/JfbBaseConDialog/Attr.js +0 -13
- package/src/components/JfbBaseConDialog/JfbBaseConDialog.vue +6 -169
- package/src/components/JfbBaseConList/Attr.js +0 -11
- package/src/components/JfbBaseConList/JfbBaseConList.vue +20 -49
- package/src/components/JfbBaseConList/Mock.js +5 -19
- package/src/components/JfbBasePay/Api.js +2 -3
- package/src/components/JfbBasePay/JfbBasePay.vue +18 -28
- package/src/components/JfbBasePoster/JfbBasePoster.vue +2 -2
- package/src/components/JfbBaseSuccess/JfbBaseSuccess.vue +1 -4
- package/src/components/JfbBaseConDialog/XdCouCardBind.vue +0 -197
package/package.json
CHANGED
|
@@ -106,7 +106,7 @@
|
|
|
106
106
|
|
|
107
107
|
<script>
|
|
108
108
|
import XdFontIcon from "@/components/XdFontIcon/XdFontIcon";
|
|
109
|
-
import { jfbRootExec
|
|
109
|
+
import { jfbRootExec } from "@/utils/xd.event";
|
|
110
110
|
import { Base64 } from "js-base64";
|
|
111
111
|
import JfbBaseCardInfoMixin from "./JfbBaseCardInfoMixin";
|
|
112
112
|
import componentsMixins from "@/mixins/componentsMixins";
|
|
@@ -162,7 +162,6 @@ export default {
|
|
|
162
162
|
|
|
163
163
|
qrcode: "", //二维码
|
|
164
164
|
showForm: true,
|
|
165
|
-
hasCon: "", //是否有优惠券
|
|
166
165
|
|
|
167
166
|
//页面跳转地址
|
|
168
167
|
backUrl: "",
|
|
@@ -175,12 +174,6 @@ export default {
|
|
|
175
174
|
},
|
|
176
175
|
created() {},
|
|
177
176
|
methods: {
|
|
178
|
-
toShowCouponDialog(){
|
|
179
|
-
// jfbRootFnExec(this, 'onCustomEvent')("@showBaseConDialog", {user_card_number: "10001000001133"})
|
|
180
|
-
if(this.info){
|
|
181
|
-
jfbRootFnExec(this, 'onCustomEvent')("@showBaseConDialog", {user_card_number: this.info.card_number})
|
|
182
|
-
}
|
|
183
|
-
},
|
|
184
177
|
handleToLink(path) {
|
|
185
178
|
if (this.qrcode) {
|
|
186
179
|
jfbRootExec("qrCardBind", {
|
|
@@ -190,7 +183,14 @@ export default {
|
|
|
190
183
|
},
|
|
191
184
|
})
|
|
192
185
|
.then((res) => {
|
|
193
|
-
this
|
|
186
|
+
this.$xdAlert({
|
|
187
|
+
content: "绑定成功",
|
|
188
|
+
close: () => {
|
|
189
|
+
this.$xdUniHelper.redirectTo({
|
|
190
|
+
url: this.backUrl,
|
|
191
|
+
});
|
|
192
|
+
},
|
|
193
|
+
});
|
|
194
194
|
})
|
|
195
195
|
.catch();
|
|
196
196
|
} else {
|
|
@@ -202,32 +202,19 @@ export default {
|
|
|
202
202
|
},
|
|
203
203
|
})
|
|
204
204
|
.then((res) => {
|
|
205
|
-
|
|
205
|
+
console.log(this.$xdAlert, "this.$xdAlertfsdfs");
|
|
206
|
+
this.$xdAlert({
|
|
207
|
+
content: "绑定成功",
|
|
208
|
+
close: () => {
|
|
209
|
+
this.$xdUniHelper.redirectTo({
|
|
210
|
+
url: this.backUrl,
|
|
211
|
+
});
|
|
212
|
+
},
|
|
213
|
+
});
|
|
206
214
|
})
|
|
207
215
|
.catch();
|
|
208
216
|
}
|
|
209
217
|
},
|
|
210
|
-
handlerAfterBindCard(){
|
|
211
|
-
if(this.hasCon){
|
|
212
|
-
this.toShowCouponDialog();
|
|
213
|
-
this.$bus.$on("onCloseConDialog",(container_id) => {
|
|
214
|
-
if(container_id === this.hasCon){
|
|
215
|
-
this.$xdUniHelper.redirectTo({
|
|
216
|
-
url: this.backUrl,
|
|
217
|
-
});
|
|
218
|
-
}
|
|
219
|
-
})
|
|
220
|
-
}else{
|
|
221
|
-
this.$xdAlert({
|
|
222
|
-
content: "票券绑定成功",
|
|
223
|
-
close: () => {
|
|
224
|
-
this.$xdUniHelper.redirectTo({
|
|
225
|
-
url: this.backUrl,
|
|
226
|
-
});
|
|
227
|
-
},
|
|
228
|
-
});
|
|
229
|
-
}
|
|
230
|
-
},
|
|
231
218
|
init() {
|
|
232
219
|
this.backUrl = getContainerPropsValue(
|
|
233
220
|
this.container,
|
|
@@ -340,12 +327,6 @@ export default {
|
|
|
340
327
|
onJfbShow(options) {
|
|
341
328
|
this.onJfbLoad(options);
|
|
342
329
|
},
|
|
343
|
-
onJfbCustomEvent({action, data}){
|
|
344
|
-
if(action === 'baseConDialog@hasCon'){
|
|
345
|
-
this.hasCon = data;
|
|
346
|
-
}
|
|
347
|
-
console.log('onJfbCustomEvent',action, data);
|
|
348
|
-
}
|
|
349
330
|
},
|
|
350
331
|
};
|
|
351
332
|
</script>
|
|
@@ -124,7 +124,7 @@
|
|
|
124
124
|
|
|
125
125
|
<script>
|
|
126
126
|
import XdFontIcon from "@/components/XdFontIcon/XdFontIcon";
|
|
127
|
-
import { jfbRootExec
|
|
127
|
+
import { jfbRootExec } from "@/utils/xd.event";
|
|
128
128
|
import JfbBaseCardInfoEntryMixin from "./JfbBaseCardInfoEntryMixin";
|
|
129
129
|
import { getContainerPropsValue } from "@/utils/xd.base";
|
|
130
130
|
import getServiceUrl from "@/common/getServiceUrl";
|
|
@@ -157,7 +157,6 @@ export default {
|
|
|
157
157
|
|
|
158
158
|
qrcode: "", //二维码
|
|
159
159
|
showForm: true,
|
|
160
|
-
hasCon: "",
|
|
161
160
|
|
|
162
161
|
//页面跳转地址
|
|
163
162
|
backUrl: "",
|
|
@@ -176,12 +175,6 @@ export default {
|
|
|
176
175
|
},
|
|
177
176
|
created() {},
|
|
178
177
|
methods: {
|
|
179
|
-
toShowCouponDialog(){
|
|
180
|
-
// jfbRootFnExec(this, 'onCustomEvent')("@showBaseConDialog", {user_card_number: "10001000001133"})
|
|
181
|
-
if(this.info){
|
|
182
|
-
jfbRootFnExec(this, 'onCustomEvent')("@showBaseConDialog", {user_card_number: this.info.card_number})
|
|
183
|
-
}
|
|
184
|
-
},
|
|
185
178
|
handleToLink() {
|
|
186
179
|
if(this.info.card_point===0) {
|
|
187
180
|
this.$xdConfirm({
|
|
@@ -207,7 +200,14 @@ export default {
|
|
|
207
200
|
},
|
|
208
201
|
})
|
|
209
202
|
.then((res) => {
|
|
210
|
-
this
|
|
203
|
+
this.$xdAlert({
|
|
204
|
+
content: "票券绑定成功",
|
|
205
|
+
close: () => {
|
|
206
|
+
this.$xdUniHelper.redirectTo({
|
|
207
|
+
url: this.backUrl,
|
|
208
|
+
});
|
|
209
|
+
},
|
|
210
|
+
});
|
|
211
211
|
})
|
|
212
212
|
.catch();
|
|
213
213
|
} else {
|
|
@@ -221,32 +221,18 @@ export default {
|
|
|
221
221
|
})
|
|
222
222
|
.then((res) => {
|
|
223
223
|
console.log(this.$xdAlert, "this.$xdAlertfsdfs");
|
|
224
|
-
this
|
|
224
|
+
this.$xdAlert({
|
|
225
|
+
content: "票券绑定成功",
|
|
226
|
+
close: () => {
|
|
227
|
+
this.$xdUniHelper.redirectTo({
|
|
228
|
+
url: this.backUrl,
|
|
229
|
+
});
|
|
230
|
+
},
|
|
231
|
+
});
|
|
225
232
|
})
|
|
226
233
|
.catch();
|
|
227
234
|
}
|
|
228
235
|
},
|
|
229
|
-
handlerAfterBindCard(){
|
|
230
|
-
if(this.hasCon){
|
|
231
|
-
this.toShowCouponDialog();
|
|
232
|
-
this.$bus.$on("onCloseConDialog",(container_id) => {
|
|
233
|
-
if(container_id === this.hasCon){
|
|
234
|
-
this.$xdUniHelper.redirectTo({
|
|
235
|
-
url: this.backUrl,
|
|
236
|
-
});
|
|
237
|
-
}
|
|
238
|
-
})
|
|
239
|
-
}else{
|
|
240
|
-
this.$xdAlert({
|
|
241
|
-
content: "票券绑定成功",
|
|
242
|
-
close: () => {
|
|
243
|
-
this.$xdUniHelper.redirectTo({
|
|
244
|
-
url: this.backUrl,
|
|
245
|
-
});
|
|
246
|
-
},
|
|
247
|
-
});
|
|
248
|
-
}
|
|
249
|
-
},
|
|
250
236
|
init() {
|
|
251
237
|
this.backUrl = getContainerPropsValue(
|
|
252
238
|
this.container,
|
|
@@ -376,12 +362,6 @@ export default {
|
|
|
376
362
|
onJfbShow(options) {
|
|
377
363
|
this.onJfbLoad(options);
|
|
378
364
|
},
|
|
379
|
-
onJfbCustomEvent({action, data}){
|
|
380
|
-
if(action === 'baseConDialog@hasCon'){
|
|
381
|
-
this.hasCon = data;
|
|
382
|
-
}
|
|
383
|
-
console.log('onJfbCustomEvent',action, data);
|
|
384
|
-
}
|
|
385
365
|
},
|
|
386
366
|
};
|
|
387
367
|
</script>
|
|
@@ -16,39 +16,4 @@ module.exports = [
|
|
|
16
16
|
isConsole: true,
|
|
17
17
|
disabled: true,
|
|
18
18
|
},
|
|
19
|
-
{
|
|
20
|
-
mapFnName: 'getCouponList', //自定义方法名字(必选)
|
|
21
|
-
title: '获取优惠券列表',
|
|
22
|
-
path: '/sms-coupon/v1/activity-prizes-user/list',
|
|
23
|
-
isRule: false,
|
|
24
|
-
params: {
|
|
25
|
-
distribution_method: ['发放方式 entry=主动发放, homed=首页发放,paid=消费后发放,card_binded=绑定卡后发放', 'String', '选填'],
|
|
26
|
-
namespace: ['业务线', 'String', '必填'],
|
|
27
|
-
},
|
|
28
|
-
isConsole: true,
|
|
29
|
-
disabled: true,
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
mapFnName: 'getAllCoupon', //自定义方法名字(必选)
|
|
33
|
-
title: '领取优惠券',
|
|
34
|
-
path: '/sms-coupon/v1/activity-prizes-user/set',
|
|
35
|
-
isRule: false,
|
|
36
|
-
params: {
|
|
37
|
-
distribution_method: ['发放方式 entry=主动发放, homed=首页发放,paid=消费后发放,card_binded=绑定卡后发放', 'String', '选填'],
|
|
38
|
-
namespace: ['业务线', 'String', '必填'],
|
|
39
|
-
},
|
|
40
|
-
isConsole: true,
|
|
41
|
-
disabled: true,
|
|
42
|
-
},
|
|
43
|
-
{
|
|
44
|
-
mapFnName: 'getCouponResult', //自定义方法名字(必选)
|
|
45
|
-
title: '轮询查询活动结果',
|
|
46
|
-
path: '/sms-coupon/v1/activity-prizes-user/get',
|
|
47
|
-
isRule: false,
|
|
48
|
-
params: {
|
|
49
|
-
tmp_order_number: ['tmp_order_number', 'String', '选填'],
|
|
50
|
-
},
|
|
51
|
-
isConsole: true,
|
|
52
|
-
disabled: true,
|
|
53
|
-
},
|
|
54
19
|
];
|
|
@@ -31,19 +31,6 @@ export default {
|
|
|
31
31
|
{ label: '切换', value: 2 },
|
|
32
32
|
]
|
|
33
33
|
},
|
|
34
|
-
{
|
|
35
|
-
label: "触发事件:",
|
|
36
|
-
ele: "xd-select-list",
|
|
37
|
-
valueKey: "distribution_method",
|
|
38
|
-
value: data.distribution_method || "",
|
|
39
|
-
placeholder: "请选择触发事件",
|
|
40
|
-
className: 'input80',
|
|
41
|
-
list: [
|
|
42
|
-
{ label: "首页发放", value: "homed" },
|
|
43
|
-
{ label: "支付成功", value: "paid" },
|
|
44
|
-
{ label: "绑卡成功", value: "card_binded" },
|
|
45
|
-
]
|
|
46
|
-
},
|
|
47
34
|
{
|
|
48
35
|
label: '弹窗间隔:',
|
|
49
36
|
ele: 'el-input',
|
|
@@ -17,9 +17,9 @@
|
|
|
17
17
|
</view>
|
|
18
18
|
<!-- #endif -->
|
|
19
19
|
<view class="jfb-base-con-dialog__body">
|
|
20
|
-
<view
|
|
20
|
+
<view class="jfb-base-con-dialog__body-dialog" v-if="isShow">
|
|
21
21
|
<view class="jfb-base-con-dialog__body-dialog-mask"></view>
|
|
22
|
-
<view
|
|
22
|
+
<view class="jfb-base-con-dialog__body-dialog-content">
|
|
23
23
|
<view v-if="list.length>1" class="jfb-base-con-dialog__body-dialog-content-num">
|
|
24
24
|
<text>{{ currentIndex + 1 }}/{{ list.length }}</text>
|
|
25
25
|
</view>
|
|
@@ -51,16 +51,7 @@
|
|
|
51
51
|
size="64"
|
|
52
52
|
></xd-font-icon>
|
|
53
53
|
</view>
|
|
54
|
-
<view v-else class="jfb-base-con-dialog__body-dialog-content">
|
|
55
|
-
<xd-cou-card-bind
|
|
56
|
-
:list="couponList"
|
|
57
|
-
:setting="couponOther"
|
|
58
|
-
@closeDialog="handleCardBindClose"
|
|
59
|
-
@getCoupont="handleGetCoupon"
|
|
60
|
-
></xd-cou-card-bind>
|
|
61
|
-
</view>
|
|
62
54
|
</view>
|
|
63
|
-
|
|
64
55
|
<view
|
|
65
56
|
:style="{ background: backgroundColor, color: warningColor }"
|
|
66
57
|
class="jfb-base-con-dialog__body-pop"
|
|
@@ -73,7 +64,7 @@
|
|
|
73
64
|
|
|
74
65
|
<script>
|
|
75
66
|
import XdFontIcon from "@/components/XdFontIcon/XdFontIcon";
|
|
76
|
-
import { jfbRootExec, JfbEvent
|
|
67
|
+
import { jfbRootExec, JfbEvent } from "@/utils/xd.event";
|
|
77
68
|
import JfbBaseConDialogMixin from "./JfbBaseConDialogMixin";
|
|
78
69
|
import componentsMixins from "@/mixins/componentsMixins";
|
|
79
70
|
import extsMixins from "@/mixins/extsMixins";
|
|
@@ -83,13 +74,11 @@ import colorCardMixins from "@/mixins/colorCardMixins";
|
|
|
83
74
|
const Color = require("color");
|
|
84
75
|
import { mapState } from "vuex";
|
|
85
76
|
import storage from "@/common/storage";
|
|
86
|
-
import XdCouCardBind from "./XdCouCardBind";
|
|
87
77
|
|
|
88
78
|
export default {
|
|
89
79
|
name: "JfbBaseConDialog",
|
|
90
80
|
components: {
|
|
91
81
|
XdFontIcon,
|
|
92
|
-
XdCouCardBind
|
|
93
82
|
},
|
|
94
83
|
mixins: [componentsMixins, extsMixins, JfbBaseConDialogMixin],
|
|
95
84
|
data() {
|
|
@@ -104,15 +93,6 @@ export default {
|
|
|
104
93
|
isPreview: false, //是否预览
|
|
105
94
|
activity_id: "",
|
|
106
95
|
backgroundColor: "",
|
|
107
|
-
distribution_method: "homed", //触发事件
|
|
108
|
-
dispatchData: "", //触发事件参数
|
|
109
|
-
|
|
110
|
-
couponList: [],
|
|
111
|
-
couponOther: {},
|
|
112
|
-
order_num: null,
|
|
113
|
-
timer: null,
|
|
114
|
-
timeNum: 0,
|
|
115
|
-
|
|
116
96
|
};
|
|
117
97
|
},
|
|
118
98
|
computed: {
|
|
@@ -134,7 +114,6 @@ export default {
|
|
|
134
114
|
this.list_url = getContainerPropsValue(value, "content.list_url", {
|
|
135
115
|
value: "",
|
|
136
116
|
}).value;
|
|
137
|
-
this.distribution_method = getContainerPropsValue(value, "content.distribution_method", "homed");
|
|
138
117
|
this.type = getContainerPropsValue(value, "content.type", 1);
|
|
139
118
|
this.isHide = getContainerPropsValue(value, "content.isHide", false);
|
|
140
119
|
this.time = Number(getContainerPropsValue(value, "content.time", 3));
|
|
@@ -142,108 +121,16 @@ export default {
|
|
|
142
121
|
this.isShow = !this.isHide;
|
|
143
122
|
}
|
|
144
123
|
},
|
|
145
|
-
|
|
146
|
-
handleGetCoupon(item){
|
|
147
|
-
this.$xdShowLoading({});
|
|
148
|
-
jfbRootExec("getAllCoupon", {
|
|
149
|
-
vm: this,
|
|
150
|
-
data: {
|
|
151
|
-
prize_id: item.prize_id,
|
|
152
|
-
distribution_method: this.distribution_method,
|
|
153
|
-
...this.dispatchData
|
|
154
|
-
}
|
|
155
|
-
}).then(res => {
|
|
156
|
-
if (res.code == 400) {
|
|
157
|
-
this.$xdHideLoading();
|
|
158
|
-
this.$xdAlert({
|
|
159
|
-
content: res.message,
|
|
160
|
-
zIndex: 3200,
|
|
161
|
-
time: 2000,
|
|
162
|
-
isClose: false,
|
|
163
|
-
});
|
|
164
|
-
this.getDialogList();
|
|
165
|
-
return;
|
|
166
|
-
}
|
|
167
|
-
this.order_num = res.tmp_order_number;
|
|
168
|
-
setTimeout(()=>{
|
|
169
|
-
this.getResult();
|
|
170
|
-
},1000)
|
|
171
|
-
}).catch((err) => {
|
|
172
|
-
console.log(err, "err");
|
|
173
|
-
});
|
|
174
|
-
},
|
|
175
|
-
getResult() {
|
|
176
|
-
jfbRootExec("getCouponResult", {
|
|
177
|
-
vm: this,
|
|
178
|
-
data: {
|
|
179
|
-
tmp_order_number: this.order_num,
|
|
180
|
-
...this.dispatchData
|
|
181
|
-
},
|
|
182
|
-
})
|
|
183
|
-
.then((res) => {
|
|
184
|
-
if (res.status_type === "success") {
|
|
185
|
-
this.order_num = null;
|
|
186
|
-
this.$xdHideLoading();
|
|
187
|
-
this.$xdAlert({
|
|
188
|
-
content: "领取成功",
|
|
189
|
-
zIndex: 3200,
|
|
190
|
-
time: 2000,
|
|
191
|
-
isClose: false,
|
|
192
|
-
});
|
|
193
|
-
this.getDialogList();
|
|
194
|
-
if (this.timer) {
|
|
195
|
-
this.timeNum = 0;
|
|
196
|
-
clearTimeout(this.timer);
|
|
197
|
-
}
|
|
198
|
-
return;
|
|
199
|
-
}
|
|
200
|
-
if (res.status_type === "error") {
|
|
201
|
-
this.$xdHideLoading();
|
|
202
|
-
this.$xdAlert({
|
|
203
|
-
content: res.message,
|
|
204
|
-
zIndex: 3200,
|
|
205
|
-
time: 2000,
|
|
206
|
-
isClose: false,
|
|
207
|
-
});
|
|
208
|
-
if (res.code == 400) {
|
|
209
|
-
this.getDialogList();
|
|
210
|
-
}
|
|
211
|
-
if (this.timer) {
|
|
212
|
-
this.timeNum = 0;
|
|
213
|
-
clearTimeout(this.timer);
|
|
214
|
-
}
|
|
215
|
-
return;
|
|
216
|
-
}
|
|
217
|
-
|
|
218
|
-
this.timer = setTimeout(() => {
|
|
219
|
-
this.getResult();
|
|
220
|
-
if (this.timeNum > 5) {
|
|
221
|
-
this.$xdLog.setARMSInfo(
|
|
222
|
-
{ message: "领取中" },
|
|
223
|
-
`pay_${res.status_type}`
|
|
224
|
-
);
|
|
225
|
-
}
|
|
226
|
-
this.timeNum++;
|
|
227
|
-
}, Math.pow(2, this.timeNum > 5 ? 5 : this.timeNum) * 1000);
|
|
228
|
-
})
|
|
229
|
-
.catch((err) => {
|
|
230
|
-
this.$xdHideLoading();
|
|
231
|
-
console.log(err, "err");
|
|
232
|
-
});
|
|
233
|
-
},
|
|
234
|
-
p_getDialogList(){
|
|
124
|
+
getDialogList() {
|
|
235
125
|
jfbRootExec("getCouponDialogList", {
|
|
236
126
|
vm: this,
|
|
237
127
|
data: {
|
|
238
128
|
namespace: this.pageBusinessCode,
|
|
239
|
-
distribution_method: this.distribution_method,
|
|
240
|
-
...this.dispatchData
|
|
241
129
|
},
|
|
242
130
|
})
|
|
243
131
|
.then((res) => {
|
|
244
132
|
console.log(res, "resresres");
|
|
245
133
|
this.list = res.list;
|
|
246
|
-
if(res.list.length === 0) return;
|
|
247
134
|
this.currentImage = getServiceUrl(
|
|
248
135
|
this.list[this.currentIndex].app_activity_url
|
|
249
136
|
);
|
|
@@ -257,31 +144,6 @@ export default {
|
|
|
257
144
|
console.log(err, "err");
|
|
258
145
|
});
|
|
259
146
|
},
|
|
260
|
-
p_getCouponList(){
|
|
261
|
-
jfbRootExec("getCouponList", {
|
|
262
|
-
vm: this,
|
|
263
|
-
data: {
|
|
264
|
-
distribution_method: this.distribution_method,
|
|
265
|
-
...this.dispatchData
|
|
266
|
-
}
|
|
267
|
-
}).then(res => {
|
|
268
|
-
const { list, ...other } = res;
|
|
269
|
-
this.couponList = list;
|
|
270
|
-
this.couponOther = other;
|
|
271
|
-
if(res.can_take === "Y" && res.has_times === "Y" && list.length > 0){
|
|
272
|
-
this.isShow = true;
|
|
273
|
-
}else{
|
|
274
|
-
this.handleCardBindClose();
|
|
275
|
-
}
|
|
276
|
-
})
|
|
277
|
-
},
|
|
278
|
-
getDialogList() {
|
|
279
|
-
if(this.distribution_method === 'card_binded'){
|
|
280
|
-
this.p_getCouponList();
|
|
281
|
-
}else{
|
|
282
|
-
this.p_getDialogList();
|
|
283
|
-
}
|
|
284
|
-
},
|
|
285
147
|
handlePop() {
|
|
286
148
|
console.log("this.time", this.time * 60 + "分钟");
|
|
287
149
|
storage.set(this.containerId, 1, this.time);
|
|
@@ -289,23 +151,12 @@ export default {
|
|
|
289
151
|
},
|
|
290
152
|
onJfbLoad(options) {
|
|
291
153
|
console.log(11111);
|
|
292
|
-
//支付跟绑卡是主动触发
|
|
293
154
|
try {
|
|
294
|
-
if (!storage.get(this.containerId)
|
|
295
|
-
this.distribution_method !== "paid" &&
|
|
296
|
-
this.distribution_method !== "card_binded") this.getDialogList();
|
|
155
|
+
if (!storage.get(this.containerId)) this.getDialogList();
|
|
297
156
|
} catch (error) {
|
|
298
157
|
console.log(error, "errorerror");
|
|
299
158
|
}
|
|
300
|
-
if(this.distribution_method === 'card_binded'){
|
|
301
|
-
jfbRootFnExec(this, 'onCustomEvent')("baseConDialog@hasCon", this.containerId);
|
|
302
|
-
}
|
|
303
159
|
},
|
|
304
|
-
handleCardBindClose(){
|
|
305
|
-
this.isShow = false;
|
|
306
|
-
this.$bus.$emit("onCloseConDialog", this.containerId);
|
|
307
|
-
},
|
|
308
|
-
|
|
309
160
|
onJfbUpdate(data) {
|
|
310
161
|
storage.remove(this.containerId);
|
|
311
162
|
this.getDialogList();
|
|
@@ -315,15 +166,8 @@ export default {
|
|
|
315
166
|
this.onJfbLoad(options);
|
|
316
167
|
},
|
|
317
168
|
handleToList() {
|
|
318
|
-
let otherParams = "";
|
|
319
|
-
try {
|
|
320
|
-
if(this.dispatchData && this.$xdUniHelper.checkVarType(this.dispatchData) === 'object') {
|
|
321
|
-
otherParams = this.$xdUniHelper.jsonToParams(this.dispatchData);
|
|
322
|
-
}
|
|
323
|
-
} catch (error) {}
|
|
324
|
-
|
|
325
169
|
this.$xdUniHelper.navigateTo({
|
|
326
|
-
url: `${this.list_url}?activity_id=${this.activity_id}&distribution_method
|
|
170
|
+
url: `${this.list_url}?activity_id=${this.activity_id}&distribution_method=homed`,
|
|
327
171
|
});
|
|
328
172
|
},
|
|
329
173
|
handleClose() {
|
|
@@ -357,13 +201,6 @@ export default {
|
|
|
357
201
|
);
|
|
358
202
|
this.activity_id = this.list[this.currentIndex].activity_id;
|
|
359
203
|
},
|
|
360
|
-
onJfbCustomEvent({action, data}){
|
|
361
|
-
if(action === '@showBaseConDialog'){
|
|
362
|
-
this.dispatchData = data;
|
|
363
|
-
this.getDialogList();
|
|
364
|
-
}
|
|
365
|
-
console.log('onJfbCustomEvent',action, data);
|
|
366
|
-
}
|
|
367
204
|
},
|
|
368
205
|
};
|
|
369
206
|
</script>
|
|
@@ -6,17 +6,6 @@
|
|
|
6
6
|
export default {
|
|
7
7
|
style: [],
|
|
8
8
|
content: [
|
|
9
|
-
{
|
|
10
|
-
label: '查看已领票券路径:', //label
|
|
11
|
-
ele: 'xd-select-pages-path', //package 名称
|
|
12
|
-
valueKey: 'collectedPath', //form[valueKey]
|
|
13
|
-
placeholder: '请选择查看已领票券路径',
|
|
14
|
-
value: null,
|
|
15
|
-
setting: {
|
|
16
|
-
router: XdBus.getParentApi('getPagesTree'),
|
|
17
|
-
},
|
|
18
|
-
inline: false,
|
|
19
|
-
},
|
|
20
9
|
// {
|
|
21
10
|
// label: '领券规则:',
|
|
22
11
|
// ele: 'xd-site-news',
|
|
@@ -16,14 +16,15 @@
|
|
|
16
16
|
<view class="jfb-base-con-list__edit-icon" @click="delEdit">删除</view>
|
|
17
17
|
</view>
|
|
18
18
|
<!-- #endif -->
|
|
19
|
-
<view class="jfb-base-con-list__body" v-if="done"
|
|
20
|
-
backgroundImage: `url(${background})`,
|
|
21
|
-
backgroundSize: '100%',
|
|
22
|
-
backgroundRepeat: 'no-repeat',
|
|
23
|
-
minHeight: `${layoutInfo.bodyMinHeightRpx}rpx`,
|
|
24
|
-
}">
|
|
19
|
+
<view class="jfb-base-con-list__body" v-if="done">
|
|
25
20
|
<view
|
|
26
21
|
v-if="couponList&&couponList.length > 0"
|
|
22
|
+
:style="{
|
|
23
|
+
backgroundImage: `url(${background})`,
|
|
24
|
+
backgroundSize: '100%',
|
|
25
|
+
backgroundRepeat: 'no-repeat',
|
|
26
|
+
height: `${layoutInfo.bodyMinHeightRpx}rpx`,
|
|
27
|
+
}"
|
|
27
28
|
>
|
|
28
29
|
<view class="jfb-base-con-list__body-content">
|
|
29
30
|
<view class="jfb-base-con-list__body-content-header">
|
|
@@ -40,7 +41,7 @@
|
|
|
40
41
|
<xd-font-icon size="20" icon="iconxiangyou_xian"></xd-font-icon>
|
|
41
42
|
</view>
|
|
42
43
|
</view>
|
|
43
|
-
<view
|
|
44
|
+
<view class="jfb-base-con-list__body-content-list">
|
|
44
45
|
<view v-for="(item, index) in couponList" :key="index">
|
|
45
46
|
<view
|
|
46
47
|
class="jfb-base-con-list__body-content-list-item"
|
|
@@ -105,31 +106,29 @@
|
|
|
105
106
|
<view></view>
|
|
106
107
|
|
|
107
108
|
<xd-button
|
|
109
|
+
v-if="item.can_take_num !== 'Y'"
|
|
108
110
|
size="small"
|
|
109
|
-
:disabled="item.
|
|
111
|
+
:disabled="item.remain_card_count == 0"
|
|
110
112
|
@click="getCoupont(item)"
|
|
111
113
|
type="primary"
|
|
112
|
-
style="width: 170rpx;height: 60rpx;"
|
|
113
114
|
:style="item.btn"
|
|
114
115
|
:color="item.infoColor"
|
|
115
|
-
|
|
116
|
+
>领取</xd-button
|
|
117
|
+
>
|
|
116
118
|
</view>
|
|
117
119
|
</view>
|
|
118
120
|
</view>
|
|
119
121
|
</view>
|
|
120
122
|
</view>
|
|
121
|
-
<view
|
|
122
|
-
|
|
123
|
-
|
|
123
|
+
<view class="jfb-base-con-list__body-content-foot"
|
|
124
|
+
>可在我的-我的票券进行查看</view
|
|
125
|
+
>
|
|
124
126
|
</view>
|
|
125
|
-
<view class="jfb-base-con-list__body-content-foot"
|
|
126
|
-
@click="toCoupon"
|
|
127
|
-
>查看已领票券</view
|
|
128
|
-
>
|
|
129
127
|
</view>
|
|
130
128
|
<view
|
|
131
129
|
v-else
|
|
132
130
|
class="empty_data"
|
|
131
|
+
:style="{ minHeight: layoutInfo.bodyMinHeightPx + 'px' }"
|
|
133
132
|
>
|
|
134
133
|
<image :src="emptyBg"></image>
|
|
135
134
|
{{ message }}
|
|
@@ -181,9 +180,6 @@ export default {
|
|
|
181
180
|
activity_id: "",
|
|
182
181
|
background: "",
|
|
183
182
|
app_coupon_url: "",
|
|
184
|
-
used_up_url: "",
|
|
185
|
-
can_take: "",
|
|
186
|
-
has_times: "",
|
|
187
183
|
method: "entry",
|
|
188
184
|
maxTime: 5, //最长轮询2的N次方(秒)
|
|
189
185
|
date: 2, //时间底数
|
|
@@ -192,9 +188,6 @@ export default {
|
|
|
192
188
|
order_num: null,
|
|
193
189
|
done: false,
|
|
194
190
|
message: "",
|
|
195
|
-
options: {},
|
|
196
|
-
|
|
197
|
-
collectedPath: "",
|
|
198
191
|
};
|
|
199
192
|
},
|
|
200
193
|
computed: {
|
|
@@ -220,13 +213,11 @@ export default {
|
|
|
220
213
|
init(value) {
|
|
221
214
|
this.contentBackground = '#FFF8F8';
|
|
222
215
|
this.iconColor = '#FF4D4A';
|
|
223
|
-
this.collectedPath = getContainerPropsValue(value, "content.collectedPath", {value: ''}).value;
|
|
224
216
|
},
|
|
225
217
|
getList() {
|
|
226
218
|
jfbRootExec("getCouponList", {
|
|
227
219
|
vm: this,
|
|
228
220
|
data: {
|
|
229
|
-
...this.options,
|
|
230
221
|
distribution_method: this.method,
|
|
231
222
|
namespace: this.pageBusinessCode,
|
|
232
223
|
activity_id: this.activity_id,
|
|
@@ -234,22 +225,16 @@ export default {
|
|
|
234
225
|
})
|
|
235
226
|
.then((res) => {
|
|
236
227
|
this.background = getServiceUrl(res.background);
|
|
237
|
-
this.used_up_url = res.used_up_url && getServiceUrl(res.used_up_url);
|
|
238
|
-
this.can_take = res.can_take;
|
|
239
|
-
this.has_times = res.has_times;
|
|
240
|
-
|
|
241
228
|
this.couponList =
|
|
242
229
|
res.list &&
|
|
243
230
|
res.list.length > 0 &&
|
|
244
231
|
res.list.map((item) => {
|
|
245
|
-
let mapArr = {"Y": "去查看", "P": "领取", "N": "已发完"}
|
|
246
|
-
item.btn_txt = mapArr[item.can_take_num];
|
|
247
232
|
if (item.can_take_num === "Y" || item.can_take_num === "P") {
|
|
248
233
|
//按钮样式
|
|
249
234
|
item.btn = res.app_coupon_button_bg_url
|
|
250
235
|
? {
|
|
251
236
|
backgroundImage: `url(${getServiceUrl(
|
|
252
|
-
|
|
237
|
+
res.app_coupon_button_bg_url
|
|
253
238
|
)})`,
|
|
254
239
|
backgroundSize: "100%",
|
|
255
240
|
backgroundRepeat: "no-repeat",
|
|
@@ -303,21 +288,11 @@ export default {
|
|
|
303
288
|
console.log(err, "err");
|
|
304
289
|
});
|
|
305
290
|
},
|
|
306
|
-
toCoupon(){
|
|
307
|
-
this.$xdUniHelper.navigateTo({
|
|
308
|
-
url: this.collectedPath,
|
|
309
|
-
});
|
|
310
|
-
},
|
|
311
291
|
getCoupont(item) {
|
|
312
|
-
if(item.can_take_num === "Y") {
|
|
313
|
-
this.toCoupon();
|
|
314
|
-
return;
|
|
315
|
-
}
|
|
316
292
|
this.$xdShowLoading({});
|
|
317
293
|
jfbRootExec("getAllCoupon", {
|
|
318
294
|
vm: this,
|
|
319
295
|
data: {
|
|
320
|
-
...this.options,
|
|
321
296
|
distribution_method: this.method,
|
|
322
297
|
namespace: this.pageBusinessCode,
|
|
323
298
|
activity_id: this.activity_id,
|
|
@@ -349,13 +324,11 @@ export default {
|
|
|
349
324
|
jfbRootExec("getCouponResult", {
|
|
350
325
|
vm: this,
|
|
351
326
|
data: {
|
|
352
|
-
...this.options,
|
|
353
327
|
tmp_order_number: this.order_num,
|
|
354
328
|
},
|
|
355
329
|
})
|
|
356
330
|
.then((res) => {
|
|
357
331
|
if (res.status_type === "success") {
|
|
358
|
-
this.order_num = null;
|
|
359
332
|
this.$xdHideLoading();
|
|
360
333
|
this.$xdAlert({
|
|
361
334
|
content: "领取成功",
|
|
@@ -425,7 +398,6 @@ export default {
|
|
|
425
398
|
// },
|
|
426
399
|
onJfbLoad(options) {
|
|
427
400
|
console.log(this.pageBusinessCode, "pageNamespace");
|
|
428
|
-
this.options = options;
|
|
429
401
|
this.activity_id = options.activity_id;
|
|
430
402
|
this.method = options.distribution_method
|
|
431
403
|
? options.distribution_method
|
|
@@ -466,9 +438,6 @@ export default {
|
|
|
466
438
|
&__body {
|
|
467
439
|
position: relative;
|
|
468
440
|
overflow-y: auto;
|
|
469
|
-
padding-top: 220rpx;
|
|
470
|
-
box-sizing: border-box;
|
|
471
|
-
background-color: #FAFAFA;
|
|
472
441
|
.empty_data {
|
|
473
442
|
text-align: center;
|
|
474
443
|
color: #999999;
|
|
@@ -486,6 +455,8 @@ export default {
|
|
|
486
455
|
border-radius: unit(20, rpx);
|
|
487
456
|
background: #fff;
|
|
488
457
|
padding: unit(34, rpx);
|
|
458
|
+
position: relative;
|
|
459
|
+
top: unit(164, rpx);
|
|
489
460
|
margin-right: auto;
|
|
490
461
|
margin-left: auto;
|
|
491
462
|
width: unit(650, rpx);
|
|
@@ -563,7 +534,7 @@ export default {
|
|
|
563
534
|
color: #a6a6a6;
|
|
564
535
|
font-size: unit(24, rpx);
|
|
565
536
|
text-align: center;
|
|
566
|
-
margin: unit(40, rpx)
|
|
537
|
+
margin-top: unit(40, rpx);
|
|
567
538
|
}
|
|
568
539
|
}
|
|
569
540
|
}
|
|
@@ -1,25 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
module.exports = {
|
|
4
|
-
getCouponList: {
|
|
5
|
-
"
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
],
|
|
10
|
-
"background":"//sandbox-img.jufubao.cn/uploads/20231204/96b801e0dc27422c183dc90d905dd2ed.jpg",
|
|
11
|
-
"used_up_url": "",
|
|
12
|
-
"has_times": "Y",
|
|
13
|
-
"can_take":"Y",
|
|
14
|
-
"message":"",
|
|
15
|
-
"app_coupon_url":"//sandbox-img.jufubao.cn/uploads/20231205/fee9b644b83495c9ba8a4db277600b54.jpg",
|
|
16
|
-
"app_activity_button":"//sandbox-img.jufubao.cn/uploads/20231207/35f3065b2b2bc3fc2dda73d7b5b9eae8.jpg",
|
|
17
|
-
"app_coupon_button_bg_url":"//sandbox-img.jufubao.cn/uploads/20231212/026a3ea901f87f51b531d06c24604676.png",
|
|
18
|
-
"app_coupon_button_see_url": "//sandbox-img.jufubao.cn/uploads/20231212/026a3ea901f87f51b531d06c24604676.png",
|
|
19
|
-
"app_coupon_invalid_url":"//sandbox-img.jufubao.cn/uploads/20231208/8b153ce4870686a37295c16fbc992235.jpg",
|
|
20
|
-
"rule":"<p>打发·</p>",
|
|
21
|
-
"request_id":"a2603f2a480485f4"
|
|
22
|
-
},
|
|
4
|
+
getCouponList: {"list":[
|
|
5
|
+
{"prize_id":153,"prize_name":"满50减50","prize_type":"满减券","prize_num":1,"can_take":"Y","is_over":"N","can_take_num":"P","today_times":1,"today_num":0,"total_times":1,"total_num":0,"remain_card_count":55},
|
|
6
|
+
{"prize_id":153,"prize_name":"满50减50","prize_type":"满减券","prize_num":1,"can_take":"Y","is_over":"N","can_take_num":"P","today_times":1,"today_num":0,"total_times":1,"total_num":0,"remain_card_count":55},
|
|
7
|
+
{"prize_id":153,"prize_name":"满50减50","prize_type":"满减券","prize_num":1,"can_take":"Y","is_over":"N","can_take_num":"P","today_times":1,"today_num":0,"total_times":1,"total_num":0,"remain_card_count":55}
|
|
8
|
+
],"background":"//sandbox-img.jufubao.cn/uploads/20231204/96b801e0dc27422c183dc90d905dd2ed.jpg","can_take":"Y","message":"","app_coupon_url":"//sandbox-img.jufubao.cn/uploads/20231205/fee9b644b83495c9ba8a4db277600b54.jpg","app_activity_button":"//sandbox-img.jufubao.cn/uploads/20231207/35f3065b2b2bc3fc2dda73d7b5b9eae8.jpg","app_coupon_button_bg_url":"//sandbox-img.jufubao.cn/uploads/20231212/026a3ea901f87f51b531d06c24604676.png","app_coupon_invalid_url":"//sandbox-img.jufubao.cn/uploads/20231208/8b153ce4870686a37295c16fbc992235.jpg","request_id":"a2603f2a480485f4"},
|
|
23
9
|
getAllCoupon: {
|
|
24
10
|
"request_id": "5987aa28c709d4ef"
|
|
25
11
|
}
|
|
@@ -23,10 +23,9 @@ module.exports = [
|
|
|
23
23
|
disabled: true,
|
|
24
24
|
},
|
|
25
25
|
{
|
|
26
|
-
mapFnName: '
|
|
26
|
+
mapFnName: 'getBaseOrderDetail', //自定义方法名字(必选)
|
|
27
27
|
title: '获取订单详情',
|
|
28
|
-
|
|
29
|
-
path: "/order/v1/order/pay-status",
|
|
28
|
+
path: '/order/v1/order/detail',
|
|
30
29
|
isRule: false,
|
|
31
30
|
params: {
|
|
32
31
|
main_order_id: ['id', 'Number', '必选'],
|
|
@@ -297,29 +297,23 @@ export default {
|
|
|
297
297
|
return time;
|
|
298
298
|
},
|
|
299
299
|
p_getBaseOrderDetail(){
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
}
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
// this.$xdNavigateBack()
|
|
318
|
-
}
|
|
319
|
-
resolve();
|
|
320
|
-
}).catch(err => {
|
|
321
|
-
reject();
|
|
322
|
-
})
|
|
300
|
+
jfbRootExec("getBaseOrderDetail", {
|
|
301
|
+
vm: this,
|
|
302
|
+
data: {
|
|
303
|
+
main_order_id: this.main_order_id,
|
|
304
|
+
}
|
|
305
|
+
}).then(res => {
|
|
306
|
+
let { is_can_pay, can_pay_message } = res.can_pay_info
|
|
307
|
+
this.is_can_pay = is_can_pay;
|
|
308
|
+
this.can_pay_message = can_pay_message;
|
|
309
|
+
if(is_can_pay !== "Y"){
|
|
310
|
+
uni.showToast({
|
|
311
|
+
title: can_pay_message,
|
|
312
|
+
icon: 'none',
|
|
313
|
+
duration: 3000
|
|
314
|
+
});
|
|
315
|
+
// this.$xdNavigateBack()
|
|
316
|
+
}
|
|
323
317
|
})
|
|
324
318
|
},
|
|
325
319
|
p_getPayOrderDetail() {
|
|
@@ -364,12 +358,8 @@ export default {
|
|
|
364
358
|
});
|
|
365
359
|
},
|
|
366
360
|
//第三方支付
|
|
367
|
-
|
|
361
|
+
doThirdPay() {
|
|
368
362
|
if (this.$configProject.isPreview) return;
|
|
369
|
-
|
|
370
|
-
if(this.type !== 'recharge') {
|
|
371
|
-
await this.p_getBaseOrderDetail();
|
|
372
|
-
}
|
|
373
363
|
const {channel_provider_id, order_id, payInfo} = this;
|
|
374
364
|
let {login_providers = []} = this.projectAttr;
|
|
375
365
|
console.log(this.projectAttr)
|
|
@@ -183,7 +183,7 @@
|
|
|
183
183
|
let cell = this.posterType === '2' ? 2: (this.posterType === '3' ? 3 : 4);
|
|
184
184
|
let spacing = Math.floor((cell - 1) * this.padding * this.$rpxNum);
|
|
185
185
|
let padding = 0;
|
|
186
|
-
if(this.$xdUniHelper.isEmpty(this.background)) padding = 20;
|
|
186
|
+
if(this.background === 'none' || this.$xdUniHelper.isEmpty(this.background)) padding = 20;
|
|
187
187
|
let addPadding = ((this.bgImagePadding.right !== null? this.bgImagePadding.right:padding) +
|
|
188
188
|
(this.bgImagePadding.left !== null? this.bgImagePadding.left : padding)) * this.$rpxNum;
|
|
189
189
|
let viewWidth = uni.getSystemInfoSync().safeArea.width - ((this.mS.right || 0) + (this.mS.left || 0)) * this.$rpxNum - addPadding - spacing;
|
|
@@ -285,7 +285,7 @@
|
|
|
285
285
|
outPadding(){
|
|
286
286
|
try {
|
|
287
287
|
let defaultvalue = 0;
|
|
288
|
-
if(this.$xdUniHelper.isEmpty(this.background)) defaultvalue = 20
|
|
288
|
+
if(this.background === 'none' || this.$xdUniHelper.isEmpty(this.background)) defaultvalue = 20
|
|
289
289
|
console.log(this.bgImagePadding,'this.paddingthis.paddingthis.padding');
|
|
290
290
|
let padding = `${this.bgImagePadding.top !== null ? this.bgImagePadding.top : defaultvalue}rpx`;
|
|
291
291
|
padding = `${padding} ${this.bgImagePadding.right !== null ? this.bgImagePadding.right : defaultvalue}rpx`;
|
|
@@ -321,7 +321,7 @@ import XdFontIcon from "@/components/XdFontIcon/XdFontIcon";
|
|
|
321
321
|
import XdDailog from "@/components/XdDailog/XdDailog";
|
|
322
322
|
import XdButton from "@/components/XdButton/XdButton";
|
|
323
323
|
import XdUnit from "@/components/XdUnit/XdUnit";
|
|
324
|
-
import { jfbRootExec
|
|
324
|
+
import { jfbRootExec } from "@/utils/xd.event";
|
|
325
325
|
import JfbBaseSuccessMixin from "./JfbBaseSuccessMixin";
|
|
326
326
|
import componentsMixins from "@/mixins/componentsMixins";
|
|
327
327
|
import extsMixins from "@/mixins/extsMixins";
|
|
@@ -495,9 +495,6 @@ export default {
|
|
|
495
495
|
},
|
|
496
496
|
})
|
|
497
497
|
.then((res) => {
|
|
498
|
-
if(res.status.status_type === 'success') {
|
|
499
|
-
jfbRootFnExec(this, 'onCustomEvent')("@showBaseConDialog", {order_number: this.order_id});
|
|
500
|
-
}
|
|
501
498
|
this.handleOrderResolve(res);
|
|
502
499
|
})
|
|
503
500
|
.catch((err) => {
|
|
@@ -1,197 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<view class="xd-cou-card-bind">
|
|
3
|
-
<view class="ticket_box" :style="{
|
|
4
|
-
backgroundImage: dialogBackground
|
|
5
|
-
}">
|
|
6
|
-
<view class="ticket_list">
|
|
7
|
-
<view class="ticket_item" :class="item.can_take_num"
|
|
8
|
-
v-for="(item,i) in uiList" :key="i"
|
|
9
|
-
:style="{backgroundImage: item.backgroundImage}"
|
|
10
|
-
>
|
|
11
|
-
<view class="ticket_names">
|
|
12
|
-
<view class="name_main">{{item.prize_type}}</view>
|
|
13
|
-
<view class="name_sub">{{item.prize_name}}</view>
|
|
14
|
-
</view>
|
|
15
|
-
<view class="name_tit">{{item.prize_name}}</view>
|
|
16
|
-
<xd-font-icon class="ticket_icon" :icon="item.icon"></xd-font-icon>
|
|
17
|
-
<view class="btn">
|
|
18
|
-
<xd-button
|
|
19
|
-
size="small"
|
|
20
|
-
type="primary"
|
|
21
|
-
:disabled="item.remain_card_count == 0"
|
|
22
|
-
:style="{
|
|
23
|
-
backgroundImage: item.btnImage
|
|
24
|
-
}"
|
|
25
|
-
@click="getCoupont(item)"
|
|
26
|
-
>{{item.btn_txt}}</xd-button>
|
|
27
|
-
</view>
|
|
28
|
-
</view>
|
|
29
|
-
</view>
|
|
30
|
-
</view>
|
|
31
|
-
|
|
32
|
-
<xd-font-icon
|
|
33
|
-
@click="handleClose"
|
|
34
|
-
class="dialog_close"
|
|
35
|
-
icon="iconguanbi_xian"
|
|
36
|
-
color="#fff"
|
|
37
|
-
size="64"
|
|
38
|
-
></xd-font-icon>
|
|
39
|
-
</view>
|
|
40
|
-
</template>
|
|
41
|
-
<script>
|
|
42
|
-
import XdButton from "@/components/XdButton/XdButton";
|
|
43
|
-
import XdFontIcon from "@/components/XdFontIcon/XdFontIcon";
|
|
44
|
-
import getServiceUrl from "@/common/getServiceUrl";
|
|
45
|
-
export default{
|
|
46
|
-
name: "XdCouCardBind",
|
|
47
|
-
components: {
|
|
48
|
-
XdButton,
|
|
49
|
-
XdFontIcon
|
|
50
|
-
},
|
|
51
|
-
props: {
|
|
52
|
-
list: {
|
|
53
|
-
type: Array,
|
|
54
|
-
default(){
|
|
55
|
-
return []
|
|
56
|
-
}
|
|
57
|
-
},
|
|
58
|
-
setting: {}
|
|
59
|
-
},
|
|
60
|
-
computed: {
|
|
61
|
-
uiList(){
|
|
62
|
-
return this.list.map(item => {
|
|
63
|
-
let mapArr = {"Y": "去查看", "P": "领取", "N": "已发完"}
|
|
64
|
-
item.btn_txt = mapArr[item.can_take_num];
|
|
65
|
-
if(item.can_take_num === "Y" || item.can_take_num === "P"){
|
|
66
|
-
item.backgroundImage = `url(${getServiceUrl(this.setting.app_coupon_url)})`;
|
|
67
|
-
item.btnImage = `url(${getServiceUrl(this.setting.app_coupon_button_bg_url)})`;
|
|
68
|
-
item.icon = item.can_take_num === "Y" ? "iconyilingqu" : "icondailingqu";
|
|
69
|
-
}else if(item.can_take_num === "N"){
|
|
70
|
-
item.backgroundImage = `url(${getServiceUrl(this.setting.app_coupon_invalid_url)})`;
|
|
71
|
-
item.btnImage = "";
|
|
72
|
-
item.icon = "iconyifawan";
|
|
73
|
-
}
|
|
74
|
-
return item;
|
|
75
|
-
})
|
|
76
|
-
},
|
|
77
|
-
dialogBackground(){
|
|
78
|
-
return `url(${getServiceUrl(this.setting.background)})`;
|
|
79
|
-
}
|
|
80
|
-
},
|
|
81
|
-
data(){
|
|
82
|
-
return {
|
|
83
|
-
|
|
84
|
-
}
|
|
85
|
-
},
|
|
86
|
-
methods: {
|
|
87
|
-
//领取优惠券
|
|
88
|
-
getCoupont(item){
|
|
89
|
-
if(item.can_take_num === "P"){
|
|
90
|
-
this.$emit("getCoupont", item);
|
|
91
|
-
}
|
|
92
|
-
},
|
|
93
|
-
handleClose(){
|
|
94
|
-
this.$emit("closeDialog");
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
</script>
|
|
99
|
-
|
|
100
|
-
<style lang="less" scoped>
|
|
101
|
-
@ticketHeight: 180rpx;
|
|
102
|
-
@bgHeight: @ticketHeight - 40rpx;
|
|
103
|
-
.xd-cou-card-bind{
|
|
104
|
-
width: 600rpx;
|
|
105
|
-
max-height: 900rpx;
|
|
106
|
-
padding-bottom: 80rpx;
|
|
107
|
-
.ticket_box{
|
|
108
|
-
background-color: #fff;
|
|
109
|
-
background-size: 100% auto;
|
|
110
|
-
background-repeat: no-repeat;
|
|
111
|
-
padding-top: 200rpx;
|
|
112
|
-
border-radius: 20rpx;
|
|
113
|
-
box-sizing: border-box;
|
|
114
|
-
padding-bottom: 20rpx;
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
.ticket_item{
|
|
118
|
-
display: flex;
|
|
119
|
-
position: relative;
|
|
120
|
-
width: 540rpx;
|
|
121
|
-
height: @ticketHeight;
|
|
122
|
-
margin: 20rpx auto;
|
|
123
|
-
border-radius: 20rpx;
|
|
124
|
-
padding: 30rpx;
|
|
125
|
-
box-sizing: border-box;
|
|
126
|
-
background: #EEEEEE url("//sandbox-img.jufubao.cn/uploads/20231205/fee9b644b83495c9ba8a4db277600b54.jpg") no-repeat;
|
|
127
|
-
background-size: auto @bgHeight;
|
|
128
|
-
background-position: 30rpx center;
|
|
129
|
-
|
|
130
|
-
&.P,
|
|
131
|
-
&.Y{
|
|
132
|
-
|
|
133
|
-
}
|
|
134
|
-
&.N{
|
|
135
|
-
.ticket_names{
|
|
136
|
-
.name_main{
|
|
137
|
-
color: #BBBBBB;
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
.ticket_icon{
|
|
141
|
-
color: #D6D6D6;
|
|
142
|
-
|
|
143
|
-
}
|
|
144
|
-
.btn{
|
|
145
|
-
.xd-button{
|
|
146
|
-
background-color: #DDDDDD !important;
|
|
147
|
-
color: #999999 !important;
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
.name_tit{
|
|
152
|
-
font-size: 28rpx;
|
|
153
|
-
margin-left: 20rpx;
|
|
154
|
-
}
|
|
155
|
-
.ticket_names{
|
|
156
|
-
width: 168rpx;
|
|
157
|
-
height: 120rpx;
|
|
158
|
-
text-align: center;
|
|
159
|
-
font-size: 28rpx;
|
|
160
|
-
.name_main{
|
|
161
|
-
margin-bottom: 26rpx;
|
|
162
|
-
margin-top: 20rpx;
|
|
163
|
-
color: #fb5b3f;
|
|
164
|
-
}
|
|
165
|
-
.name_sub{
|
|
166
|
-
font-size: 24rpx;
|
|
167
|
-
color: #FFFFFF;
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
.ticket_icon{
|
|
171
|
-
font-size: 80rpx !important;
|
|
172
|
-
position: absolute;
|
|
173
|
-
top: 0;
|
|
174
|
-
right: 0;
|
|
175
|
-
}
|
|
176
|
-
.btn{
|
|
177
|
-
position: absolute;
|
|
178
|
-
right: 20rpx;
|
|
179
|
-
bottom: 20rpx;
|
|
180
|
-
.xd-button{
|
|
181
|
-
height: 30rpx;
|
|
182
|
-
width: 100rpx;
|
|
183
|
-
font-size: 28rpx;
|
|
184
|
-
background-size: cover !important;
|
|
185
|
-
background-color: #fb5b3f;
|
|
186
|
-
}
|
|
187
|
-
}
|
|
188
|
-
|
|
189
|
-
}
|
|
190
|
-
.dialog_close{
|
|
191
|
-
position: absolute;
|
|
192
|
-
bottom: 0rpx;
|
|
193
|
-
left: 50%;
|
|
194
|
-
transform: translateX(-50%);
|
|
195
|
-
}
|
|
196
|
-
}
|
|
197
|
-
</style>
|