promate_pop.js
4.04 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
const ut = require("../../utils/util.js");
Component({
/*** 页面的初始数据***/
data: {
type:0, //0只显示再商品详情页面 1显示再有选择按钮
pro_pop:0, //是否弹出
cx_prom_group:[], //弹出框的内容展示
is_cart:0
},
methods: {
//-- 初始化弹出框 --
set_init(type,cx_prom_group0,is_cart){
var cx_prom_group=JSON.parse(JSON.stringify(cx_prom_group0));
if(!type) type=0;
if(!is_cart) is_cart=0;
var fd=cx_prom_group.findIndex(function (gh){
return gh.sele
})
if(fd==-1){
cx_prom_group[0].sele=1;
}
//-- 优惠促销要重新组装 --
var yh_index=cx_prom_group.findIndex(function (p_time){
return p_time.prom_type==3;
})
if(yh_index>-1){
var prom_list=cx_prom_group[yh_index].promGoodsListsDtos;
//规格参数
cx_prom_group[yh_index].more=ut.format_yh_act(prom_list[0]);
cx_prom_group[yh_index].yh_index=0; //优惠阶梯
if(prom_list.length){
for(var i=1;i<prom_list.length;i++){
var copy_obj=JSON.parse(JSON.stringify(cx_prom_group[yh_index]));
delete copy_obj.promGoodsListsDtos
copy_obj.more=ut.format_yh_act(prom_list[i]);
copy_obj.is_no_sele=1;
copy_obj.condition=prom_list[i].condition + (prom_list[i].prom_type == 1 ? '件' : '元'),
copy_obj.yh_index=i; //优惠阶梯
cx_prom_group.splice(yh_index+i,0,copy_obj);
}
}
}
this.setData({
type:type,pro_pop:1,cx_prom_group,is_cart:is_cart
})
},
/*----pop的开关,如果按钮是‘确定’,就要返回参数给父层组件---*/
close_pro_pop: async function (e) {
this.setData({pro_pop: 0});
if(!this.data.type) return false;
var obj=this.data.cx_prom_group.find(function (e){
return e.sele==1;
})
this.triggerEvent('sure_cx_group',{sele_prom_type:obj.prom_type},{bubbles: true});
},
go_the_url:function (e){
var index=e.currentTarget.dataset.index;
var item=this.data.cx_prom_group[index];
var prom_id = item.prom_id;
if(!prom_id) prom_id=item.id;
var prom_type = item.prom_type;
var url='';
switch (parseInt(prom_type)){
case 3:
url = "/pages/goods/goodsList/goodsList?prom_type=3&prom_id=" + prom_id;
break;
case 5:
url = "/packageA/pages/prom_list/prom_list?goods_id=" + item.main_gid;
var room_id = getApp().globalData.room_id;
if (room_id && this.data.gid == getApp().globalData.room_goods_id) {
url += "&room_id=" + room_id;
}
break;
case 7:
url="/packageB/pages/zuhegou/index/index?id=" + prom_id
break;
case 10:
url="/pages/goods/goodsList/goodsList?ladder_id=" + prom_id;
break;
}
getApp().goto(url);
},
//-- 选择活动 --
sele_act:function (e){
var index=e.currentTarget.dataset.index;
var cx_prom_group=this.data.cx_prom_group;
for (var idx=0;idx<cx_prom_group.length;idx++){
if(idx!=index) cx_prom_group[idx].sele=0;
else cx_prom_group[idx].sele=1;
}
this.setData({cx_prom_group})
},
// 促销 -> 送礼包 -> 查看详情
viewLbDetails(e) {
let id = e.currentTarget.dataset.id; // 获取礼包id
let flag = e.currentTarget.dataset.flag;
let url = '';
if (flag == 2) { // flag =1 控制跳转到专享礼包
url = `/packageE/pages/user/monthgiftbag/giftpackinfo/giftpackinfo?isBuy=1&id=${id}&is_act=1`;
// url = `/pages/giftpack/giftpacklist/giftpacklist?lbId=${id}&flag=1`;
} else if (flag == 1) { // flag =1 控制跳转到专享礼包
url = `/pages/giftpack/giftpacklist/giftpacklist?lbId=${id}&flag=1`;
} else {
url = `/packageA/pages/myGiftDetails/myGiftDetails?btn=0&index=0&id=${id}`; // btn=0 控制跳转到的页面不显示按钮
};
// console.log('myurl', url);
getApp().goto(url);
},
//显示多赠品
show_zp: function (e) {
var prom_id = e.currentTarget.dataset.prom;
var index = e.currentTarget.dataset.index;
getApp().goto("/packageD/pages/gift/gift?prom_id=" + prom_id + "&index=" + index);
},
}
})