diff --git a/packageA/pages/chongzhi/chongzhi.wxml b/packageA/pages/chongzhi/chongzhi.wxml
index 6a44a32..4f8d541 100644
--- a/packageA/pages/chongzhi/chongzhi.wxml
+++ b/packageA/pages/chongzhi/chongzhi.wxml
@@ -34,7 +34,7 @@
- 立即使用
已过期
详情
diff --git a/packageC/pages/luckyGo/luckyGo_goodsInfo/buy_integral_normal.wxml b/packageC/pages/luckyGo/luckyGo_goodsInfo/buy_integral_normal.wxml
index b57806c..836bfd7 100644
--- a/packageC/pages/luckyGo/luckyGo_goodsInfo/buy_integral_normal.wxml
+++ b/packageC/pages/luckyGo/luckyGo_goodsInfo/buy_integral_normal.wxml
@@ -89,6 +89,7 @@
,送优惠券
,送赠品
,送礼包
+ ,送专享礼包
diff --git a/packageC/pages/luckyGo/luckyGo_goodsInfo/buy_pt.wxml b/packageC/pages/luckyGo/luckyGo_goodsInfo/buy_pt.wxml
index 790ecba..df0180a 100644
--- a/packageC/pages/luckyGo/luckyGo_goodsInfo/buy_pt.wxml
+++ b/packageC/pages/luckyGo/luckyGo_goodsInfo/buy_pt.wxml
@@ -134,6 +134,7 @@
,送优惠券
,送赠品
,送礼包
+ ,送专享礼包
diff --git a/packageC/pages/luckyGo/luckyGo_goodsInfo/luckyGo_goodsInfo.js b/packageC/pages/luckyGo/luckyGo_goodsInfo/luckyGo_goodsInfo.js
index ad33095..64ce889 100644
--- a/packageC/pages/luckyGo/luckyGo_goodsInfo/luckyGo_goodsInfo.js
+++ b/packageC/pages/luckyGo/luckyGo_goodsInfo/luckyGo_goodsInfo.js
@@ -2480,7 +2480,7 @@ Page({
isonsale: 1,
is_on_sale: 1,
pageSize: 500,
- orderField: 'sort'
+ orderField: 'gg_ordid,goods_spec,sort'
}
}).then(res => {
var e = res;
diff --git a/packageC/pages/luckyGo/luckyGo_goodsInfo/luckyGo_goodsInfo.wxml b/packageC/pages/luckyGo/luckyGo_goodsInfo/luckyGo_goodsInfo.wxml
index 4c43e98..8828fc8 100644
--- a/packageC/pages/luckyGo/luckyGo_goodsInfo/luckyGo_goodsInfo.wxml
+++ b/packageC/pages/luckyGo/luckyGo_goodsInfo/luckyGo_goodsInfo.wxml
@@ -1155,6 +1155,7 @@
,送优惠券
,送赠品
,送礼包
+ ,送专享礼包
diff --git a/packageC/pages/presell/goodsInfo/goodsInfo.js b/packageC/pages/presell/goodsInfo/goodsInfo.js
index 9973497..284314f 100644
--- a/packageC/pages/presell/goodsInfo/goodsInfo.js
+++ b/packageC/pages/presell/goodsInfo/goodsInfo.js
@@ -1601,7 +1601,7 @@ Page({
isonsale: 1,
is_on_sale: 1,
pageSize: 500,
- orderField: 'sort',
+ orderField: 'gg_ordid,goods_spec,sort',
prom_type: 8,
};
@@ -3934,6 +3934,18 @@ Page({
var err_txt="活动定金时间已经结束";
var end_time = act_data.end_time;
+ if (act_data.presell_type == 1) {
+ err_txt="活动时间已经结束";
+ }
+ if (end_time < ut.gettimestamp()) {
+ wx.showToast({title:err_txt, icon: 'none', duration: 3000});
+ setTimeout(function () {
+ ut.wx_back();
+ }, 2000)
+ gnext=0;
+ return false;
+ }
+
if (act_data.presell_type == 0) {
end_time = act_data.pay_enddate;
err_txt="活动尾款时间已经结束";
diff --git a/packageC/pages/presell/pregoodsInfo/goodsInfo.js b/packageC/pages/presell/pregoodsInfo/goodsInfo.js
index 73cda1a..ac5fbb2 100644
--- a/packageC/pages/presell/pregoodsInfo/goodsInfo.js
+++ b/packageC/pages/presell/pregoodsInfo/goodsInfo.js
@@ -1599,7 +1599,7 @@ Page({
isonsale: 1,
is_on_sale: 1,
pageSize: 500,
- orderField: 'sort',
+ orderField: 'gg_ordid,goods_spec,sort',
prom_type: 8,
};
diff --git a/pages/activity/seckill_list/seckill_list.js b/pages/activity/seckill_list/seckill_list.js
index 93b06b0..0c27e38 100644
--- a/pages/activity/seckill_list/seckill_list.js
+++ b/pages/activity/seckill_list/seckill_list.js
@@ -104,6 +104,7 @@ Page({
// 对结束时间进行处理渲染到页面
for (var i = 0; i < endTimeList.length; i++) {
var o = endTimeList[i];
+ if(!o) continue;
var endTime = o.end_time;
if (th.data.type == 0) endTime = o.start_time;
let obj = null;
diff --git a/pages/cart/cart/cart.wxml b/pages/cart/cart/cart.wxml
index 87ba168..da36753 100644
--- a/pages/cart/cart/cart.wxml
+++ b/pages/cart/cart/cart.wxml
@@ -150,6 +150,7 @@
送积分|
送赠品|
送礼包|
+ 送专享礼包|
去凑单>
diff --git a/pages/cart/cart2/cart2.js b/pages/cart/cart2/cart2.js
index dbb19f4..16aa02e 100644
--- a/pages/cart/cart2/cart2.js
+++ b/pages/cart/cart2/cart2.js
@@ -948,6 +948,7 @@ Page({
ob.prom_id = data.prom_id;
ob.goods_id = data.gift_goods_id;
ob.goods_name = data.gift_goods_name;
+ ob.goods_sn = data.gift_goods_sn;
ob.goods_color = data.gift_goods_color;
ob.goods_spec = data.gift_goods_spec;
ob.original_img = os.imghost + data.gift_original_img;
@@ -1240,6 +1241,10 @@ Page({
}
item_map.s_libao = get_data.libao;
item_map.s_lb_num = get_data.lb_num;
+
+ //专享礼包
+ item_map.zx_libao = get_data.zxlibao;
+ item_map.zx_lb_num = get_data.zxlb_num;
}
})
}
@@ -1334,7 +1339,7 @@ Page({
}
}
- //-- 如果有送优包邮券的情况 --
+ //-- 如果有送礼包的情况 --
if (item_map.s_libao) {
if (!cart_item.s_libao) {
cart_item.s_libao = item_map.s_libao + "";
@@ -1345,6 +1350,17 @@ Page({
cart_item.g_lb_num.push({ 'l_id': item_map.s_libao, "num": item_map.s_lb_num })
}
}
+
+ if (item_map.zx_libao) {
+ if (!cart_item.zx_libao) {
+ cart_item.zx_libao = item_map.zx_libao + "";
+ cart_item.g_zxlb_num = [{'l_id': item_map.zx_libao, "num": item_map.zx_lb_num}];
+ }
+ else {
+ cart_item.zx_libao += "," + item_map.zx_libao;
+ cart_item.g_zxlb_num.push({'l_id': item_map.zx_libao, "num": item_map.zx_lb_num})
+ }
+ }
}
}
}
@@ -1689,6 +1705,7 @@ Page({
}
}
}else{
+
if(item[j]['exp_sum_type']==2 && out_of_weight!==0){
goods_weight = -1;
out_of_weight = 0;
@@ -2176,6 +2193,16 @@ Page({
ob = JSON.stringify(ob);
th.setData({ [l_txt]: good.s_libao, [l_txt1]: ob });
}
+
+ //专享礼包
+ if (good.zx_libao) {
+ var l_txt = "formData.give_zxlb_id";
+ //这个是json格式的
+ var l_txt1 = "formData.g_zxlb_num";
+ var ob = [{"num": good.zx_lb_num, "l_id": good.zx_libao}];
+ ob = JSON.stringify(ob);
+ th.setData({[l_txt]: good.zx_libao, [l_txt1]: ob});
+ }
})
} else {
@@ -2231,7 +2258,18 @@ Page({
var l_txt1 = "formData.g_lb_num";
var ob = [{ "num": good.s_lb_num, "l_id": good.s_libao }];
ob = JSON.stringify(ob);
- th.setData({ [l_txt]: good.s_coupon_id, [l_txt1]: ob });
+ th.setData({[l_txt]: good.s_libao, [l_txt1]: ob});
+ }
+
+ //专享礼包
+ if (good.zx_libao) {
+ var l_txt = "formData.give_zxlb_id";
+ //这个是json格式的
+ var l_txt1 = "formData.g_zxlb_num";
+ var ob = [{"num": good.zx_lb_num, "l_id": good.zx_libao}];
+ ob = JSON.stringify(ob);
+ th.setData({[l_txt]: good.zx_libao, [l_txt1]: ob});
+
}
}
@@ -2349,6 +2387,12 @@ Page({
order_prom_list.give_lb_id = th.data.formData.give_lb_id;
order_prom_list.g_lb_num = th.data.formData.g_lb_num;
}
+ //--- 专享礼包 ---
+ if (th.data.formData.give_zxlb_id > 0) {
+ order_prom_list.give_zxlb_id = th.data.formData.give_zxlb_id;
+ order_prom_list.g_zxlb_num = th.data.formData.g_zxlb_num;
+ }
+
item.order_prom_list = order_prom_list;
//组装优惠券的钱
@@ -2607,11 +2651,19 @@ Page({
order_prom_list.give_lb_id = t_item.s_libao;
order_prom_list.g_lb_num = JSON.stringify(t_item.g_lb_num);
}
- if (Object.keys(order_prom_list).length > 0) {
- if (order_prom_list.discount_amount)
- order_prom_list.discount_amount = parseFloat(order_prom_list.discount_amount).toFixed(2);
- if (order_prom_list.order_prom_amount)
- order_prom_list.order_prom_amount = parseFloat(order_prom_list.order_prom_amount).toFixed(2);
+
+ //-- 送专享礼包的时候 --
+ if (t_item.zx_libao) {
+ order_prom_list.give_zxlb_id = t_item.zx_libao;
+ order_prom_list.g_zxlb_num = JSON.stringify(t_item.g_zxlb_num);
+ }
+
+ if (Object.keys(order_prom_list).length > 0){
+ if(order_prom_list.discount_amount)
+ order_prom_list.discount_amount= parseFloat(order_prom_list.discount_amount).toFixed(2);
+ if(order_prom_list.order_prom_amount)
+ order_prom_list.order_prom_amount= parseFloat(order_prom_list.order_prom_amount).toFixed(2);
+
item.order_prom_list = order_prom_list;
}
@@ -3705,7 +3757,6 @@ Page({
if (gd.ld_account) {
item_price2 = gd.ld_account * gd.goods_num;
}
-
ckeck_quan_price += item_price;
//如果商品有重复的过滤,一般是组合购和阶梯购的情况下
var idx = check_quan_ware_list_arr.findIndex(function (ele) {
@@ -3910,6 +3961,7 @@ Page({
arr.gift_id = get_data.gift_id;
arr.gift_goods_id = get_data.goods_id;
arr.gift_goods_name = get_data.goods_name;
+ arr.gift_goods_sn = get_data.goodsinfo.goods_sn;
arr.gift_goods_color = get_data.goodsinfo.goods_color;
arr.gift_goods_spec = get_data.goodsinfo.goods_spec;
arr.gift_original_img = get_data.goodsinfo.original_img;
@@ -3921,6 +3973,10 @@ Page({
}
arr.s_libao = get_data.libao;
arr.s_lb_num = get_data.lb_num;
+
+ arr.zx_libao = get_data.zxlibao;
+ arr.zx_lb_num = get_data.zxlb_num;
+
arr.prom_id = prom_id;
}
func(arr);
diff --git a/pages/goods/goodsInfo/buy_flash_normal.wxml b/pages/goods/goodsInfo/buy_flash_normal.wxml
new file mode 100644
index 0000000..056da29
--- /dev/null
+++ b/pages/goods/goodsInfo/buy_flash_normal.wxml
@@ -0,0 +1,141 @@
+
+
+
+
+
+
+
+ {{sele_g.goods_name}}
+
+ ¥
+
+ {{sele_g[card_field]}}
+ {{sele_g.shop_price}}
+
+
+
+ 已售:{{sele_g.sales_sum}}
+
+ 可售:{{def_pick_store.CanOutQty}}
+ 可售:0
+
+ 可售:{{sele_g.store_count}}
+
+
+
+
+
+
+
+
+
+ {{def_pick_store.pickup_name}}
+
+ 距离:{{def_pick_store.distance>1000?filters.toFix(def_pick_store.distance/1000,2)+"km":filters.toFix(def_pick_store.distance,0)+"m"}}
+
+
+
+
+
+
+
+ 选择门店
+
+
+ 更多门店
+
+ (库存不足)
+
+ (库存不足)
+
+ (配送不匹配)
+ (库存不足)
+
+
+ 地址:{{def_pick_store.fulladdress}}
+
+
+
+
+ 商品规格
+
+
+ {{item.gg}}
+
+
+
+
+
+ 购买数量
+
+ -
+
+ +
+
+
+
+
+
+
+
+ 再买{{hui_condition.need}}
+ ,免{{hui_condition.money}}元
+ ,打{{hui_condition.sale}}折
+ ,包邮
+ ,送{{hui_condition.intValue}}积分
+ ,送优惠券
+ ,送赠品
+ ,送礼包
+ ,送专享礼包
+
+
+
+
+
+
+
+
+ 配送不匹配
+
+
+
+
+ 库存不足
+
+
+
+
+
+ 库存不足
+
+
+
+ 库存不足
+
+
+
+ 请先选择门店
+
+
+
+ 库存不足
+
+
+
+ 加入购物车
+ 立即购买
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pages/goods/goodsInfo/buy_integral_normal.wxml b/pages/goods/goodsInfo/buy_integral_normal.wxml
index e729d41..80a417e 100644
--- a/pages/goods/goodsInfo/buy_integral_normal.wxml
+++ b/pages/goods/goodsInfo/buy_integral_normal.wxml
@@ -86,6 +86,7 @@
,送优惠券
,送赠品
,送礼包
+ ,送专享礼包
diff --git a/pages/goods/goodsInfo/buy_pt.wxml b/pages/goods/goodsInfo/buy_pt.wxml
index cb72777..ae9a32f 100644
--- a/pages/goods/goodsInfo/buy_pt.wxml
+++ b/pages/goods/goodsInfo/buy_pt.wxml
@@ -121,6 +121,7 @@
,送优惠券
,送赠品
,送礼包
+ ,送专享礼包
diff --git a/pages/goods/goodsInfo/goodsInfo.js b/pages/goods/goodsInfo/goodsInfo.js
index 29f041c..ed9209a 100644
--- a/pages/goods/goodsInfo/goodsInfo.js
+++ b/pages/goods/goodsInfo/goodsInfo.js
@@ -20,1892 +20,1975 @@ var regeneratorRuntime = require('../../../utils/runtime.js');
const { app } = require("../../../utils/common.js");
Page({
- data: {
- start_stop: 2, //秒杀开始 结束 的控制(1正在进行,2即将开始)
- color_type: 0, //线条控制
- color_type_one: 0,
- color_type_two: 1,
-
- gid: "",
- stoid: o.stoid,
- url: o.url,
- resourceUrl: o.h5_url, //公众号那边的图片文件域名
- iurl: o.imghost,
- defaultAvatar: o.resourceUrl + "/static/images/user68.jpg",
-
- viplimited_timetype: 0,
-
- data: null,
- content: "", //商品详情
- comments: null, //商品评论
- c_curr_p: 1, //评论分页
- com_num: 0, //评论人数
- gallery: null, //图片滚动
- is_collect: 0,
- collect_id: 0,
- cartGoodsNum: 0,
- specSelect: 0,
- optionItemId: 0,
- goodsInputNum: 1,
- openSpecModal: !1,
- openSpecModal_pt: !1, //拼单的弹起,
- openPromModal: !1,
- activeCategoryId: 0,
- supportPageScroll: !1,
- address: {
- address: "",
- district: 0
- },
- shipping: "",
- shippingCost: 0,
- enterAddressPage: !1,
- categories: [{
- name: "商品",
- id: 0
- }, {
- name: "详情",
- id: 1
- }, {
- name: "评价",
- id: 2
- }],
- activeCategoryId2: 0,
- categories2: [{
- name: "商品详情",
- id: 0
- }, {
- name: "规格参数",
- id: 1
- }],
- activeCategoryId3: 1,
- categories3: [{
- name: "全部",
- id: 1,
- num: 0
- },
- {
- name: "有图",
- id: 5,
- num: 0
- },
-
- {
- name: "好评",
- id: 2,
- num: 0
- }, {
- name: "中评",
- id: 3,
- num: 0
- }, {
- name: "差评",
- id: 4,
- num: 0
- },
- ],
-
- select: {
- price: 0,
- stock: 0,
- specName: "",
- activity: null
- },
-
- //已选的商品(属性)
- sele_g_spec_name: '',
- sele_g_id: '',
- sele_g: null,
- //门店相关
- ismend: 0,
- is_sec_mend: 0,
- sto_sele_name: "", //选中的门店名称
- sto_sele_id: "", //选中的门店id
- sto_sele_distr: "", //选择的门店的配送方式
- is_show_sto_cat: 1, //是否显示门店分类
- only_pk: null,
- all_sto: null,
- sec_sto: null, //选择了的门店分类
- pickpu_list: null, //读出的所有门店list
- def_pickpu_list: null, //一开始5个门店list
- sec_pick_index: 0, //第二级门店选择ID
- fir_pick_index: 0, //第一级门店选择ID
- all_pick_list: null,//所有的门店先记录起来
- //同一条形码的所有商品
- sku_g: null,
- sku_g_pt: null, //---拼单的普通购买---
- //联系电话
- mobile: '',
- //分类,品牌,国别名称
- cat_name: '',
- brand_name: '',
- nation_name: '',
-
- //商品的活动类型 0普通 1秒杀 2团购 3优惠 4 积分购 6拼单
- prom_type: 0,
- prom_time_text: "",
- prom_price: null,
- prom_buy_limit: 0,
- djs: null,
- prom_st: 0,
- prom_r_null: 0,
- prom_end_time: null,
- prom_start_time: null,
- prom_act: null,
- pd_xx: 0,
- is_normal: 0, //是否普通购买
- teamgroup: null, //有多少人开团
- grounp_tatal: 0, //有几个人开团
- timer: [],
-
- //商品的购买次数
- prom_buy_num: -1,
- g_buy_num: null,
- prom_goods_num: 0, //活动商品数量
- prom_buy_num: 0, //活动商品购买数量
- prom_redis_num: 0, //活动商品redis数量
-
- //拼单的规则显示
- is_show_gz: 0,
- //会员自己的购买的拼单商品的情况
- user_order_pt_state: 0,
- //购买的订单
- buy_order: null,
- //1加入购物车 2立即购买
- openSpecModal_ind: 0,
-
- //---计时器开关----
- is_timer: 1,
- isshow: 0,
- bconfig: null, //基础配置
-
- fir_comments: null, //详情页上的评价
- fir_quan: null, //详情页上的券
- quan_list: null, //券列表
-
- coupon: 0,
- //会员分享的头像
- share_head: "",
- share_goods_img: "",
-
- //----------视频图片data参数---------
- current: 0, //图片计数
- swiperCurrent: 0, //轮播的下标
- hiddenn: 0, //控制轮播计数显示
-
- currentTab: 0, // 选择器控制参数
- mapurl: "",
- mapurl_f_img: "",
- videopicture: 0, //视频图片的控制
-
- video: 0, //视频图片切换器
- index: 0,
- noon: 0, //开始视频的隐藏
-
- screenWidth: 0,
- canvasHidden: 1,
-
- //--推荐--
- store_config: null,
- is_show_pl: 0, //是否品类
- is_show_pp: 0, //是否品牌
- is_show_gb: 0, //是否国别
- is_closecoupon: 0,
-
- //是否点赞中
- iszaning: 0,
-
- select_store: 0, //选择更多
- index: 1,
- more_store: 0, //选择门店
- sort_store: 0, //门店分类
- choice_sort_store: 0, //选择分类门店
- new_user: 0, //新用户
-
- def_pick_store: null, // 默认的门店
- fir_def_store: null, //客户默认的门店的
- lat: null, //维度
- lon: null, //经度
-
- is_get_local_ok: 0, //获取坐标是否完成
- region_name: "门店分类", //区域的名字
- is_gps: 1,
- open_ind_store: 0, //哪里打开的门店列表的控制属性
- default_store: {}, //创建添加默认门店地址的对象
-
- comments_no_more: 0,
- get_c: 0, //获取评价是不是成
- is_collect_load: 0, //是不是处理
- is_newsales_rules: 0, //是否开启最新的门店规则,此时会新读门店,当点击选择门店时会触发读取线下库存
- sales_rules: 1, //默认是线上销售
-
- wait_for_user_store: null,
- prom_goods: null, //商品优惠列表
- order_prom: null, //订单优惠
- collocationGoods: null, //搭配购
-
- poster: null, //自定义海报
- share_b_img: '', //自定义分享的背景
-
- showPoster: false,
- hui_condition: null,
- sto_sele_name_1: '',//分享的门店名称
- fir_goods: null,
-
- share_hidden: false,
- },
+ data: {
+ start_stop: 2, //秒杀开始 结束 的控制(1正在进行,2即将开始)
+ color_type: 0, //线条控制
+ color_type_one: 0,
+ color_type_two: 1,
+
+ gid: "",
+ stoid: o.stoid,
+ url: o.url,
+ resourceUrl: o.h5_url, //公众号那边的图片文件域名
+ iurl: o.imghost,
+ defaultAvatar: o.resourceUrl + "/static/images/user68.jpg",
+
+ data: null,
+ content: "", //商品详情
+ comments: null, //商品评论
+ c_curr_p: 1, //评论分页
+ com_num: 0, //评论人数
+ gallery: null, //图片滚动
+ is_collect: 0,
+ collect_id: 0,
+ cartGoodsNum: 0,
+ specSelect: 0,
+ optionItemId: 0,
+ goodsInputNum: 1,
+ openSpecModal: !1,
+ openSpecModal_pt: !1, //拼单的弹起,
+ openPromModal: !1,
+ activeCategoryId: 0,
+ supportPageScroll: !1,
+ address: {
+ address: "",
+ district: 0
+ },
+ shipping: "",
+ shippingCost: 0,
+ enterAddressPage: !1,
+ categories: [{
+ name: "商品",
+ id: 0
+ }, {
+ name: "详情",
+ id: 1
+ }, {
+ name: "评价",
+ id: 2
+ }],
+ activeCategoryId2: 0,
+ categories2: [{
+ name: "商品详情",
+ id: 0
+ }, {
+ name: "规格参数",
+ id: 1
+ }],
+ activeCategoryId3: 1,
+ categories3: [{
+ name: "全部",
+ id: 1,
+ num: 0
+ },
+ {
+ name: "有图",
+ id: 5,
+ num: 0
+ },
- //------初始化加载----------
- onLoad: function (t) {
- var ee = this,
- that = ee,
- th = ee,
- gid = t.goods_id,
- first_leader = t.first_leader,
- room_id = t.room_id,
- room_user_share = t.room_user_share, //如果是会员分享带有room_id的话,那么接下来会员分享就不传room_id
- prom_type=t.prom_type,
- prom_id=t.prom_id; //活动ID
-
- if(prom_type){
- this.data.prom_type=prom_type;
- this.data.prom_id=prom_id;
- }
+ {
+ name: "好评",
+ id: 2,
+ num: 0
+ }, {
+ name: "中评",
+ id: 3,
+ num: 0
+ }, {
+ name: "差评",
+ id: 4,
+ num: 0
+ },
+ ],
- //-- 自定义海报 --
- getApp().request.promiseGet("/api/weshop/goods/poster/page", {
- data: { store_id: os.stoid, type: 1, is_use: 1 }
- }).then(res => {
- if (res.data.code == 0 && res.data.data && res.data.data.pageData && res.data.data.pageData[0]) {
+ select: {
+ price: 0,
+ stock: 0,
+ specName: "",
+ activity: null
+ },
- var poster_data = res.data.data.pageData[0];
- var json_str = poster_data.jsonStr;
+ //已选的商品(属性)
+ sele_g_spec_name: '',
+ sele_g_id: '',
+ sele_g: null,
+ //门店相关
+ ismend: 0,
+ is_sec_mend: 0,
+ sto_sele_name: "", //选中的门店名称
+ sto_sele_id: "", //选中的门店id
+ sto_sele_distr: "", //选择的门店的配送方式
+ is_show_sto_cat: 1, //是否显示门店分类
+ only_pk: null,
+ all_sto: null,
+ sec_sto: null, //选择了的门店分类
+ pickpu_list: null, //读出的所有门店list
+ def_pickpu_list: null, //一开始5个门店list
+ sec_pick_index: 0, //第二级门店选择ID
+ fir_pick_index: 0, //第一级门店选择ID
+ all_pick_list: null,//所有的门店先记录起来
+ //同一条形码的所有商品
+ sku_g: null,
+ sku_g_pt: null, //---拼单的普通购买---
+ //联系电话
+ mobile: '',
+ //分类,品牌,国别名称
+ cat_name: '',
+ brand_name: '',
+ nation_name: '',
+
+ //商品的活动类型 0普通 1秒杀 2团购 3优惠 4 积分购 6拼单
+ prom_type: 0,
+ prom_time_text: "",
+ prom_price: null,
+ prom_buy_limit: 0,
+ djs: null,
+ prom_st: 0,
+ prom_r_null: 0,
+ prom_end_time: null,
+ prom_start_time: null,
+ prom_act: null,
+ pd_xx: 0,
+ is_normal: 0, //是否普通购买
+ teamgroup: null, //有多少人开团
+ grounp_tatal: 0, //有几个人开团
+ timer: [],
+
+ //商品的购买次数
+ prom_buy_num: -1,
+ g_buy_num: null,
+ prom_goods_num: 0, //活动商品数量
+ prom_buy_num: 0, //活动商品购买数量
+ prom_redis_num: 0, //活动商品redis数量
+
+ //拼单的规则显示
+ is_show_gz: 0,
+ //会员自己的购买的拼单商品的情况
+ user_order_pt_state: 0,
+ //购买的订单
+ buy_order: null,
+ //1加入购物车 2立即购买
+ openSpecModal_ind: 0,
+
+ //---计时器开关----
+ is_timer: 1,
+ isshow: 0,
+ bconfig: null, //基础配置
+
+ fir_comments: null, //详情页上的评价
+ fir_quan: null, //详情页上的券
+ quan_list: null, //券列表
+
+ coupon: 0,
+ //会员分享的头像
+ share_head: "",
+ share_goods_img: "",
+
+ //----------视频图片data参数---------
+ current: 0, //图片计数
+ swiperCurrent: 0, //轮播的下标
+ hiddenn: 0, //控制轮播计数显示
+
+ currentTab: 0, // 选择器控制参数
+ mapurl: "",
+ mapurl_f_img: "",
+ videopicture: 0, //视频图片的控制
+
+ video: 0, //视频图片切换器
+ index: 0,
+ noon: 0, //开始视频的隐藏
+
+ screenWidth: 0,
+ canvasHidden: 1,
+
+ //--推荐--
+ store_config: null,
+ is_show_pl: 0, //是否品类
+ is_show_pp: 0, //是否品牌
+ is_show_gb: 0, //是否国别
+ is_closecoupon: 0,
+
+ //是否点赞中
+ iszaning: 0,
+
+ select_store: 0, //选择更多
+ index: 1,
+ more_store: 0, //选择门店
+ sort_store: 0, //门店分类
+ choice_sort_store: 0, //选择分类门店
+ new_user: 0, //新用户
+
+ def_pick_store: null, // 默认的门店
+ fir_def_store: null, //客户默认的门店的
+ lat: null, //维度
+ lon: null, //经度
+
+ is_get_local_ok: 0, //获取坐标是否完成
+ region_name: "门店分类", //区域的名字
+ is_gps: 1,
+ open_ind_store: 0, //哪里打开的门店列表的控制属性
+ default_store: {}, //创建添加默认门店地址的对象
+
+ comments_no_more: 0,
+ get_c: 0, //获取评价是不是成
+ is_collect_load: 0, //是不是处理
+ is_newsales_rules: 0, //是否开启最新的门店规则,此时会新读门店,当点击选择门店时会触发读取线下库存
+ sales_rules: 1, //默认是线上销售
+
+ wait_for_user_store: null,
+ prom_goods: null, //商品优惠列表
+ order_prom: null, //订单优惠
+ collocationGoods: null, //搭配购
+
+ poster: null, //自定义海报
+ share_b_img: '', //自定义分享的背景
+
+ showPoster: false,
+ hui_condition: null,
+ sto_sele_name_1: '',//分享的门店名称
+ fir_goods: null,
+
+ share_hidden: false,
+ all_activity_list: null, //所有活动的列表
+ },
- if (json_str) {
- var json_data = JSON.parse(json_str);
- if (json_data.bg_img) {
+ //------初始化加载----------
+ onLoad: function (t) {
+ var ee = this,
+ that = ee,
+ th = ee,
+ gid = t.goods_id,
+ first_leader = t.first_leader,
+ room_id = t.room_id,
+ room_user_share = t.room_user_share, //如果是会员分享带有room_id的话,那么接下来会员分享就不传room_id
+ prom_type = t.prom_type,
+ prom_id = t.prom_id; //活动ID
+
+
+ //-- 自定义海报 --
+ getApp().request.promiseGet("/api/weshop/goods/poster/page", {
+ data: {store_id: os.stoid, type: 1, is_use: 1}
+ }).then(res => {
+ if (res.data.code == 0 && res.data.data && res.data.data.pageData && res.data.data.pageData[0]) {
+
+ var poster_data = res.data.data.pageData[0];
+ var json_str = poster_data.jsonStr;
+
+ if (json_str) {
+ var json_data = JSON.parse(json_str);
+ if (json_data.bg_img) {
+
+ //-- 把图片那到本地 --
+ wx.getImageInfo({
+ src: json_data.bg_img,
+ success: function (res) {
+ var path = res.path;
+ th.setData({share_b_img: path})
+ },
+ fail: function (res) {
+ }
+ });
+ }
+ th.setData({poster: json_data})
- //-- 把图片那到本地 --
- wx.getImageInfo({
- src: json_data.bg_img,
- success: function (res) {
- var path = res.path;
- th.setData({ share_b_img: path })
- },
- fail: function (res) { }
- });
- }
- th.setData({ poster: json_data })
+ }
+ }
+ })
- }
- }
- })
+ //---获取手机地址坐标--
+ //--如果tg_id是空的话,分享回来--
+ if (gid == undefined || gid == null || gid == "") {
+ var gid_str = decodeURIComponent(t.scene);
+ gid_str = gid_str.split("_");
+ gid = gid_str[0];
+ if (gid.indexOf('.') != -1) {
+ var fir_arr = gid.split(".");
+ gid = fir_arr[0];
+ prom_type = fir_arr[1];
+ prom_id = fir_arr[2];
+ this.data.prom_type = prom_type;
+ this.data.prom_id = prom_id;
+ }
- //---获取手机地址坐标--
- //--如果tg_id是空的话,分享回来--
- if (gid == undefined || gid == null || gid == "") {
- var gid_str = decodeURIComponent(t.scene);
- gid_str = gid_str.split("_");
- gid = gid_str[0];
- if(gid.indexOf('.')!=-1){
- var fir_arr=gid.split(".");
- gid=fir_arr[0];
- prom_type=fir_arr[1];
- prom_id=fir_arr[2];
- this.data.prom_type=prom_type;
- this.data.prom_id=prom_id;
- }
+ if (gid_str.length > 1) {
+ first_leader = gid_str[1];
+ }
+ //-- 如果有room_id的获取 --
+ if (gid_str.length > 2 && gid_str[2]) {
+ room_id = gid_str[2];
+ room_user_share = 1;
+ }
+ }
- if (gid_str.length > 1) {
- first_leader = gid_str[1];
- }
- //-- 如果有room_id的获取 --
- if (gid_str.length > 2 && gid_str[2]) {
- room_id = gid_str[2];
- room_user_share = 1;
- }
+ //判断活动
+ if (prom_type) {
+ this.data.prom_type = prom_type;
+ this.data.prom_id = prom_id;
+ }
+ ee.setData({gid: gid});
+ if (first_leader) {
+ console.log("log---".first_leader);
+ getApp().globalData.first_leader = first_leader;
+ //调用接口判断是不是会员
+ getApp().request.promiseGet("/api/weshop/shoppingGuide/get/" + os.stoid + "/" + first_leader, {}).then(res => {
+ if (res.data.code == 0) {
+ getApp().globalData.guide_id = res.data.data.id;
+ }
+ })
+ }
- }
+ //-- 如果有房间号 --
+ if (room_id) {
+ getApp().globalData.room_id = room_id;
+ getApp().globalData.room_goods_id = gid;
+ //如果是会员分享过来的要记录
+ if (room_user_share)
+ getApp().globalData.room_user_share = room_user_share;
+ }
- ee.setData({ gid: gid });
- if (first_leader) {
- console.log("log---".first_leader);
- getApp().globalData.first_leader = first_leader;
- //调用接口判断是不是会员
- getApp().request.promiseGet("/api/weshop/shoppingGuide/get/" + os.stoid + "/" + first_leader, {}).then(res => {
- if (res.data.code == 0) {
- getApp().globalData.guide_id = res.data.data.id;
+ var c_guide_id = t.c_guide_id;
+ if (c_guide_id) {
+ th.data.c_guide_id = c_guide_id;
}
- })
- }
- //-- 如果有房间号 --
- if (room_id) {
- getApp().globalData.room_id = room_id;
- getApp().globalData.room_goods_id = gid;
- //如果是会员分享过来的要记录
- if (room_user_share)
- getApp().globalData.room_user_share = room_user_share;
- }
+ getApp().getConfig(function (e) {
+ ee.setData({sto_sele_name_1: e.store_name})
+ })
- var c_guide_id = t.c_guide_id;
- if (c_guide_id) {
- th.data.c_guide_id = c_guide_id;
- }
+ //----获取系统参数-----
+ getApp().getConfig2(function (e) {
+ ee.setData({
+ bconfig: e,
+ sales_rules: e.sales_rules,
+ });
- getApp().getConfig(function (e) {
- ee.setData({ sto_sele_name_1: e.store_name })
- })
+ if (e.categoryset.indexOf("," + 1 + ",") != -1) {
+ ee.setData({
+ is_show_pl: 1
+ });
+ }
+ if (e.categoryset.indexOf("," + 3 + ",") != -1) {
+ ee.setData({
+ is_show_pp: 1
+ });
+ }
+ if (e.categoryset.indexOf("," + 2 + ",") != -1) {
+ ee.setData({
+ is_show_gb: 1
+ });
+ }
+ console.log(e);
+ var json_d = JSON.parse(e.switch_list);
+ ee.setData({
+ store_config: e,
+ sys_switch: json_d,
+ is_closecoupon: json_d.is_closecoupon,
+ is_newsales_rules: json_d.is_newsales_rules
+ });
+ ee.init(gid);
+ //------几人评价-------
+ //n.init(th, "", "comments");
- //----获取系统参数-----
- getApp().getConfig2(function (e) {
- ee.setData({
- bconfig: e,
- sales_rules: e.sales_rules,
- });
+ th.requestCardNum(), wx.pageScrollTo && th.setData({
+ supportPageScroll: !0
+ });
- if (e.categoryset.indexOf("," + 1 + ",") != -1) {
- ee.setData({
- is_show_pl: 1
- });
- }
- if (e.categoryset.indexOf("," + 3 + ",") != -1) {
- ee.setData({
- is_show_pp: 1
- });
- }
- if (e.categoryset.indexOf("," + 2 + ",") != -1) {
- ee.setData({
- is_show_gb: 1
+ //计算等级价相关
+ var swithc_list = e.switch_list;
+ var sw_arr = JSON.parse(swithc_list);
+ //---如果后台又开等级卡的开关---
+ if (sw_arr.rank_switch && sw_arr.rank_switch == "2") {
+ th.setData({rank_switch: true});
+ //---回调卡的列表---
+ th.getPlusCardType(function (ob) {
+ th.setData({card_list: ob.card_list});
+ var ti = setInterval(function () {
+ var user = getApp().globalData.userInfo;
+ if (!user) return false;
+ clearInterval(ti);
+ if (user.card_field && user['card_expiredate']) {
+ var str = user['card_expiredate'].replace(/-/g, '/');
+ var end = new Date(str);
+ end = Date.parse(end) / 1000;
+ var now = ut.gettimestamp();
+ //--- 判断是等级会员,且在有效期范围内 ---
+ if (user.card_field && now < end) {
+ var card_name = ob.name_map.get(user.card_field);
+ //if(card_name.length>6) card_name=card_name.substring(0,6);
+
+ var is_near_date = 0;
+ if (end - now < 60 * 60 * 30 * 24) is_near_date = 1; //如果小于30天
+ th.setData({
+ card_field: user.card_field,
+ card_name: card_name,
+ card_list: ob.card_list,
+ is_near_date: is_near_date
+ });
+ }
+ }
+ }, 500)
+ })
+ }
+
+ }, 1);
+
+ //获取用户设备信息,屏幕宽度
+ wx.getSystemInfo({
+ success: res => {
+ that.setData({
+ screenWidth: res.screenWidth
+ })
+ }
});
- }
- console.log(e);
- var json_d = JSON.parse(e.switch_list);
- ee.setData({
- store_config: e,
- sys_switch: json_d,
- is_closecoupon: json_d.is_closecoupon,
- is_newsales_rules: json_d.is_newsales_rules
- });
- ee.init(gid);
- //------几人评价-------
- //n.init(th, "", "comments");
-
- th.requestCardNum(), wx.pageScrollTo && th.setData({
- supportPageScroll: !0
- });
-
- //计算等级价相关
- var swithc_list = e.switch_list;
- var sw_arr = JSON.parse(swithc_list);
- //---如果后台又开等级卡的开关---
- if (sw_arr.rank_switch && sw_arr.rank_switch == "2") {
- th.setData({ rank_switch: true });
- //---回调卡的列表---
- th.getPlusCardType(function (ob) {
- th.setData({ card_list: ob.card_list });
- var ti = setInterval(function () {
- var user = getApp().globalData.userInfo;
- if (!user) return false;
- clearInterval(ti);
- if (user.card_field && user['card_expiredate']) {
- var str = user['card_expiredate'].replace(/-/g, '/');
- var end = new Date(str);
- end = Date.parse(end) / 1000;
- var now = ut.gettimestamp();
- //--- 判断是等级会员,且在有效期范围内 ---
- if (user.card_field && now < end) {
- var card_name = ob.name_map.get(user.card_field);
- //if(card_name.length>6) card_name=card_name.substring(0,6);
-
- var is_near_date = 0;
- if (end - now < 60 * 60 * 30 * 24) is_near_date = 1; //如果小于30天
- th.setData({ card_field: user.card_field, card_name: card_name, card_list: ob.card_list, is_near_date: is_near_date });
- }
- }
- }, 500)
- })
- }
- }, 1);
+ //获取用户的默认门店
+ getApp().get_user_store(function (e) {
+ if (!e) {
+ th.data.fir_def_store = {}; //赋值空对象
+ return false;
+ }
+ var ee = JSON.parse(JSON.stringify(e));
+ //--定时器推迟一下--
+ setTimeout(function () {
+ if (th.data.fir_goods) var g_distr_type = th.data.fir_goods.distr_type;
+ //--如果默认门店的配送方式不对,就不能被选择,这里不控制,如果不一样,就说明配送方式不对--
+ if (ee.distr_type != 0 && g_distr_type != 0 && ee.distr_type != g_distr_type) {
+ ee.is_no_dis = 1;
+ }
- //获取用户设备信息,屏幕宽度
- wx.getSystemInfo({
- success: res => {
- that.setData({
- screenWidth: res.screenWidth
+ var appd = getApp().globalData;
+ var w_time = setInterval(function () {
+ if (that.data.is_get_local_ok == 0) return false;
+ clearInterval(w_time);
+ var distance = null;
+ var e = JSON.parse(JSON.stringify(ee));
+
+ //如果有开启近距离的话,同时距离优不一样了
+ if (that.data.lat != null) {
+ //如果经纬度有变化的话
+ if (e && appd.lat == that.data.lat && appd.lon == that.data.lon && e.distance > 0) {
+ that.set_def_storage(e);
+ } else {
+ //要用接口是获取距离,js的计算不准
+ getApp().request.promiseGet("/api/weshop/pickup/list", {
+ data: {
+ store_id: os.stoid,
+ pickup_id: e.pickup_id,
+ lat: th.data.lat,
+ lon: th.data.lon,
+ isstop: 0,
+ is_pos: 1
+ },
+ }).then(res => {
+ if (res.data.code == 0) {
+ e = res.data.data.pageData[0];
+ if (e) {
+ e.is_no_dis = ee.is_no_dis;
+ appd.pk_store = e;
+ that.set_def_storage(e);
+ }
+
+ }
+ })
+ }
+ //e.distance = distance;
+ appd.lat = that.data.lat;
+ appd.lon = that.data.lon;
+
+ } else {
+ if (e) {
+ e.distance = null;
+ that.set_def_storage(e);
+ }
+ }
+ }, 500)
+ }, 700)
+ });
+
+ //更新点击量
+ getApp().request.put("/api/weshop/goods/updateClick", {
+ data: {store_id: os.stoid, goods_id: gid}
})
- }
- });
+ },
- //获取用户的默认门店
- getApp().get_user_store(function (e) {
- if (!e) {
- th.data.fir_def_store = {}; //赋值空对象
- return false;
- }
- var ee = JSON.parse(JSON.stringify(e));
- //--定时器推迟一下--
- setTimeout(function () {
- if (th.data.fir_goods) var g_distr_type = th.data.fir_goods.distr_type;
- //--如果默认门店的配送方式不对,就不能被选择,这里不控制,如果不一样,就说明配送方式不对--
- if (ee.distr_type != 0 && g_distr_type != 0 && ee.distr_type != g_distr_type) {
- ee.is_no_dis = 1;
- }
- var appd = getApp().globalData;
- var w_time = setInterval(function () {
- if (that.data.is_get_local_ok == 0) return false;
- clearInterval(w_time);
- var distance = null;
- var e = JSON.parse(JSON.stringify(ee));
-
- //如果有开启近距离的话,同时距离优不一样了
- if (that.data.lat != null) {
- //如果经纬度有变化的话
- if (e && appd.lat == that.data.lat && appd.lon == that.data.lon && e.distance > 0) {
- that.set_def_storage(e);
+ //--- 设置一下默认库存的数量 ----
+ set_def_storage(ee) {
+ var that = this, th = this;
+ getApp().getConfig2(function (e) {
+ var sales_rules = e.sales_rules;
+ if (sales_rules == 2) {
+ getApp().waitfor2(that, "wait_for_user_store", "fir_goods", function () {
+ var lock = 0, plist = null;
+ var gd = that.data.fir_goods;
+ //先读取门店的lock,采用链式写法,少用await
+ getApp().request.promiseGet("/api/weshop/order/ware/lock/page", {
+ data: {
+ store_id: os.stoid,
+ wareId: that.data.fir_goods.goods_id,
+ storageId: ee.pickup_id,
+ pageSize: 1000
+ }
+ }).then(res => {
+ if (res.data.code == 0 && res.data.data.total > 0) {
+ for (var i in res.data.data.pageData)
+ lock += res.data.data.pageData[i].outQty
+ }
+ //---通过接口获取门店的线下库存信息--
+ return getApp().request.promiseGet("/api/weshop/goods/getWareStorages", {
+ data: {
+ storageNos: ee.pickup_no,
+ wareIds: encodeURIComponent(th.data.data.erpwareid),
+ storeId: os.stoid
+ }
+ })
+ }).then(res => {
+ if (res.data.code == 0 && res.data.data.total > 0) {
+ plist = res.data.data.pageData[0];
+ } else {
+ wx.showToast({
+ title: '库存不足,请更换其他门店',
+ icon: 'none',
+ });
+ }
+ ;
+ if (plist && plist.CanOutQty - lock > 0) {
+ ee.CanOutQty = plist.CanOutQty - lock;
+ } else {
+ ee.CanOutQty = 0;
+ }
+ //--给门店赋值线下库存--
+ that.data.fir_def_store = ee;
+ that.setData({
+ def_pick_store: ee,
+ sto_sele_name: ee.pickup_name,
+ sto_sele_id: ee.pickup_id,
+ sto_sele_distr: ee.distr_type
+ })
+ })
+ })
} else {
- //要用接口是获取距离,js的计算不准
- getApp().request.promiseGet("/api/weshop/pickup/list", {
- data: { store_id: os.stoid, pickup_id: e.pickup_id, lat: th.data.lat, lon: th.data.lon,isstop:0,is_pos:1 },
- }).then(res => {
- if (res.data.code == 0) {
- e = res.data.data.pageData[0];
- if (e) {
- e.is_no_dis = ee.is_no_dis;
- appd.pk_store = e;
- that.set_def_storage(e);
- }
-
- }
- })
+ that.data.fir_def_store = ee;
+ that.setData({
+ def_pick_store: ee,
+ sto_sele_name: ee.pickup_name,
+ sto_sele_id: ee.pickup_id,
+ sto_sele_distr: ee.distr_type
+ })
}
- //e.distance = distance;
- appd.lat = that.data.lat;
- appd.lon = that.data.lon;
+ })
- } else {
- if (e) {
- e.distance = null;
- that.set_def_storage(e);
- }
- }
- }, 500)
- }, 700)
- });
+ },
- //更新点击量
- getApp().request.put("/api/weshop/goods/updateClick", {
- data: { store_id: os.stoid, goods_id: gid }
- })
- },
+ //------------程序初始化入口-------------
+ async init(gid) {
+ var ee = this,
+ th = ee,
+ gallery = null,
+ is_collect = 0,
+ collect_id = 0,
+ categories3 = ee.data.categories3,
+ fir_com = null,
+ fir_quan = null,
+ mapurl = null,
+ mapurl_f_img = null;
- //--- 设置一下默认库存的数量 ----
- set_def_storage(ee) {
- var that = this, th = this;
- getApp().getConfig2(function (e) {
- var sales_rules = e.sales_rules;
- if (sales_rules == 2) {
- getApp().waitfor2(that, "wait_for_user_store", "fir_goods", function () {
- var lock = 0, plist = null;
- var gd = that.data.fir_goods;
- //先读取门店的lock,采用链式写法,少用await
- getApp().request.promiseGet("/api/weshop/order/ware/lock/page", {
- data: { store_id: os.stoid, wareId: that.data.fir_goods.goods_id, storageId: ee.pickup_id, pageSize: 1000 }
- }).then(res => {
- if (res.data.code == 0 && res.data.data.total > 0) {
- for (var i in res.data.data.pageData)
- lock += res.data.data.pageData[i].outQty
+
+ //------图片滚动----------
+ await getApp().request.promiseGet("/api/weshop/goodsimages/page", {
+ data: {
+ store_id: os.stoid,
+ goods_id: gid,
+ },
+ }).then(res => {
+
+ var t = res;
+ var g = t.data.data.pageData;
+ if (g.length == 0) {
+ var ie = {
+ "image_url": o.imghost + "/public/images/default_goods_image_240.gif"
+ };
+ g.push(ie);
+ gallery = g;
+ return;
}
- //---通过接口获取门店的线下库存信息--
- return getApp().request.promiseGet("/api/weshop/goods/getWareStorages", {
- data: { storageNos: ee.pickup_no, wareIds: encodeURIComponent(th.data.data.erpwareid), storeId: os.stoid }
- })
- }).then(res => {
- if (res.data.code == 0 && res.data.data.total > 0) {
- plist = res.data.data.pageData[0];
- } else {
- wx.showToast({
- title: '库存不足,请更换其他门店',
- icon: 'none',
- });
- };
- if (plist && plist.CanOutQty - lock > 0) {
- ee.CanOutQty = plist.CanOutQty - lock;
- } else {
- ee.CanOutQty = 0;
+ for (var i = 0; i < g.length; i++) {
+ if (g[i].image_url.indexOf(o.imghost) == -1)
+ g[i].image_url = o.imghost + g[i].image_url;
}
- //--给门店赋值线下库存--
- that.data.fir_def_store = ee;
- that.setData({
- def_pick_store: ee,
- sto_sele_name: ee.pickup_name,
- sto_sele_id: ee.pickup_id,
- sto_sele_distr: ee.distr_type
- })
- })
+ gallery = g;
})
- } else {
- that.data.fir_def_store = ee;
- that.setData({
- def_pick_store: ee,
- sto_sele_name: ee.pickup_name,
- sto_sele_id: ee.pickup_id,
- sto_sele_distr: ee.distr_type
+ //------是否收藏----------
+ await getApp().request.promiseGet("/api/weshop/goodscollect/page", {
+ data: {
+ store_id: os.stoid,
+ goods_id: gid,
+ user_id: oo.user_id,
+ }
+ }).then(res => {
+ var t = res;
+ var data = t.data.data.pageData;
+ if (data && data.length > 0) {
+ //ee.setData({ is_collect: 1, collect_id: data[0].collect_id, });
+ is_collect = 1;
+ collect_id = data[0].collect_id;
+ }
})
- }
- })
-
- },
-
-
- //------------程序初始化入口-------------
- async init(gid) {
- var ee = this,
- th = ee,
- gallery = null,
- is_collect = 0,
- collect_id = 0,
- categories3 = ee.data.categories3,
- fir_com = null,
- fir_quan = null,
- mapurl = null,
- mapurl_f_img = null;
+ //------获取评价的统计数量----
+ await getApp().request.promiseGet("/api/weshop/comment/countlist/", {
+ data: {
+ store_id: os.stoid,
+ goods_id: gid
+ },
+ //failRollback: !0,
- //------图片滚动----------
- await getApp().request.promiseGet("/api/weshop/goodsimages/page", {
- data: {
- store_id: os.stoid,
- goods_id: gid,
- },
- }).then(res => {
+ }).then(res => {
+ var t = res;
+ var g = t.data.data[0];
+ if (g != null && g != undefined) {
+ var allnum = g.c0 + g.c1 + g.c2 + g.c3 + g.c4 + g.c5;
+ var num2 = g.c4 + g.c5;
+ var num3 = g.c3;
+ var num4 = g.c0 + g.c1 + g.c2;
+
+ var dd = ee.data.categories3;
+ dd[0].num = allnum;
+ dd[1].num = g.cimg;
+ dd[2].num = num2;
+ dd[3].num = num3;
+ dd[4].num = num4;
+
+ categories3 = dd;
+ }
+ })
- var t = res;
- var g = t.data.data.pageData;
- if (g.length == 0) {
- var ie = {
- "image_url": o.imghost + "/public/images/default_goods_image_240.gif"
- };
- g.push(ie);
- gallery = g;
- return;
- }
- for (var i = 0; i < g.length; i++) {
- if (g[i].image_url.indexOf(o.imghost) == -1)
- g[i].image_url = o.imghost + g[i].image_url;
- }
- gallery = g;
- })
- //------是否收藏----------
- await getApp().request.promiseGet("/api/weshop/goodscollect/page", {
- data: {
- store_id: os.stoid,
- goods_id: gid,
- user_id: oo.user_id,
- }
- }).then(res => {
- var t = res;
- var data = t.data.data.pageData;
- if (data && data.length > 0) {
- //ee.setData({ is_collect: 1, collect_id: data[0].collect_id, });
- is_collect = 1;
- collect_id = data[0].collect_id;
- }
- })
+ //----获取详情页的评价----
+ await getApp().request.promiseGet("/api/weshop/comment/pageComment", {
+ data: {
+ store_id: os.stoid,
+ goods_id: gid,
+ pageSize: 3,
+ parent_id: 0,
+ page: 1,
+ is_show: 1,
+ },
+ }).then(res => {
+ fir_com = res.data.data.pageData;
+ })
- //------获取评价的统计数量----
- await getApp().request.promiseGet("/api/weshop/comment/countlist/", {
- data: {
- store_id: os.stoid,
- goods_id: gid
- },
- //failRollback: !0,
+ if (fir_com) {
+ for (var ind in fir_com) {
+ if (fir_com[ind].head_pic == "") fir_com[ind].head_pic = ee.data.iurl + "/miniapp/images/hui_hear_pic.png";
+ if (fir_com[ind].img) fir_com[ind].img = ut.unserialize(fir_com[ind].img);
+ if (fir_com[ind].weapp_img) fir_com[ind].weapp_img = JSON.parse(fir_com[ind].weapp_img);
+ }
+ }
- }).then(res => {
- var t = res;
- var g = t.data.data[0];
- if (g != null && g != undefined) {
- var allnum = g.c0 + g.c1 + g.c2 + g.c3 + g.c4 + g.c5;
- var num2 = g.c4 + g.c5;
- var num3 = g.c3;
- var num4 = g.c0 + g.c1 + g.c2;
-
- var dd = ee.data.categories3;
- dd[0].num = allnum;
- dd[1].num = g.cimg;
- dd[2].num = num2;
- dd[3].num = num3;
- dd[4].num = num4;
-
- categories3 = dd;
- }
- })
+ if (th.data.is_closecoupon != 1 && (!th.data.fir_quan || th.data.fir_quan.length <= 0)) {
+ //----获取详情页的券的数量----
+ await getApp().request.promiseGet("/api/weshop/prom/coupon/pageCouponList", {
+ data: {
+ store_id: os.stoid,
+ type: 1,
+ pageSize: 3,
+ page: 1,
+ is_share: 0,
+ },
+ }).then(res1 => {
+ fir_quan = res1.data.data.pageData;
+ })
+ }
- //----获取详情页的评价----
- await getApp().request.promiseGet("/api/weshop/comment/pageComment", {
- data: {
- store_id: os.stoid,
- goods_id: gid,
- pageSize: 3,
- parent_id: 0,
- page: 1,
- is_show: 1,
- },
- }).then(res => {
- fir_com = res.data.data.pageData;
- })
+ //--------获取视频图片---------
+ await getApp().request.promiseGet("/api/weshop/goodsVideos/get/" + os.stoid + "/" + ee.data.gid, {
+ 1: 1
+ }).then(res1 => {
+ if (res1.data.code == 0) {
+ mapurl = res1.data.data.video_url;
+ mapurl_f_img = res1.data.data.video_img;
+ }
+ })
+ this.getHistoryBuy(); //获取历史购买
+ ee.setData({
+ gallery: gallery,
+ is_collect: is_collect,
+ collect_id: collect_id,
+ categories3: categories3,
+ fir_quan: fir_quan,
+ fir_comments: fir_com,
+ mapurl_f_img: mapurl_f_img,
+ mapurl: mapurl,
+ });
- if (fir_com) {
- for (var ind in fir_com) {
- if (fir_com[ind].head_pic == "") fir_com[ind].head_pic = ee.data.iurl + "/miniapp/images/hui_hear_pic.png";
- if (fir_com[ind].img) fir_com[ind].img = ut.unserialize(fir_com[ind].img);
- if (fir_com[ind].weapp_img) fir_com[ind].weapp_img = JSON.parse(fir_com[ind].weapp_img);
- }
- }
+ },
- if (th.data.is_closecoupon != 1 && (!th.data.fir_quan || th.data.fir_quan.length<=0)) {
- //----获取详情页的券的数量----
- await getApp().request.promiseGet("/api/weshop/prom/coupon/pageCouponList", {
- data: {
- store_id: os.stoid,
- type: 1,
- pageSize: 3,
- page: 1,
- is_share: 0,
- },
- }).then(res1 => {
- fir_quan = res1.data.data.pageData;
- })
- }
+ //---展示---
+ onShow: function () {
+ var goods_list = null, th = this, that = this;
+ var show_prew_img = this.data.show_prew_img
+ if (show_prew_img) {
+ show_prew_img = 0;
+ return false;
+ }
- //--------获取视频图片---------
- await getApp().request.promiseGet("/api/weshop/goodsVideos/get/" + os.stoid + "/" + ee.data.gid, {
- 1: 1
- }).then(res1 => {
- if (res1.data.code == 0) {
- mapurl = res1.data.data.video_url;
- mapurl_f_img = res1.data.data.video_img;
- }
- })
- this.getHistoryBuy(); //获取历史购买
- ee.setData({
- gallery: gallery,
- is_collect: is_collect,
- collect_id: collect_id,
- categories3: categories3,
- fir_quan: fir_quan,
- fir_comments: fir_com,
- mapurl_f_img: mapurl_f_img,
- mapurl: mapurl,
- });
+ //优惠券要实时更新
+ getApp().getConfig2(function (e) {
+ var json_d = JSON.parse(e.switch_list);
+ th.setData({is_closecoupon: json_d.is_closecoupon})
+ th.setData({is_open_offline: json_d.is_pricing_open})
+ }, 1)
- },
- //---展示---
- onShow: function () {
- var goods_list = null, th = this, that = this;
- this.data.is_go_to_team_show=0;
- var show_prew_img = this.data.show_prew_img
- if (show_prew_img) {
- show_prew_img = 0;
- return false;
- }
+ var ui = setInterval(function () {
+ goods_list = th.selectComponent("#goods_list");
+ if (goods_list) {
+ clearInterval(ui);
+ goods_list.init();
+ return false
+ }
+ }, 300)
+
+ this.data.is_timer = 1;
+ var ee = this,
+ gid = this.data.gid,
+ i = getApp().request;
+
+ this.wait_for_store_config();
+ //先检验一下商品的活动情况
+ this.check_gd_prom_new(function () {
+ i.get("/api/weshop/goods/get/" + o.stoid + "/" + ee.data.gid, {
+ failRollback: !0,
+ success: function (t) {
+ console.log(t);
+ if (t.data.code == 0) {
+ if (t.data.data.is_on_sale != 1) {
+ wx.showModal({
+ title: '商品已经下架',
+ showCancel: !1,
+ complete: function () {
+ wx.navigateBack();
+ }
+ });
+ }
- //优惠券要实时更新
- getApp().getConfig2(function (e) {
- var json_d = JSON.parse(e.switch_list);
- th.setData({ is_closecoupon: json_d.is_closecoupon })
- th.setData({ is_open_offline: json_d.is_pricing_open })
- }, 1)
+ var timestamp = Date.parse(new Date());
+ timestamp = timestamp / 1000;
+ if (t.data.data.on_time > timestamp) {
+ wx.showModal({
+ title: '商品还未上架',
+ showCancel: !1,
+ complete: function () {
+ wx.navigateBack();
+ }
+ });
+ }
+ if (t.data.data.down_time > 0) {
+ if (t.data.data.down_time < timestamp) {
+ wx.showModal({
+ title: '商品已经到期下架',
+ showCancel: !1,
+ complete: function () {
+ wx.navigateBack();
+ }
+ });
+ }
+ }
+ //动态获取商品名称
+ wx.setNavigationBarTitle({
+ title: t.data.data.goods_name,
+ });
- var ui = setInterval(function () {
- goods_list = th.selectComponent("#goods_list");
- if (goods_list) {
- clearInterval(ui);
- goods_list.init();
- return false
- }
- }, 300)
-
- this.data.is_timer = 1;
- var ee = this,
- gid = this.data.gid,
- i = getApp().request;
-
- this.wait_for_store_config();
-
- i.get("/api/weshop/goods/get/" + o.stoid + "/" + ee.data.gid, {
- failRollback: !0,
- success: function (t) {
-
- ee.data.viplimited_timetype = t.data.data.viplimited_timetype;
- if (t.data.code == 0) {
- if (t.data.data.is_on_sale != 1) {
- wx.showModal({
- title: '商品已经下架',
- showCancel: !1,
- complete: function () {
- wx.navigateBack();
- }
- });
- }
-
- var timestamp = Date.parse(new Date());
- timestamp = timestamp / 1000;
- if (t.data.data.on_time > timestamp) {
- wx.showModal({
- title: '商品还未上架',
- showCancel: !1,
- complete: function () {
- wx.navigateBack();
- }
- });
- }
-
- if (t.data.data.down_time > 0) {
- if (t.data.data.down_time < timestamp) {
- wx.showModal({
- title: '商品已经到期下架',
- showCancel: !1,
- complete: function () {
- wx.navigateBack();
- }
- });
- }
- }
- //动态获取商品名称
- wx.setNavigationBarTitle({
- title: t.data.data.goods_name,
- });
-
- //-- 判断是不是组合购活动,必须要登录后才能判断 --
- if (getApp().globalData.userInfo && t.data.data.prom_type == 7) {
- //获取活动信息
- var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" +
- t.data.data.prom_id + "/" + getApp().globalData.user_id;
- getApp().request.get(url, {
- success: function (e) {
- if (e.data.code == 0 && e.data.data) {
- if (ut.gettimestamp() < e.data.data.start_time) {
- return false;
- }
- if (e.data.data.is_end == 0 && ut.gettimestamp() < e.data.data.end_time) {
- //-- 获取商品列表 --
- th.setData({ zh_act: e.data.data });
- }
+ //-- 判断是不是组合购活动,必须要登录后才能判断 --
+ if (getApp().globalData.userInfo && t.data.data.prom_type == 7) {
+ //获取活动信息
+ var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" +
+ t.data.data.prom_id + "/" + getApp().globalData.user_id;
+ getApp().request.get(url, {
+ success: function (e) {
+ if (e.data.code == 0 && e.data.data) {
+ if (ut.gettimestamp() < e.data.data.start_time) {
+ return false;
+ }
+ if (e.data.data.is_end == 0 && ut.gettimestamp() < e.data.data.end_time) {
+ //-- 获取商品列表 --
+ th.setData({zh_act: e.data.data});
+ }
+
+ }
+ }
+ });
+ }
- }
- }
- });
- }
+ //-- 把商品的赋值,同时给活动赋值 --
+ ee.data.fir_goods = JSON.parse(JSON.stringify(t.data.data));
+ if (t.data.data.prom_type && t.data.data.prom_id) {
+ ee.data.prom_type = t.data.data.prom_type;
+ ee.data.prom_id = t.data.data.prom_id;
+ }
- //-- 把商品的赋值,同时给活动赋值 --
- ee.data.fir_goods = JSON.parse(JSON.stringify(t.data.data));
- if(t.data.data.prom_type && t.data.data.prom_id){
- ee.data.prom_type=t.data.data.prom_type;
- ee.data.prom_id=t.data.data.prom_id;
- }
- if(ee.data.prom_type!=1 && ee.data.prom_type!=4 && ee.data.prom_type!=6 && ee.data.prom_type!=2){
- ee.check_is_youhui(ee.data.gid);
- }
+ if (ee.data.prom_type != 1 && ee.data.prom_type != 4 && ee.data.prom_type != 6 && ee.data.prom_type != 2) {
+ ee.check_is_youhui(ee.data.gid);
+ }
- t.data.data.on_time = ut.formatTime(t.data.data.on_time, 'yyyy-MM-dd hh:mm:ss');
+ t.data.data.on_time = ut.formatTime(t.data.data.on_time, 'yyyy-MM-dd hh:mm:ss');
- var cur_price = t.data.data.shop_price;
- if (getApp().globalData.userInfo && getApp().globalData.userInfo.card_field) {
- var cfile = getApp().globalData.userInfo.card_field;
- if (t.data.data[cfile]) {
- cur_price = t.data.data[cfile];
- }
- }
- var txt = (cur_price / t.data.data.market_price * 10).toFixed(2).toString();
- txt = parseFloat(txt);
+ var cur_price = t.data.data.shop_price;
+ if (getApp().globalData.userInfo && getApp().globalData.userInfo.card_field) {
+ var cfile = getApp().globalData.userInfo.card_field;
+ if (t.data.data[cfile]) {
+ cur_price = t.data.data[cfile];
+ }
+ }
+ var txt = (cur_price / t.data.data.market_price * 10).toFixed(2).toString();
+ txt = parseFloat(txt);
- t.data.data['disc'] = txt;
+ t.data.data['disc'] = txt;
- if (t.data.data.original_img.indexOf(o.imghost) == -1)
- t.data.data.original_img = o.imghost + t.data.data.original_img;
+ if (t.data.data.original_img.indexOf(o.imghost) == -1)
+ t.data.data.original_img = o.imghost + t.data.data.original_img;
- if (t.data.data.goods_content == null) t.data.data.goods_content = "";
+ if (t.data.data.goods_content == null) t.data.data.goods_content = "";
- //-----商品详情---
- if (!t.data.data.goods_content) t.data.data.goods_content = " ";
- a.wxParse("content", "html", t.data.data.goods_content, ee, 6);
- e.wxParseAddFullImageUrl(ee, "content");
+ //-----商品详情---
+ if (!t.data.data.goods_content) t.data.data.goods_content = " ";
+ a.wxParse("content", "html", t.data.data.goods_content, ee, 6);
+ e.wxParseAddFullImageUrl(ee, "content");
- if(ee.data.prom_type){
- t.data.data.prom_type=ee.data.prom_type;
- t.data.data.prom_id=ee.data.prom_id;
- }
- ee.setData({
- data: t.data.data,
- sele_g: t.data.data,
- userInfo: getApp().globalData.userInfo
- });
+ if (ee.data.prom_type) {
+ t.data.data.prom_type = ee.data.prom_type;
+ t.data.data.prom_id = ee.data.prom_id;
+ }
+ ee.setData({
+ data: t.data.data,
+ sele_g: t.data.data,
+ userInfo: getApp().globalData.userInfo
+ });
- //获取统一条形码,普通商品和优惠促销的商品
- if (ee.data.data.prom_type == 0 || ee.data.data.prom_type == 3 || ee.data.data.prom_type == 5 || ee.data.data.prom_type == 7 || ee.data.data.prom_type == 9 || ee.data.data.prom_type == 10) {
- //默认门店要拿下门店库存
- if (that.data.sales_rules == 2 && that.data.is_newsales_rules) {
- //获取门店
- ee.get_sto();
+ //获取统一条形码,普通商品和优惠促销的商品
+ if (ee.data.data.prom_type == 0 || ee.data.data.prom_type == 3 || ee.data.data.prom_type == 5 || ee.data.data.prom_type == 7 || ee.data.data.prom_type == 9 || ee.data.data.prom_type == 10) {
+ //默认门店要拿下门店库存
+ if (that.data.sales_rules == 2 && that.data.is_newsales_rules) {
+ //获取门店
+ ee.get_sto();
- } else {
- //获取门店
- ee.get_sto();
- }
+ } else {
+ //获取门店
+ ee.get_sto();
+ }
- ee.get_sku(o.stoid, t.data.data, gid);
- ee.check_has_flash();
+ ee.get_sku(o.stoid, t.data.data, gid);
+ ee.check_has_flash();
- }
- else {
- var gg = "", item = t.data.data;
+ }
+ else {
+ var gg = "", item = t.data.data;
- if (item.goods_spec == "null" || item.goods_spec == null) item.goods_spec = "";
- if (item.goods_color == "null" || item.goods_color == null) item.goods_color = "";
+ if (item.goods_spec == "null" || item.goods_spec == null) item.goods_spec = "";
+ if (item.goods_color == "null" || item.goods_color == null) item.goods_color = "";
- if (item.goods_spec != "" && item.goods_color != "") {
- gg = item.goods_spec + "/" + item.goods_color;
- } else if (item.goods_spec != "" || item.goods_color != "") {
- gg = item.goods_spec + item.goods_color;
- } else {
- gg = "规格1";
- }
- t.data.data.gg = gg;
- var uu = [];
- uu.push(t.data.data);
- ee.setData({
- sku_g: uu,
- });
- }
- ee.data.g_buy_num = new Map();
- ee.check_prom(gid, ee.data.data.prom_type, ee.data.data.prom_id);
+ if (item.goods_spec != "" && item.goods_color != "") {
+ gg = item.goods_spec + "/" + item.goods_color;
+ } else if (item.goods_spec != "" || item.goods_color != "") {
+ gg = item.goods_spec + item.goods_color;
+ } else {
+ gg = "规格1";
+ }
+ t.data.data.gg = gg;
+ var uu = [];
+ uu.push(t.data.data);
+ ee.setData({
+ sku_g: uu,
+ });
+ }
+ ee.data.g_buy_num = new Map();
+ ee.check_prom(gid, ee.data.data.prom_type, ee.data.data.prom_id);
+
+ var th = ee;
+ if (ee.data.cat_name == '') {
+ //过去国别,分类,品牌的名称
+ i.get("/api/weshop/goodscategory/get/" + o.stoid + "/" + th.data.data.cat_id, {
+ success: function (t) {
+ var dd = t.data.data;
+ if (t.data.code == 0) {
+ th.setData({
+ cat_name: dd.name
+ });
+ }
+ }
+ });
+ //过去国别,分类,品牌的名称
+ i.get("/api/weshop/brand/get/" + o.stoid + "/" + th.data.data.brand_id, {
+ success: function (t) {
+ var dd = t.data.data;
+ if (t.data.code == 0) {
+ th.setData({
+ brand_name: dd.name
+ });
+ }
+ }
+ });
+ //过去国别,分类,品牌的名称
+ i.get("/api/weshop/nation/get/" + o.stoid + "/" + th.data.data.nation_id, {
+ success: function (t) {
+ var dd = t.data.data;
+ if (t.data.code == 0) {
+ th.setData({
+ nation_name: dd.name
+ });
+ }
+ }
+ });
+ }
- var th = ee;
- if (ee.data.cat_name == '') {
- //过去国别,分类,品牌的名称
- i.get("/api/weshop/goodscategory/get/" + o.stoid + "/" + th.data.data.cat_id, {
- success: function (t) {
- var dd = t.data.data;
- if (t.data.code == 0) {
- th.setData({
- cat_name: dd.name
- });
- }
- }
- });
- //过去国别,分类,品牌的名称
- i.get("/api/weshop/brand/get/" + o.stoid + "/" + th.data.data.brand_id, {
- success: function (t) {
- var dd = t.data.data;
- if (t.data.code == 0) {
- th.setData({
- brand_name: dd.name
- });
- }
- }
- });
- //过去国别,分类,品牌的名称
- i.get("/api/weshop/nation/get/" + o.stoid + "/" + th.data.data.nation_id, {
- success: function (t) {
- var dd = t.data.data;
- if (t.data.code == 0) {
- th.setData({
- nation_name: dd.name
- });
+ }
+ else {
+ wx.showModal({
+ title: t.data.msg,
+ showCancel: !1,
+ complete: function () {
+ wx.navigateBack();
+ }
+ });
+ }
}
- }
});
- }
+ })
- }
- else {
- wx.showModal({
- title: t.data.msg,
- showCancel: !1,
- complete: function () {
- wx.navigateBack();
- }
- });
- }
- }
- });
- this.data.enterAddressPage && (this.data.enterAddressPage = !1);
+ this.data.enterAddressPage && (this.data.enterAddressPage = !1);
- },
- enterAddress: function () {
- this.data.enterAddressPage = !0, wx.navigateTo({
- url: "/pages/user/address_list/address_list?operate=selectAddress"
- });
- },
- onUnload: function () {
- for (var i = 1; i < 100; i++) {
- clearInterval(i);
- }
- },
- onHide: function () {
- this.data.is_timer = 0;
- for (var i = 1; i < 100; i++) {
- clearInterval(i);
- }
- },
- //----------三个选项按钮-----------
- tabClick: function (t) {
- var e = t.currentTarget.id;
- this.setData({
- activeCategoryId: e
- }), 1 == e ? this.tabGoodsContent() : 2 == e && this.tabComment();
- },
- tabClick2: function (t) {
- this.setData({
- activeCategoryId2: t.currentTarget.id
- });
- },
-
- tabClick3: function (t) {
- var e = this;
- if (t.currentTarget.id != this.data.activeCategoryId3) {
- e.data.c_curr_p = 1;
- this.setData({
- activeCategoryId3: t.currentTarget.id,
- comments: null, comments_no_more: 0, get_c: 0,
- });
- this.requestComments_new();
- }
- },
-
- doScrollTop: function () {
- wx.pageScrollTo({
- scrollTop: 0
- });
- },
-
- tabComment: function () {
- this.setData({
- activeCategoryId: 2, comments_no_more: 0, get_c: 0
- }), this.data.comments || this.requestComments_new();
- },
-
- //商品详情的时候调用
- tabGoodsContent: function () {
- var th = this,
- i = getApp().request;
- this.setData({
- activeCategoryId: 1
- });
-
- if (th.data.cat_name == '') {
- //过去国别,分类,品牌的名称
- i.get("/api/weshop/goodscategory/get/" + o.stoid + "/" + th.data.data.cat_id, {
- success: function (t) {
- var dd = t.data.data;
- if (t.data.code == 0) {
- th.setData({
- cat_name: dd.name
- });
- }
- }
- });
- //过去国别,分类,品牌的名称
- i.get("/api/weshop/brand/get/" + o.stoid + "/" + th.data.data.brand_id, {
- success: function (t) {
- var dd = t.data.data;
- if (t.data.code == 0) {
- th.setData({
- brand_name: dd.name
- });
- }
+ },
+ enterAddress: function () {
+ this.data.enterAddressPage = !0, wx.navigateTo({
+ url: "/pages/user/address_list/address_list?operate=selectAddress"
+ });
+ },
+ onUnload: function () {
+ for (var i = 1; i < 100; i++) {
+ clearInterval(i);
}
- });
- //过去国别,分类,品牌的名称
- i.get("/api/weshop/nation/get/" + o.stoid + "/" + th.data.data.nation_id, {
- success: function (t) {
- var dd = t.data.data;
- if (t.data.code == 0) {
- th.setData({
- nation_name: dd.name
- });
- }
+ },
+ onHide: function () {
+ this.data.is_timer = 0;
+ for (var i = 1; i < 100; i++) {
+ clearInterval(i);
}
- });
- }
- },
-
- //获取redis中的数量
- async getactLen(func) {
- var r_num = 0,
- prom_type = this.data.prom_type,
- prom_id = this.data.prom_id;
- await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/" + prom_type + "/" + prom_id, {
- 1: 1
- }).then(res => {
- var em = res;
- if (em.data.code == 0) {
- r_num = em.data.data;
- }
- })
- func(r_num);
- },
+ },
+ //----------三个选项按钮-----------
+ tabClick: function (t) {
+ var e = t.currentTarget.id;
+ this.setData({
+ activeCategoryId: e
+ }), 1 == e ? this.tabGoodsContent() : 2 == e && this.tabComment();
+ },
+ tabClick2: function (t) {
+ this.setData({
+ activeCategoryId2: t.currentTarget.id
+ });
+ },
- //------------加入购物车--------------
- addCart: function (t) {
- var th = this;
- var ind = t.currentTarget.dataset.openSpecModal_ind;
- if (!ind) ind = t.currentTarget.dataset.openspecmodal_ind;
- th.setData({
- open_ind_store: ind
- });
- //如果是秒杀的话,要看redis够不够
- if (this.data.prom_type == 1 || this.data.prom_type == 2) {
- this.getactLen(function (num) {
- if (num < th.data.goodsInputNum) {
- getApp().my_warnning("活动库存不足!", 0, th);
- return false;
- } else {
- th.add_cart_func(t);
+ tabClick3: function (t) {
+ var e = this;
+ if (t.currentTarget.id != this.data.activeCategoryId3) {
+ e.data.c_curr_p = 1;
+ this.setData({
+ activeCategoryId3: t.currentTarget.id,
+ comments: null, comments_no_more: 0, get_c: 0,
+ });
+ this.requestComments_new();
}
- });
- } else {
- th.add_cart_func(t);
- }
- },
+ },
- //-- 加入购物的函数 --
- add_cart_func_inte: function (t) {
- var i = getApp().request;
- if (oo.user_id == null) {
- return s.my_warnning("还未登录!", 0, this);
- }
- if (!getApp().globalData.userInfo) {
- return s.my_warnning("还未登录!", 0, this);
- }
+ doScrollTop: function () {
+ wx.pageScrollTo({
+ scrollTop: 0
+ });
+ },
- var e = this,
- th = e,
- a = 0,
- o = this.data.data;
- a = o.goods_id;
-
- //----------添加到购物车时,要判断限购数量,--------
- e.get_buy_num(o, function (ee) {
- //---判断商品是否超出限购---
- if (th.data.g_buy_num != null && th.data.sele_g.viplimited > 0) {
- if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id) > th.data.sele_g.viplimited) {
- wx.showModal({
- title: '提示',
- content: '超出商品限购'
- });
- return false;
- }
- }
- //---判断商品是否超出活动限购---
- if (th.data.prom_buy_num != -1 && th.data.prom_buy_limit > 0) {
- if (th.data.goodsInputNum + th.data.prom_buy_num > th.data.prom_buy_limit) {
- wx.showModal({
- title: '提示',
- content: '超出商品活动限购'
- });
- return false;
- }
- }
+ tabComment: function () {
+ this.setData({
+ activeCategoryId: 2, comments_no_more: 0, get_c: 0
+ }), this.data.comments || this.requestComments_new();
+ },
- if (th.data.goodsInputNum <= 0) return s.my_warnning("商品数量不能为0", 0, th);
- if (th.data.sto_sele_name == null || th.data.sto_sele_name == undefined)
+ //商品详情的时候调用
+ tabGoodsContent: function () {
+ var th = this,
+ i = getApp().request;
this.setData({
- sto_sele_name: ""
+ activeCategoryId: 1
});
- if (th.data.sto_sele_name == "") return s.my_warnning("请选择门店", 0, th);
-
- //--------------此时操作的数据------------
- var newd = {
- goods_id: o.goods_id,
- goods_num: th.data.goodsInputNum,
- pick_id: th.data.sto_sele_id,
- user_id: oo.user_id,
- store_id: th.data.stoid,
- goods_price: th.data.prom_price,
- integral: th.data.prom_integral,
- member_goods_price: o.shop_price,
- goods_name: o.goods_name,
- goods_sn: o.goods_sn,
- sku: o.sku,
- };
-
- //---是不是从收藏夹出来的---
- if (th.data.c_guide_id) {
- newd['guide_id'] = th.data.c_guide_id;
- newd['guide_type'] = 2;
- if ("add" == t.currentTarget.dataset.action) newd['guide_type'] = 3;
- } else {
- if (getApp().globalData.guide_id) {
- newd['guide_id'] = getApp().globalData.guide_id;
- newd['guide_type'] = 0;
- if ("add" == t.currentTarget.dataset.action) newd['guide_type'] = 1;
- }
- }
- //让商品带上房间号
- //让商品带上房间号
- if (th.data.sys_switch.is_skuroom_id == 1) {
- if (th.data.data.goods_id == getApp().globalData.room_goods_id) {
- newd.room_id = getApp().globalData.room_id;
+ if (th.data.cat_name == '') {
+ //过去国别,分类,品牌的名称
+ i.get("/api/weshop/goodscategory/get/" + o.stoid + "/" + th.data.data.cat_id, {
+ success: function (t) {
+ var dd = t.data.data;
+ if (t.data.code == 0) {
+ th.setData({
+ cat_name: dd.name
+ });
+ }
+ }
+ });
+ //过去国别,分类,品牌的名称
+ i.get("/api/weshop/brand/get/" + o.stoid + "/" + th.data.data.brand_id, {
+ success: function (t) {
+ var dd = t.data.data;
+ if (t.data.code == 0) {
+ th.setData({
+ brand_name: dd.name
+ });
+ }
+ }
+ });
+ //过去国别,分类,品牌的名称
+ i.get("/api/weshop/nation/get/" + o.stoid + "/" + th.data.data.nation_id, {
+ success: function (t) {
+ var dd = t.data.data;
+ if (t.data.code == 0) {
+ th.setData({
+ nation_name: dd.name
+ });
+ }
+ }
+ });
}
- } else {
- if (newd.goods_id == getApp().globalData.room_goods_id) newd.room_id = getApp().globalData.room_id;
- }
+ },
- //如果是积分够,is_integral_normal就要有积分购普通购买字段
- //if(o.prom_type==4){
- //newd.is_integral_normal=1;
- //}
+ //获取redis中的数量
+ async getactLen(func) {
+ var r_num = 0,
+ prom_type = this.data.prom_type,
+ prom_id = this.data.prom_id;
+ await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/" + prom_type + "/" + prom_id, {
+ 1: 1
+ }).then(res => {
+ var em = res;
+ if (em.data.code == 0) {
+ r_num = em.data.data;
+ }
+ })
+ func(r_num);
+ },
- //-----如果是秒杀,团购,积分购,拼团-----
- newd.prom_type = th.data.prom_type;
- newd.prom_id = th.data.prom_id;
- if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th);
- if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th);
+ //------------加入购物车--------------
+ addCart: function (t) {
+ var th = this;
+ var ind = t.currentTarget.dataset.openSpecModal_ind;
+ if (!ind) ind = t.currentTarget.dataset.openspecmodal_ind;
+ th.setData({
+ open_ind_store: ind
+ });
- var i_canbuy=th.data.prom_act.limitqty-th.data.prom_act.buy_num;
- if(i_canbuy 0) {
- if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id) > th.data.sele_g.viplimited) {
- wx.showModal({
- title: '提示',
- content: '超出商品限购'
- });
- return false;
- }
- }
- //---判断商品是否超出活动限购---
- if((th.data.prom_buy_num != -1 && th.data.prom_buy_limit > 0) && !th.data.is_normal) {
- if (th.data.goodsInputNum + th.data.prom_buy_num > th.data.prom_buy_limit) {
- wx.showModal({
- title: '提示',
- content: '超出商品活动限购'
- });
- return false;
+ this.getactLen(function (num) {
+ if (num < th.data.goodsInputNum) {
+ getApp().my_warnning("活动库存不足!", 0, th);
+ return false;
+ } else {
+ th.add_cart_func(t);
+ }
+ });
+ } else {
+ th.add_cart_func(t);
}
- }
+ },
- if (th.data.goodsInputNum <= 0) return s.my_warnning("商品数量不能为0", 0, th);
- if (th.data.sto_sele_name == null || th.data.sto_sele_name == undefined)
- this.setData({
- sto_sele_name: ""
- });
- if (th.data.sto_sele_name == "") return s.my_warnning("请选择门店", 0, th);
-
- //--------------此时操作的数据------------
- var newd = {
- goods_id: o.goods_id,
- goods_num: th.data.goodsInputNum,
- pick_id: th.data.sto_sele_id,
- user_id: oo.user_id,
- store_id: th.data.stoid,
- goods_price: o.shop_price,
- member_goods_price: o.shop_price,
- goods_name: o.goods_name,
- goods_sn: o.goods_sn,
- sku: o.sku,
- prom_id:th.data.sele_g.prom_id,
- prom_type:th.data.sele_g.prom_type,
- };
-
- //---是不是从收藏夹出来的---
- if (th.data.c_guide_id) {
- newd['guide_id'] = th.data.c_guide_id;
- newd['guide_type'] = 2;
- if ("add" == t.currentTarget.dataset.action) newd['guide_type'] = 3;
- } else {
- if (getApp().globalData.guide_id) {
- newd['guide_id'] = getApp().globalData.guide_id;
- newd['guide_type'] = 0;
- if ("add" == t.currentTarget.dataset.action) newd['guide_type'] = 1;
+ //-- 加入购物的函数 --
+ add_cart_func_inte: function (t) {
+ var i = getApp().request;
+ if (oo.user_id == null) {
+ return s.my_warnning("还未登录!", 0, this);
}
- }
-
- //让商品带上房间号
- //让商品带上房间号
- if (th.data.sys_switch.is_skuroom_id == 1) {
- if (th.data.data.goods_id == getApp().globalData.room_goods_id) {
- newd.room_id = getApp().globalData.room_id;
+ if (!getApp().globalData.userInfo) {
+ return s.my_warnning("还未登录!", 0, this);
}
- } else {
- if (newd.goods_id == getApp().globalData.room_goods_id) newd.room_id = getApp().globalData.room_id;
- }
- //如果是积分够,is_integral_normal就要有积分购普通购买字段
- if (o.prom_type == 4) {
- newd.is_integral_normal = 1;
- }
+ var e = this,
+ th = e,
+ a = 0,
+ o = this.data.data;
+ a = o.goods_id;
+
+ //----------添加到购物车时,要判断限购数量,--------
+ e.get_buy_num(o, function (ee) {
+ //---判断商品是否超出限购---
+ if (th.data.g_buy_num != null && th.data.sele_g.viplimited > 0) {
+ if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id) > th.data.sele_g.viplimited) {
+ wx.showModal({
+ title: '提示',
+ content: '超出商品限购'
+ });
+ return false;
+ }
+ }
+ //---判断商品是否超出活动限购---
+ if (th.data.prom_buy_num != -1 && th.data.prom_buy_limit > 0) {
+ if (th.data.goodsInputNum + th.data.prom_buy_num > th.data.prom_buy_limit) {
+ wx.showModal({
+ title: '提示',
+ content: '超出商品活动限购'
+ });
+ return false;
+ }
+ }
- //如果有线下取价
- if (o.offline_price) {
- newd.offline_price = o.offline_price;
- newd.pricing_type = o.pricing_type;
- }
+ if (th.data.goodsInputNum <= 0) return s.my_warnning("商品数量不能为0", 0, th);
+ if (th.data.sto_sele_name == null || th.data.sto_sele_name == undefined)
+ this.setData({
+ sto_sele_name: ""
+ });
+ if (th.data.sto_sele_name == "") return s.my_warnning("请选择门店", 0, th);
- //-----如果是秒杀,团购,积分购,拼团-----
- if (th.data.prom_type == 1 || th.data.prom_type == 2) {
- newd.goods_price = th.data.prom_price;
- newd.member_goods_price = th.data.prom_price,
- newd.prom_type = th.data.prom_type;
- newd.prom_id = th.data.prom_id;
+ //--------------此时操作的数据------------
+ var newd = {
+ goods_id: o.goods_id,
+ goods_num: th.data.goodsInputNum,
+ pick_id: th.data.sto_sele_id,
+ user_id: oo.user_id,
+ store_id: th.data.stoid,
+ goods_price: th.data.prom_price,
+ integral: th.data.prom_integral,
+ member_goods_price: o.shop_price,
+ goods_name: o.goods_name,
+ goods_sn: o.goods_sn,
+ sku: o.sku,
+ };
- if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th);
- if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th);
+ //---是不是从收藏夹出来的---
+ if (th.data.c_guide_id) {
+ newd['guide_id'] = th.data.c_guide_id;
+ newd['guide_type'] = 2;
+ if ("add" == t.currentTarget.dataset.action) newd['guide_type'] = 3;
+ } else {
+ if (getApp().globalData.guide_id) {
+ newd['guide_id'] = getApp().globalData.guide_id;
+ newd['guide_type'] = 0;
+ if ("add" == t.currentTarget.dataset.action) newd['guide_type'] = 1;
+ }
+ }
- th.add_cart_next(e, t, a, o, newd); //加入购物车下一步
+ //让商品带上房间号
+ //让商品带上房间号
+ if (th.data.sys_switch.is_skuroom_id == 1) {
+ if (th.data.data.goods_id == getApp().globalData.room_goods_id) {
+ newd.room_id = getApp().globalData.room_id;
+ }
+ } else {
+ if (newd.goods_id == getApp().globalData.room_goods_id) newd.room_id = getApp().globalData.room_id;
+ }
- } else if (o.prom_type == 7) {
+ //如果是积分够,is_integral_normal就要有积分购普通购买字段
+ //if(o.prom_type==4){
+ //newd.is_integral_normal=1;
+ //}
- //判断进行中的活动,是不是要判断线下库存
- th.check_zh_acting(function (ee) {
- newd.prom_id = 0;
- newd.prom_type = 0;
- if (ee && th.data.sele_g.act) {
- newd.prom_id = th.data.sele_g.act.id;
- newd.prom_type = 7;
+ //-----如果是秒杀,团购,积分购,拼团-----
+ newd.prom_type = th.data.prom_type;
+ newd.prom_id = th.data.prom_id;
if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th);
if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th);
- th.add_cart_next(e, t, a, o, newd); //加入购物车下一步
- return false;
- } else {
- //---如果是线下门店销售的时候---
- if (th.data.sales_rules == 2) {
- var pick = th.get_pick_from_list(th.data.sto_sele_id)
- //---通过接口获取门店的线下库存信息--
- getApp().request.get("/api/weshop/goods/getWareStorages", {
- data: { storageNos: pick.pickup_no, wareIds: encodeURIComponent(th.data.sele_g.erpwareid), storeId: os.stoid },
- success: function (res) {
- if (res.data.code == 0) {
- if (res.data.data.pageData.length > 0) {
- var CanOutQty = res.data.data.pageData[0].CanOutQty;
- if (CanOutQty < e.data.goodsInputNum) {
- return s.my_warnning("库存不足!", 0, th);
- }
- //在调一次接口,读取商品的预出库的数量,lock
- getApp().request.get("/api/weshop/order/ware/lock/page", {
- data: { store_id: os.stoid, wareId: th.data.sele_g.goods_id, storageId: pick.pickup_id, pageSize: 1000 },
- success: function (res_data) {
- if (res_data.data.code == 0 && res_data.data.data.total > 0) {
-
- var lock = 0;
- for (var i in res_data.data.data.pageData) {
- lock += res_data.data.data.pageData[i].outQty;
- }
-
- if (CanOutQty <= lock) {
- return s.my_warnning("库存不足!", 0, th);
- }
- th.add_cart_next(e, t, a, o, newd, CanOutQty - lock);
- } else {
- th.add_cart_next(e, t, a, o, newd, CanOutQty);
- }
- }
- })
- } else {
- return s.my_warnning("库存不足!", 0, th);
- }
- }
- }
- })
- } else {
- if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th);
- if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th);
- th.add_cart_next(e, t, a, o, newd); //加入购物车下一步
+ var i_canbuy = th.data.prom_act.limitqty - th.data.prom_act.buy_num;
+ if (i_canbuy < e.data.goodsInputNum) {
+ return s.my_warnning("活动库存不足!", 0, th);
}
- }
+ th.add_cart_next(e, t, a, o, newd); //立即购买下一步
+
})
+ },
- }
- else if (th.data.prom_type == 0 || th.data.prom_type == 3 || th.data.prom_type == 4 || th.data.prom_type == 5 || th.data.prom_type==10) {
- newd.prom_type = 0;
- newd.prom_id = 0;
-
- if(th.data.prom_type == 10){
- newd.prom_type = th.data.prom_type;
- newd.prom_id = th.data.prom_id;
- }
-
- //---如果是线下门店销售的时候---
- if (th.data.sales_rules == 2) {
- var pick = th.get_pick_from_list(th.data.sto_sele_id)
- //---通过接口获取门店的线下库存信息--
- getApp().request.get("/api/weshop/goods/getWareStorages", {
- data: { storageNos: pick.pickup_no, wareIds: encodeURIComponent(th.data.sele_g.erpwareid), storeId: os.stoid },
- success: function (res) {
- if (res.data.code == 0) {
- if (res.data.data.pageData.length > 0) {
- var CanOutQty = res.data.data.pageData[0].CanOutQty;
- if (CanOutQty < e.data.goodsInputNum) {
- return s.my_warnning("库存不足!", 0, th);
- }
- //在调一次接口,读取商品的预出库的数量,lock
- getApp().request.get("/api/weshop/order/ware/lock/page", {
- data: { store_id: os.stoid, wareId: th.data.sele_g.goods_id, storageId: pick.pickup_id, pageSize: 1000 },
- success: function (res_data) {
- if (res_data.data.code == 0 && res_data.data.data.total > 0) {
-
- var lock = 0;
- for (var i in res_data.data.data.pageData) {
- lock += res_data.data.data.pageData[i].outQty;
- }
+ //-- 加入购物的函数 --
+ add_cart_func: function (t) {
+ var i = getApp().request;
+ if (oo.user_id == null) {
+ return s.my_warnning("还未登录!", 0, this);
+ }
- if (CanOutQty <= lock) {
- return s.my_warnning("库存不足!", 0, th);
- }
- th.add_cart_next(e, t, a, o, newd, CanOutQty - lock);
- } else {
- th.add_cart_next(e, t, a, o, newd, CanOutQty);
- }
- }
- })
- } else {
- return s.my_warnning("库存不足!", 0, th);
- }
+ if (!getApp().globalData.userInfo) {
+ return s.my_warnning("还未登录!", 0, this);
+ }
- }
+ var e = this,
+ th = e,
+ a = 0,
+ o = this.data.sele_g;
+ a = o.goods_id;
+
+ //----------添加到购物车时,要判断限购数量,--------
+ e.get_buy_num(o, function (ee) {
+ //---判断商品是否超出限购---
+ if (th.data.g_buy_num != null && th.data.sele_g.viplimited > 0) {
+ if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id) > th.data.sele_g.viplimited) {
+ wx.showModal({
+ title: '提示',
+ content: '超出商品限购'
+ });
+ return false;
+ }
+ }
+ //---判断商品是否超出活动限购---
+ if ((th.data.prom_buy_num != -1 && th.data.prom_buy_limit > 0) && !th.data.is_normal) {
+ if (th.data.goodsInputNum + th.data.prom_buy_num > th.data.prom_buy_limit) {
+ wx.showModal({
+ title: '提示',
+ content: '超出商品活动限购'
+ });
+ return false;
+ }
}
- })
- } else {
- if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th);
- if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th);
- th.add_cart_next(e, t, a, o, newd); //加入购物车下一步
- }
- }
- })
- },
- //---加入购物车的最后一步---
- add_cart_next(e, t, a, o, newd, CanOutQty) {
- var th = this, i = getApp().request;
- //---如果商品不是积分购和拼团,要判断一个是否要进行等级价的判断------
- if ((o.prom_type != 1 || o.prom_id<=0) && ((o.prom_type != 6 && o.prom_type != 4 && o.prom_type !=2 ) || th.data.is_normal)) {
- var conf = th.data.bconfig;
- if (conf.switch_list && getApp().globalData.userInfo['card_field'] && getApp().globalData.userInfo['card_expiredate']) {
- var s_list = JSON.parse(conf.switch_list);
- var now = ut.gettimestamp();
+ if (th.data.goodsInputNum <= 0) return s.my_warnning("商品数量不能为0", 0, th);
+ if (th.data.sto_sele_name == null || th.data.sto_sele_name == undefined)
+ this.setData({
+ sto_sele_name: ""
+ });
+ if (th.data.sto_sele_name == "") return s.my_warnning("请选择门店", 0, th);
+ //--------------此时操作的数据------------
+ var newd = {
+ goods_id: o.goods_id,
+ goods_num: th.data.goodsInputNum,
+ pick_id: th.data.sto_sele_id,
+ user_id: oo.user_id,
+ store_id: th.data.stoid,
+ goods_price: o.shop_price,
+ member_goods_price: o.shop_price,
+ goods_name: o.goods_name,
+ goods_sn: o.goods_sn,
+ sku: o.sku,
+ prom_id: th.data.sele_g.prom_id,
+ prom_type: th.data.sele_g.prom_type,
+ };
- var str = getApp().globalData.userInfo['card_expiredate'].replace(/-/g, '/');
- var end = new Date(str);
- end = Date.parse(end) / 1000;
+ //---是不是从收藏夹出来的---
+ if (th.data.c_guide_id) {
+ newd['guide_id'] = th.data.c_guide_id;
+ newd['guide_type'] = 2;
+ if ("add" == t.currentTarget.dataset.action) newd['guide_type'] = 3;
+ } else {
+ if (getApp().globalData.guide_id) {
+ newd['guide_id'] = getApp().globalData.guide_id;
+ newd['guide_type'] = 0;
+ if ("add" == t.currentTarget.dataset.action) newd['guide_type'] = 1;
+ }
+ }
- //--如果后台有开启等级价的功能,而且会员的等级没有过期的情况下--
- if (parseInt(s_list.rank_switch) == 2 && end > now) {
- var card_price = o[getApp().globalData.userInfo['card_field']];
- //如果会员有等级价
- if (getApp().globalData.userInfo['card_field'] != undefined && getApp().globalData.userInfo['card_field'] != null
- && getApp().globalData.userInfo['card_field'] != "" && card_price > 0) {
- newd.goods_price = card_price;
- newd.member_goods_price = card_price;
- }
- }
- }
- }
+ //让商品带上房间号
+ //让商品带上房间号
+ if (th.data.sys_switch.is_skuroom_id == 1) {
+ if (th.data.data.goods_id == getApp().globalData.room_goods_id) {
+ newd.room_id = getApp().globalData.room_id;
+ }
+ } else {
+ if (newd.goods_id == getApp().globalData.room_goods_id) newd.room_id = getApp().globalData.room_id;
+ }
- //if (this.data.data.goods.is_virtual) return this.buyVirtualGoods(d);
- if ("add" == t.currentTarget.dataset.action) {
+ //如果是积分够,is_integral_normal就要有积分购普通购买字段
+ if (o.prom_type == 4) {
+ newd.is_integral_normal = 1;
+ }
- if (th.data.prom_goods) {
- newd.prom_type = 3;
- newd.prom_id = th.data.prom_goods[0].prom_id;
- }
+ //如果有线下取价
+ if (o.offline_price) {
+ newd.offline_price = o.offline_price;
+ newd.pricing_type = o.pricing_type;
+ }
- //----先看会员在购物车中是否加入了该商品-----
- i.get("/api/weshop/cart/page", {
- data: {
- store_id: e.data.stoid,
- user_id: oo.user_id,
- goods_id: a,
- pick_id: e.data.sto_sele_id,
- state:0
- },
- success: function (re) {
+ //-----如果是秒杀,团购,积分购,拼团-----
+ if (th.data.prom_type == 1 || th.data.prom_type == 2) {
+
+ if (th.data.openSpecModal_flash_normal) {
+
+ newd.prom_type = 0;
+ newd.prom_id = 0;
+
+ //---如果是线下门店销售的时候---
+ if (th.data.sales_rules == 2) {
+ var pick = th.get_pick_from_list(th.data.sto_sele_id)
+ //---通过接口获取门店的线下库存信息--
+ getApp().request.get("/api/weshop/goods/getWareStorages", {
+ data: {
+ storageNos: pick.pickup_no,
+ wareIds: encodeURIComponent(th.data.sele_g.erpwareid),
+ storeId: os.stoid
+ },
+ success: function (res) {
+ if (res.data.code == 0) {
+ if (res.data.data.pageData.length > 0) {
+ var CanOutQty = res.data.data.pageData[0].CanOutQty;
+ if (CanOutQty < e.data.goodsInputNum) {
+ return s.my_warnning("库存不足!", 0, th);
+ }
+ //在调一次接口,读取商品的预出库的数量,lock
+ getApp().request.get("/api/weshop/order/ware/lock/page", {
+ data: {
+ store_id: os.stoid,
+ wareId: th.data.sele_g.goods_id,
+ storageId: pick.pickup_id,
+ pageSize: 1000
+ },
+ success: function (res_data) {
+ if (res_data.data.code == 0 && res_data.data.data.total > 0) {
+
+ var lock = 0;
+ for (var i in res_data.data.data.pageData) {
+ lock += res_data.data.data.pageData[i].outQty;
+ }
+
+ if (CanOutQty <= lock) {
+ return s.my_warnning("库存不足!", 0, th);
+ }
+ th.add_cart_next(e, t, a, o, newd, CanOutQty - lock);
+ } else {
+ th.add_cart_next(e, t, a, o, newd, CanOutQty);
+ }
+ }
+ })
+ } else {
+ return s.my_warnning("库存不足!", 0, th);
+ }
+
+ }
+ }
+ })
+ } else {
+ if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th);
+ if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th);
+ th.add_cart_next(e, t, a, o, newd); //加入购物车下一步
+ }
- //-------如果购物车中有相关的数据---------
- if (re.data.data.total > 0) {
+ return false;
+ }
- var item = re.data.data.pageData[0];
- //判断数量,要看下购物车中有没有该商品
- if (CanOutQty) {
- if (item.goods_num + th.data.goodsInputNum > CanOutQty) {
- return s.my_warnning("库存不足!", 0, th);
- }
- } else {
- if (item.goods_num + th.data.goodsInputNum > o.store_count) {
- return s.my_warnning("库存不足!", 0, th);
- }
- }
+ newd.goods_price = th.data.prom_price;
+ newd.member_goods_price = th.data.prom_price,
+ newd.prom_type = th.data.prom_type;
+ newd.prom_id = th.data.prom_id;
- var updata = {
- id: item.id,
- goods_num: e.data.goodsInputNum + item.goods_num,
- goods_price: newd.goods_price,
- member_goods_price: newd.goods_price,
- store_id: th.data.stoid,
- };
+ if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th);
+ if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th);
- //---是不是从收藏夹出来的---
- if (th.data.c_guide_id) {
- updata['guide_id'] = th.data.c_guide_id;
- updata['guide_type'] = 3; //加入购物车之后就变成了3
- } else {
- if (getApp().globalData.guide_id) {
- updata['guide_id'] = getApp().globalData.guide_id;
- updata['guide_type'] = 0;
- }
- }
+ th.add_cart_next(e, t, a, o, newd); //加入购物车下一步
- i.put("/api/weshop/cart/update", {
- data: updata,
- success: function (t) {
- getApp().my_warnning('加入购物车成功', 1, th, 450);
- var c_num = th.data.cartGoodsNum + th.data.goodsInputNum;
- th.setData({
- cartGoodsNum: c_num
- });
- th.closeSpecModal();
- }
- });
- } else {
+ } else if (o.prom_type == 7) {
+ //判断进行中的活动,是不是要判断线下库存
+ th.check_zh_acting(function (ee) {
+ newd.prom_id = 0;
+ newd.prom_type = 0;
+ if (ee && th.data.sele_g.act) {
+ newd.prom_id = th.data.sele_g.act.id;
+ newd.prom_type = 7;
+ if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th);
+ if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th);
+ th.add_cart_next(e, t, a, o, newd); //加入购物车下一步
+ return false;
+ } else {
+ //---如果是线下门店销售的时候---
+ if (th.data.sales_rules == 2) {
+ var pick = th.get_pick_from_list(th.data.sto_sele_id)
+ //---通过接口获取门店的线下库存信息--
+ getApp().request.get("/api/weshop/goods/getWareStorages", {
+ data: {
+ storageNos: pick.pickup_no,
+ wareIds: encodeURIComponent(th.data.sele_g.erpwareid),
+ storeId: os.stoid
+ },
+ success: function (res) {
+ if (res.data.code == 0) {
+ if (res.data.data.pageData.length > 0) {
+ var CanOutQty = res.data.data.pageData[0].CanOutQty;
+ if (CanOutQty < e.data.goodsInputNum) {
+ return s.my_warnning("库存不足!", 0, th);
+ }
+ //在调一次接口,读取商品的预出库的数量,lock
+ getApp().request.get("/api/weshop/order/ware/lock/page", {
+ data: {
+ store_id: os.stoid,
+ wareId: th.data.sele_g.goods_id,
+ storageId: pick.pickup_id,
+ pageSize: 1000
+ },
+ success: function (res_data) {
+ if (res_data.data.code == 0 && res_data.data.data.total > 0) {
+
+ var lock = 0;
+ for (var i in res_data.data.data.pageData) {
+ lock += res_data.data.data.pageData[i].outQty;
+ }
+
+ if (CanOutQty <= lock) {
+ return s.my_warnning("库存不足!", 0, th);
+ }
+ th.add_cart_next(e, t, a, o, newd, CanOutQty - lock);
+ } else {
+ th.add_cart_next(e, t, a, o, newd, CanOutQty);
+ }
+ }
+ })
+ } else {
+ return s.my_warnning("库存不足!", 0, th);
+ }
+
+ }
+ }
+ })
+ } else {
+ if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th);
+ if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th);
+ th.add_cart_next(e, t, a, o, newd); //加入购物车下一步
+ }
+ }
+ })
- i.post("/api/weshop/cart/save", {
- data: newd,
- success: function (t) {
- getApp().my_warnning('加入购物车成功', 1, th, 450);
- var c_num = th.data.cartGoodsNum + e.data.goodsInputNum;
- th.setData({
- cartGoodsNum: c_num
- });
- th.closeSpecModal();
- }
- });
- }
- }
- });
+ }
+ else if (th.data.prom_type == 0 || th.data.prom_type == 3 || th.data.prom_type == 4 || th.data.prom_type == 5 || th.data.prom_type == 10) {
+ newd.prom_type = 0;
+ newd.prom_id = 0;
- }
- else {
+ if (th.data.prom_type == 10) {
+ newd.prom_type = th.data.prom_type;
+ newd.prom_id = th.data.prom_id;
+ }
- //这一步主要是要让立即购买 走 购物车的逻辑 参与活动
- if(newd.prom_type==10 || newd.prom_type==7){
- //----先看会员在购物车中是否加入了该商品,立即购买的-----
- getApp().request.get("/api/weshop/cart/page", {
- data: {
- store_id: e.data.stoid,
- user_id: oo.user_id,
- state:1
- },
- success: function (res) {
- //-------如果购物车中有相关的数据---------
- if (res.data.code==0 && res.data.data.total > 0) {
- for(let j in res.data.data.pageData){
- let item_j=res.data.data.pageData[j];
- var url = '/api/weshop/cart/del/' +e.data.stoid+ '/' + item_j.id;
- getApp().request.delete(url, {});
- }
+ //---如果是线下门店销售的时候---
+ if (th.data.sales_rules == 2) {
+ var pick = th.get_pick_from_list(th.data.sto_sele_id)
+ //---通过接口获取门店的线下库存信息--
+ getApp().request.get("/api/weshop/goods/getWareStorages", {
+ data: {
+ storageNos: pick.pickup_no,
+ wareIds: encodeURIComponent(th.data.sele_g.erpwareid),
+ storeId: os.stoid
+ },
+ success: function (res) {
+ if (res.data.code == 0) {
+ if (res.data.data.pageData.length > 0) {
+ var CanOutQty = res.data.data.pageData[0].CanOutQty;
+ if (CanOutQty < e.data.goodsInputNum) {
+ return s.my_warnning("库存不足!", 0, th);
+ }
+ //在调一次接口,读取商品的预出库的数量,lock
+ getApp().request.get("/api/weshop/order/ware/lock/page", {
+ data: {
+ store_id: os.stoid,
+ wareId: th.data.sele_g.goods_id,
+ storageId: pick.pickup_id,
+ pageSize: 1000
+ },
+ success: function (res_data) {
+ if (res_data.data.code == 0 && res_data.data.data.total > 0) {
+
+ var lock = 0;
+ for (var i in res_data.data.data.pageData) {
+ lock += res_data.data.data.pageData[i].outQty;
+ }
+
+ if (CanOutQty <= lock) {
+ return s.my_warnning("库存不足!", 0, th);
+ }
+ th.add_cart_next(e, t, a, o, newd, CanOutQty - lock);
+ } else {
+ th.add_cart_next(e, t, a, o, newd, CanOutQty);
+ }
+ }
+ })
+ } else {
+ return s.my_warnning("库存不足!", 0, th);
+ }
+
+ }
+ }
+ })
+ } else {
+ if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th);
+ if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th);
+ th.add_cart_next(e, t, a, o, newd); //加入购物车下一步
}
- newd.state=1;
- getApp().request.post("/api/weshop/cart/save", {
- data: newd,
- success: function (t) {
- th.closeSpecModal();
- getApp().goto("/pages/cart/cart2/cart2?state=1");
- }
- });
}
})
- return false;
- }
+ },
- if (th.data.prom_goods) {
- var prom_d = th.data.prom_goods;
- for (var i in prom_d) {
- //判断活动有俩种条件,0元 1件
- var condition_t = prom_d[i].prom_type;
- switch (condition_t) {
- case 0: //按钱
- if (newd.goods_price >= condition_t) {
- newd.prom_type = 3;
- newd.prom_id = prom_d[i].prom_id;
- }
- break
- case 1://按购买数量
- if (newd.goods_num >= condition_t) {
- newd.prom_type = 3;
- newd.prom_id = prom_d[i].prom_id;
- }
- break;
- }
+ //---加入购物车的最后一步---
+ add_cart_next(e, t, a, o, newd, CanOutQty) {
+ var th = this, i = getApp().request;
+ //---如果商品不是积分购和拼团,要判断一个是否要进行等级价的判断------
+ if ((o.prom_type != 1 || o.prom_id <= 0) && ((o.prom_type != 6 && o.prom_type != 4 && o.prom_type != 2 ) || th.data.is_normal)) {
+ var conf = th.data.bconfig;
+ if (conf.switch_list && getApp().globalData.userInfo['card_field'] && getApp().globalData.userInfo['card_expiredate']) {
+ var s_list = JSON.parse(conf.switch_list);
+ var now = ut.gettimestamp();
+
+
+ var str = getApp().globalData.userInfo['card_expiredate'].replace(/-/g, '/');
+ var end = new Date(str);
+ end = Date.parse(end) / 1000;
+
+ //--如果后台有开启等级价的功能,而且会员的等级没有过期的情况下--
+ if (parseInt(s_list.rank_switch) == 2 && end > now) {
+ var card_price = o[getApp().globalData.userInfo['card_field']];
+ //如果会员有等级价
+ if (getApp().globalData.userInfo['card_field'] != undefined && getApp().globalData.userInfo['card_field'] != null
+ && getApp().globalData.userInfo['card_field'] != "" && card_price > 0) {
+ newd.goods_price = card_price;
+ newd.member_goods_price = card_price;
+ }
+ }
+ }
}
- }
+ //if (this.data.data.goods.is_virtual) return this.buyVirtualGoods(d);
+ if ("add" == t.currentTarget.dataset.action) {
- newd['pick_name'] = th.data.sto_sele_name;
- newd['pick_dis'] = th.data.sto_sele_distr;
- th.buyNow(newd);
- }
- },
+ if (th.data.prom_goods) {
+ newd.prom_type = 3;
+ newd.prom_id = th.data.prom_goods[0].prom_id;
+ }
+ //----先看会员在购物车中是否加入了该商品-----
+ i.get("/api/weshop/cart/page", {
+ data: {
+ store_id: e.data.stoid,
+ user_id: oo.user_id,
+ goods_id: a,
+ pick_id: e.data.sto_sele_id,
+ state: 0
+ },
+ success: function (re) {
- //----------购买虚拟商品------
- buyVirtualGoods: function (e) {
- Object.assign(e, {
- goods_name: this.data.data.goods.goods_name,
- spec_name: this.data.select.specName,
- price: this.data.select.price
- }), wx.navigateTo({
- url: "/pages/virtual/buy_step/buy_step?" + t.Obj2Str(e)
- });
- },
- //----------积分兑换---------
- exchange: function (e) {
- this.data.shippingCost < 0 || this.data.select.stock <= 0 || wx.navigateTo({
- url: "/pages/cart/integral/integral?" + t.Obj2Str(e)
- });
- },
+ //-------如果购物车中有相关的数据---------
+ if (re.data.data.total > 0) {
+ var item = re.data.data.pageData[0];
- //----------立即购买-----------
- buyNow: function (e) {
- // this.data.shippingCost < 0 || this.data.select.stock <= 0 || (Object.assign(e, {
- // action: "buy_now"
- // }),
- this.setData({
- openSpecModal: 0,
- openSpecModal_inte: 0,
- openSpecModal_inte_normal: 0,
- openSpecModal_pt: 0,
- })
+ //判断数量,要看下购物车中有没有该商品
+ if (CanOutQty) {
+ if (item.goods_num + th.data.goodsInputNum > CanOutQty) {
+ return s.my_warnning("库存不足!", 0, th);
+ }
+ } else {
+ if (item.goods_num + th.data.goodsInputNum > o.store_count) {
+ return s.my_warnning("库存不足!", 0, th);
+ }
+ }
- if (e.prom_type == 4) {
- s.set_b_now(e);
- var url = "/pages/cart/cart2_inte/cart2_inte?is_bnow=1&goods_id=" + e.goods_id;
- getApp().goto(url);
- } else {
- //要判断积分购的普通购买有没有参加优惠活动
- if (e.is_integral_normal == 1) {
- this.check_nor_promgood(e.goods_id, function (res) {
- if (res && res.cat_id) {
- e.prom_type = 3;
- e.prom_id = res.cat_id
- }
- s.set_b_now(e);
- /*--
- wx.redirectTo({
- url: "/pages/cart/cart2/cart2?is_bnow=1&goods_id=" + e.goods_id,
- });--*/
- getApp().goto("/pages/cart/cart2/cart2?is_bnow=1&goods_id=" + e.goods_id)
+ var updata = {
+ id: item.id,
+ goods_num: e.data.goodsInputNum + item.goods_num,
+ goods_price: newd.goods_price,
+ member_goods_price: newd.goods_price,
+ store_id: th.data.stoid,
+ };
+
+ //---是不是从收藏夹出来的---
+ if (th.data.c_guide_id) {
+ updata['guide_id'] = th.data.c_guide_id;
+ updata['guide_type'] = 3; //加入购物车之后就变成了3
+ } else {
+ if (getApp().globalData.guide_id) {
+ updata['guide_id'] = getApp().globalData.guide_id;
+ updata['guide_type'] = 0;
+ }
+ }
- })
- } else {
- s.set_b_now(e);
- /*--
- wx.redirectTo({
- url: "/pages/cart/cart2/cart2?is_bnow=1&goods_id=" + e.goods_id,
- });--*/
- getApp().goto("/pages/cart/cart2/cart2?is_bnow=1&goods_id=" + e.goods_id)
- }
-
- }
- },
-
- //----------增加购买数量-----------
- addCartNum: function (t) {
- this.checkCartNum(this.data.goodsInputNum + 1);
- },
- //----------减少购买数量-----------
- subCartNum: function (t) {
- this.checkCartNum(this.data.goodsInputNum - 1);
- },
- //----------输入框输入购买数量-----------
- inputCartNum: function (t) {
- this.checkCartNum(Number(t.detail.value));
- },
+ i.put("/api/weshop/cart/update", {
+ data: updata,
+ success: function (t) {
+ getApp().my_warnning('加入购物车成功', 1, th, 450);
+ var c_num = th.data.cartGoodsNum + th.data.goodsInputNum;
+ th.setData({
+ cartGoodsNum: c_num
+ });
+ th.closeSpecModal();
+ }
+ });
+ } else {
- //----------增加购买数量-----------
- addCartNum_inte: function (t) {
- this.checkCartNum_inte(this.data.goodsInputNum + 1);
- },
- //----------减少购买数量-----------
- subCartNum_inte: function (t) {
- this.checkCartNum_inte(this.data.goodsInputNum - 1);
- },
- //----------输入框输入购买数量-----------
- inputCartNum_inte: function (t) {
- this.checkCartNum_inte(Number(t.detail.value));
- },
+ i.post("/api/weshop/cart/save", {
+ data: newd,
+ success: function (t) {
+ getApp().my_warnning('加入购物车成功', 1, th, 450);
+ var c_num = th.data.cartGoodsNum + e.data.goodsInputNum;
+ th.setData({
+ cartGoodsNum: c_num
+ });
+ th.closeSpecModal();
+ }
+ });
+ }
+ }
+ });
- //------检查数量是不是超出限购------
- checkCartNum: function (t) {
- var th = this;
- this.get_buy_num(this.data.sele_g, async function () {
+ }
+ else {
- //--判断商品是否超出限购--
- if (th.data.g_buy_num != null && th.data.sele_g.viplimited > 0) {
+ //这一步主要是要让立即购买 走 购物车的逻辑 参与活动
+ if (newd.prom_type == 10 || newd.prom_type == 7) {
+ //----先看会员在购物车中是否加入了该商品,立即购买的-----
+ getApp().request.get("/api/weshop/cart/page", {
+ data: {
+ store_id: e.data.stoid,
+ user_id: oo.user_id,
+ state: 1
+ },
+ success: function (res) {
+ //-------如果购物车中有相关的数据---------
+ if (res.data.code == 0 && res.data.data.total > 0) {
+ for (let j in res.data.data.pageData) {
+ let item_j = res.data.data.pageData[j];
+ var url = '/api/weshop/cart/del/' + e.data.stoid + '/' + item_j.id;
+ getApp().request.delete(url, {});
+ }
+ }
+ newd.state = 1;
+ getApp().request.post("/api/weshop/cart/save", {
+ data: newd,
+ success: function (t) {
+ th.closeSpecModal();
+ getApp().goto("/pages/cart/cart2/cart2?state=1");
+ }
+ });
+ }
+ })
+ return false;
+ }
- var gd_buy_num = th.data.g_buy_num.get(th.data.sele_g.goods_id);
+ if (th.data.prom_goods) {
+ var prom_d = th.data.prom_goods;
+ for (var i in prom_d) {
+ //判断活动有俩种条件,0元 1件
+ var condition_t = prom_d[i].prom_type;
+ switch (condition_t) {
+ case 0: //按钱
+ if (newd.goods_price >= condition_t) {
+ newd.prom_type = 3;
+ newd.prom_id = prom_d[i].prom_id;
+ }
+ break
+ case 1://按购买数量
+ if (newd.goods_num >= condition_t) {
+ newd.prom_type = 3;
+ newd.prom_id = prom_d[i].prom_id;
+ }
+ break;
+ }
+ }
- if (t + gd_buy_num > th.data.sele_g.viplimited) {
- wx.showModal({
- title: '超出商品限购',
- });
+ }
- var num = th.data.sele_g.viplimited - gd_buy_num;
- if (num < 0) num = 0;
- th.setData({ goodsInputNum: num })
- return false;
+ newd['pick_name'] = th.data.sto_sele_name;
+ newd['pick_dis'] = th.data.sto_sele_distr;
+ th.buyNow(newd);
}
- }
+ },
- //--判断商品是否超出活动限购--
- if (th.data.prom_buy_num != -1 && th.data.prom_buy_limit > 0 && !th.data.is_normal) {
- if (t + th.data.prom_buy_num > th.data.prom_buy_limit) {
- wx.showModal({
- title: '超出商品活动限购',
- });
-
- var num = th.data.prom_buy_limit - th.data.prom_buy_num;
- if (num < 0) num = 0;
- th.setData({ goodsInputNum: num })
- return false;
- }
- }
- if((th.data.sele_g.prom_type == 1 || th.data.sele_g.prom_type == 6) && !th.data.is_normal) {
- var redis_num = 0;
- //------判断活动是否抢光-----
- await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" +
- os.stoid + "/" + th.data.sele_g.prom_type + "/" + th.data.sele_g.prom_id, {
- 1: 1
- }).then(res => {
- redis_num = res.data.data;
+ //----------购买虚拟商品------
+ buyVirtualGoods: function (e) {
+ Object.assign(e, {
+ goods_name: this.data.data.goods.goods_name,
+ spec_name: this.data.select.specName,
+ price: this.data.select.price
+ }), wx.navigateTo({
+ url: "/pages/virtual/buy_step/buy_step?" + t.Obj2Str(e)
+ });
+ },
+ //----------积分兑换---------
+ exchange: function (e) {
+ this.data.shippingCost < 0 || this.data.select.stock <= 0 || wx.navigateTo({
+ url: "/pages/cart/integral/integral?" + t.Obj2Str(e)
});
+ },
- if (t > redis_num) {
- wx.showModal({
- title: '超出商品活动库存',
- });
- th.setData({ goodsInputNum: redis_num })
- return false;
- }
- }
- var e = th.data.sele_g.store_count;
- var p_type = th.data.prom_type; //&& p_type!=1 && p_type!=4
- if (th.data.sales_rules == 2 && (p_type != 1 && p_type != 4 && p_type != 6 || th.data.openSpecModal_inte_normal == 1 || th.data.is_normal == 1)) {
- if (!th.data.def_pick_store) {
- wx.showModal({ title: '请选择门店', });
- return false;
+
+ //----------立即购买-----------
+ buyNow: function (e) {
+ // this.data.shippingCost < 0 || this.data.select.stock <= 0 || (Object.assign(e, {
+ // action: "buy_now"
+ // }),
+ this.setData({
+ openSpecModal: 0,
+ openSpecModal_inte: 0,
+ openSpecModal_inte_normal: 0,
+ openSpecModal_pt: 0,
+ })
+
+ if (e.prom_type == 4) {
+ s.set_b_now(e);
+ var url = "/pages/cart/cart2_inte/cart2_inte?is_bnow=1&goods_id=" + e.goods_id;
+ getApp().goto(url);
} else {
- e = th.data.def_pick_store.CanOutQty;
+ //要判断积分购的普通购买有没有参加优惠活动
+ if (e.is_integral_normal == 1) {
+ this.check_nor_promgood(e.goods_id, function (res) {
+ if (res && res.cat_id) {
+ e.prom_type = 3;
+ e.prom_id = res.cat_id
+ }
+ s.set_b_now(e);
+ /*--
+ wx.redirectTo({
+ url: "/pages/cart/cart2/cart2?is_bnow=1&goods_id=" + e.goods_id,
+ });--*/
+ getApp().goto("/pages/cart/cart2/cart2?is_bnow=1&goods_id=" + e.goods_id)
+
+ })
+ } else {
+ s.set_b_now(e);
+ /*--
+ wx.redirectTo({
+ url: "/pages/cart/cart2/cart2?is_bnow=1&goods_id=" + e.goods_id,
+ });--*/
+ getApp().goto("/pages/cart/cart2/cart2?is_bnow=1&goods_id=" + e.goods_id)
+ }
+
}
- }
- if (!e) e = 0;
- //库存不足,不增加
- if (e < t) {
- wx.showModal({ title: '库存不足', });
- if (e < 0) e = 0;
- th.setData({ goodsInputNum: e }); return false;
- }
- t > e || 0 == e ? t = e : t < 1 && (t = 1);
- th.setData({ goodsInputNum: t });
- th.is_show_more_buy();
+ },
- })
- },
+ //----------增加购买数量-----------
+ addCartNum: function (t) {
+ this.checkCartNum(this.data.goodsInputNum + 1);
+ },
+ //----------减少购买数量-----------
+ subCartNum: function (t) {
+ this.checkCartNum(this.data.goodsInputNum - 1);
+ },
+ //----------输入框输入购买数量-----------
+ inputCartNum: function (t) {
+ this.checkCartNum(Number(t.detail.value));
+ },
- //----- 检查一下积分购的限购之类的问题 -----
- checkCartNum_inte: function (t) {
- var th = this;
- this.get_buy_num(this.data.data, async function () {
- ;
- //--判断商品是否超出限购--
- if (th.data.g_buy_num != null && th.data.data.viplimited > 0) {
+ //----------增加购买数量-----------
+ addCartNum_inte: function (t) {
+ this.checkCartNum_inte(this.data.goodsInputNum + 1);
+ },
+ //----------减少购买数量-----------
+ subCartNum_inte: function (t) {
+ this.checkCartNum_inte(this.data.goodsInputNum - 1);
+ },
+ //----------输入框输入购买数量-----------
+ inputCartNum_inte: function (t) {
+ this.checkCartNum_inte(Number(t.detail.value));
+ },
- var gd_buy_num = th.data.g_buy_num.get(th.data.sele_g.goods_id);
- if (t + gd_buy_num > th.data.sele_g.viplimited) {
- wx.showModal({
- title: '超出商品限购',
- });
+ //------检查数量是不是超出限购------
+ checkCartNum: function (t) {
+ var th = this;
+ this.get_buy_num(this.data.sele_g, async function () {
- var num = th.data.sele_g.viplimited - gd_buy_num;
- if (num < 0) num = 0;
- th.setData({ goodsInputNum: num })
- return false;
- }
- }
+ //--判断商品是否超出限购--
+ if (th.data.g_buy_num != null && th.data.sele_g.viplimited > 0) {
- //--判断商品是否超出活动限购--
- if (th.data.prom_buy_num != -1 && th.data.prom_buy_limit > 0) {
- if (t + th.data.prom_buy_num > th.data.prom_buy_limit) {
- wx.showModal({
- title: '超出商品活动限购',
- });
-
- var num = th.data.prom_buy_limit - th.data.prom_buy_num;
- if (num < 0) num = 0;
- th.setData({ goodsInputNum: num })
- return false;
- }
- }
+ var gd_buy_num = th.data.g_buy_num.get(th.data.sele_g.goods_id);
- if (th.data.sele_g.prom_type == 1 || th.data.sele_g.prom_type == 6) {
- var redis_num = 0;
- //------判断活动是否抢光-----
- await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" +
- os.stoid + "/" + th.data.sele_g.prom_type + "/" + th.data.sele_g.prom_id, {
- 1: 1
- }).then(res => {
- redis_num = res.data.data;
- });
+ if (t + gd_buy_num > th.data.sele_g.viplimited) {
+ wx.showModal({
+ title: '超出商品限购',
+ });
- if (t > redis_num) {
- wx.showModal({
- title: '超出商品活动库存',
- });
- th.setData({ goodsInputNum: redis_num })
- return false;
- }
- }
+ var num = th.data.sele_g.viplimited - gd_buy_num;
+ if (num < 0) num = 0;
+ th.setData({goodsInputNum: num})
+ return false;
+ }
+ }
+ //--判断商品是否超出活动限购--
+ if (th.data.prom_buy_num != -1 && th.data.prom_buy_limit > 0 && !th.data.is_normal) {
+ if (t + th.data.prom_buy_num > th.data.prom_buy_limit) {
+ wx.showModal({
+ title: '超出商品活动限购',
+ });
- //判断积分购库存
- if(!th.data.is_normal && th.data.prom_type==4){
- var i_canbuy=th.data.prom_act.limitqty-th.data.prom_act.buy_num;
- if(t>i_canbuy){
- wx.showModal({
- title: '超出商品活动库存',
- });
- return false;
- }
- }
+ var num = th.data.prom_buy_limit - th.data.prom_buy_num;
+ if (num < 0) num = 0;
+ th.setData({goodsInputNum: num})
+ return false;
+ }
+ }
- var e = th.data.sele_g.store_count;
- var p_type = th.data.prom_type; //&& p_type!=1 && p_type!=4
- if (th.data.sales_rules == 2 && (p_type != 1 && p_type != 4 && p_type != 6 || th.data.openSpecModal_inte_normal == 1 || th.data.is_normal == 1)) {
- if (!th.data.def_pick_store) {
- wx.showModal({ title: '请选择门店', });
- return false;
- } else {
- e = th.data.def_pick_store.CanOutQty;
- }
- }
- if (!e) e = 0;
- //库存不足,不增加
- if (e < t) {
- wx.showModal({ title: '库存不足', });
- if (e < 0) e = 0;
- th.setData({ goodsInputNum: e }); return false;
- }
- t > e || 0 == e ? t = e : t < 1 && (t = 1);
- th.setData({ goodsInputNum: t });
- })
- },
+ if ((th.data.sele_g.prom_type == 1 || th.data.sele_g.prom_type == 6) && !th.data.is_normal) {
+ var redis_num = 0;
+ //------判断活动是否抢光-----
+ await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" +
+ os.stoid + "/" + th.data.sele_g.prom_type + "/" + th.data.sele_g.prom_id, {
+ 1: 1
+ }).then(res => {
+ redis_num = res.data.data;
+ });
+
+ if (t > redis_num) {
+ wx.showModal({
+ title: '超出商品活动库存',
+ });
+ th.setData({goodsInputNum: redis_num})
+ return false;
+ }
+ }
+ var e = th.data.sele_g.store_count;
+ var p_type = th.data.prom_type; //&& p_type!=1 && p_type!=4
+ if (th.data.sales_rules == 2 && (p_type != 1 && p_type != 4 && p_type != 6 || th.data.openSpecModal_inte_normal == 1 || th.data.is_normal == 1)) {
+ if (!th.data.def_pick_store) {
+ wx.showModal({title: '请选择门店',});
+ return false;
+ } else {
+ e = th.data.def_pick_store.CanOutQty;
+ }
+ }
+ if (!e) e = 0;
+ //库存不足,不增加
+ if (e < t) {
+ wx.showModal({title: '库存不足',});
+ if (e < 0) e = 0;
+ th.setData({goodsInputNum: e});
+ return false;
+ }
+ t > e || 0 == e ? t = e : t < 1 && (t = 1);
+ th.setData({goodsInputNum: t});
+ th.is_show_more_buy();
+ })
+ },
- closeSpecModal: function () {
- if (this.data.openSpecModal_pt && this.data.is_normal) {
- this.get_sto();
- this.setData({
- sele_g: this.data.data,
- gid: this.data.data.goods_id
- })
+ //----- 检查一下积分购的限购之类的问题 -----
+ checkCartNum_inte: function (t) {
+ var th = this;
+ this.get_buy_num(this.data.data, async function () {
+ ;
+ //--判断商品是否超出限购--
+ if (th.data.g_buy_num != null && th.data.data.viplimited > 0) {
- this.sele_spec_chech_activity();
+ var gd_buy_num = th.data.g_buy_num.get(th.data.sele_g.goods_id);
- }
+ if (t + gd_buy_num > th.data.sele_g.viplimited) {
+ wx.showModal({
+ title: '超出商品限购',
+ });
- this.setData({
- openSpecModal: !1,
- openSpecModal_pt: !1
- });
- },
+ var num = th.data.sele_g.viplimited - gd_buy_num;
+ if (num < 0) num = 0;
+ th.setData({goodsInputNum: num})
+ return false;
+ }
+ }
+ //--判断商品是否超出活动限购--
+ if (th.data.prom_buy_num != -1 && th.data.prom_buy_limit > 0) {
+ if (t + th.data.prom_buy_num > th.data.prom_buy_limit) {
+ wx.showModal({
+ title: '超出商品活动限购',
+ });
+
+ var num = th.data.prom_buy_limit - th.data.prom_buy_num;
+ if (num < 0) num = 0;
+ th.setData({goodsInputNum: num})
+ return false;
+ }
+ }
+
+ if (th.data.sele_g.prom_type == 1 || th.data.sele_g.prom_type == 6) {
+ var redis_num = 0;
+ //------判断活动是否抢光-----
+ await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" +
+ os.stoid + "/" + th.data.sele_g.prom_type + "/" + th.data.sele_g.prom_id, {
+ 1: 1
+ }).then(res => {
+ redis_num = res.data.data;
+ });
+
+ if (t > redis_num) {
+ wx.showModal({
+ title: '超出商品活动库存',
+ });
+ th.setData({goodsInputNum: redis_num})
+ return false;
+ }
+ }
+
+
+ //判断积分购库存
+ if (!th.data.is_normal && th.data.prom_type == 4) {
+ var i_canbuy = th.data.prom_act.limitqty - th.data.prom_act.buy_num;
+ if (t > i_canbuy) {
+ wx.showModal({
+ title: '超出商品活动库存',
+ });
+ return false;
+ }
+ }
+
+ var e = th.data.sele_g.store_count;
+ var p_type = th.data.prom_type; //&& p_type!=1 && p_type!=4
+ if (th.data.sales_rules == 2 && (p_type != 1 && p_type != 4 && p_type != 6 || th.data.openSpecModal_inte_normal == 1 || th.data.is_normal == 1)) {
+ if (!th.data.def_pick_store) {
+ wx.showModal({title: '请选择门店',});
+ return false;
+ } else {
+ e = th.data.def_pick_store.CanOutQty;
+ }
+ }
+ if (!e) e = 0;
+ //库存不足,不增加
+ if (e < t) {
+ wx.showModal({title: '库存不足',});
+ if (e < 0) e = 0;
+ th.setData({goodsInputNum: e});
+ return false;
+ }
+ t > e || 0 == e ? t = e : t < 1 && (t = 1);
+ th.setData({goodsInputNum: t});
+ })
+ },
- openSpecModel: function (t) {
- var th = this;
- var open_store = t.currentTarget.dataset.ind;
- this.setData({
- store: 0,
- choice_sort_store: 0,
- sort_store: 0,
- open_ind_store: open_store,
- })
- //--先判断会员状态--
- var user_info = getApp().globalData.userInfo;
- if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
- wx.navigateTo({
- url: '/pages/togoin/togoin',
- })
- return false;
- }
- var check_up=0;
- if(th.data.more_flash){
- for(var i in th.data.more_flash){
- var item=th.data.more_flash[i];
- if(item.prom_type==1){
- check_up=1;
- break
- }
+ closeSpecModal: function () {
+ if (this.data.openSpecModal_pt && this.data.is_normal) {
+ this.get_sto();
+ this.setData({
+ sele_g: this.data.data,
+ gid: this.data.data.goods_id
+ })
+
+ this.sele_spec_chech_activity();
+
}
- }
+ this.setData({
+ openSpecModal: !1,
+ openSpecModal_pt: !1
+ });
+ },
- if(check_up && open_store==1){
- th.setData({is_pop_more:1});
- }else{
- var ind = t.currentTarget.dataset.ind;
- //回调。判断是不是优惠促销
- th.check_is_prom_goods(function () {
- th.setData({
- openSpecModal: !0,
- openSpecModal_ind: ind,
- });
- //var is_open=th.data.config
- th.get_off_price();
+ openSpecModel: function (t) {
+ var th = this;
+ var open_store = t.currentTarget.dataset.ind;
+ this.setData({
+ store: 0,
+ choice_sort_store: 0,
+ sort_store: 0,
+ open_ind_store: open_store,
})
//--先判断会员状态--
var user_info = getApp().globalData.userInfo;
@@ -1915,11 +1998,22 @@ Page({
})
return false;
}
- var is_go_next = 1;
- if (th.data.more_flash && th.data.more_flash.length > 1 && open_store == 1) {
- is_go_next = 0;
+
+ var check_up = 0;
+ if (th.data.more_flash) {
+ for (var i in th.data.more_flash) {
+ var item = th.data.more_flash[i];
+ if (item.prom_type == 1) {
+ check_up = 1;
+ break
+ }
+ }
}
- if (is_go_next) {
+
+
+ if (check_up && open_store == 1) {
+ th.setData({is_pop_more: 1});
+ } else {
var ind = t.currentTarget.dataset.ind;
//回调。判断是不是优惠促销
th.check_is_prom_goods(function () {
@@ -1930,369 +2024,397 @@ Page({
//var is_open=th.data.config
th.get_off_price();
})
- } else {
- th.setData({is_pop_more: 1});
+ //--先判断会员状态--
+ var user_info = getApp().globalData.userInfo;
+ if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
+ wx.navigateTo({
+ url: '/pages/togoin/togoin',
+ })
+ return false;
+ }
+ var is_go_next = 1;
+ if (th.data.more_flash && th.data.more_flash.length > 1 && open_store == 1) {
+ is_go_next = 0;
+ }
+ if (is_go_next) {
+ var ind = t.currentTarget.dataset.ind;
+ //回调。判断是不是优惠促销
+ th.check_is_prom_goods(function () {
+ th.setData({
+ openSpecModal: !0,
+ openSpecModal_ind: ind,
+ });
+ //var is_open=th.data.config
+ th.get_off_price();
+ })
+ } else {
+ th.setData({is_pop_more: 1});
+ }
}
- }
- },
- open_next(){
- var th=this;
- //回调。判断是不是优惠促销
- th.check_is_prom_goods(function () {
- th.setData({
- openSpecModal: !0,
- openSpecModal_ind: 1,
- is_pop_more:0
- });
- th.get_off_price();
- })
- },
+ },
+ open_next(){
+ var th = this;
+ //回调。判断是不是优惠促销
+ th.check_is_prom_goods(function () {
+ th.setData({
+ openSpecModal: !0,
+ openSpecModal_ind: 1,
+ is_pop_more: 0
+ });
+ th.get_off_price();
+ })
+ },
- //判断是不是优惠促销
- check_is_prom_goods: function (callback) {
- var th = this;
- var usr = getApp().globalData.userInfo;
- if (this.data.sele_g.prom_type != 0 && this.data.sele_g.prom_type != 3) {
- callback();
- } else {
- //-- 判断有没有优惠活动 --
- getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + th.data.sele_g.goods_id + "/0", {}).then(res => {
- if (res.data.code == 0) {
- var r_data = res.data.data;
- th.data.prom_goods = r_data.promGoodsLists;
- if (!th.data.prom_goods) {
+ //判断是不是优惠促销
+ check_is_prom_goods: function (callback) {
+ var th = this;
+ var usr = getApp().globalData.userInfo;
+ if (this.data.sele_g.prom_type != 0 && this.data.sele_g.prom_type != 3) {
callback();
- return false;
- }
+ } else {
+ //-- 判断有没有优惠活动 --
+ getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + th.data.sele_g.goods_id + "/0", {}).then(res => {
+ if (res.data.code == 0) {
+ var r_data = res.data.data;
+ th.data.prom_goods = r_data.promGoodsLists;
+ if (!th.data.prom_goods) {
+ callback();
+ return false;
+ }
- ///api/weshop/order/getWPayOrder?store_id=1&user_id=5682366&prom_id=1&goods_id=1
- getApp().promiseGet("/api/weshop/order/getWPayOrder", {
- data: { store_id: os.stoid, user_id: usr.user_id, goods_id: th.data.sele_g.goods_id, prom_id: th.data.prom_goods[0].prom_id }
- }).then(res => {
- if (res.data.code == 0) {
- wx.showToast({
- title: "您已经购买了该商品待支付中",
- icon: 'none',
- duration: 2000
- })
- setTimeout(function () {
- getApp().goto("/pages/user/order_detail/order_detail?order_id=" + res.data.data.order_id,)
- }, 1000)
- }
- //未找到相关记录
- else {
- callback();
- }
- })
- }
+ ///api/weshop/order/getWPayOrder?store_id=1&user_id=5682366&prom_id=1&goods_id=1
+ getApp().promiseGet("/api/weshop/order/getWPayOrder", {
+ data: {
+ store_id: os.stoid,
+ user_id: usr.user_id,
+ goods_id: th.data.sele_g.goods_id,
+ prom_id: th.data.prom_goods[0].prom_id
+ }
+ }).then(res => {
+ if (res.data.code == 0) {
+ wx.showToast({
+ title: "您已经购买了该商品待支付中",
+ icon: 'none',
+ duration: 2000
+ })
+ setTimeout(function () {
+ getApp().goto("/pages/user/order_detail/order_detail?order_id=" + res.data.data.order_id,)
+ }, 1000)
+ }
+ //未找到相关记录
+ else {
+ callback();
+ }
+ })
+ }
- })
+ })
- }
- },
+ }
+ },
+ //----获取线下价格-------
+ get_off_price() {
+ var th = this;
+ //没有开启就返回
+ if (!th.data.is_open_offline) return false;
+ //先看下购买的功能有没有到期
+ getApp().request.promiseGet("/store/storemoduleendtime/page?store_id=" + os.stoid + "&type=6", {}).then(res => {
+ //未购买
+ if (res.data.code != 0 || !res.data.data || !res.data.data.pageData || !res.data.data.pageData.length) {
+ return false;
+ } else {
+ //已经过期
+ var item = res.data.data.pageData[0];
+ if (item.end_time < ut.gettimestamp()) {
+ return false;
+ }
+ }
- //----获取线下价格-------
- get_off_price() {
- var th = this;
- //没有开启就返回
- if (!th.data.is_open_offline) return false;
- //先看下购买的功能有没有到期
- getApp().request.promiseGet("/store/storemoduleendtime/page?store_id=" + os.stoid + "&type=6", {}).then(res => {
- //未购买
- if (res.data.code != 0 || !res.data.data || !res.data.data.pageData || !res.data.data.pageData.length) {
- return false;
- } else {
- //已经过期
- var item = res.data.data.pageData[0];
- if (item.end_time < ut.gettimestamp()) {
- return false;
- }
- }
+ var cur_goods = this.data.sele_g;
+ var cur_price = cur_goods.shop_price;
+ if (th.data.card_field && cur_goods[th.data.card_field] > 0) {
+ cur_price = cur_goods[th.data.card_field];
+ }
- var cur_goods = this.data.sele_g;
- var cur_price = cur_goods.shop_price;
- if (th.data.card_field && cur_goods[th.data.card_field] > 0) {
- cur_price = cur_goods[th.data.card_field];
- }
+ var user_info = getApp().globalData.userInfo;
+ //获取一下接口,判断是不是有线下接口,必须是普通商品,全局优惠活动也是不行
+ if (cur_goods.prom_type == 0 && !this.data.prom_goods) {
+ cur_goods.offline_price = null;
+ //如果没有门店,不用计算线下价格
+ var def_pick_store = this.data.def_pick_store;
+ if (!def_pick_store) return false;
+ getApp().request.get("/api/weshop/goods/listWarePrice", {
+ data: {
+ VIPId: encodeURIComponent(user_info.erpvipid),
+ store_id: os.stoid,
+ PickupId: def_pick_store.pickup_id,
+ WareIds: encodeURIComponent(cur_goods.erpwareid)
+ },
+ success: function (res) {
+ if (res.data.code == 0 && res.data.data && res.data.data.length > 0) {
+ var datalist = res.data.data;
+ if (datalist[0].WarePrice < cur_price) {
+ cur_goods.offline_price = datalist[0].WarePrice; //存储线下活动的价格
+ cur_goods.pricing_type = datalist[0].PriceType; //存储线下活动的类型
+ }
+ }
+ th.setData({sele_g: cur_goods});
+ }
- var user_info = getApp().globalData.userInfo;
- //获取一下接口,判断是不是有线下接口,必须是普通商品,全局优惠活动也是不行
- if (cur_goods.prom_type == 0 && !this.data.prom_goods) {
- cur_goods.offline_price = null;
- //如果没有门店,不用计算线下价格
- var def_pick_store = this.data.def_pick_store;
- if (!def_pick_store) return false;
- getApp().request.get("/api/weshop/goods/listWarePrice", {
- data: {
- VIPId: encodeURIComponent(user_info.erpvipid),
- store_id: os.stoid,
- PickupId: def_pick_store.pickup_id,
- WareIds: encodeURIComponent(cur_goods.erpwareid)
- },
- success: function (res) {
- if (res.data.code == 0 && res.data.data && res.data.data.length > 0) {
- var datalist = res.data.data;
- if (datalist[0].WarePrice < cur_price) {
- cur_goods.offline_price = datalist[0].WarePrice; //存储线下活动的价格
- cur_goods.pricing_type = datalist[0].PriceType; //存储线下活动的类型
- }
+ })
}
- th.setData({ sele_g: cur_goods });
- }
})
- }
- })
+ },
- },
+ //---------点击收藏和不收藏------------
+ collectGoods: function () {
+ var t = this,
+ i = getApp().request;
+ var user_id = s.globalData.user_id;
+ if (user_id == '') {
+ getApp().getUserFir(function () {
+ });
+ getApp().showWarning("未登录");
+ return false;
+ } else {
- //---------点击收藏和不收藏------------
- collectGoods: function () {
- var t = this,
- i = getApp().request;
- var user_id = s.globalData.user_id;
- if (user_id == '') {
- getApp().getUserFir(function () { });
- getApp().showWarning("未登录");
- return false;
- } else {
-
- if (t.data.is_collect_load) return false;
- t.data.is_collect_load = 1;
-
- if (t.data.is_collect == 1) { //删除收藏
- i.delete("/api/weshop/goodscollect/del/" + o.stoid + "/" + t.data.collect_id, {
- success: function (e) {
- t.data.is_collect_load = 0;
- if (e.data.code == 0) {
- t.setData({
- is_collect: 0,
- collect_id: 0,
- });
- }
- }
- });
- } else {
- var timestamp = Date.parse(new Date());
- timestamp = timestamp / 1000;
- var d = {
- goods_id: t.data.data.goods_id,
- user_id: s.globalData.user_id,
- store_id: o.stoid,
- add_time: timestamp,
- };
- //加入收藏夹就是导购的ID
- if (getApp().globalData.guide_id) {
- d.guide_id = getApp().globalData.guide_id;
- d.guide_type = 2;
+ if (t.data.is_collect_load) return false;
+ t.data.is_collect_load = 1;
+
+ if (t.data.is_collect == 1) { //删除收藏
+ i.delete("/api/weshop/goodscollect/del/" + o.stoid + "/" + t.data.collect_id, {
+ success: function (e) {
+ t.data.is_collect_load = 0;
+ if (e.data.code == 0) {
+ t.setData({
+ is_collect: 0,
+ collect_id: 0,
+ });
+ }
+ }
+ });
+ } else {
+ var timestamp = Date.parse(new Date());
+ timestamp = timestamp / 1000;
+ var d = {
+ goods_id: t.data.data.goods_id,
+ user_id: s.globalData.user_id,
+ store_id: o.stoid,
+ add_time: timestamp,
+ };
+ //加入收藏夹就是导购的ID
+ if (getApp().globalData.guide_id) {
+ d.guide_id = getApp().globalData.guide_id;
+ d.guide_type = 2;
+ }
+
+ i.post("/api/weshop/goodscollect/save", { //添加收藏
+ data: d,
+ success: function (e) {
+ t.data.is_collect_load = 0;
+ if (e.data.code == 0) {
+ t.setData({
+ is_collect: 1,
+ collect_id: e.data.data.collect_id,
+ });
+ }
+ }
+ });
+ }
}
+ },
- i.post("/api/weshop/goodscollect/save", { //添加收藏
- data: d,
- success: function (e) {
- t.data.is_collect_load = 0;
- if (e.data.code == 0) {
- t.setData({
- is_collect: 1,
- collect_id: e.data.data.collect_id,
- });
- }
- }
- });
- }
- }
- },
+ //---------联系客服------------
+ contactService: function () {
+ s.getConfig(function (t) {
+ if (t.store_tel == undefined) {
+ getApp().request.get("/api/weshop/store/get/" + os.stoid, {
+ isShowLoading: 1,
+ data: {},
+ success: function (rs) {
+ getApp().globalData.config = rs.data.data;
+ if (rs.data.data.store_tel == null && rs.data.data.store_tel == undefined) {
+ getApp().my_warnning("商家未设置电话", 0, th);
+ return false;
+ }
+ s.confirmBox("请联系客服:" + rs.data.data.store_tel);
+ }
+ })
+ } else {
+ s.confirmBox("请联系客服:" + t.store_tel);
+ }
+ });
+ },
+ //-------获取购物车数量----------
+ requestCardNum: function () {
+ var t = this;
+ getApp().request.get("/api/weshop/cart/page", {
+ data: {
+ store_id: o.stoid,
+ user_id: s.globalData.user_id,
+ state: 0,
+ is_gift: 0
+ },
+ success: function (e) {
+ var num = 0;
+ for (var i = 0; i < e.data.data.pageData.length; i++) {
+ num += e.data.data.pageData[i].goods_num;
+ }
- //---------联系客服------------
- contactService: function () {
- s.getConfig(function (t) {
- if (t.store_tel == undefined) {
- getApp().request.get("/api/weshop/store/get/" + os.stoid, {
- isShowLoading: 1,
- data: {},
- success: function (rs) {
- getApp().globalData.config = rs.data.data;
- if (rs.data.data.store_tel == null && rs.data.data.store_tel == undefined) {
- getApp().my_warnning("商家未设置电话", 0, th);
- return false;
- }
- s.confirmBox("请联系客服:" + rs.data.data.store_tel);
- }
- })
- } else {
- s.confirmBox("请联系客服:" + t.store_tel);
- }
- });
- },
- //-------获取购物车数量----------
- requestCardNum: function () {
- var t = this;
- getApp().request.get("/api/weshop/cart/page", {
- data: {
- store_id: o.stoid,
- user_id: s.globalData.user_id,
- state: 0,
- is_gift: 0
- },
- success: function (e) {
- var num = 0;
- for (var i = 0; i < e.data.data.pageData.length; i++) {
- num += e.data.data.pageData[i].goods_num;
+ //-- 读取服务卡的数量 --
+ getApp().promiseGet("/api/weshop/cartService/page", {
+ data: {
+ store_id: s.globalData.setting.stoid,
+ user_id: s.globalData.user_id,
+ }
+ }).then(res => {
+ for (var i = 0; i < res.data.data.pageData.length; i++) {
+ num += res.data.data.pageData[i].goods_num;
+ }
+ t.setData({cartGoodsNum: num});
+ })
+ }
+ });
+ },
+
+ previewCommentImgs: function (t) {
+ var e = this.data.comments[t.currentTarget.dataset.cidx].img;
+ var b = e.slice()
+ for (var i in b) {
+ b[i] = this.data.iurl + e[i];
}
+ this.data.show_prew_img = 1;
- //-- 读取服务卡的数量 --
- getApp().promiseGet("/api/weshop/cartService/page", {
- data: {
- store_id: s.globalData.setting.stoid,
- user_id: s.globalData.user_id,
- }
- }).then(res => {
- for (var i = 0; i < res.data.data.pageData.length; i++) {
- num += res.data.data.pageData[i].goods_num;
- }
- t.setData({ cartGoodsNum: num });
- })
- }
- });
- },
+ wx.previewImage({
+ current: b[t.currentTarget.dataset.id],
+ urls: b
+ });
+ },
- previewCommentImgs: function (t) {
- var e = this.data.comments[t.currentTarget.dataset.cidx].img;
- var b = e.slice()
- for (var i in b) {
- b[i] = this.data.iurl + e[i];
- }
- this.data.show_prew_img = 1;
+ previewCommentImgs_w: function (t) {
+ var e = this.data.comments[t.currentTarget.dataset.cidx].weapp_img;
+ var b = e.slice()
+ for (var i in b) {
+ b[i] = this.data.iurl + e[i];
+ }
+ this.data.show_prew_img = 1;
+ wx.previewImage({
+ current: b[t.currentTarget.dataset.id],
+ urls: b
+ });
+ },
- wx.previewImage({
- current: b[t.currentTarget.dataset.id],
- urls: b
- });
- },
+ previewGoodsCommentImgs: function (t) {
+ var e = this,
+ a = this.data.data.comment[t.currentTarget.dataset.cidx].img;
+ a = a.map(function (t) {
+ return e.data.url + t;
+ }), wx.previewImage({
+ current: a[t.currentTarget.dataset.id],
+ urls: a
+ });
+ this.data.show_prew_img = 1;
+ },
+ closePromModal: function () {
+ this.setData({
+ openPromModal: !1
+ });
+ },
+ openPromModal: function () {
+ this.setData({
+ openPromModal: !0
+ });
+ },
- previewCommentImgs_w: function (t) {
- var e = this.data.comments[t.currentTarget.dataset.cidx].weapp_img;
- var b = e.slice()
- for (var i in b) {
- b[i] = this.data.iurl + e[i];
- }
- this.data.show_prew_img = 1;
- wx.previewImage({
- current: b[t.currentTarget.dataset.id],
- urls: b
- });
- },
+ //--点击分享事件---
+ onShareAppMessage: function (t) {
- previewGoodsCommentImgs: function (t) {
- var e = this,
- a = this.data.data.comment[t.currentTarget.dataset.cidx].img;
- a = a.map(function (t) {
- return e.data.url + t;
- }), wx.previewImage({
- current: a[t.currentTarget.dataset.id],
- urls: a
- });
- this.data.show_prew_img = 1;
- },
- closePromModal: function () {
- this.setData({
- openPromModal: !1
- });
- },
- openPromModal: function () {
- this.setData({
- openPromModal: !0
- });
- },
+ var th = this;
+ var price = th.data.sele_g.shop_price;
+ if (th.data.prom_act) {
+ price = th.data.prom_act.price;
- //--点击分享事件---
- onShareAppMessage: function (t) {
+ }
+ var title = th.data.sele_g.goods_name;
+ var img = th.data.sele_g.original_img;
+ if (th.data.prom_type == 6 || th.data.prom_type == 1 || th.data.prom_type == 4) {
+ title = th.data.prom_act.share_title;
+ if (!title) title = th.data.prom_act.title;
+ if (th.data.prom_type == 4) title = th.data.prom_act.name;
+
+ if (th.data.prom_act.share_imgurl)
+ img = th.data.iurl + th.data.prom_act.share_imgurl;
+ }
- var th = this;
- var price = th.data.sele_g.shop_price;
- if (th.data.prom_act) {
- price = th.data.prom_act.price;
- }
- var title = th.data.sele_g.goods_name;
- var img = th.data.sele_g.original_img;
- if (th.data.prom_type == 6 || th.data.prom_type == 1 || th.data.prom_type == 4) {
- title = th.data.prom_act.share_title;
- if (!title) title = th.data.prom_act.title;
- if (th.data.prom_type == 4) title = th.data.prom_act.name;
-
- if (th.data.prom_act.share_imgurl)
- img = th.data.iurl + th.data.prom_act.share_imgurl;
- }
+ var url = "/pages/goods/goodsInfo/goodsInfo?goods_id="
+ + th.data.sele_g.goods_id + "&prom_type=" + th.data.sele_g.prom_type + "&prom_id=" + th.data.sele_g.prom_id;
+ if (getApp().globalData.user_id) {
+ url += "&first_leader=" + getApp().globalData.user_id;
+ }
+ //-- 如果房间分享,且不是会员分享的 --
+ if (getApp().globalData.room_id &&
+ th.data.sele_g.goods_id == getApp().globalData.room_goods_id && !getApp().globalData.room_user_share
+ ) {
+ url += "&room_id=" + getApp().globalData.room_id + "&room_user_share=1";
+ }
- var url = "/pages/goods/goodsInfo/goodsInfo?goods_id="
- + th.data.sele_g.goods_id+"&prom_type="+th.data.sele_g.prom_type+"&prom_id="+th.data.sele_g.prom_id;
- if (getApp().globalData.user_id) {
- url += "&first_leader=" + getApp().globalData.user_id;
- }
+ var ob = {
+ title: price + "元 " + title,
+ path: url,
+ imageUrl: img,
+ };
+ if (th.data.prom_type == 6) {
+ title += '\n' + th.data.prom_act.share_remark;
+ ob.title = title;
+ ob.desc = th.data.prom_act.share_remark;
+ }
- //-- 如果房间分享,且不是会员分享的 --
- if (getApp().globalData.room_id &&
- th.data.sele_g.goods_id == getApp().globalData.room_goods_id &&
- !getApp().globalData.room_user_share
- ) {
- url += "&room_id=" + getApp().globalData.room_id + "&room_user_share=1";
- }
- console.log(url,500);
- var ob = {
- title: price + "元 " + title,
- path: url,
- imageUrl: img,
- };
- if (th.data.prom_type == 6) {
- title += '\n' + th.data.prom_act.share_remark;
- ob.title = title;
- ob.desc = th.data.prom_act.share_remark;
- }
+ //如果是积分购的时候
+ if (th.data.prom_type == 4) {
+ var name = th.data.prom_act.name;
+ //-- 积分购的 --
+ var pri0 = th.data.prom_act.addmoney;
+ var integral = th.data.prom_act.integral;
+ var text = "";
+ if (integral) { text = integral + "积分"; }
+ if (pri0 && integral) { text += "+"; }
+ if (pri0) { text += "¥" + pri0; }
+
+ ob.title = text + " " + name;
+ }
+ //-- 页面不能刷新 --
+ this.data.show_prew_img=1;
+ return ob;
- //如果是积分购的时候
- if (th.data.prom_type == 4) {
- var name = th.data.prom_act.name;
- //-- 积分购的 --
- var pri0 = th.data.prom_act.addmoney;
- var integral = th.data.prom_act.integral;
- var text = "";
- if (integral) { text = integral + "积分"; }
- if (pri0 && integral) { text += "+"; }
- if (pri0) { text += "¥" + pri0; }
-
- ob.title = text + " " + name;
- }
- //-- 页面不能刷新 --
- this.data.show_prew_img=1;
- return ob;
+ },
- },
+ //-----图片失败,默认图片-----
+ bind_bnerr: function (e) {
+ var _errImg = e.target.dataset.errorimg;
+ var _errObj = {};
+ _errObj[_errImg] = this.data.iurl + "/miniapp/images/default_g_img.gif";
+ this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;
+ },
- //-----图片失败,默认图片-----
- bind_bnerr: function (e) {
- var _errImg = e.target.dataset.errorimg;
- var _errObj = {};
- _errObj[_errImg] = this.data.iurl + "/miniapp/images/default_g_img.gif";
- this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;
- },
+ //-----图片失败,默认图片-----
+ bind_bnerr2: function (e) {
- //-----图片失败,默认图片-----
- bind_bnerr2: function (e) {
+ var _errImg = e.target.dataset.errorimg;
+ var _errObj = {};
+ _errObj[_errImg] = this.data.iurl + "/miniapp/images/hui_hear_pic.png"
+ this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;
+ },
- var _errImg = e.target.dataset.errorimg;
- var _errObj = {};
- _errObj[_errImg] = this.data.iurl + "/miniapp/images/hui_hear_pic.png"
- this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;
- },
//----------装载同一条形码的商品----------
async get_sku(stoid, gd, g_id, is_normal, func) {
@@ -2307,7 +2429,7 @@ Page({
isonsale: 1,
is_on_sale: 1,
pageSize: 500,
- orderField: 'sort'
+ orderField: 'gg_ordid,goods_spec,sort'
}
}).then(res => {
var e = res;
@@ -2331,3866 +2453,3906 @@ Page({
})
}
- break;
- case 6:
- await getApp().request.promiseGet("/api/weshop/teamlist/get/" + os.stoid + "/" + goodsinfo.prom_id, {
- }).then(res => {
- console.log(res);
- if (res.data.code == 0) prom = res.data.data;
- })
- break;
- case 2:
- await getApp().request.promiseGet("/api/weshop/goods/groupBuy/getActInfo/" + os.stoid + "/" + goodsinfo.goods_id + "/" + goodsinfo.prom_id, {
- }).then(res => {
- if (res.data.code == 0) prom = res.data.data;
- })
- break;
- case 4:
- await getApp().request.promiseGet("/api/weshop/integralbuy/getActInfo/" + os.stoid + "/" + goodsinfo.goods_id + "/" + goodsinfo.prom_id, {
- }).then(res => {
- if (res.data.code == 0) prom = res.data.data;
- })
- break
- //预售和幸运购不参与
- case 8:
- case 9:
- continue;
- }
+ break;
+ case 6:
+ await getApp().request.promiseGet("/api/weshop/teamlist/get/" + os.stoid + "/" + goodsinfo.prom_id, {}).then(res => {
+ console.log(res);
+ if (res.data.code == 0) prom = res.data.data;
+ })
- }
- //---如果有活动,不算在一起---
- if (prom) {
- if (goodsinfo.prom_type == 1 || goodsinfo.prom_type == 6) {
- console.log(prom);
- if (prom.is_end == 0 && prom.end_time > now && prom.start_time < now) continue;
- } else {
- continue;
- }
- }
+ break;
+ case 2:
+ await getApp().request.promiseGet("/api/weshop/goods/groupBuy/getActInfo/" + os.stoid + "/" + goodsinfo.goods_id + "/" + goodsinfo.prom_id, {}).then(res => {
+ if (res.data.code == 0) prom = res.data.data;
+ })
+ break;
+ case 4:
+ await getApp().request.promiseGet("/api/weshop/integralbuy/getActInfo/" + os.stoid + "/" + goodsinfo.goods_id + "/" + goodsinfo.prom_id, {}).then(res => {
+ if (res.data.code == 0) prom = res.data.data;
+ })
+ break
+ //预售和幸运购不参与
+ case 8:
+ case 9:
+ continue;
+ }
+
+ }
+ //---如果有活动,不算在一起---
+ if (prom) {
+ if (goodsinfo.prom_type == 1 || goodsinfo.prom_type == 6) {
+ console.log(prom);
+ if (prom.is_end == 0 && prom.end_time > now && prom.start_time < now) continue;
+ } else {
+ continue;
+ }
+ }
- var item = arrdata[i], gg = "";
- if (item.goods_spec == "null" || item.goods_spec == null) item.goods_spec = "";
- if (item.goods_color == "null" || item.goods_color == null) item.goods_color = "";
+ var item = arrdata[i], gg = "";
+ if (item.goods_spec == "null" || item.goods_spec == null) item.goods_spec = "";
+ if (item.goods_color == "null" || item.goods_color == null) item.goods_color = "";
- if (item.goods_spec != "" && item.goods_color != "") {
- gg = item.goods_spec + "/" + item.goods_color;
- } else if (item.goods_spec != "" || item.goods_color != "") {
- gg = item.goods_spec + item.goods_color;
- } else {
- gg = "规格" + gb;
- gb++;
- }
- item.gg = gg;
+ if (item.goods_spec != "" && item.goods_color != "") {
+ gg = item.goods_spec + "/" + item.goods_color;
+ } else if (item.goods_spec != "" || item.goods_color != "") {
+ gg = item.goods_spec + item.goods_color;
+ } else {
+ gg = "规格" + gb;
+ gb++;
+ }
+ item.gg = gg;
- if (item.spec_img)
- item.original_img = os.imghost + item.spec_img;
- else
- item.original_img = os.imghost + item.original_img;
+ if (item.spec_img)
+ item.original_img = os.imghost + item.spec_img;
+ else
+ item.original_img = os.imghost + item.original_img;
- if (item.goods_id == g_id) {
- gitem = item;
- } else {
- arrsku.push(item);
- }
- }
- //-----------排列在最前面-------------
- arrsku.splice(0, 0, gitem);
- if (is_normal == 1) {
- tt.setData({
- sku_g_pt: arrsku,
- sele_g: gitem
- });
- func();
- } else {
- tt.setData({
- sku_g: arrsku,
- sele_g: gitem
- });
- }
- },
+ if (item.goods_id == g_id) {
+ gitem = item;
+ } else {
+ arrsku.push(item);
+ }
+ }
+ //-----------排列在最前面-------------
+ arrsku.splice(0, 0, gitem);
+ if (is_normal == 1) {
+ tt.setData({
+ sku_g_pt: arrsku,
+ sele_g: gitem
+ });
+ func();
+ } else {
+ tt.setData({
+ sku_g: arrsku,
+ sele_g: gitem
+ });
+ }
+ },
- //-----------选择属性的按钮事件----------
- sele_spec: function (e) {
- var that = this;
- var gid = e.currentTarget.dataset.gid;
- var nor = e.currentTarget.dataset.nor;
+ //-----------选择属性的按钮事件----------
+ sele_spec: function (e) {
+ var that = this;
+ var gid = e.currentTarget.dataset.gid;
+ var nor = e.currentTarget.dataset.nor;
- var sku_g = this.data.sku_g;
- if (nor) {
- sku_g = this.data.sku_g_pt;
- }
+ var sku_g = this.data.sku_g;
+ if (nor) {
+ sku_g = this.data.sku_g_pt;
+ }
- var item = null;
- for (var i in sku_g) {
- if (sku_g[i].goods_id == gid) {
- item = sku_g[i];
- if(item.original_img.indexOf(that.data.iurl)==-1){
- item.original_img=that.data.iurl+item.original_img;
+ var item = null;
+ for (var i in sku_g) {
+ if (sku_g[i].goods_id == gid) {
+ item = sku_g[i];
+ if (item.original_img.indexOf(that.data.iurl) == -1) {
+ item.original_img = that.data.iurl + item.original_img;
+ }
+ break
+ }
}
- break
- }
- }
- console.log(item,2000);
- var cur_price = item.shop_price;
- if (getApp().globalData.userInfo && getApp().globalData.userInfo.card_field) {
+ console.log(item, 2000);
+ var cur_price = item.shop_price;
+ if (getApp().globalData.userInfo && getApp().globalData.userInfo.card_field) {
var cfile = getApp().globalData.userInfo.card_field;
- console.log('cfile',cfile);
+ console.log('cfile', cfile);
if (item[cfile]) {
- cur_price =item[cfile];
- }
- }
- var txt = (cur_price / item.market_price * 10).toFixed(2).toString();
- txt = parseFloat(txt);
- item['disc'] = txt;
- if (item) this.setData({
- sele_g: item,
- gid: gid,
- data:item,
- });
-
-
- that.check_is_youhui(gid, that.data.is_normal);
-
- //默认门店要拿下门店库存
- if (that.data.sales_rules == 2 && that.data.def_pick_store) {
- var lock = 0, plist = null;
- //先读取门店的lock,采用链式写法,少用await
- getApp().request.promiseGet("/api/weshop/order/ware/lock/page", {
- data: { store_id: os.stoid, wareId: that.data.sele_g.goods_id, storageId: that.data.def_pick_store.pickup_id, pageSize: 1000 }
- }).then(res => {
- if (res.data.code == 0 && res.data.data.total > 0) {
- for (var i in res.data.data.pageData)
- lock += res.data.data.pageData[i].outQty
- }
- //---通过接口获取门店的线下库存信息--
- return getApp().request.promiseGet("/api/weshop/goods/getWareStorages", {
- data: { storageNos: that.data.def_pick_store.pickup_no, wareIds: encodeURIComponent(that.data.sele_g.erpwareid), storeId: os.stoid }
- })
- }).then(res => {
- if (res.data.code == 0 && res.data.data.total > 0) {
- plist = res.data.data.pageData[0];
+ cur_price = item[cfile];
+ }
}
- if (plist && plist.CanOutQty - lock > 0) {
- that.data.def_pick_store.CanOutQty = plist.CanOutQty - lock;
- } else {
- that.data.def_pick_store.CanOutQty = 0;
+ var txt = (cur_price / item.market_price * 10).toFixed(2).toString();
+ txt = parseFloat(txt);
+ item['disc'] = txt;
+ if (item) this.setData({
+ sele_g: item,
+ gid: gid,
+ data: item,
+ });
+
+
+ that.check_is_youhui(gid, that.data.is_normal);
+
+ //默认门店要拿下门店库存
+ if (that.data.sales_rules == 2 && that.data.def_pick_store) {
+ var lock = 0, plist = null;
+ //先读取门店的lock,采用链式写法,少用await
+ getApp().request.promiseGet("/api/weshop/order/ware/lock/page", {
+ data: {
+ store_id: os.stoid,
+ wareId: that.data.sele_g.goods_id,
+ storageId: that.data.def_pick_store.pickup_id,
+ pageSize: 1000
+ }
+ }).then(res => {
+ if (res.data.code == 0 && res.data.data.total > 0) {
+ for (var i in res.data.data.pageData)
+ lock += res.data.data.pageData[i].outQty
+ }
+ //---通过接口获取门店的线下库存信息--
+ return getApp().request.promiseGet("/api/weshop/goods/getWareStorages", {
+ data: {
+ storageNos: that.data.def_pick_store.pickup_no,
+ wareIds: encodeURIComponent(that.data.sele_g.erpwareid),
+ storeId: os.stoid
+ }
+ })
+ }).then(res => {
+ if (res.data.code == 0 && res.data.data.total > 0) {
+ plist = res.data.data.pageData[0];
+ }
+ if (plist && plist.CanOutQty - lock > 0) {
+ that.data.def_pick_store.CanOutQty = plist.CanOutQty - lock;
+ } else {
+ that.data.def_pick_store.CanOutQty = 0;
+ }
+ //--给门店赋值线下库存--
+ that.setData({def_pick_store: that.data.def_pick_store});
+ })
}
- //--给门店赋值线下库存--
- that.setData({ def_pick_store: that.data.def_pick_store });
- })
- }
- this.sele_spec_chech_activity();
- },
+ this.sele_spec_chech_activity();
+ },
- //选择了不同的规格的时候要判断是不是有活动正在进行中
- async sele_spec_chech_activity() {
- //---如果是活动的时候---
- var prom = null, goodsinfo = this.data.sele_g, th = this;
- var user_id=getApp().globalData.user_id;
- if(!user_id) user_id=0;
- if (goodsinfo.prom_type == 1) {
- await getApp().request.promiseGet("/api/ms/flash_sale/getNew/" + os.stoid + "/" +user_id+"/"+ goodsinfo.prom_id, {
- }).then(res => {
- if (res.data.code == 0) {
- prom = res.data.data;
- prom.price=prom.user_price;
+ //选择了不同的规格的时候要判断是不是有活动正在进行中
+ async sele_spec_chech_activity() {
+ //---如果是活动的时候---
+ var prom = null, goodsinfo = this.data.sele_g, th = this;
+ var user_id = getApp().globalData.user_id;
+ if (!user_id) user_id = 0;
+ if (goodsinfo.prom_type == 1) {
+ await getApp().request.promiseGet("/api/ms/flash_sale/getNew/" + os.stoid + "/" + user_id + "/" + goodsinfo.prom_id, {}).then(res => {
+ if (res.data.code == 0) {
+ prom = res.data.data;
+ prom.price = prom.user_price;
+ }
+ })
}
- })
- }
- if (goodsinfo.prom_type == 6) {
- await getApp().request.promiseGet("/api/weshop/teamlist/get/" + os.stoid + "/" + goodsinfo.prom_id, {
- }).then(res => {
- if (res.data.code == 0) {
- prom = res.data.data;
+ if (goodsinfo.prom_type == 6) {
+ await getApp().request.promiseGet("/api/weshop/teamlist/get/" + os.stoid + "/" + goodsinfo.prom_id, {}).then(res => {
+ if (res.data.code == 0) {
+ prom = res.data.data;
+ }
+ })
}
- })
- }
- if (goodsinfo.prom_type == 4) {
- await getApp().request.promiseGet("/api/weshop/integralbuy/getActInfo/" + os.stoid + "/" + goodsinfo.goods_id + "/" + goodsinfo.prom_id, {
- }).then(res => {
- if (res.data.code == 0) {
- prom = res.data.data;
+ if (goodsinfo.prom_type == 4) {
+ await getApp().request.promiseGet("/api/weshop/integralbuy/getActInfo/" + os.stoid + "/" + goodsinfo.goods_id + "/" + goodsinfo.prom_id, {}).then(res => {
+ if (res.data.code == 0) {
+ prom = res.data.data;
+ }
+ })
}
- })
- }
-
- //----------如果有活动,并且在进行中,就不计算线下库存---------------
- var now = ut.gettimestamp();
- if (prom) {
- var t1=prom.start_time;
- var prom_st=1;
- if(prom.show_time){
- t1=prom.show_time;
- if(prom.start_time>now) prom_st=0;
- }
- if (prom.is_end == 0 && prom.end_time > now && t1 < now) {
- th.setData({
- prom_type: goodsinfo.prom_type,
- prom_price: prom.price,
- prom_buy_limit: prom.buy_limit?prom.buy_limit:(prom.limitvipqty? prom.limitvipqty:0),
- prom_end_time: prom.end_time,
- prom_start_time: prom.start_time,
- prom_st: prom_st,
- prom_act: prom,
- prom_id:prom.id
- })
+ //----------如果有活动,并且在进行中,就不计算线下库存---------------
+ var now = ut.gettimestamp();
+ if (prom) {
- //却换图片
- th.init(goodsinfo.goods_id);
- var newTime = ut.gettimestamp();
- var endTime2 = prom.end_time;
- var endTime1 = prom.start_time;
-
- this.data.is_timer=0;
-
- setTimeout(function () {
- th.data.is_timer=1;
- if (endTime1 > newTime) {
- th.setData({
- prom_time_text: '距秒杀开始还有'
- })
- th.countDown(endTime1, 0);
- } else {
- if (endTime2 > newTime) {
- th.setData({
- prom_time_text: '距秒杀结束还有',
- prom_st: 1
- })
- th.countDown(endTime2);
- }
- }
-
- },1000)
-
- return false;
- }
- }
- //---设置普通商品---
- th.setData({
- prom_type: 0,
- prom_price: null,
- prom_buy_limit: null,
- prom_end_time: null,
- prom_start_time: null,
- prom_st: null,
- })
+ var t1 = prom.start_time;
+ var prom_st = 1;
+ if (prom.show_time) {
+ t1 = prom.show_time;
+ if (prom.start_time > now) prom_st = 0;
+ }
+ if (prom.is_end == 0 && prom.end_time > now && t1 < now) {
+ th.setData({
+ prom_type: goodsinfo.prom_type,
+ prom_price: prom.price,
+ prom_buy_limit: prom.buy_limit ? prom.buy_limit : (prom.limitvipqty ? prom.limitvipqty : 0),
+ prom_end_time: prom.end_time,
+ prom_start_time: prom.start_time,
+ prom_st: prom_st,
+ prom_act: prom,
+ prom_id: prom.id
+ })
- },
+ //却换图片
+ th.init(goodsinfo.goods_id);
+ var newTime = ut.gettimestamp();
+ var endTime2 = prom.end_time;
+ var endTime1 = prom.start_time;
+ this.data.is_timer = 0;
- //---------拿出门店分类和门店------------
- get_sto(e) {
- console.log('get_sto')
- var th = this, that = this;
- var is_normal = e;
+ setTimeout(function () {
+ th.data.is_timer = 1;
+ if (endTime1 > newTime) {
+ th.setData({
+ prom_time_text: '距秒杀开始还有'
+ })
+ th.countDown(endTime1, 0);
+ } else {
+ if (endTime2 > newTime) {
+ th.setData({
+ prom_time_text: '距秒杀结束还有',
+ prom_st: 1
+ })
+ th.countDown(endTime2);
+ }
+ }
- if (e == 1) {
- th.setData({ is_normal: 1 })
- } else {
- th.setData({ is_normal: 0 })
- }
+ }, 1000)
- var timer_get = setInterval(function () {
- if (th.data.is_get_local_ok == 0) return false;
- var dd = null, i = getApp().request;
- if (!th.data.sele_g) return false;
-
- var g_distr_type = th.data.sele_g.distr_type;
- if (g_distr_type != 0) {
- dd = {
- store_id: o.stoid,
- distr_type: g_distr_type,
- isstop: 0,
- is_pos:1,
- pageSize: 2000
- }
- } else {
- dd = {
- store_id: o.stoid,
- isstop: 0,
- is_pos:1,
- pageSize: 2000
+ return false;
+ }
}
- }
- //如果有距离的话
- if (th.data.lat != null) {
- dd.lat = th.data.lat;
- dd.lon = th.data.lon;
- }
- clearInterval(timer_get);
-
- //如果会员是有默认的门店话
- if (!th.data.def_pick_store && th.data.fir_def_store) {
- th.setData({ def_pick_store: th.data.fir_def_store });
- }
- wx.showLoading({
- title: '加载中.'
- });
- //----------获取门店----------------
- getApp().request.promiseGet("/api/weshop/pickup/list", {
- data: dd,
- }).then(res => {
- var e = res;
+ //---设置普通商品---
+ th.setData({
+ prom_type: 0,
+ prom_price: null,
+ prom_buy_limit: null,
+ prom_end_time: null,
+ prom_start_time: null,
+ prom_st: null,
+ })
- if (e.data.code == 0 && e.data.data && e.data.data.pageData && e.data.data.pageData.length > 0) {
+ },
- var his_cate_num = 0;
- for (let i in e.data.data.pageData) {
- let item = e.data.data.pageData[i];
- if (item.category_id > 0) {
- his_cate_num = 1; break;
- }
- }
- e.his_cate_num = his_cate_num;
+ //---------拿出门店分类和门店------------
+ get_sto(e) {
+ console.log('get_sto')
+ var th = this, that = this;
+ var is_normal = e;
- //如果有开启距离的功能,没有设置默认门店,要用最近的门店作为默认门店
- if (dd.lat && (!th.data.def_pick_store || JSON.stringify(th.data.def_pick_store) == '{}') && th.data.bconfig && th.data.bconfig.is_sort_storage) {
- th.setData({
- def_pick_store: e.data.data.pageData[0],
- sto_sele_name: e.data.data.pageData[0].pickup_name,
- sto_sele_id: e.data.data.pageData[0].pickup_id,
- sto_sele_distr: e.data.data.pageData[0].distr_type
- });
- th.data.fir_def_store = e.data.data.pageData[0];
- }
+ if (e == 1) {
+ th.setData({is_normal: 1})
+ } else {
+ th.setData({is_normal: 0})
+ }
- //-- 如果有默认选择门店的时候,要把默认门店放在第一位,修改不要配送方式的判断 --
- if (th.data.def_pick_store && JSON.stringify(th.data.def_pick_store) != '{}') {
- for (var k = 0; k < e.data.data.pageData.length; k++) {
- if (e.data.data.pageData[k].pickup_id == th.data.def_pick_store.pickup_id) {
- e.data.data.pageData.splice(k, 1); //删除
- break;
- }
+ var timer_get = setInterval(function () {
+ if (th.data.is_get_local_ok == 0) return false;
+ var dd = null, i = getApp().request;
+ if (!th.data.sele_g) return false;
+
+ var g_distr_type = th.data.sele_g.distr_type;
+ if (g_distr_type != 0) {
+ dd = {
+ store_id: o.stoid,
+ distr_type: g_distr_type,
+ isstop: 0,
+ is_pos: 1,
+ pageSize: 2000
+ }
+ } else {
+ dd = {
+ store_id: o.stoid,
+ isstop: 0,
+ is_pos: 1,
+ pageSize: 2000
+ }
}
- e.data.data.pageData.splice(0, 0, th.data.def_pick_store); //添加
- }
+ //如果有距离的话
+ if (th.data.lat != null) {
+ dd.lat = th.data.lat;
+ dd.lon = th.data.lon;
+ }
+ clearInterval(timer_get);
+ //如果会员是有默认的门店话
+ if (!th.data.def_pick_store && th.data.fir_def_store) {
+ th.setData({def_pick_store: th.data.fir_def_store});
+ }
+ wx.showLoading({
+ title: '加载中.'
+ });
+ //----------获取门店----------------
+ getApp().request.promiseGet("/api/weshop/pickup/list", {
+ data: dd,
+ }).then(res => {
+ var e = res;
- th.setData({ all_pick_list: e.data.data.pageData });
+ if (e.data.code == 0 && e.data.data && e.data.data.pageData && e.data.data.pageData.length > 0) {
- //--获取线下库存,而且不是新的门店规则, 同时是普通购买的时候,或者同时不能是活动,秒杀,拼团,积分购--
- if (th.data.sales_rules == 2 && !th.data.is_newsales_rules && ((th.data.prom_type != 1 && th.data.prom_type != 6 && th.data.prom_type != 4) || is_normal == 1)) {
- setTimeout(function () {
- th.deal_pickup_dline(e);
- }, 800)
- } else {
- setTimeout(function () {
- th.deal_pickup(e); //--普通门店排版--
- }, 800)
- }
- }
- })
- }, 200)
+ var his_cate_num = 0;
+ for (let i in e.data.data.pageData) {
+ let item = e.data.data.pageData[i];
+ if (item.category_id > 0) {
+ his_cate_num = 1;
+ break;
+ }
+ }
+ e.his_cate_num = his_cate_num;
- },
+ //如果有开启距离的功能,没有设置默认门店,要用最近的门店作为默认门店
+ if (dd.lat && (!th.data.def_pick_store || JSON.stringify(th.data.def_pick_store) == '{}') && th.data.bconfig && th.data.bconfig.is_sort_storage) {
+ th.setData({
+ def_pick_store: e.data.data.pageData[0],
+ sto_sele_name: e.data.data.pageData[0].pickup_name,
+ sto_sele_id: e.data.data.pageData[0].pickup_id,
+ sto_sele_distr: e.data.data.pageData[0].distr_type
+ });
+ th.data.fir_def_store = e.data.data.pageData[0];
+ }
+ //-- 如果有默认选择门店的时候,要把默认门店放在第一位,修改不要配送方式的判断 --
+ if (th.data.def_pick_store && JSON.stringify(th.data.def_pick_store) != '{}') {
+ for (var k = 0; k < e.data.data.pageData.length; k++) {
+ if (e.data.data.pageData[k].pickup_id == th.data.def_pick_store.pickup_id) {
+ e.data.data.pageData.splice(k, 1); //删除
+ break;
+ }
+ }
+ e.data.data.pageData.splice(0, 0, th.data.def_pick_store); //添加
+ }
- //------------处理门店---------------
- deal_pickup(e) {
- var th = this;
- if (!th.data.sele_g) return false
- var g_distr_type = th.data.sele_g.distr_type;
- wx.hideLoading();
+ th.setData({all_pick_list: e.data.data.pageData});
- //单总量超出10个的时候,同时门店有分类
- if (e.data.data.total > 10 && e.his_cate_num) {
- getApp().request.get("/api/weshop/storagecategory/page", {
- data: {
- store_id: o.stoid,
- pageSize: 1000,
- orderField: "sort",
- orderType: 'asc',
- },
- success: function (ee) {
- if (ee.data.code == 0) {
- var check_all_cate=0;
- if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0){
- for(let i in ee.data.data.pageData){
- let item=ee.data.data.pageData[i];
- if(item.is_show==1){
- check_all_cate=1;break
- }
- }
- }
- if (check_all_cate) {
- var sto_cate = ee.data.data.pageData;
- var sto_arr = e.data.data.pageData;
- var newarr = new Array();
- var qita = new Array();
-
-
- var is_del_pk=0;
- //----要进行门店分组--------
- for (var i = 0; i < sto_arr.length; i++) {
- //找一下这个门店有没有在分类数组内
- var find2 = 0, find2name = "", sort = 0;
- is_del_pk=0;
- for (var m = 0; m < sto_cate.length; m++) {
- if (sto_arr[i].category_id == sto_cate[m].cat_id) {
- if(sto_cate[m].is_show!=1){
- is_del_pk=1; sto_arr.splice(i,1);
- i--;
- }else {
- find2 = sto_cate[m].cat_id;
- find2name = sto_cate[m].cat_name;
- sort = sto_cate[m].sort;
- is_del_pk=0;
- }
- break;
- }
- }
- if(is_del_pk) continue;
-
- if (newarr.length > 0) {
- var find = 0;
- //如果有找到,那门店就在这个分组内,否则,分类就要排在其他
- if (find2 != 0) {
- for (var ii = 0; ii < newarr.length; ii++) {
- if (sto_arr[i].category_id == newarr[ii].cat_id) {
- newarr[ii].s_arr.push(sto_arr[i]);
- find = 1;
- break;
- }
- }
- if (find == 0) {
- var arr0 = new Array();
- arr0.push(sto_arr[i]);
- var item = {
- cat_id: find2,
- name: find2name,
- sort: sort,
- s_arr: arr0
- };
- newarr.push(item);
+ //--获取线下库存,而且不是新的门店规则, 同时是普通购买的时候,或者同时不能是活动,秒杀,拼团,积分购--
+ if (th.data.sales_rules == 2 && !th.data.is_newsales_rules && ((th.data.prom_type != 1 && th.data.prom_type != 6 && th.data.prom_type != 4) || is_normal == 1)) {
+ setTimeout(function () {
+ th.deal_pickup_dline(e);
+ }, 800)
+ } else {
+ setTimeout(function () {
+ th.deal_pickup(e); //--普通门店排版--
+ }, 800)
}
- } else {
- qita.push(sto_arr[i]);
- }
- } else {
- //如果有找到,那门店就在这个分组内,否则,分类就要排在其他
- if (find2 != 0) {
- var arr0 = new Array();
- arr0.push(sto_arr[i]);
- var item = {
- cat_id: find2,
- name: find2name,
- sort: sort,
- s_arr: arr0
- };
- newarr.push(item);
- } else {
- qita.push(sto_arr[i]);
- }
}
- }
+ })
+ }, 200)
- var def_arr = new Array();
- //-- 开始就看10个门店 --
- for (var k = 0; k < 10; k++) {
- if (k == sto_arr.length) break;
- def_arr.push(sto_arr[k]);
- }
+ },
- th.setData({
- def_pickpu_list: def_arr,
- pickpu_list: ee.data.data.pageData
- });
+ //------------处理门店---------------
+ deal_pickup(e) {
+ var th = this;
+ if (!th.data.sele_g) return false
- //门店分类要排序下
- function compare(property) {
- return function (a, b) {
- var value1 = a[property];
- var value2 = b[property];
- return value1 - value2;
- }
- }
- if (newarr.length > 0)
- newarr.sort(compare("sort"));
+ var g_distr_type = th.data.sele_g.distr_type;
+ wx.hideLoading();
+ //单总量超出10个的时候,同时门店有分类
+ if (e.data.data.total > 10 && e.his_cate_num) {
+ getApp().request.get("/api/weshop/storagecategory/page", {
+ data: {
+ store_id: o.stoid,
+ pageSize: 1000,
+ orderField: "sort",
+ orderType: 'asc',
+ },
+ success: function (ee) {
+ if (ee.data.code == 0) {
+ var check_all_cate = 0;
+ if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0) {
+ for (let i in ee.data.data.pageData) {
+ let item = ee.data.data.pageData[i];
+ if (item.is_show == 1) {
+ check_all_cate = 1;
+ break
+ }
+ }
+ }
+ if (check_all_cate) {
+ var sto_cate = ee.data.data.pageData;
+ var sto_arr = e.data.data.pageData;
+ var newarr = new Array();
+ var qita = new Array();
+
+
+ var is_del_pk = 0;
+ //----要进行门店分组--------
+ for (var i = 0; i < sto_arr.length; i++) {
+ //找一下这个门店有没有在分类数组内
+ var find2 = 0, find2name = "", sort = 0;
+ is_del_pk = 0;
+ for (var m = 0; m < sto_cate.length; m++) {
+ if (sto_arr[i].category_id == sto_cate[m].cat_id) {
+ if (sto_cate[m].is_show != 1) {
+ is_del_pk = 1;
+ sto_arr.splice(i, 1);
+ i--;
+ } else {
+ find2 = sto_cate[m].cat_id;
+ find2name = sto_cate[m].cat_name;
+ sort = sto_cate[m].sort;
+ is_del_pk = 0;
+ }
+ break;
+ }
+ }
+ if (is_del_pk) continue;
+
+ if (newarr.length > 0) {
+ var find = 0;
+ //如果有找到,那门店就在这个分组内,否则,分类就要排在其他
+ if (find2 != 0) {
+ for (var ii = 0; ii < newarr.length; ii++) {
+ if (sto_arr[i].category_id == newarr[ii].cat_id) {
+ newarr[ii].s_arr.push(sto_arr[i]);
+ find = 1;
+ break;
+ }
+ }
+ if (find == 0) {
+ var arr0 = new Array();
+ arr0.push(sto_arr[i]);
+ var item = {
+ cat_id: find2,
+ name: find2name,
+ sort: sort,
+ s_arr: arr0
+ };
+ newarr.push(item);
+ }
+ } else {
+ qita.push(sto_arr[i]);
+ }
+ } else {
+ //如果有找到,那门店就在这个分组内,否则,分类就要排在其他
+ if (find2 != 0) {
+ var arr0 = new Array();
+ arr0.push(sto_arr[i]);
+ var item = {
+ cat_id: find2,
+ name: find2name,
+ sort: sort,
+ s_arr: arr0
+ };
+ newarr.push(item);
+ } else {
+ qita.push(sto_arr[i]);
+ }
+ }
+ }
- //----安排其他的分类-----
- if (qita.length > 0) {
- var item = {
- cat_id: -1,
- name: "其他",
- s_arr: qita
- };
- newarr.push(item);
- }
+ var def_arr = new Array();
+ //-- 开始就看10个门店 --
+ for (var k = 0; k < 10; k++) {
+ if (k == sto_arr.length) break;
+ def_arr.push(sto_arr[k]);
+ }
- var sd={
- all_sto: newarr,
- is_show_sto_cat:1
- }
- if(!sto_arr || sto_arr.length<=10){
- sd.is_show_sto_cat=-1;
- sd.only_pk=sto_arr;
- }
- th.setData(sd);
+ th.setData({
+ def_pickpu_list: def_arr,
+ pickpu_list: ee.data.data.pageData
+ });
- } else {
- th.setData({
- is_show_sto_cat: -1,
- only_pk: e.data.data.pageData
- });
- //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------
- if (!th.data.def_pick_store) {
- th.setData({
- def_pick_store: e.data.data.pageData[0],
- sto_sele_name: e.data.data.pageData[0].pickup_name,
- sto_sele_id: e.data.data.pageData[0].pickup_id,
- sto_sele_distr: e.data.data.pageData[0].distr_type
- })
- }
- }
- } else {
- th.setData({
- is_show_sto_cat: -1,
- only_pk: e.data.data.pageData
- });
- //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------
- if (!th.data.def_pick_store) {
- th.setData({
- def_pick_store: e.data.data.pageData[0],
- sto_sele_name: e.data.data.pageData[0].pickup_name,
- sto_sele_id: e.data.data.pageData[0].pickup_id,
- sto_sele_distr: e.data.data.pageData[0].distr_type
- })
- }
- }
- }
- });
- } else {
- th.setData({
- is_show_sto_cat: 0,
- only_pk: e.data.data.pageData
- });
- //-----如果没有默认门店,要取第一个门店作为默认店------
- if (!th.data.def_pick_store && th.data.bconfig && th.data.bconfig.is_sort_storage) {
- th.setData({
- def_pick_store: e.data.data.pageData[0],
- sto_sele_name: e.data.data.pageData[0].pickup_name,
- sto_sele_id: e.data.data.pageData[0].pickup_id,
- sto_sele_distr: e.data.data.pageData[0].distr_type
- })
- }
- }
- },
+ //门店分类要排序下
+ function compare(property) {
+ return function (a, b) {
+ var value1 = a[property];
+ var value2 = b[property];
+ return value1 - value2;
+ }
+ }
- //------------处理线下门店库存--------
- deal_pickup_dline(e) {
- var pkno = [], th = this;
- if (!th.data.sele_g) return false;
+ if (newarr.length > 0)
+ newarr.sort(compare("sort"));
- if (this.data.def_pick_store) {
- pkno.push(this.data.def_pick_store.pickup_no);
- }
- for (var i in e.data.data.pageData) {
- var item = e.data.data.pageData[i];
- if (pkno.indexOf(item.pickup_no) < 0)
- pkno.push(item.pickup_no);
- }
- pkno.sort();
- var pkno_str = pkno.join(",");
- var o_plist = e.data.data.pageData;
- var new_list = [];
- var is_find_def_store = 0;
-
-
- var g_distr_type = th.data.sele_g.distr_type;
- var lock = [];
- //先读取门店的lock,采用链式写法,少用await
- getApp().request.promiseGet("/api/weshop/order/ware/lock/page", {
- data: { store_id: os.stoid, wareId: th.data.sele_g.goods_id, pageSize: 1000 }
- }).then(res => {
- if (res.data.code == 0 && res.data.data.total > 0) {
- lock = res.data.data.pageData
- }
- //---通过接口获取门店的线下库存信息--
- return getApp().request.promiseGet("/api/weshop/goods/getWareStorages", {
- data: { storageNos: pkno_str, wareIds: encodeURIComponent(th.data.sele_g.erpwareid), storeId: os.stoid, pageSize: 2000 }
- })
- }).then(res => {
- wx.hideLoading();
- if (res.data.code == 0) {
- if (res.data.data.pageData && res.data.data.pageData.length > 0) {
- var plist = res.data.data.pageData;
- var def_pick_store = th.data.def_pick_store;
- //以原来的数组为外循环,保证距离的顺序
- for (var kk in o_plist) {
- for (var ii in plist) {
- //线下的门店小心
- var n_item = plist[ii];
- if (n_item.StorageNo == o_plist[kk].pickup_no) {
-
- //拿到锁库的数量
- var lock_num = th.find_lock_num(o_plist[kk].pickup_id, lock);
- //可出库数大于预出库库存的数量,可以判断为有库存
- if (n_item.CanOutQty > lock_num) {
- o_plist[kk].CanOutQty = n_item.CanOutQty - lock_num;
- new_list.push(o_plist[kk]);
- //--如果找到默认门店,同时也应该判断配送方式对不对--
- if (th.data.fir_def_store && n_item.StorageNo == th.data.fir_def_store.pickup_no && (g_distr_type == 0 || th.data.fir_def_store.distr_type == 0 || th.data.def_pick_store.distr_type == g_distr_type)) {
- th.data.fir_def_store.CanOutQty = n_item.CanOutQty - lock_num;
- if (def_pick_store.pickup_id == th.data.fir_def_store.pickup_id)
- th.setData({ def_pick_store: th.data.fir_def_store })
- is_find_def_store = 1;
- }
- }
- break;
- }
- }
- }
-
- //数据组装下
- var em = {}; em.data = {}; em.data.data = {};
- em.data.data.total = new_list.length;
- em.data.data.pageData = new_list;
- em.data.data.pageData = new_list;
-
- //--如果找到默认门店,同时也应该判断配送方式对不对--
- if (th.data.fir_def_store && !is_find_def_store && th.data.fir_def_store.pickup_id && (g_distr_type == 0 || th.data.fir_def_store.distr_type == 0 || th.data.def_pick_store.distr_type == g_distr_type)) {
- th.data.fir_def_store.CanOutQty = 0;
- //--当选择的门店是客户默认的门店的时候--
- if (th.data.def_pick_store && th.data.fir_def_store.pickup_id == th.data.def_pick_store.pickup_id) {
- th.setData({ def_pick_store: th.data.fir_def_store });
- em.data.data.pageData.unshift(th.data.def_pick_store);
- } else {
- em.data.data.pageData.splice(1, 0, th.data.fir_def_store);
- }
- }
-
- //---把数组组装进去---
- th.deal_pickup(em);
- } else {
- th.setData({ def_pick_store: null, all_sto: null, only_pk: null, def_pickpu_list: null })
- }
- } else {
- th.setData({ def_pick_store: null, all_sto: null, only_pk: null, def_pickpu_list: null })
- }
- })
- },
-
- find_lock_num(pick_id, lock) {
- var lock_num = 0;
- if (!lock) return 0;
- if (lock.length < 0) return 0;
- for (var i in lock) {
- if (pick_id == lock[i].pickupId) {
- lock_num += lock[i].outQty;
- }
- }
- return lock_num;
- },
-
- //----------取货门店被点击的效果------
- getmendian: function (t) {
- this.setData({
- ismend: 1,
- });
- },
-
- //----------隐藏取货门店,选取门店----------
- hidemend: function (e) {
- var pid = e.target.dataset.p_id;
- var pname = e.target.dataset.p_name;
- var p_distr_t = e.target.dataset.p_dis;
- this.setData({
- ismend: 0,
- is_sec_mend: 0,
- sto_sele_id: pid,
- sto_sele_name: pname,
- sto_sele_distr: p_distr_t
- });
- },
-
- //------显示取货2级----------
- show_sec: function (t) {
- var index = t.target.dataset.index;
- var item = this.data.all_sto[index];
- this.setData({
- is_sec_mend: 1,
- sec_sto: item
- });
- },
+ //----安排其他的分类-----
+ if (qita.length > 0) {
+ var item = {
+ cat_id: -1,
+ name: "其他",
+ s_arr: qita
+ };
+ newarr.push(item);
+ }
- //------隐藏取货门店2级----
- hide_sec_mend: function () {
- this.setData({ is_sec_mend: 0, });
- },
+ var sd = {
+ all_sto: newarr,
+ is_show_sto_cat: 1
+ }
+ if (!sto_arr || sto_arr.length <= 10) {
+ sd.is_show_sto_cat = -1;
+ sd.only_pk = sto_arr;
+ }
+ th.setData(sd);
- //评论的调用
- requestComments_new: async function () {
- var e = this, th = e, ee = e; var tp = e.data.activeCategoryId3;
- var t = '/api/weshop/comment/pageComment?page=' + e.data.c_curr_p;
+ } else {
+ th.setData({
+ is_show_sto_cat: -1,
+ only_pk: e.data.data.pageData
+ });
+ //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------
+ if (!th.data.def_pick_store) {
+ th.setData({
+ def_pick_store: e.data.data.pageData[0],
+ sto_sele_name: e.data.data.pageData[0].pickup_name,
+ sto_sele_id: e.data.data.pageData[0].pickup_id,
+ sto_sele_distr: e.data.data.pageData[0].distr_type
+ })
+ }
+ }
+ } else {
+ th.setData({
+ is_show_sto_cat: -1,
+ only_pk: e.data.data.pageData
+ });
+ //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------
+ if (!th.data.def_pick_store) {
+ th.setData({
+ def_pick_store: e.data.data.pageData[0],
+ sto_sele_name: e.data.data.pageData[0].pickup_name,
+ sto_sele_id: e.data.data.pageData[0].pickup_id,
+ sto_sele_distr: e.data.data.pageData[0].distr_type
+ })
+ }
- wx.showLoading();
- var req_where = {
- store_id: o.stoid, pageSize: 5, is_show: 1,
- parent_id: 0, goods_id: th.data.gid, commenttype: tp,
- }
- if (getApp().globalData.userInfo) {
- req_where.userId = getApp().globalData.user_id;
- }
+ }
+ }
+ });
+ } else {
+ th.setData({
+ is_show_sto_cat: 0,
+ only_pk: e.data.data.pageData
+ });
+ //-----如果没有默认门店,要取第一个门店作为默认店------
+ if (!th.data.def_pick_store && th.data.bconfig && th.data.bconfig.is_sort_storage) {
+ th.setData({
+ def_pick_store: e.data.data.pageData[0],
+ sto_sele_name: e.data.data.pageData[0].pickup_name,
+ sto_sele_id: e.data.data.pageData[0].pickup_id,
+ sto_sele_distr: e.data.data.pageData[0].distr_type
+ })
+ }
+ }
+ },
- var rs_data = null;
- await getApp().request.promiseGet(t, { data: req_where }).then(res => {
- var tot = res.data.data.total;
- e.data.c_curr_p++;
- e.setData({
- com_num: tot, //已经有加载
- });
- if (res.data.data && res.data.data.pageData && res.data.data.pageData.length > 0) {
- rs_data = res.data.data.pageData;
- } else {
- th.setData({ comments_no_more: 1, auto: 1 });
- }
- })
+ //------------处理线下门店库存--------
+ deal_pickup_dline(e) {
+ var pkno = [], th = this;
+ if (!th.data.sele_g) return false;
- if (rs_data) {
- //var cda = th.data.comments;
- var cda = rs_data, com_data = th.data.comments;
- for (var ind in cda) {
- var ep = cda[ind];
- if (cda[ind].head_pic == '') {
- cda[ind].head_pic = th.data.iurl + "/miniapp/images/hui_hear_pic.png";
+ if (this.data.def_pick_store) {
+ pkno.push(this.data.def_pick_store.pickup_no);
}
- if (ep.weapp_img != "" && ut.isString(ep.weapp_img)) {
- cda[ind].weapp_img = JSON.parse(ep.weapp_img);
+ for (var i in e.data.data.pageData) {
+ var item = e.data.data.pageData[i];
+ if (pkno.indexOf(item.pickup_no) < 0)
+ pkno.push(item.pickup_no);
}
- if (ep.img != "" && ut.isString(ep.img)) {
- cda[ind].img = ut.unserialize(ep.img);
- }
-
- //--测量多有字的宽带,计算有多少行--
- var widh = ut.measureText(ep.content, 30);
- var lines = widh / 712;
- cda[ind].seeMore = false;
- if (lines > 3) cda[ind].seeMore = true;
-
- await getApp().request.promiseGet("/api/weshop/comment/pageComment", {
- data: { store_id: o.stoid, parent_id: ep.comment_id }
+ pkno.sort();
+ var pkno_str = pkno.join(",");
+ var o_plist = e.data.data.pageData;
+ var new_list = [];
+ var is_find_def_store = 0;
+
+
+ var g_distr_type = th.data.sele_g.distr_type;
+ var lock = [];
+ //先读取门店的lock,采用链式写法,少用await
+ getApp().request.promiseGet("/api/weshop/order/ware/lock/page", {
+ data: {store_id: os.stoid, wareId: th.data.sele_g.goods_id, pageSize: 1000}
}).then(res => {
- if (res.data.data.pageData && res.data.data.pageData.length > 0) {
- cda[ind].replay_list = res.data.data.pageData;
- }
- })
- }
-
- if (!com_data) com_data = cda;
- else com_data = com_data.concat(cda);
-
- th.setData({ comments: com_data });
- }
- th.setData({ get_c: 1 });
- wx.hideLoading();
- },
-
- //加载更多是靠这个函数
- onReachBottom: function () {
- if (this.data.activeCategoryId == 2) {
- if (!this.data.comments_no_more) this.requestComments_new();
- }
-
- var goods_list = this.selectComponent("#goods_list"); //组件的id
- if (goods_list) goods_list.get_list();
- },
-
- //--------检查是否活动,活动是否开始,或者是否结束-------
- async check_prom(gid, prom_type, prom_id) {
- var ee = this,
- th = ee;
- var user_id=getApp().globalData.user_id;
- if(!user_id) user_id=0;
-
- if (prom_type == 3 || prom_type == 0 || prom_type == 5 || prom_type == 7 || prom_type == 9 || prom_type == 10) {
- this.setData({
- prom_type: 0,isshow: 1,
- });
- return false;
- }
-
- if(prom_type==2){
-
- //-------判断团购活动是否抢光---------
- await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/" + prom_type + "/" + prom_id, {
- 1: 1
+ if (res.data.code == 0 && res.data.data.total > 0) {
+ lock = res.data.data.pageData
+ }
+ //---通过接口获取门店的线下库存信息--
+ return getApp().request.promiseGet("/api/weshop/goods/getWareStorages", {
+ data: {
+ storageNos: pkno_str,
+ wareIds: encodeURIComponent(th.data.sele_g.erpwareid),
+ storeId: os.stoid,
+ pageSize: 2000
+ }
+ })
}).then(res => {
- var em = res;
- if (em.data.code == 0) {
- if (em.data.data <= 0) ee.setData({
- prom_r_null: 1
- });
- //拿取价格并且判断时间--
- getApp().request.get("/api/weshop/goods/groupBuy/getActInfo/" +os.stoid + "/" +gid+"/"+ prom_id, {
- success: function (t) {
- if (t.data.code != 0) {
- ee.get_normal(gid);
- return false;
- }
-
- //----已经结束-----
- if (t.data.data.is_end == 1) {
- ee.get_normal(gid);
- return false;
- }
- //----已经过期-----
- var now = ut.gettimestamp();
- // if (t.data.data.end_time < now || t.data.data.start_time > now) {
- if (t.data.data.end_time < now) {
- ee.get_normal(gid);
- return false;
- }
-
- /*-- 还没有开始预热的也不显示 --*/
- if (t.data.data.show_time > now) {
- ee.get_normal(gid);
- return false;
- }
-
- var t_gd = ee.data.data;
- var prom_end_time = ut.formatTime(t.data.data.end_time, "yyyy-MM-dd hh:mm:ss");
- var prom_start_time = ut.formatTime(t.data.data.start_time, "yyyy-MM-dd hh:mm:ss");
-
- ee.setData({
- prom_price: t.data.data.price,
- prom_type: 2,
- prom_id: prom_id,
- prom_buy_limit: t.data.data.buy_limit,
- prom_act: t.data.data,
- prom_end_time: prom_end_time,
- prom_start_time: prom_start_time,
- isshow: 1,
- prom_act:t.data.data
- });
- ee.get_sto();
- var newTime = ut.gettimestamp();
- var endTime2 = t.data.data.end_time;
- var endTime1 = t.data.data.start_time;
- if (endTime1 > newTime) {
- ee.setData({
- prom_time_text: '距团购开始还有'
- })
- ee.countDown(endTime1, 0);
- } else {
- if (endTime2 > newTime) {
- ee.setData({
- prom_time_text: '距团购结束还有',
- prom_st: 1
- })
- ee.countDown(endTime2);
+ wx.hideLoading();
+ if (res.data.code == 0) {
+ if (res.data.data.pageData && res.data.data.pageData.length > 0) {
+ var plist = res.data.data.pageData;
+ var def_pick_store = th.data.def_pick_store;
+ //以原来的数组为外循环,保证距离的顺序
+ for (var kk in o_plist) {
+ for (var ii in plist) {
+ //线下的门店小心
+ var n_item = plist[ii];
+ if (n_item.StorageNo == o_plist[kk].pickup_no) {
+
+ //拿到锁库的数量
+ var lock_num = th.find_lock_num(o_plist[kk].pickup_id, lock);
+ //可出库数大于预出库库存的数量,可以判断为有库存
+ if (n_item.CanOutQty > lock_num) {
+ o_plist[kk].CanOutQty = n_item.CanOutQty - lock_num;
+ new_list.push(o_plist[kk]);
+ //--如果找到默认门店,同时也应该判断配送方式对不对--
+ if (th.data.fir_def_store && n_item.StorageNo == th.data.fir_def_store.pickup_no && (g_distr_type == 0 || th.data.fir_def_store.distr_type == 0 || th.data.def_pick_store.distr_type == g_distr_type)) {
+ th.data.fir_def_store.CanOutQty = n_item.CanOutQty - lock_num;
+ if (def_pick_store.pickup_id == th.data.fir_def_store.pickup_id)
+ th.setData({def_pick_store: th.data.fir_def_store})
+ is_find_def_store = 1;
+ }
+ }
+ break;
}
}
+ }
+ //数据组装下
+ var em = {};
+ em.data = {};
+ em.data.data = {};
+ em.data.data.total = new_list.length;
+ em.data.data.pageData = new_list;
+ em.data.data.pageData = new_list;
+
+ //--如果找到默认门店,同时也应该判断配送方式对不对--
+ if (th.data.fir_def_store && !is_find_def_store && th.data.fir_def_store.pickup_id && (g_distr_type == 0 || th.data.fir_def_store.distr_type == 0 || th.data.def_pick_store.distr_type == g_distr_type)) {
+ th.data.fir_def_store.CanOutQty = 0;
+ //--当选择的门店是客户默认的门店的时候--
+ if (th.data.def_pick_store && th.data.fir_def_store.pickup_id == th.data.def_pick_store.pickup_id) {
+ th.setData({def_pick_store: th.data.fir_def_store});
+ em.data.data.pageData.unshift(th.data.def_pick_store);
+ } else {
+ em.data.data.pageData.splice(1, 0, th.data.fir_def_store);
+ }
}
- });
+
+ //---把数组组装进去---
+ th.deal_pickup(em);
+ } else {
+ th.setData({def_pick_store: null, all_sto: null, only_pk: null, def_pickpu_list: null})
+ }
+ } else {
+ th.setData({def_pick_store: null, all_sto: null, only_pk: null, def_pickpu_list: null})
}
})
- }
+ },
+
+ find_lock_num(pick_id, lock) {
+ var lock_num = 0;
+ if (!lock) return 0;
+ if (lock.length < 0) return 0;
+ for (var i in lock) {
+ if (pick_id == lock[i].pickupId) {
+ lock_num += lock[i].outQty;
+ }
+ }
+ return lock_num;
+ },
- if (prom_type == 1 && prom_id==0){
+ //----------取货门店被点击的效果------
+ getmendian: function (t) {
this.setData({
- prom_type: 0,isshow: 1,
+ ismend: 1,
});
+ },
- //获取门店
- this.get_sto();
- this.get_sku(o.stoid, this.data.data, gid);
- this.check_has_flash();
- this.data.is_normal=1;
- this.check_is_youhui(gid,1);
- return false;
- }
+ //----------隐藏取货门店,选取门店----------
+ hidemend: function (e) {
+ var pid = e.target.dataset.p_id;
+ var pname = e.target.dataset.p_name;
+ var p_distr_t = e.target.dataset.p_dis;
+ this.setData({
+ ismend: 0,
+ is_sec_mend: 0,
+ sto_sele_id: pid,
+ sto_sele_name: pname,
+ sto_sele_distr: p_distr_t
+ });
+ },
- //if (prom_type != 3 && prom_type!=0){
- //---判断秒杀----
- if (prom_type == 1 && prom_id>0) {
- //-------判断活动是否抢光---------
- await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/" + prom_type + "/" + prom_id, {
- 1: 1
- }).then(res => {
- var em = res;
- if (em.data.code == 0) {
-
- if (em.data.data <= 0) ee.setData({
- prom_r_null: 1
- });
- //拿取价格并且判断时间--
- getApp().request.get("/api/ms/flash_sale/getNew/" +os.stoid + "/" +user_id+"/"+ prom_id, {
- success: function (t) {
- if (t.data.code != 0) {
- ee.get_normal(gid);
- return false;
- }
- //----已经结束-----
- if (t.data.data.is_end == 1) {
- ee.get_normal(gid);
- return false;
- }
- //----已经过期-----
- var now = ut.gettimestamp();
- if (t.data.data.end_time < now) {
- ee.get_normal(gid);
- return false;
- }
- /*-- 还没有开始预热的也不显示 --*/
- if (t.data.data.show_time > now) {
- ee.get_normal(gid);
- return false;
- }
-
- var t_gd = ee.data.data;
- var prom_end_time = ut.formatTime(t.data.data.end_time, "yyyy-MM-dd hh:mm:ss");
- var prom_start_time = ut.formatTime(t.data.data.start_time, "yyyy-MM-dd hh:mm:ss");
-
- ee.setData({
- prom_price: t.data.data.user_price,
- prom_type: 1,
- prom_id: prom_id,
- prom_buy_limit: t.data.data.buy_limit,
- prom_act: t.data.data,
- prom_end_time: prom_end_time,
- prom_start_time: prom_start_time,
- isshow: 1,
- });
-
- ee.get_sto();
- var newTime = ut.gettimestamp();
- var endTime2 = t.data.data.end_time;
- var endTime1 = t.data.data.start_time;
- if (endTime1 > newTime) {
- ee.setData({
- prom_time_text: '距秒杀开始还有'
- })
- ee.countDown(endTime1, 0);
- } else {
- if (endTime2 > newTime) {
- ee.setData({
- prom_time_text: '距秒杀结束还有',
- prom_st: 1
- })
- ee.countDown(endTime2);
- }
- }
-
- //如果是进行中的话
- if (endTime1 < newTime) {
- //-- 获取秒杀活动的多少规格 --
- ee.get_more_flahs(function (list) {
- if (list && list.length > 1) {
-
- var n_item = list[0];
- var ind = list.findIndex(function (ele) {
- return ele.goods_id == ee.data.data.goods_id;
- })
- if (ind < 0) return false;
- if (ind > 0) {
- n_item = JSON.parse(JSON.stringify(list[ind]));
- list.splice(ind, 1);
- list.unshift(n_item);
- }
-
- ee.data.sele_g.viplimited = n_item.viplimited;
- ee.data.data.viplimited = n_item.viplimited;
-
- var gb = 1;
- //-- 显示多规格 --
- for (let i in list) {
- let item = list[i];
- var gg = "";
- if (item.goods_spec == "null" || item.goods_spec == null) item.goods_spec = "";
- if (item.goods_color == "null" || item.goods_color == null) item.goods_color = "";
-
- if (item.goods_spec != "" && item.goods_color != "") {
- gg = item.goods_spec + "/" + item.goods_color;
- } else if (item.goods_spec != "" || item.goods_color != "") {
- gg = item.goods_spec + item.goods_color;
- } else {
- gg = "规格" + gb;
- gb++;
- }
- item.gg = gg;
- item.prom_id = item.prom_id;
- item.prom_type = 1;
- }
-
- ee.setData({
- sku_g: list,
- });
-
- }
- })
- }
-
- }
- });
- }
- })
- }
+ //------显示取货2级----------
+ show_sec: function (t) {
+ var index = t.target.dataset.index;
+ var item = this.data.all_sto[index];
+ this.setData({
+ is_sec_mend: 1,
+ sec_sto: item
+ });
+ },
- if (prom_type == 4) {
- //th.setData({is_integral_normal:1});
- var rdata = {
- store_id: o.stoid, stype: 1, stypeup: 1, goods_id: gid
- }
+ //------隐藏取货门店2级----
+ hide_sec_mend: function () {
+ this.setData({is_sec_mend: 0,});
+ },
- var integrals = 0;
- var get_datas = {
- user_id: getApp().globalData.user_id, store_id: o.stoid,
- };
- await getApp().request.promiseGet("/api/weshop/users/getAllPoints", {
- data: get_datas
- }).then(res => {
- if (res.data.code == 0) {
- integrals = res.data.data.Integral;
- }
- })
-
- //获取一下积分活动
- await getApp().request.promiseGet("/api/weshop/integralbuy/pageIntegralBuyGoodsList", {
- data: rdata
- }).then(res => {
- //调用接口有数据的时候
- if (res.data.code == 0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length > 0) {
- var inte_data = res.data.data.pageData[0];
- var can_integral = (parseFloat(integrals) >= parseFloat(inte_data.integral));
- ee.setData({
- prom_price: parseFloat(inte_data.addmoney),
- prom_integral: parseFloat(inte_data.integral),
- prom_type: 4,
- prom_id: inte_data.id,
- prom_buy_limit: inte_data.limitvipqty,
- prom_act: inte_data,
- isshow: 1,
- can_integral: can_integral,
- is_shopbuy: parseInt(inte_data.is_shopbuy ? inte_data.is_shopbuy : 0)
- });
- ee.get_sto();
+ //评论的调用
+ requestComments_new: async function () {
+ var e = this, th = e, ee = e;
+ var tp = e.data.activeCategoryId3;
+ var t = '/api/weshop/comment/pageComment?page=' + e.data.c_curr_p;
- } else {
- ee.get_normal(gid);
- return false;
+ wx.showLoading();
+ var req_where = {
+ store_id: o.stoid, pageSize: 5, is_show: 1,
+ parent_id: 0, goods_id: th.data.gid, commenttype: tp,
+ }
+ if (getApp().globalData.userInfo) {
+ req_where.userId = getApp().globalData.user_id;
}
- })
- }
+ var rs_data = null;
+ await getApp().request.promiseGet(t, {data: req_where}).then(res => {
+ var tot = res.data.data.total;
+ e.data.c_curr_p++;
+ e.setData({
+ com_num: tot, //已经有加载
+ });
+ if (res.data.data && res.data.data.pageData && res.data.data.pageData.length > 0) {
+ rs_data = res.data.data.pageData;
+ } else {
+ th.setData({comments_no_more: 1, auto: 1});
+ }
+ })
- //---判断拼单----
- if (prom_type == 6) {
- //-------判断活动是否抢光---------
- await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/" + prom_type + "/" + prom_id, {
- 1: 1
- }).then(res => {
- var em = res;
- var flag=null;
- if (em.data.code == 0) {
- if (em.data.data <= 0) ee.setData({
- prom_r_null: 1
- });
- //拿取价格并且判断时间--
- getApp().request.get("/api/weshop/teamlist/get/" +
- os.stoid + "/" + prom_id, {
- success: async function (t) {
- if (t.data.code != 0) {
- ee.get_normal(gid);
- return false;
- }
- //----已经结束-----
- if (t.data.data.is_end == 1) {
- ee.get_normal(gid);
- return false;
- }
- //----已经过期-----
- var now = ut.gettimestamp();
- if (t.data.data.end_time < now) {
- ee.get_normal(gid);
- return false;
- }
-
- /*-- 还没有开始预热的也不显示 --*/
- if (t.data.data.show_time > now) {
- ee.get_normal(gid);
- return false;
- }
-
- /*-- 判断拼单是否启用 --*/
- if (!t.data.data.is_show) {
- console.log('没启用');
- wx.setNavigationBarTitle({
- title: '系统提示',
- });
- wx.showToast({
- title:'此商品暂时没有拼单活动',
- icon:'none',
- success(){
- setTimeout(()=>{
- wx.navigateBack()
- },2000)
- }
- });
- return false
- }
-
- await getApp().request.promiseGet("/api/weshop/teamlist/pageteam/2",{
- data:{
- store_id: os.stoid,
- is_end: 0,
- is_show: 1,
- user_id: getApp().globalData.user_id,
- pageSize:1000
+ if (rs_data) {
+ //var cda = th.data.comments;
+ var cda = rs_data, com_data = th.data.comments;
+ for (var ind in cda) {
+ var ep = cda[ind];
+ if (cda[ind].head_pic == '') {
+ cda[ind].head_pic = th.data.iurl + "/miniapp/images/hui_hear_pic.png";
}
- }).then(res=>{
-
- let pd_list=res.data.data.pageData;
- if(res.data.code==0 && pd_list.length>0){
- flag =pd_list.some(pd=>{
- return pd.goods_id==gid
- })
+ if (ep.weapp_img != "" && ut.isString(ep.weapp_img)) {
+ cda[ind].weapp_img = JSON.parse(ep.weapp_img);
}
- })
- if(!flag){
- ee.get_normal(gid);
- return false;
-
- }
- //-------查看自己是不是有买过该团的商品,并还为支付,或者在进行中-------
- await getApp().request.promiseGet("/api/weshop/order/page", {
- data: {
- pt_prom_id: prom_id,
- user_id: oo.user_id,
- store_id: os.stoid,
- pageSize: 1,
- page: 1
+ if (ep.img != "" && ut.isString(ep.img)) {
+ cda[ind].img = ut.unserialize(ep.img);
}
- }).then(e=>{
- if (e.data.code == 0 && e.data.data.pageData.length > 0) {
- var odr = e.data.data.pageData[0];
- th.data.buy_order = odr;
- if (odr.pt_status == 0 && odr.order_status == 1) {
- th.setData({
- user_order_pt_state: 1
- });
- }
- if (odr.pt_status == 1 && odr.order_status == 1) {
- if (odr.is_zsorder == 4) {
- getApp().request.promiseGet("/api/weshop/teamgroup/page/", {
- data: {
- store_id: os.stoid,
- team_id: odr.pt_prom_id,
- listno: odr.pt_listno
- }
- }).then(res => {
- var now = ut.gettimestamp();
- if (res.data.code == 0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length > 0) {
- var tgr = res.data.data.pageData[0];
- //如果团的时间已经到了
- if (now >= tgr.kt_end_time) {
- th.update_jiti(tgr.id);
- } else {
- th.setData({
- user_order_pt_state: 2
- });
- }
- }
- })
-
- } else {
- th.setData({
- user_order_pt_state: 2
- });
- }
- }
- if (odr.pt_status == 2 && odr.is_zsorder == 4) {
- th.setData({
- user_order_pt_state: 3,
- });
- th.data.wk_order_id = odr.order_id;
+ //--测量多有字的宽带,计算有多少行--
+ var widh = ut.measureText(ep.content, 30);
+ var lines = widh / 712;
+ cda[ind].seeMore = false;
+ if (lines > 3) cda[ind].seeMore = true;
+
+ await getApp().request.promiseGet("/api/weshop/comment/pageComment", {
+ data: {store_id: o.stoid, parent_id: ep.comment_id}
+ }).then(res => {
+ if (res.data.data.pageData && res.data.data.pageData.length > 0) {
+ cda[ind].replay_list = res.data.data.pageData;
}
- }
- })
-
- //----------查看阶梯团------------
- if (t.data.data.ct_rylist != "null" && t.data.data.ct_rylist != "" && t.data.data.ct_rylist != null && t.data.data.ct_rylist != undefined) {
- t.data.data.ct_rylist = JSON.parse(t.data.data.ct_rylist);
- var max_num = 0;
- t.data.data.ct_rylist.forEach(function (val, ind) {
- if (parseInt(val.rynum) > max_num) max_num = parseInt(val.rynum);
})
- t.data.data.max_ct_num = max_num;
- }
-
- var prom_end_time = ut.formatTime(t.data.data.end_time, "yyyy-MM-dd hh:mm:ss");
- var prom_start_time = ut.formatTime(t.data.data.start_time, "yyyy-MM-dd hh:mm:ss");
- ee.setData({
- prom_price: t.data.data.price,
- prom_type: 6,
- prom_id: prom_id,
- prom_buy_limit: t.data.data.buy_limit,
- prom_act: t.data.data,
- prom_end_time: prom_end_time,
- prom_start_time: prom_start_time,
- isshow: 1,
- });
-
- ee.get_sto();
-
- var newTime = now;
- var endTime2 = t.data.data.end_time;
- var endTime1 = t.data.data.start_time;
-
- if (endTime1 > newTime) {
- ee.setData({
- prom_time_text: '距拼单开始还剩:'
- })
- ee.countDown(endTime1, 0);
- } else {
- if (endTime2 > newTime) {
- ee.setData({
- prom_time_text: '距拼单结束还剩:',
- prom_st: 1
- })
- ee.countDown(endTime2);
- }
- }
- //-------查看有多少人在开这个团-------
- th.get_team_group(prom_id);
}
- });
- }
- })
- }
- },
+ if (!com_data) com_data = cda;
+ else com_data = com_data.concat(cda);
- //--获取有多少人在开团--
- async get_team_group(prom_id) {
- var teamgroup = [],
- th = this,
- grounp_tatal = 0;
- //如果活动是开团不是商家团
- if (this.data.prom_act.kttype > 1) {
-
- var req_data = {
- store_id: os.stoid,
- pageSize: 3,
- page: 1,
- state: 2,
- team_id: prom_id,
- ordernum: 1
- };
-
- if (this.data.prom_act.kttype == 3 && this.data.prom_act.max_ct_num) {
- req_data.max_num = this.data.prom_act.max_ct_num;
- }
+ th.setData({comments: com_data});
+ }
+ th.setData({get_c: 1});
+ wx.hideLoading();
+ },
- //获取活动从表信息team_id
- await getApp().request.promiseGet("/api/weshop/teamgroup/page", {
- data: req_data
- }).then(res => {
- teamgroup = res.data.data.pageData;
- grounp_tatal = res.data.data.total;
- })
- //获取订单的总数这个接口不能用
- for (i = 0; i < teamgroup.length; i++) {
- await getApp().request.promiseGet("/api/weshop/order/page", {
- data: {
- store_id: os.stoid,
- pt_status: 1,
- pt_listno: teamgroup[i].listno
- }
- }).then(res => {
- var order = res.data.data.pageData;
- teamgroup[i].open_num = order.length;
- })
- await getApp().request.promiseGet("/api/weshop/users/get/" + os.stoid + "/" + teamgroup[i].openvipid, {}).then(res => {
- var user = res.data.data;
- teamgroup[i].user = user;
- })
- }
+ //加载更多是靠这个函数
+ onReachBottom: function () {
+ if (this.data.activeCategoryId == 2) {
+ if (!this.data.comments_no_more) this.requestComments_new();
+ }
- if (teamgroup.length > 0) {
- th.setData({
- teamgroup: teamgroup,
- grounp_tatal: grounp_tatal
- });
- th.countDown2();
- }
- }
- },
+ var goods_list = this.selectComponent("#goods_list"); //组件的id
+ if (goods_list) goods_list.get_list();
+ },
- //---小于10的格式化函数----
- timeFormat(param) {
- return param < 10 ? '0' + param : param;
- },
+ //--------检查是否活动,活动是否开始,或者是否结束-------
+ async check_prom(gid, prom_type, prom_id) {
+ console.log('check_prom');
+ var ee = this, th = ee;
+ var user_id = getApp().globalData.user_id;
+ if (!user_id) user_id = 0;
- //----倒计时函数-----
- countDown(time, prom_st) {
- if (!this.data.is_timer) return false;
- var th = this;
- // 获取当前时间,同时得到活动结束时间数组
- var endTime = time;
- var newTime = ut.gettimestamp();
- // 对结束时间进行处理渲染到页面
- var obj = null;
- // 如果活动未结束,对时间进行处理
- if (endTime - newTime > 0) {
- var time = (endTime - newTime);
- // 获取天、时、分、秒
- var day = parseInt(time / (60 * 60 * 24));
- var hou = parseInt(time % (60 * 60 * 24) / 3600);
- var min = parseInt(time % (60 * 60 * 24) % 3600 / 60);
- var sec = parseInt(time % (60 * 60 * 24) % 3600 % 60);
- obj = {
- day: this.timeFormat(day),
- hou: this.timeFormat(hou),
- min: this.timeFormat(min),
- sec: this.timeFormat(sec)
- }
- } else {
- if (th.data.prom_st == 0) {
- //var endTime2 = new Date(th.data.prom_end_time).getTime();
- var endTime2 = th.data.prom_act.end_time;
- th.setData({
- prom_time_text: '距结束还剩:',
- prom_st: 1
- })
- setTimeout(function () {
- th.countDown(endTime2)
- }, 1000);
- return false;
-
- } else {
- //活动已结束,全部设置为'00'
- obj = {
- day: '00',
- hou: '00',
- min: '00',
- sec: '00'
+ if (prom_type == 3 || prom_type == 0 || prom_type == 5 || prom_type == 7 || prom_type == 9 || prom_type == 10) {
+ this.setData({
+ prom_type: 0, isshow: 1,
+ });
+ return false;
}
- th.setData({
- prom_time_text: '活动已经结束:',
- prom_st: 3
- })
- th.setData({
- djs: obj
- });
- return false;
- }
- }
- th.setData({
- djs: obj
- });
- setTimeout(function () {
- th.countDown(endTime)
- }, 1000);
- },
+ if (prom_type == 2) {
+ //-------判断团购活动是否抢光---------
+ await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/" + prom_type + "/" + prom_id, {
+ 1: 1
+ }).then(res => {
+ var em = res;
+ if (em.data.code == 0) {
+ if (em.data.data <= 0) ee.setData({
+ prom_r_null: 1
+ });
+ //拿取价格并且判断时间--
+ getApp().request.get("/api/weshop/goods/groupBuy/getActInfo/" + os.stoid + "/" + gid + "/" + prom_id, {
+ success: function (t) {
+ if (t.data.code != 0) {
+ ee.get_normal(gid);
+ return false;
+ }
+ //----已经结束-----
+ if (t.data.data.is_end == 1) {
+ ee.get_normal(gid);
+ return false;
+ }
+ //----已经过期-----
+ var now = ut.gettimestamp();
+ if (t.data.data.end_time < now || t.data.data.start_time > now) {
+ ee.get_normal(gid);
+ return false;
+ }
+ /*-- 还没有开始预热的也不显示 --*/
+ if (t.data.data.show_time > now) {
+ ee.get_normal(gid);
+ return false;
+ }
- //-------------获取购买数量的总函数----------------
- get_buy_num: function (gd, func) {
- var map = this.data.g_buy_num,
- th = this,
- user_id = getApp().globalData.user_id;
- if (user_id == null) {
- map.set(gd.goods_id, 0);
- th.setData({
- g_buy_num: map,
- prom_buy_num: 0,
- });
- "function" == typeof func && func();
- return false;
- }
+ var t_gd = ee.data.data;
+ var prom_end_time = ut.formatTime(t.data.data.end_time, "yyyy-MM-dd hh:mm:ss");
+ var prom_start_time = ut.formatTime(t.data.data.start_time, "yyyy-MM-dd hh:mm:ss");
- if (map.has(gd.goods_id)) {
- "function" == typeof func && func();
- } else {
- //----获取商品购买数----
- getApp().request.get("/api/weshop/ordergoods/getUserBuyGoodsNum", {
- data: {
- store_id: os.stoid,
- user_id: user_id,
- goods_id: gd.goods_id,
- timetype: th.data.viplimited_timetype
- },
- success: function (t) {
- if (t.data.code == 0) {
- var g_buy_num = t.data.data.goodsbuynum;
-
- //如果是秒杀的时候
- if(th.data.prom_type==0 && gd.prom_type == 1 ){
- gd.prom_type= 0;
- }
- //如果全场优惠,商品做了秒杀
- if(th.data.prom_type==3 && gd.prom_type == 1 ){
- gd.prom_type= 0;
- }
- //如果全场阶梯优惠,商品做了秒杀
- if(th.data.prom_type==10 && gd.prom_type == 1 ){
- gd.prom_type= 0;
- }
-
+ ee.setData({
+ prom_price: t.data.data.price,
+ prom_type: 2,
+ prom_id: prom_id,
+ prom_buy_limit: t.data.data.buy_limit,
+ prom_act: t.data.data,
+ prom_end_time: prom_end_time,
+ prom_start_time: prom_start_time,
+ isshow: 1,
+ prom_act: t.data.data
+ });
+
+ ee.get_sto();
+ var newTime = ut.gettimestamp();
+ var endTime2 = t.data.data.end_time;
+ var endTime1 = t.data.data.start_time;
+ if (endTime1 > newTime) {
+ ee.setData({
+ prom_time_text: '距团购开始还有'
+ })
+ ee.countDown(endTime1, 0);
+ } else {
+ if (endTime2 > newTime) {
+ ee.setData({
+ prom_time_text: '距团购结束还有',
+ prom_st: 1
+ })
+ ee.countDown(endTime2);
+ }
+ }
- if (!th.data.is_normal && ( gd.prom_type == 1 || gd.prom_type == 2 || gd.prom_type == 4 || gd.prom_type == 6)) {
- //----获取活动购买数----
- getApp().request.get("/api/weshop/ordergoods/getUserBuyGoodsNum", {
- data: {
- store_id: os.stoid,
- user_id: user_id,
- goods_id: gd.goods_id,
- prom_type: gd.prom_type,
- prom_id: gd.prom_id
- },
- //-----获取-----
- success: function (tt) {
- if (tt.data.code == 0) {
- map.set(gd.goods_id, g_buy_num);
- th.setData({
- g_buy_num: map,
- prom_buy_num: tt.data.data.goodsbuynum,
+ }
});
- "function" == typeof func && func();
- }
}
- });
- } else {
- map.set(gd.goods_id, g_buy_num);
- th.setData({
- g_buy_num: map
- });
- "function" == typeof func && func();
- }
- }
+ })
}
- });
- }
- },
- //--拼单推荐的显示---
- tj_Click: function (e) {
- var ind = parseInt(e.target.dataset.ind);
- this.setData({
- is_show_gz: ind
- });
- },
+ if (prom_type == 1 && prom_id == 0) {
+ this.setData({
+ prom_type: 0, isshow: 1,
+ });
- //--------拼团玩法显示详情--------
- show_pt_xx: function (e) {
- this.setData({
- pd_xx: 1,
- })
- },
- close_pt_xx: function () {
- this.setData({
- pd_xx: 0,
- })
- },
+ //获取门店
+ this.get_sto();
+ this.get_sku(o.stoid, this.data.data, gid);
+ this.check_has_flash();
+ this.data.is_normal = 1;
+ this.check_is_youhui(gid, 1);
+ return false;
+ }
- //--点击弹起拼单--
- openSpecModel_pt: function (e) {
+ //if (prom_type != 3 && prom_type!=0){
+ //---判断秒杀----
+ if (prom_type == 1 && prom_id > 0) {
+ //-------判断活动是否抢光---------
+ await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/" + prom_type + "/" + prom_id, {
+ 1: 1
+ }).then(res => {
+ var em = res;
+ if (em.data.code == 0) {
+ if (em.data.data <= 0) ee.setData({
+ prom_r_null: 1
+ });
+ //拿取价格并且判断时间--
+ getApp().request.get("/api/ms/flash_sale/getNew/" + os.stoid + "/" + user_id + "/" + prom_id, {
+ success: function (t) {
+ if (t.data.code != 0) {
+ ee.get_normal(gid);
+ return false;
+ }
+ //----已经结束-----
+ if (t.data.data.is_end == 1) {
+ ee.get_normal(gid);
+ return false;
+ }
+ //----已经过期-----
+ var now = ut.gettimestamp();
+ if (t.data.data.end_time < now) {
+ ee.get_normal(gid);
+ return false;
+ }
+ /*-- 还没有开始预热的也不显示 --*/
+ if (t.data.data.show_time > now) {
+ ee.get_normal(gid);
+ return false;
+ }
- this.setData({ open_ind_store: 4, goodsInputNum: 1 });//拼团直接给4
+ var t_gd = ee.data.data;
+ var prom_end_time = ut.formatTime(t.data.data.end_time, "yyyy-MM-dd hh:mm:ss");
+ var prom_start_time = ut.formatTime(t.data.data.start_time, "yyyy-MM-dd hh:mm:ss");
+ ee.setData({
+ prom_price: t.data.data.user_price,
+ prom_type: 1,
+ prom_id: prom_id,
+ prom_buy_limit: t.data.data.buy_limit,
+ prom_act: t.data.data,
+ prom_end_time: prom_end_time,
+ prom_start_time: prom_start_time,
+ isshow: 1,
+ });
+
+ ee.get_sto();
+ var newTime = ut.gettimestamp();
+ var endTime2 = t.data.data.end_time;
+ var endTime1 = t.data.data.start_time;
+ if (endTime1 > newTime) {
+ ee.setData({
+ prom_time_text: '距秒杀开始还有'
+ })
+ ee.countDown(endTime1, 0);
+ } else {
+ if (endTime2 > newTime) {
+ ee.setData({
+ prom_time_text: '距秒杀结束还有',
+ prom_st: 1
+ })
+ ee.countDown(endTime2);
+ }
+ }
- //--先判断会员状态--
- var user_info = getApp().globalData.userInfo;
- if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
- wx.navigateTo({
- url: '/pages/togoin/togoin',
- })
- return false;
- }
+ //如果是进行中的话
+ if (endTime1 < newTime) {
+ //-- 获取秒杀活动的多少规格 --
+ ee.get_more_flahs(function (list) {
+ if (list && list.length > 1) {
+
+ var n_item = list[0];
+ var ind = list.findIndex(function (ele) {
+ return ele.goods_id == ee.data.data.goods_id;
+ })
+ if (ind < 0) return false;
+ if (ind > 0) {
+ n_item = JSON.parse(JSON.stringify(list[ind]));
+ list.splice(ind, 1);
+ list.unshift(n_item);
+ }
+
+ ee.data.sele_g.viplimited = n_item.viplimited;
+ ee.data.data.viplimited = n_item.viplimited;
+
+ var gb = 1;
+ //-- 显示多规格 --
+ for (let i in list) {
+ let item = list[i];
+ var gg = "";
+ if (item.goods_spec == "null" || item.goods_spec == null) item.goods_spec = "";
+ if (item.goods_color == "null" || item.goods_color == null) item.goods_color = "";
+
+ if (item.goods_spec != "" && item.goods_color != "") {
+ gg = item.goods_spec + "/" + item.goods_color;
+ } else if (item.goods_spec != "" || item.goods_color != "") {
+ gg = item.goods_spec + item.goods_color;
+ } else {
+ gg = "规格" + gb;
+ gb++;
+ }
+ item.gg = gg;
+ item.prom_id = item.prom_id;
+ item.prom_type = 1;
+ }
+
+ ee.setData({
+ sku_g: list,
+ });
+
+ }
+ })
+ }
- var th = this;
- var ind = parseInt(e.currentTarget.dataset.it);
+ }
+ });
+ }
+ })
+ }
- //如果是拼单活动的普通购买
- if (ind == 1) {
+ if (prom_type == 4) {
+ //th.setData({is_integral_normal:1});
+ var rdata = {
+ store_id: o.stoid, stype: 1, stypeup: 1, goods_id: gid
+ }
- if(!th.data.is_normal) {
- th.data.g_buy_num=new Map();
- }
+ var integrals = 0;
+ var get_datas = {
+ user_id: getApp().globalData.user_id, store_id: o.stoid,
+ };
+ await getApp().request.promiseGet("/api/weshop/users/getAllPoints", {
+ data: get_datas
+ }).then(res => {
+ if (res.data.code == 0) {
+ integrals = res.data.data.Integral;
+ }
+ })
- //如果拼单的sku data是空的,就要先获取一下
- if (th.data.sku_g_pt) {
- th.get_sto(1);
- th.setData({
- is_normal: ind,
- openSpecModal_pt: 1
- });
- } else {
- th.get_sto(1);
- th.get_sku(o.stoid, th.data.data, th.data.gid, 1, function () {
- th.setData({
- is_normal: ind,
- openSpecModal_pt: 1
- });
- });
- }
- th.check_is_youhui(th.data.gid, 1);
- } else {
+ //获取一下积分活动
+ await getApp().request.promiseGet("/api/weshop/integralbuy/pageIntegralBuyGoodsList", {
+ data: rdata
+ }).then(res => {
+ //调用接口有数据的时候
+ if (res.data.code == 0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length > 0) {
+ var inte_data = res.data.data.pageData[0];
+ var can_integral = (parseFloat(integrals) >= parseFloat(inte_data.integral));
+ ee.setData({
+ prom_price: parseFloat(inte_data.addmoney),
+ prom_integral: parseFloat(inte_data.integral),
+ prom_type: 4,
+ prom_id: inte_data.id,
+ prom_buy_limit: inte_data.limitvipqty,
+ prom_act: inte_data,
+ isshow: 1,
+ can_integral: can_integral,
+ is_shopbuy: parseInt(inte_data.is_shopbuy ? inte_data.is_shopbuy : 0)
+ });
+ ee.get_sto();
+
+ } else {
+ ee.get_normal(gid);
+ return false;
+ }
+ })
- if(th.data.is_normal) {
- th.data.g_buy_num=new Map();
}
- //拼单商品从这里进,先判断有没有买过商品,
- getApp().request.get("/api/weshop/order/page", {
- data: {
- pt_prom_id: th.data.prom_act.id,
- user_id: oo.user_id,
- store_id: os.stoid,
- pageSize: 1,
- page: 1
- },
- success: function (e) {
- //--跳转到已经购买的情况--
- if (e.data.data.pageData.length > 0) {
- var odr = e.data.data.pageData[0];
- //还未支付
- if (odr.pt_status == 0 && (odr.order_status == 1 || odr.order_status == 0)) {
- wx.showModal({
- title: "您已经购买了该商品待支付中",
- success: function (a) {
- if (a.confirm) {
- wx.navigateTo({
- url: "/pages/user/order_detail/order_detail?order_id=" + odr.order_id,
+ //---判断拼单----
+ if (prom_type == 6) {
+ //-------判断活动是否抢光---------
+ await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/" + prom_type + "/" + prom_id, {
+ 1: 1
+ }).then(res => {
+ var em = res;
+ var flag = null;
+ if (em.data.code == 0) {
+ if (em.data.data <= 0) ee.setData({
+ prom_r_null: 1
});
- }
- }
- });
- } else if (odr.pt_status == 1 && odr.order_status == 1) {
-
- if (this.data.is_go_to_team_show) return false;
- this.data.is_go_to_team_show = 1;
- wx.showLoading();
+ //拿取价格并且判断时间--
+ getApp().request.get("/api/weshop/teamlist/get/" +
+ os.stoid + "/" + prom_id, {
+ success: async function (t) {
+ if (t.data.code != 0) {
+ ee.get_normal(gid);
+ return false;
+ }
+ //----已经结束-----
+ if (t.data.data.is_end == 1) {
+ ee.get_normal(gid);
+ return false;
+ }
+ //----已经过期-----
+ var now = ut.gettimestamp();
+ if (t.data.data.end_time < now) {
+ ee.get_normal(gid);
+ return false;
+ }
- /*---
- wx.redirectTo({
- url: "/pages/team/team_success/team_success?ordersn=" + odr.order_sn,
- });--*/
- getApp().goto("/pages/team/team_success/team_success?ordersn=" + odr.order_sn);
+ /*-- 还没有开始预热的也不显示 --*/
+ if (t.data.data.show_time > now) {
+ ee.get_normal(gid);
+ return false;
+ }
- } else {
- th.setData({
- is_normal: ind,
- openSpecModal_pt: 1
- });
- }
+ /*-- 判断拼单是否启用 --*/
+ if (!t.data.data.is_show) {
+ console.log('没启用');
+ wx.setNavigationBarTitle({
+ title: '系统提示',
+ });
+ wx.showToast({
+ title: '此商品暂时没有拼单活动',
+ icon: 'none',
+ success(){
+ setTimeout(() => {
+ wx.navigateBack()
+ }, 2000)
+ }
+ });
+ return false
+ }
- } else {
- th.setData({
- is_normal: ind,
- openSpecModal_pt: 1
- });
- }
- }
- });
- }
- },
+ //判断拼团的---会员身份--
+ await getApp().request.promiseGet("/api/weshop/teamlist/pageteam/2", {
+ data: {
+ store_id: os.stoid,
+ is_end: 0,
+ is_show: 1,
+ user_id: getApp().globalData.user_id,
+ pageSize: 1000
+ }
+ }).then(res => {
+
+ let pd_list = res.data.data.pageData;
+ if (res.data.code == 0 && pd_list.length > 0) {
+ flag = pd_list.some(pd => {
+ return pd.goods_id == gid
+ })
+ }
+ })
+ if (!flag) {
+ ee.get_normal(gid);
+ return false;
- //-----------------拼单生成方法---------------------
- addCart_pt: function () {
- var th = this;
- if (this.data.is_normal == 0) {
- //看一下有没有起购数,如果有起购数,要计算起购数
- var qnum = parseFloat(th.data.prom_act.minbuynum);
- if (qnum > 0 && th.data.goodsInputNum < qnum) {
- getApp().confirmBox("拼团商品至少要买" + qnum + "件!");
- return false;
- }
+ }
+ //-------查看自己是不是有买过该团的商品,并还为支付,或者在进行中-------
+ await getApp().request.promiseGet("/api/weshop/order/page", {
+ data: {
+ pt_prom_id: prom_id,
+ user_id: oo.user_id,
+ store_id: os.stoid,
+ pageSize: 1,
+ page: 1
+ }
+ }).then(e => {
+ if (e.data.code == 0 && e.data.data.pageData.length > 0) {
+ var odr = e.data.data.pageData[0];
+ th.data.buy_order = odr;
+ if (odr.pt_status == 0 && odr.order_status == 1) {
+ th.setData({
+ user_order_pt_state: 1
+ });
+ }
+ if (odr.pt_status == 1 && odr.order_status == 1) {
+ if (odr.is_zsorder == 4) {
+ getApp().request.promiseGet("/api/weshop/teamgroup/page/", {
+ data: {
+ store_id: os.stoid,
+ team_id: odr.pt_prom_id,
+ listno: odr.pt_listno
+ }
+ }).then(res => {
+ var now = ut.gettimestamp();
+ if (res.data.code == 0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length > 0) {
+ var tgr = res.data.data.pageData[0];
+ //如果团的时间已经到了
+ if (now >= tgr.kt_end_time) {
+ th.update_jiti(tgr.id);
+ } else {
+ th.setData({
+ user_order_pt_state: 2
+ });
+ }
+ }
+ })
+
+ } else {
+ th.setData({
+ user_order_pt_state: 2
+ });
+ }
+ }
+
+ if (odr.pt_status == 2 && odr.is_zsorder == 4) {
+ th.setData({
+ user_order_pt_state: 3,
+ });
+ th.data.wk_order_id = odr.order_id;
+ }
+ }
+ })
- th.addcart_pt_func();
- } else {
- th.addcart_pt_func();
- }
- },
+ //----------查看阶梯团------------
+ if (t.data.data.ct_rylist != "null" && t.data.data.ct_rylist != "" && t.data.data.ct_rylist != null && t.data.data.ct_rylist != undefined) {
+ t.data.data.ct_rylist = JSON.parse(t.data.data.ct_rylist);
+ var max_num = 0;
+ t.data.data.ct_rylist.forEach(function (val, ind) {
+ if (parseInt(val.rynum) > max_num) max_num = parseInt(val.rynum);
+ })
+ t.data.data.max_ct_num = max_num;
+ }
- addcart_pt_func: function () {
- if (oo.user_id == null) {
- s.my_warnning("还未登录!", 0, this);
- return;
- }
- var e = this,
- th = e,
- o = this.data.sele_g;
- if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th);
-
- //----------添加到购物车时,要判断限购数量,--------
- e.get_buy_num(o, async function (ee) {
-
- //---判断商品是否超出限购---
- if (th.data.g_buy_num != null && th.data.sele_g.viplimited > 0) {
- if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id) > th.data.sele_g.viplimited) {
- wx.showModal({
- title: '提示',
- content: '超出商品限购'
- });
-
- var num = th.data.prom_buy_limit - th.data.prom_buy_num;
- if (num < 0) num = 0;
- th.setData({ goodsInputNum: num })
- return false;
- }
- }
- //---判断商品是否超出活动限购,拼团的普通购买不计算活动的限购---
- if (th.data.prom_buy_num != -1 && th.data.prom_buy_limit > 0 && th.data.is_normal != 1) {
- if (th.data.goodsInputNum + th.data.prom_buy_num > th.data.prom_buy_limit) {
- wx.showModal({
- title: '提示',
- content: '超出商品活动限购'
- });
-
- var num = th.data.prom_buy_limit - th.data.prom_buy_num;
- if (num < 0) num = 0;
- th.setData({ goodsInputNum: num })
- return false;
+ var prom_end_time = ut.formatTime(t.data.data.end_time, "yyyy-MM-dd hh:mm:ss");
+ var prom_start_time = ut.formatTime(t.data.data.start_time, "yyyy-MM-dd hh:mm:ss");
+ ee.setData({
+ prom_price: t.data.data.price,
+ prom_type: 6,
+ prom_id: prom_id,
+ prom_buy_limit: t.data.data.buy_limit,
+ prom_act: t.data.data,
+ prom_end_time: prom_end_time,
+ prom_start_time: prom_start_time,
+ isshow: 1,
+ });
+
+ ee.get_sto();
+
+ var newTime = now;
+ var endTime2 = t.data.data.end_time;
+ var endTime1 = t.data.data.start_time;
+
+ if (endTime1 > newTime) {
+ ee.setData({
+ prom_time_text: '距拼单开始还剩:'
+ })
+ ee.countDown(endTime1, 0);
+ } else {
+ if (endTime2 > newTime) {
+ ee.setData({
+ prom_time_text: '距拼单结束还剩:',
+ prom_st: 1
+ })
+ ee.countDown(endTime2);
+ }
+ }
+ //-------查看有多少人在开这个团-------
+ th.get_team_group(prom_id);
+ }
+ });
+ }
+ })
}
- }
+ },
- var redis_num = 0
- //不是普通购买的时候
- if (th.data.is_normal != 1) {
- //-------判断活动是否抢光---------
- await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/6/" + th.data.sele_g.prom_id, {
- 1: 1
- }).then(res => {
- redis_num = res.data.data;
- })
+ //--获取有多少人在开团--
+ async get_team_group(prom_id) {
+ var teamgroup = [],
+ th = this,
+ grounp_tatal = 0;
+ //如果活动是开团不是商家团
+ if (this.data.prom_act.kttype > 1) {
+
+ var req_data = {
+ store_id: os.stoid,
+ pageSize: 3,
+ page: 1,
+ state: 2,
+ team_id: prom_id,
+ ordernum: 1
+ };
- if (th.data.goodsInputNum > redis_num) {
- wx.showModal({
- title: '提示',
- content: '超出商品活动库存'
- });
+ if (this.data.prom_act.kttype == 3 && this.data.prom_act.max_ct_num) {
+ req_data.max_num = this.data.prom_act.max_ct_num;
+ }
- th.setData({ goodsInputNum: redis_num })
+ //获取活动从表信息team_id
+ await getApp().request.promiseGet("/api/weshop/teamgroup/page", {
+ data: req_data
+ }).then(res => {
+ teamgroup = res.data.data.pageData;
+ grounp_tatal = res.data.data.total;
+ })
+ //获取订单的总数这个接口不能用
+ for (i = 0; i < teamgroup.length; i++) {
+ await getApp().request.promiseGet("/api/weshop/order/page", {
+ data: {
+ store_id: os.stoid,
+ pt_status: 1,
+ pt_listno: teamgroup[i].listno
+ }
+ }).then(res => {
+ var order = res.data.data.pageData;
+ teamgroup[i].open_num = order.length;
+ })
+ await getApp().request.promiseGet("/api/weshop/users/get/" + os.stoid + "/" + teamgroup[i].openvipid, {}).then(res => {
+ var user = res.data.data;
+ teamgroup[i].user = user;
+ })
+ }
- return false;
+ if (teamgroup.length > 0) {
+ th.setData({
+ teamgroup: teamgroup,
+ grounp_tatal: grounp_tatal
+ });
+ th.countDown2();
+ }
}
- }
-
- if (th.data.goodsInputNum <= 0) return s.my_warnning("商品数量不能为0", 0, th);
- if (th.data.goodsInputNum > o.store_count) {
- th.setData({ goodsInputNum: o.store_count })
- return s.my_warnning("超出商品库存", 0, th);
- }
+ },
- if (th.data.sto_sele_name == null || th.data.sto_sele_name == undefined)
- this.setData({
- sto_sele_name: ""
- });
- if (th.data.sto_sele_name == "") return s.my_warnning("请选择门店", 0, th);
- //--------------此时操作的数据------------
- var newd = {
- goods_id: o.goods_id,
- goods_num: th.data.goodsInputNum,
- pick_id: th.data.sto_sele_id,
- user_id: oo.user_id,
- store_id: th.data.stoid,
- goods_price: o.shop_price,
- goods_name: o.goods_name,
- goods_sn: o.goods_sn,
- sku: o.sku,
- };
-
- //---是不是从收藏夹出来的---
- if (th.data.c_guide_id) {
- newd['guide_id'] = th.data.c_guide_id;
- newd['guide_type'] = 2;
-
- } else {
- if (getApp().globalData.guide_id) {
- newd['guide_id'] = getApp().globalData.guide_id;
- newd['guide_type'] = 0;
+ //---小于10的格式化函数----
+ timeFormat(param) {
+ return param < 10 ? '0' + param : param;
+ },
- }
- }
+ //----倒计时函数-----
+ countDown(time, prom_st) {
+ if (!this.data.is_timer) return false;
+ var th = this;
+ // 获取当前时间,同时得到活动结束时间数组
+ var endTime = time;
+ var newTime = ut.gettimestamp();
+ // 对结束时间进行处理渲染到页面
+ var obj = null;
+ // 如果活动未结束,对时间进行处理
+ if (endTime - newTime > 0) {
+ var time = (endTime - newTime);
+ // 获取天、时、分、秒
+ var day = parseInt(time / (60 * 60 * 24));
+ var hou = parseInt(time % (60 * 60 * 24) / 3600);
+ var min = parseInt(time % (60 * 60 * 24) % 3600 / 60);
+ var sec = parseInt(time % (60 * 60 * 24) % 3600 % 60);
+ obj = {
+ day: this.timeFormat(day),
+ hou: this.timeFormat(hou),
+ min: this.timeFormat(min),
+ sec: this.timeFormat(sec)
+ }
+ } else {
+ if (th.data.prom_st == 0) {
+ //var endTime2 = new Date(th.data.prom_end_time).getTime();
+ var endTime2 = th.data.prom_act.end_time;
+ th.setData({
+ prom_time_text: '距结束还剩:',
+ prom_st: 1
+ })
+ setTimeout(function () {
+ th.countDown(endTime2)
+ }, 1000);
+ return false;
- //让商品带上房间号
- if (th.data.sys_switch.is_skuroom_id == 1) {
- if (th.data.data.goods_id == getApp().globalData.room_goods_id) {
- newd.room_id = getApp().globalData.room_id;
- }
- } else {
- if (newd.goods_id == getApp().globalData.room_goods_id) {
- newd.room_id = getApp().globalData.room_id;
+ } else {
+ //活动已结束,全部设置为'00'
+ obj = {
+ day: '00',
+ hou: '00',
+ min: '00',
+ sec: '00'
+ }
+ th.setData({
+ prom_time_text: '活动已经结束:',
+ prom_st: 3
+ })
+ th.setData({
+ djs: obj
+ });
+ return false;
+ }
}
- }
- //---如果商品不是积分购和拼团,要判断一个是否要进行等级价的判断------
-
- if (th.data.is_normal == 1) {
- var conf = th.data.bconfig;
- if (conf.switch_list) {
- var s_list = JSON.parse(conf.switch_list);
- //如果后台有开启等级价的功能
- if (parseInt(s_list.rank_switch) == 2) {
- var card_price = o[getApp().globalData.userInfo['card_field']];
- //如果会员有等级价
- if (getApp().globalData.userInfo['card_field'] != undefined && getApp().globalData.userInfo['card_field'] != null
- && getApp().globalData.userInfo['card_field'] != "" && card_price > 0) {
- newd.goods_price = card_price;
- }
- }
- }
- }
+ th.setData({
+ djs: obj
+ });
+ setTimeout(function () {
+ th.countDown(endTime)
+ }, 1000);
+ },
- //-----如果是秒杀,团购,积分购,拼团,且不是普通购买-----
- if (th.data.prom_type == 6 && th.data.is_normal != 1) {
- newd.goods_price = th.data.prom_price;
- newd.prom_type = th.data.prom_type;
- newd.prom_id = th.data.prom_id;
- newd.kt_type = th.data.prom_act.kttype; //开团类型
- newd.is_pt_tz = 0;
- //th.data.sto_sele_distr=1; //直接用自提的方式提交
- if (newd.kt_type > 1) {
- newd.is_pt_tz = 1; //开团类型
- }
- if (newd.kt_type == 3) {
- th.data.sto_sele_distr = 1;
+ //-------------获取购买数量的总函数----------------
+ get_buy_num: function (gd, func) {
+ var map = this.data.g_buy_num,
+ th = this,
+ user_id = getApp().globalData.user_id;
+ if (user_id == null) {
+ map.set(gd.goods_id, 0);
+ th.setData({
+ g_buy_num: map,
+ prom_buy_num: 0,
+ });
+ "function" == typeof func && func();
+ return false;
}
- } else if (th.data.prom_type == 3) {
- newd.prom_type = 0;
- newd.prom_id = 0;
- }
+ if (map.has(gd.goods_id)) {
+ "function" == typeof func && func();
+ } else {
+ //----获取商品购买数----
+ getApp().request.get("/api/weshop/ordergoods/getUserBuyGoodsNum", {
+ data: {
+ store_id: os.stoid,
+ user_id: user_id,
+ goods_id: gd.goods_id
+ },
+ success: function (t) {
+ if (t.data.code == 0) {
+ var g_buy_num = t.data.data.goodsbuynum;
- newd['pick_name'] = th.data.sto_sele_name;
- newd['pick_dis'] = th.data.sto_sele_distr;
- newd['is_normal'] = th.data.is_normal;
-
- if (newd['is_normal']) {
- newd['is_pd_normal'] = 1;
- //判断一下有没有全局优惠活动
- th.check_nor_promgood(newd.goods_id, function (e) {
- if (e && e.act_id) {
- newd['prom_type'] = 3;
- newd['prom_id'] = e.act_id;
- }
- th.buyNow(newd)
- })
- }
- else th.buyNow_pt(newd);
- })
- },
- //----------立即购买_pt-----------
- buyNow_pt: function (e) {
- s.set_b_now(e);
- wx.navigateTo({
- url: "/pages/cart/cart2_pt/cart2_pt?is_bnow=1&goods_id=" + e.goods_id,
- });
- },
+ //如果是秒杀的时候
+ if (th.data.prom_type == 0 && gd.prom_type == 1) {
+ gd.prom_type = 0;
+ }
+ //如果全场优惠,商品做了秒杀
+ if (th.data.prom_type == 3 && gd.prom_type == 1) {
+ gd.prom_type = 0;
+ }
+ //如果全场阶梯优惠,商品做了秒杀
+ if (th.data.prom_type == 10 && gd.prom_type == 1) {
+ gd.prom_type = 0;
+ }
- //-------跳转pt商品-------
- go_to_nopay: function () {
- var th = this;
- url = "/pages/user/order_detail/order_detail?order_id=" + th.data.buy_order.order_id;
- getApp().goto(url);
- },
- //-------跳转pt teamshow-------
- go_to_team_show: function () {
+ if (!th.data.is_normal && ( gd.prom_type == 1 || gd.prom_type == 2 || gd.prom_type == 4 || gd.prom_type == 6)) {
+ //----获取活动购买数----
+ getApp().request.get("/api/weshop/ordergoods/getUserBuyGoodsNum", {
+ data: {
+ store_id: os.stoid,
+ user_id: user_id,
+ goods_id: gd.goods_id,
+ prom_type: gd.prom_type,
+ prom_id: gd.prom_id
+ },
+ //-----获取-----
+ success: function (tt) {
+ if (tt.data.code == 0) {
+ map.set(gd.goods_id, g_buy_num);
+ th.setData({
+ g_buy_num: map,
+ prom_buy_num: tt.data.data.goodsbuynum,
+ });
+ "function" == typeof func && func();
+ }
+ }
+ });
+ } else {
+ map.set(gd.goods_id, g_buy_num);
+ th.setData({
+ g_buy_num: map
+ });
+ "function" == typeof func && func();
+ }
+ }
+ }
+ });
+ }
+ },
- if (this.data.is_go_to_team_show) return false;
- this.data.is_go_to_team_show = 1;
- wx.showLoading();
+ //--拼单推荐的显示---
+ tj_Click: function (e) {
+ var ind = parseInt(e.target.dataset.ind);
+ this.setData({
+ is_show_gz: ind
+ });
+ },
- var th = this;
- var url = "/pages/team/team_success/team_success?ordersn=" + th.data.buy_order.order_sn;
- /*--
- wx.redirectTo({
- url:url,
- })--*/
- getApp().goto(url);
+ //--------拼团玩法显示详情--------
+ show_pt_xx: function (e) {
+ this.setData({
+ pd_xx: 1,
+ })
+ },
+ close_pt_xx: function () {
+ this.setData({
+ pd_xx: 0,
+ })
+ },
- },
+ //--点击弹起拼单--
+ openSpecModel_pt: function (e) {
- //---拼团倒计时---
- countDown2() {
- if (!this.data.is_timer) return false;
- var th = this;
- // 获取当前时间,同时得到活动结束时间数组
- var newTime = ut.gettimestamp();
- var List = th.data.teamgroup;
- for (var j = 0; j < List.length; j++) {
- // 对结束时间进行处理渲染到页面
- var endTime = List[j].kt_end_time;
- let obj = null;
- // 如果活动未结束,对时间进行处理
- if (endTime - newTime > 0) {
- let time = (endTime - newTime);
- // 获取天、时、分、秒
- let day = parseInt(time / (60 * 60 * 24));
- let hou = parseInt(time % (60 * 60 * 24) / 3600);
- let min = parseInt(time % (60 * 60 * 24) % 3600 / 60);
- let sec = parseInt(time % (60 * 60 * 24) % 3600 % 60);
- obj = {
- day: this.timeFormat(day),
- hou: this.timeFormat(hou),
- min: this.timeFormat(min),
- sec: this.timeFormat(sec)
- }
- } else {
- //活动已结束,全部设置为'00'
- obj = {
- day: '00',
- hou: '00',
- min: '00',
- sec: '00'
- }
- }
- var txt = "timer[" + j + "]";
- th.setData({
- [txt]: obj
- });
- }
- setTimeout(th.countDown2, 1000);
- },
- //跳转参加团
- go_cj_team: function (e) {
- var ind = e.currentTarget.dataset.ind;
- var item = this.data.teamgroup[ind];
- var id = item.id;
- var th = this;
- var goods_id=this.data.data.goods_id;
- getApp().request.get("/api/weshop/order/page", {
- data: {
- pt_prom_id: item.team_id,
- user_id: oo.user_id,
- store_id: os.stoid,
- pageSize: 1,
- page: 1
- },
- success: function (e) {
- if (e.data.code != 0) {
- getApp().my_warnning("读取订单失败", 0, th);
- return fasle;
- }
- //--跳转到已经购买的情况--
- if (e.data.data.pageData.length > 0) {
- var odr = e.data.data.pageData[0];
- //还未支付
- if (odr.pt_status == 0 && (odr.order_status == 1 || odr.order_status == 0)) {
- wx.showModal({
- title: "您已经购买了该商品待支付中",
- success: function (a) {
- if (a.confirm) {
- wx.navigateTo({
- url: "/pages/user/order_detail/order_detail?order_id=" + odr.order_id,
- });
- }
- }
- });
- } else if (odr.pt_status == 1 && odr.order_status == 1) {
- if (this.data.is_go_to_team_show) return false;
- this.data.is_go_to_team_show = 1;
- wx.showLoading();
- /*--
- wx.redirectTo({
- url: "/pages/team/team_success/team_success?ordersn=" + odr.order_sn,
- });--*/
+ this.setData({open_ind_store: 4, goodsInputNum: 1});//拼团直接给4
- getApp().goto("/pages/team/team_success/team_success?ordersn=" + odr.order_sn);
- } else {
+ //--先判断会员状态--
+ var user_info = getApp().globalData.userInfo;
+ if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
wx.navigateTo({
- url: `/pages/team/team_show/team_show?tg_id=${id}&goods_id=${goods_id}`,
- });
- }
- }
- //--跳转到参团--
- else {
- wx.navigateTo({
- url: `/pages/team/team_show/team_show?tg_id=${id}&goods_id=${goods_id}`,
- });
+ url: '/pages/togoin/togoin',
+ })
+ return false;
}
- }
- })
- },
-
- //跳到团更多
- go_t_more: function () {
- var team_id = this.data.prom_id;
- wx.navigateTo({
- url: "/pages/team/team_more/team_more?team_id=" + team_id,
- });
- },
+ var th = this;
+ var ind = parseInt(e.currentTarget.dataset.it);
- //--点赞功能--
- click_zan: function (e) {
- var com_id = e.currentTarget.dataset.com_id;
- var item_id = e.currentTarget.dataset.item_id;
- var app = getApp(),
- th = this;
+ //如果是拼单活动的普通购买
+ if (ind == 1) {
- if (app.globalData.userInfo == null || app.globalData.userInfo == undefined) {
- app.confirmBox("您还未登录");
- return false;
- }
+ if (!th.data.is_normal) {
+ th.data.g_buy_num = new Map();
+ }
- var iszan = th.data.comments[item_id].userZanNum;
- if (this.data.iszaning) return false;
- this.data.iszaning = 1;
+ //如果拼单的sku data是空的,就要先获取一下
+ if (th.data.sku_g_pt) {
+ th.get_sto(1);
+ th.setData({
+ is_normal: ind,
+ openSpecModal_pt: 1
+ });
+ } else {
+ th.get_sto(1);
+ th.get_sku(o.stoid, th.data.data, th.data.gid, 1, function () {
+ th.setData({
+ is_normal: ind,
+ openSpecModal_pt: 1
+ });
+ });
+ }
+ th.check_is_youhui(th.data.gid, 1);
+ } else {
+ if (th.data.is_normal) {
+ th.data.g_buy_num = new Map();
+ }
- app.request.post("/api/weshop/commentZan/save", {
- data: {
- store_id: o.stoid,
- user_id: app.globalData.user_id,
- goods_id: th.data.gid,
- comment_id: com_id
- },
- success: function (ee) {
+ //拼单商品从这里进,先判断有没有买过商品,
+ getApp().request.get("/api/weshop/order/page", {
+ data: {
+ pt_prom_id: th.data.prom_act.id,
+ user_id: oo.user_id,
+ store_id: os.stoid,
+ pageSize: 1,
+ page: 1
+ },
+ success: function (e) {
+ //--跳转到已经购买的情况--
+ if (e.data.data.pageData.length > 0) {
+ var odr = e.data.data.pageData[0];
+ //还未支付
+ if (odr.pt_status == 0 && (odr.order_status == 1 || odr.order_status == 0)) {
+ wx.showModal({
+ title: "您已经购买了该商品待支付中",
+ success: function (a) {
+ if (a.confirm) {
+ wx.navigateTo({
+ url: "/pages/user/order_detail/order_detail?order_id=" + odr.order_id,
+ });
+ }
+ }
+ });
+ } else if (odr.pt_status == 1 && odr.order_status == 1) {
+
+ if (this.data.is_go_to_team_show) return false;
+ this.data.is_go_to_team_show = 1;
+ wx.showLoading();
+
+ /*---
+ wx.redirectTo({
+ url: "/pages/team/team_success/team_success?ordersn=" + odr.order_sn,
+ });--*/
+ getApp().goto("/pages/team/team_success/team_success?ordersn=" + odr.order_sn);
- if (ee.data.code == "-1") {
- app.my_warnning("不能给自己点赞", 0, th);
- th.data.iszaning = 0;
- return;
+ } else {
+ th.setData({
+ is_normal: ind,
+ openSpecModal_pt: 1
+ });
+ }
+ }
+ else {
+ th.setData({
+ is_normal: ind,
+ openSpecModal_pt: 1
+ });
+ }
+ }
+ })
}
+ },
- if (ee.data.code == 0 && iszan != 1) {
- var num = th.data.comments[item_id].zan_num;
- num++;
- var text = "comments[" + item_id + "].zan_num";
- var text1 = "comments[" + item_id + "].userZanNum";
- var _errObj = {};
- _errObj[text] = num;
- _errObj[text1] = 1;
- th.setData(_errObj);
-
+ //-----------------拼单生成方法---------------------
+ addCart_pt: function () {
+ var th = this;
+ if (this.data.is_normal == 0) {
+ //看一下有没有起购数,如果有起购数,要计算起购数
+ var qnum = parseFloat(th.data.prom_act.minbuynum);
+ if (qnum > 0 && th.data.goodsInputNum < qnum) {
+ getApp().confirmBox("拼团商品至少要买" + qnum + "件!");
+ return false;
+ }
+ th.addcart_pt_func();
} else {
- var num = th.data.comments[item_id].zan_num;
- num--;
- var text = "comments[" + item_id + "].zan_num";
- var text1 = "comments[" + item_id + "].userZanNum";
- var _errObj = {};
- _errObj[text] = num;
- _errObj[text1] = 0;
- th.setData(_errObj);
+ th.addcart_pt_func();
}
+ },
- setTimeout(function () {
- th.data.iszaning = 0;
- }, 500)
+ addcart_pt_func: function () {
+ if (oo.user_id == null) {
+ s.my_warnning("还未登录!", 0, this);
+ return;
+ }
+ var e = this,
+ th = e,
+ o = this.data.sele_g;
+ if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th);
- }
- })
- },
+ //----------添加到购物车时,要判断限购数量,--------
+ e.get_buy_num(o, async function (ee) {
- /*----券的开关---*/
- switchCoupon: async function (event) {
- var coupon = event.currentTarget.dataset.coupon;
- var app = getApp();
- var url = "/api/weshop/prom/coupon/pageCouponList";
- var quan_list = this.data.quan_list;
- var th = this;
-
- //当开启,且列表为空的情况下要
- if (!quan_list && coupon == "1") {
- wx.showLoading();
- await app.request.promiseGet(url, {
- data: {
- store_id: os.stoid,
- type: 1,
- pageSize: 100,
- page: 1,
- user_id: app.globalData.user_id,
- is_share: 0
- }
- }).then(res => {
- wx.hideLoading();
- quan_list = res.data.data.pageData;
- })
-
- if (quan_list) {
- for (var ind in quan_list) {
- var ep = quan_list[ind];
- var start="";
- var end="";
- if( ep.starttype == 0 ){
- if(ep.use_start_time){
- start = ut.formatTime(ep.use_start_time, "yyyy-MM-dd");
- }else{
- start=ut.formatTime("","yyyy-MM-dd");
- }
- }else{
- if(ep.startdays){
- // start=ut.gettimestamp() + 3600*24*ep.startdays;
- start=ut.formatTime(ut.gettimestamp() + 3600*24*ep.days,"yyyy-MM-dd");
- }else{
- start=ut.formatTime("","yyyy-MM-dd");
- // start=ut.gettimestamp();
- }
- }
- if( ep.endtype == 0){
- end = ut.formatTime(ep.use_end_time, "yyyy-MM-dd");
- }else{
- if(ep.days){
- end=ut.formatTime(ut.gettimestamp() + 3600*24*ep.days,"yyyy-MM-dd");
- }else{
- end="";
- // end=ut.gettimestamp();
- }
- }
- start = start.replace("00:00:00", "");
- end = end.replace("00:00:00", "");
- quan_list[ind].start = start;
- quan_list[ind].end = end;
- }
- }
+ //---判断商品是否超出限购---
+ if (th.data.g_buy_num != null && th.data.sele_g.viplimited > 0) {
+ if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id) > th.data.sele_g.viplimited) {
+ wx.showModal({
+ title: '提示',
+ content: '超出商品限购'
+ });
- th.setData({
- coupon: coupon,
- quan_list: quan_list
- });
- } else {
- th.setData({
- coupon: coupon
- });
- }
- },
+ var num = th.data.prom_buy_limit - th.data.prom_buy_num;
+ if (num < 0) num = 0;
+ th.setData({goodsInputNum: num})
+ return false;
+ }
+ }
+ //---判断商品是否超出活动限购,拼团的普通购买不计算活动的限购---
+ if (th.data.prom_buy_num != -1 && th.data.prom_buy_limit > 0 && th.data.is_normal != 1) {
+ if (th.data.goodsInputNum + th.data.prom_buy_num > th.data.prom_buy_limit) {
+ wx.showModal({
+ title: '提示',
+ content: '超出商品活动限购'
+ });
- //--查看评价--
- look_pj: function () {
- this.tabComment();
- this.doScrollTop();
- },
+ var num = th.data.prom_buy_limit - th.data.prom_buy_num;
+ if (num < 0) num = 0;
+ th.setData({goodsInputNum: num})
+ return false;
+ }
+ }
- //-----领取券-----
- get_quan: function (e) {
- var cid = e.currentTarget.dataset.cid;
- var index = e.currentTarget.dataset.ind;
- var item = this.data.quan_list[index];
+ var redis_num = 0
+ //不是普通购买的时候
+ if (th.data.is_normal != 1) {
+ //-------判断活动是否抢光---------
+ await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/6/" + th.data.sele_g.prom_id, {
+ 1: 1
+ }).then(res => {
+ redis_num = res.data.data;
+ })
+ if (th.data.goodsInputNum > redis_num) {
+ wx.showModal({
+ title: '提示',
+ content: '超出商品活动库存'
+ });
- //--先判断会员状态--
- var user_info = getApp().globalData.userInfo;
- if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
- wx.navigateTo({
- url: '/pages/togoin/togoin',
- })
- return false;
- }
+ th.setData({goodsInputNum: redis_num})
+ return false;
+ }
+ }
- //如果券还在领取中,不能再点
- if (item.linging == 1) {
- getApp().my_warnning('领取中..', 0, this);
- return false;
- }
+ if (th.data.goodsInputNum <= 0) return s.my_warnning("商品数量不能为0", 0, th);
+ if (th.data.goodsInputNum > o.store_count) {
+ th.setData({goodsInputNum: o.store_count})
+ return s.my_warnning("超出商品库存", 0, th);
+ }
- //如果领取的次数到了
- if (item.everyone_num > 0 && item.lqnum >= item.everyone_num) {
- getApp().my_warnning('领取失败,您已领完该券', 0, this);
- return false;
- }
+ if (th.data.sto_sele_name == null || th.data.sto_sele_name == undefined)
+ this.setData({
+ sto_sele_name: ""
+ });
+ if (th.data.sto_sele_name == "") return s.my_warnning("请选择门店", 0, th);
+ //--------------此时操作的数据------------
+ var newd = {
+ goods_id: o.goods_id,
+ goods_num: th.data.goodsInputNum,
+ pick_id: th.data.sto_sele_id,
+ user_id: oo.user_id,
+ store_id: th.data.stoid,
+ goods_price: o.shop_price,
+ goods_name: o.goods_name,
+ goods_sn: o.goods_sn,
+ sku: o.sku,
+ };
- var lq_num = item.lqnum;
+ //---是不是从收藏夹出来的---
+ if (th.data.c_guide_id) {
+ newd['guide_id'] = th.data.c_guide_id;
+ newd['guide_type'] = 2;
- var pdata = {
- 'uid': oo.user_id,
- 'cid': cid,
- 'store_id': os.stoid,
- 'type': 5
- };
- //-- 导购ID --
- if (getApp().globalData.guide_id) {
- pdata.guide_id = getApp().globalData.guide_id;
- }
- var app = getApp(),
- th = this;
- app.request.post("/api/weshop/couponList/saveCouponList", {
- data: pdata,
- success: function (res) {
- if (res.data.code == 0) {
- app.my_warnning("领取成功", 1, th);
- lq_num++;
- var text = "quan_list[" + index + "].lqnum";
- var text2 = "quan_list[" + index + "].linging";
- var obj = {};
- obj[text] = lq_num;
- obj[text2] = 0;
- th.setData(obj);
- } else {
- app.confirmBox(res.data.msg);
- var text2 = "quan_list[" + index + "].linging";
- var obj = {};
- obj[text2] = 0;
- th.setData(obj);
- }
- }
- })
- },
-
-
- drawPoster(context, unit, img, vpath) {
- // 1.灰色背景
- context.setFillStyle('#f2f1f6');
- context.rect(0,0,554*unit,899*unit);
- context.fill();
- // 2.商城名称
- let shopName = this.data.sto_sele_name_1;
- // let shopNameLen = context.measureText(shopName);
- // let x_shopNameLen = (554 - shopNameLen.width)/2*unit;
- // console.log('11111111111111',shopNameLen,x_shopNameLen);
- context.setTextAlign('center');
- context.setFontSize(26*unit);
- context.setFillStyle('black');
- context.fillText(shopName, 277*unit, 60*unit);
- // // 3.推荐来源
- let fromText = `来自${getApp().globalData.userInfo.nickname}的推荐`;
- // let fromTextLen = context.measureText(fromText);
- // let x_fromText = (375 - fromTextLen.width)/2;
- // console.log('222222',fromTextLen,x_fromText);
- context.setTextAlign('center');
- context.setFontSize(22*unit);
- context.setFillStyle('#96959a');
- context.fillText(fromText, 277*unit, 105*unit);
- // 4.海报背景
- // context.beginPath();
- // context.setStrokeStyle('#f2f1f6');
- context.setFillStyle('white');
- context.fillRect(37*unit, 157*unit, 480*unit, 673*unit);
- // context.stroke();
- // context.fill();
- // 5.商品图片
- // 图片的x坐标
- let bg_x = 37*unit
- // 图片的y坐标
- let bg_y = 157*unit
- // 图片宽度
- let bg_w = 480*unit
- // 图片高度
- let bg_h = 474*unit
- // 图片圆角
- let bg_r = 4
- // 绘制海报背景图片圆角
- context.save()
- context.beginPath()
- context.arc(bg_x + bg_r, bg_y + bg_r, bg_r, Math.PI, Math.PI*1.5)
- context.arc(bg_x + bg_w - bg_r, bg_y + bg_r, bg_r, Math.PI * 1.5, Math.PI * 2)
- context.arc(bg_x + bg_w, bg_y + bg_h, bg_r, 0, Math.PI * 0.5)
- context.arc(bg_x, bg_y + bg_h, 0, Math.PI * 0.5, Math.PI)
- context.clip()
- context.drawImage(img, bg_x, bg_y, bg_w, bg_h);
- context.restore()
- // 6.强烈推荐
- // context.beginPath();
- let tj_path = "../../../images/share/q_tj.png";
- context.beginPath()
- context.drawImage(tj_path, 54*unit, 648*unit, 85*unit, 30*unit);
- context.setFontSize(16*unit)
- context.setLineJoin('round'); //交点设置成圆角
- context.setFillStyle("white")
- context.setTextAlign('left');
- context.fillText('强烈推荐', 64*unit, 672*unit);
- // 7.商品价格
- let price = '¥' + this.data.data.shop_price;
-
- if(this.data.card_field && this.data.data[this.data.card_field]){
- price = '¥' + this.data.data[this.data.card_field];
- }
-
-
- // if (th.data.prom_act)
- // pri0 = th.data.prom_act.price;
- context.setFontSize(32*unit);
- context.setFillStyle('#DE1117');
- context.fillText(price, 54*unit, 730*unit);
- // 8.商品标题
- context.setFontSize(20*unit);
- context.setFillStyle('#898989');
- this.draw_Text(context, this.data.data.goods_name,
- 54*unit, 770*unit, 240*unit, 240*unit, unit);
- // 9.小程序码
- context.drawImage(vpath, 375*unit, 660*unit, 120*unit, 120*unit);
- context.setFontSize(16*unit);
- context.setFillStyle('#777');
- context.fillText('长按识别二维码', 378*unit, 810*unit);
- // 10.竖线
- context.beginPath();
- context.setFillStyle('#eee');
- context.rect(354*unit, 670*unit, 1*unit, 130*unit);
- context.fill();
-
- },
-
-
-
- //--定义的保存图片方法,分享团---
- saveImageToPhotosAlbum: function () {
- //--先判断会员状态--
- var user_info = getApp().globalData.userInfo;
- if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
- //getApp().my_warnning("请先登录",0,this);
- wx.navigateTo({ url: '/pages/togoin/togoin', })
- return false;
- }
- if (this.data.share_hidden) {
- this.setData({ share_hidden: false,});
- };
-
- //类型 0普通商品 1秒杀商品 2商家和会员团 3阶梯团 4阶梯团
- var type = this.data.prom_type;
- if (type==2) type=-1;
- if (type == 6) type = 2;
-
-
-
- if (this.data.prom_act && this.data.prom_act.kttype == 3) type = 3;
-
- wx.showLoading({ title: '生成中...',})
- var that = this, th = that;
- //设置画板显示,才能开始绘图
- that.setData({
- canvasHidden: false
- })
+ } else {
+ if (getApp().globalData.guide_id) {
+ newd['guide_id'] = getApp().globalData.guide_id;
+ newd['guide_type'] = 0;
- var app = getApp();
- var unit = that.data.screenWidth / 750 * 1.35; //基础单位,
- var path2 = that.data.data.original_img;
- var scene = th.data.gid + "";
- scene+="."+th.data.sele_g.prom_type+"."+th.data.sele_g.prom_id;
- var user_id = getApp().globalData.user_id ? getApp().globalData.user_id : 0;
- if (user_id > 0) {
- scene += "_" + user_id;
- }
- //-- 如果不是会员分享过来的要分享给别人 --
- if (getApp().globalData.room_id && th.data.data.goods_id == getApp().globalData.room_goods_id && !getApp().globalData.room_user_share) {
- //固定房间是第3个字符
- if (!user_id) scene += "_0";
- scene += "_" + getApp().globalData.room_id;
- }
- ///二微码
- var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" +
- os.stoid + "?sceneValue=" + scene + "&pageValue=pages/goods/goodsInfo/goodsInfo";
-
- console.log(path3);
-
-
- // 读取文件成功则OK--
- wx.getImageInfo({
- src: path3,
- success: function (res) {
- // 回调写法
- th.get_head_temp(th.get_goods_temp, function () {
- var vpath = res.path;
- var context = wx.createCanvasContext('share');
- // 先画背景
- var pg_path = "../../../images/share/share_bg.png";
-
-
- //-- 如果有自定义海报的时候,判断背景的图片 --
- if (th.data.share_b_img) {
- pg_path = th.data.share_b_img;
- }
- // context.drawImage(pg_path, 0, 0, 554 * unit, 899 * unit);
-
-
- if(type == 0 ) { // 如果是普通商品,绘制新海报
- th.drawPoster(context, unit, th.data.share_goods_img, vpath);
- } else {
- context.drawImage(pg_path, 0, 0, 554 * unit, 899 * unit);
- };
-
- // th.drawPoster(context, unit, th.data.share_goods_img, vpath);
-
-
- //-- 是自定义海报的情况下 --
- if(type != 0) {
-
- if (th.data.poster && parseInt(th.data.poster.style) == 2) {
- //在线上分享人的情况下
- if (parseInt(th.data.poster.show_headpic)) {
- //获取坐标
- var x = parseFloat(th.data.poster.head_x) * 2;
- var y = parseFloat(th.data.poster.head_y) * 2;
- var x1 = (x + 90) * unit;
- var y1 = (y + 50) * unit;
- //--昵称---
- context.setFontSize(24 * unit)
- context.setFillStyle("black")
- context.fillText(app.globalData.userInfo.nickname, x1, y1);
- var width = 24 * app.globalData.userInfo.nickname.length * unit + 4 * unit;
- //强烈推荐 改许程
- var tj_path = "../../../images/share/q_tj.png";
- context.drawImage(tj_path, x1 + width, y1 - 22 * unit, 85 * unit, 30 * unit);
- context.setFontSize(16 * unit);
- context.setLineJoin('round'); //交点设置成圆角
- context.setFillStyle("white");
- context.fillText('强烈推荐', x1 + width + 8 * unit, y1 - 1 * unit);
-
- //context.setFillStyle("black")
- //context.setFontSize(24 * unit)
- //context.fillText(getApp().globalData.config.store_name, 40 * unit, 130 * unit);
- }
- } else {
- //--昵称---
- context.setFontSize(24 * unit);
- context.setFillStyle("black");
- context.fillText(app.globalData.userInfo.nickname, 152 * unit, 76 * unit);
- var width = 24 * app.globalData.userInfo.nickname.length * unit + 2 * unit;
- //强烈推荐 改许程
- var tj_path = "../../../images/share/q_tj.png";
- context.drawImage(tj_path, 152 * unit + width, 54 * unit, 85 * unit, 30 * unit);
- context.setFontSize(16 * unit);
- context.setLineJoin('round'); //交点设置成圆角
- context.setFillStyle("white");
- context.fillText('强烈推荐', 149 * unit + width + 15 * unit, 75 * unit);
- }
-
- };
-
-
-
- var share_title = th.data.data.goods_name;
- if (th.data.prom_type == 1 || th.data.prom_type == 2 || th.data.prom_type == 6 || th.data.prom_type == 4) {
- share_title = th.data.prom_act.share_title;
- if (!share_title) share_title = th.data.prom_act.title;
- if (th.data.prom_type == 4) share_title = th.data.prom_act.name;
- }
-
- //---产品名称---
- //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度
- if (type != 4 && type != 0) {
- context.setFillStyle("black");
- context.setFontSize(21.3 * unit)
- th.draw_Text(context, share_title,
- 38 * unit, 180 * unit, 200 * unit, 279 * unit, unit);
-
- //------产品的价格-------
- context.setFontSize(23 * unit)
- context.setFillStyle("red")
-
- var pri0 = th.data.data.shop_price;
- if(th.data.card_field && th.data.data[th.data.card_field]){
- pri0=th.data.data[th.data.card_field];
- }
-
- if (th.data.prom_act)
- pri0 = th.data.prom_price;
- pri0 = parseFloat(pri0).toFixed(2);
- var wd1 = th.data.screenWidth - ut.measureText(pri0, 31 * unit) - 25;
- context.fillText("¥", wd1 - 15, 185 * unit);
- context.setFontSize(31 * unit)
- context.fillText(pri0, wd1, 185 * unit);
-
- //---市场价划掉---
- context.setFillStyle("gray")
- context.setFontSize(22 * unit)
- pri0 = "¥" + th.data.data.market_price.toFixed(2);
- var wd2 = th.data.screenWidth - ut.measureText(pri0, 22 * unit) - 25;
- context.fillText(pri0, wd2, 213 * unit);
-
- context.setStrokeStyle('gray');
- context.setLineWidth(1 * unit);
- context.moveTo(wd2 - 5, 206 * unit);
- context.lineTo(wd2 + ut.measureText(pri0, 22 * unit) + 5, 206 * unit);
- context.stroke();
-
- } else if(type == 4 && type != 0) {
- context.setFillStyle("black");
- context.setFontSize(21.3 * unit)
- th.draw_Text(context, share_title,
- 38 * unit, 170 * unit, 20 * unit, 300 * unit, unit);
- //------ 产品的价格 -----
- var pri0 = th.data.prom_act.addmoney;
- var integral = th.data.prom_act.integral;
- var text = "";
- if (integral) { text = integral + "积分"; }
- if (pri0 && integral) { text += "+"; }
- if (pri0) { text += "¥" + pri0; }
-
- if (!pri0 && !integral) { text = "0积分"; }
- context.setFillStyle("red");
- context.fillText(text, 38 * unit, 235 * unit);
-
- }
-
- //---中间大图---
- if(type != 0) {
- context.drawImage(th.data.share_goods_img, 70 * unit, 250 * unit, 408 * unit, 408 * unit);
- };
-
-
-
- //-------大图后面就不一样了-----------
- switch (type) {
- case 0: break;//普通商品的展示
- case 4:
- //中间的几个字
- if (th.data.poster && parseInt(th.data.poster.style) == 2) {
- if (parseInt(th.data.poster.show_quality)) {
- var g_path = "../../../images/share/s_gou.png";
- context.drawImage(g_path, 56 * unit, 670 * unit, 22 * unit, 22 * unit);
- context.setFillStyle("red")
- context.setFontSize(18 * unit)
- context.fillText("正品保证", 84 * unit, 690 * unit);
-
- context.drawImage(g_path, 218 * unit, 670 * unit, 22 * unit, 22 * unit);
- context.setFillStyle("red")
- context.setFontSize(18 * unit)
- context.fillText("纯实体店", 246 * unit, 690 * unit);
-
- context.drawImage(g_path, 388 * unit, 670 * unit, 22 * unit, 22 * unit);
- context.setFillStyle("red")
- context.setFontSize(18 * unit)
- context.fillText("官方验证", 420 * unit, 690 * unit);
}
+ }
- } else {
- var g_path = "../../../images/share/s_gou.png";
- context.drawImage(g_path, 56 * unit, 670 * unit, 22 * unit, 22 * unit);
- context.setFillStyle("red")
- context.setFontSize(18 * unit)
- context.fillText("正品保证", 84 * unit, 690 * unit);
-
- context.drawImage(g_path, 218 * unit, 670 * unit, 22 * unit, 22 * unit);
- context.setFillStyle("red")
- context.setFontSize(18 * unit)
- context.fillText("纯实体店", 246 * unit, 690 * unit);
-
- context.drawImage(g_path, 388 * unit, 670 * unit, 22 * unit, 22 * unit);
- context.setFillStyle("red")
- context.setFontSize(18 * unit)
- context.fillText("官方验证", 420 * unit, 690 * unit);
- }
-
-
- //---画线---
- context.setLineWidth(1 * unit)
- context.moveTo(32 * unit, 710 * unit)
- context.lineTo(520 * unit, 710 * unit)
- context.stroke();
-
- //---文字---
- context.setFillStyle("black")
- context.setFontSize(22 * unit)
-
- if (type == 0 || type == -1) {
- // 原来start --->
- context.setFontSize(24 * unit)
- context.fillText(th.data.sto_sele_name_1, 40 * unit, 766 * unit);
-
- context.setFontSize(22 * unit)
- context.fillText("优惠乐翻天,精彩就在你身边", 40 * unit, 806 * unit);
- context.fillText("长按识别二维码,立即开始抢购", 40 * unit, 846 * unit);
-
- } else {
- context.setFontSize(24 * unit)
- context.fillText(th.data.sto_sele_name_1, 40 * unit, 766 * unit);
- context.setFontSize(22 * unit)
- context.fillText("长按识别二维码", 40 * unit, 806 * unit);
- context.fillText("立即开始兑换", 40 * unit, 846 * unit);
-
- }
-
- //---二维吗图---
- //-- 自定义海报 --
- if (th.data.poster) {
- var erm_x = parseFloat(th.data.poster.ewm_x) * 2;
- var erm_y = parseFloat(th.data.poster.ewm_y) * 2;
- context.drawImage(vpath, erm_x * unit, erm_y * unit, 136 * unit, 136 * unit);
- } else {
- //---二维吗图---
- context.drawImage(vpath, 390 * unit, 726 * unit, 136 * unit, 136 * unit);
- };
-
- break;
- case 1: //秒杀商品的展示
- //---画线---
- context.setLineWidth(1 * unit)
- context.moveTo(32 * unit, 670 * unit)
- context.lineTo(520 * unit, 670 * unit)
- context.stroke();
-
- //画秒杀的图片
- var miaos_path = '../../../images/share/miao_share.png';
- context.drawImage(miaos_path, 43 * unit, 700 * unit, 222 * unit, 40 * unit);
-
- context.setFillStyle("black")
- context.setFontSize(24 * unit)
- context.fillText(th.data.sto_sele_name_1, 40 * unit, 786 * unit);
- //---文字---
- context.setFontSize(22 * unit)
- context.setFillStyle("black")
- context.fillText("特惠好物,限时秒杀", 40 * unit, 826 * unit);
- context.fillText("长按识别二维码,立即开始抢购", 40 * unit, 866 * unit);
-
-
- //---二维吗图---
- //-- 自定义海报 --
- if (th.data.poster) {
- var erm_x = parseFloat(th.data.poster.ewm_x) * 2;
- var erm_y = parseFloat(th.data.poster.ewm_y) * 2;
- context.drawImage(vpath, erm_x * unit, erm_y * unit, 135 * unit, 135 * unit);
- } else {
- //---二维吗图---
- context.drawImage(vpath, 390 * unit, 726 * unit, 135 * unit, 135 * unit);
- }
- break;
-
- case 2: //会员团和商家团的展示
- //---画线---
- context.setLineWidth(1 * unit)
- context.moveTo(32 * unit, 670 * unit)
- context.lineTo(520 * unit, 670 * unit)
- context.stroke();
- //---文字---
- context.setFillStyle("black")
- context.setFontSize(24 * unit)
- context.fillText(th.data.sto_sele_name_1, 40 * unit, 720 * unit);
-
- //绘制成团图片
- var ct_img = "../../../images/share/ct_num.png";
- context.drawImage(ct_img, 40 * unit, 740 * unit, 120 * unit, 30 * unit);
- var ct_num = th.data.prom_act.ct_num;
- context.setFontSize(14 * unit)
- context.font = 'normal';
- context.setFillStyle("red")
- if (ct_num < 10) {
- context.fillText(ct_num + "人拼团", 92 * unit, 760 * unit);
- } else {
- context.fillText(ct_num + "人拼团", 86 * unit, 760 * unit);
- }
- context.setFontSize(22 * unit)
- context.fillText("已拼" + th.data.prom_act.buy_num + "份", 166 * unit, 763 * unit);
-
- context.setFillStyle("gray")
- context.fillText("快来和我一起拼团吧!", 40 * unit, 806 * unit);
- context.setFillStyle("black")
- context.font = 'normal bold 18px sans-serif';
- context.setFontSize(21.3 * unit)
- context.fillText("长按识别二维码,立即参团", 40 * unit, 836 * unit);
-
-
- //---二维吗图---
- //-- 自定义海报 --
- if (th.data.poster) {
- var erm_x = parseFloat(th.data.poster.ewm_x) * 2;
- var erm_y = parseFloat(th.data.poster.ewm_y) * 2;
- context.drawImage(vpath, erm_x * unit, erm_y * unit, 136 * unit, 136 * unit);
- } else {
- //---二维吗图---
- context.drawImage(vpath, 390 * unit, 726 * unit, 136 * unit, 136 * unit);
- }
- break
- case 3: //阶梯团的展示
- //---画线---
- context.setLineWidth(1 * unit)
- context.moveTo(32 * unit, 670 * unit)
- context.lineTo(520 * unit, 670 * unit)
- context.stroke();
- //---文字---
- context.setFillStyle("black")
- context.setFontSize(24 * unit)
- context.fillText(th.data.sto_sele_name_1, 40 * unit, 720 * unit);
-
- //---绘制中间阶梯的价格---
- var list = th.data.prom_act.ct_rylist;
- for (var i = 0; i < list.length; i++) {
- var item = list[i];
- var wi = i * 90 * unit;
- context.font = 'normal';
- context.setFontSize(16 * unit)
- context.setFillStyle("red")
- context.fillText("¥", 40 * unit + wi, 756 * unit);
- context.setFontSize(22 * unit)
- var pri = parseFloat(item.price).toFixed(2);
- context.fillText(pri, 56 * unit + wi, 756 * unit);
- context.setFillStyle("gray")
- context.fillText("满" + item.rynum + "人", 40 * unit + wi, 786 * unit);
- }
- //----------------下面部分----------------
- // context.setFillStyle("gray")
- // context.fillText("快来和我一起拼团吧!", 40 * unit, 830 * unit);
- // context.setFillStyle("black")
- // context.font = 'normal bold 18px sans-serif';
- // context.setFontSize(22 * unit)
- // context.fillText("长按识别二维码,立即参团", 40 * unit, 860 * unit);
- //context.setFillStyle("gray")
- context.setFillStyle("black")
- context.fillText("快来和我一起拼团吧!", 40 * unit, 820 * unit);
- //context.font = 'normal bold 18px sans-serif';
- context.setFontSize(21 * unit)
- context.fillText("长按识别二维码,立即参团", 40 * unit, 850 * unit);
-
-
- //-- 自定义海报 --
- if (th.data.poster) {
- var erm_x = parseFloat(th.data.poster.ewm_x) * 2;
- var erm_y = parseFloat(th.data.poster.ewm_y) * 2;
- context.drawImage(vpath, erm_x * unit, erm_y * unit, 136 * unit, 136 * unit);
- } else {
- //---二维吗图---
- context.drawImage(vpath, 390 * unit, 726 * unit, 136 * unit, 136 * unit);
- }
- break
-
-
- case -1: //秒杀商品的展示
- //---画线---
- context.setLineWidth(1 * unit)
- context.moveTo(32 * unit, 670 * unit)
- context.lineTo(520 * unit, 670 * unit)
- context.stroke();
-
-
- context.setFillStyle("black")
- context.setFontSize(24 * unit)
- context.fillText(th.data.sto_sele_name_1, 40 * unit, 744 * unit);
- //---文字---
- context.setFontSize(22 * unit)
- context.setFillStyle("black")
- context.fillText("长按识别二维码", 40 * unit, 800 * unit);
- context.fillText("立即开始抢购", 40 * unit, 846 * unit);
-
-
- //---二维吗图---
- //-- 自定义海报 --
- if (th.data.poster) {
- var erm_x = parseFloat(th.data.poster.ewm_x) * 2;
- var erm_y = parseFloat(th.data.poster.ewm_y) * 2;
- context.drawImage(vpath, erm_x * unit, erm_y * unit, 135 * unit, 135 * unit);
- } else {
- //---二维吗图---
- context.drawImage(vpath, 390 * unit, 726 * unit, 135 * unit, 135 * unit);
- }
- break;
-
-
- }
-
-
- //--- 如果是自定义海报的时候 ---
- if(type != 0) {
-
- if (th.data.poster && parseInt(th.data.poster.style) == 2) {
-
- //如果显示会员信息的话
- if (parseInt(th.data.poster.show_headpic)) {
- //获取坐标
- var x = parseFloat(th.data.poster.head_x) * 2;
- var y = parseFloat(th.data.poster.head_y) * 2;
- //---绘制圆形要放在最后----
- context.save();
- context.beginPath();
- var h_x = x * unit;
- var h_y = y * unit;
- var h_r = 40 * unit;
- var cx = h_x + h_r;
- var cy = h_y + h_r;
- context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
- context.closePath();
- context.fill();
- context.clip();
- context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
- context.restore();
- }
-
- } else {
- //---绘制圆形要放在最后----
- context.save();
- context.beginPath();
- var h_x = 60 * unit;
- var h_y = 24 * unit;
- var h_r = 40 * unit;
- var cx = h_x + h_r;
- var cy = h_y + h_r;
- context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
- context.closePath();
- context.fill();
- context.clip();
- context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
- context.restore();
- }
-
- };
-
-
-
- //把画板内容绘制成图片,并回调 画板图片路径
- context.draw(false, function () {
- setTimeout(function () {
- wx.canvasToTempFilePath({
- x: 0,
- y: 0,
- width: 750,
- height: 1217,
- destWidth: 1.2 * 750 * 750 / that.data.screenWidth,
- destHeight: 1.2 * 1217 * 750 / that.data.screenWidth,
- canvasId: 'share',
- success: function (res) {
-
- that.setData({
- shareImgPath: res.tempFilePath,
- canvasHidden: true
- })
+ //让商品带上房间号
+ if (th.data.sys_switch.is_skuroom_id == 1) {
+ if (th.data.data.goods_id == getApp().globalData.room_goods_id) {
+ newd.room_id = getApp().globalData.room_id;
+ }
+ } else {
+ if (newd.goods_id == getApp().globalData.room_goods_id) {
+ newd.room_id = getApp().globalData.room_id;
+ }
+ }
- if (!res.tempFilePath) {
- wx.showModal({
- title: '提示',
- content: '图片绘制中,请稍后重试',
- showCancel: false
- })
- return false;
- }
-
- // wx.previewImage({
- // //将图片预览出来
- // urls: [that.data.shareImgPath]
- // });
- that.setData({
- showPoster: true,
- });
- wx.hideLoading();
+ //---如果商品不是积分购和拼团,要判断一个是否要进行等级价的判断------
+
+ if (th.data.is_normal == 1) {
+ var conf = th.data.bconfig;
+ if (conf.switch_list) {
+ var s_list = JSON.parse(conf.switch_list);
+ //如果后台有开启等级价的功能
+ if (parseInt(s_list.rank_switch) == 2) {
+ var card_price = o[getApp().globalData.userInfo['card_field']];
+ //如果会员有等级价
+ if (getApp().globalData.userInfo['card_field'] != undefined && getApp().globalData.userInfo['card_field'] != null
+ && getApp().globalData.userInfo['card_field'] != "" && card_price > 0) {
+ newd.goods_price = card_price;
+ }
+ }
}
- })
- }, 500)
+ }
- });
- });
- },
- fail: function (res) {
- console.log(res);
- wx.hideLoading();
- }
- });
- },
+ //-----如果是秒杀,团购,积分购,拼团,且不是普通购买-----
+ if (th.data.prom_type == 6 && th.data.is_normal != 1) {
+ newd.goods_price = th.data.prom_price;
+ newd.prom_type = th.data.prom_type;
+ newd.prom_id = th.data.prom_id;
+ newd.kt_type = th.data.prom_act.kttype; //开团类型
+ newd.is_pt_tz = 0;
+ //th.data.sto_sele_distr=1; //直接用自提的方式提交
+ if (newd.kt_type > 1) {
+ newd.is_pt_tz = 1; //开团类型
+ }
+ if (newd.kt_type == 3) {
+ th.data.sto_sele_distr = 1;
+ }
+ } else if (th.data.prom_type == 3) {
+ newd.prom_type = 0;
+ newd.prom_id = 0;
+ }
- //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度
- draw_Text: function (ctx, str, leftWidth, initHeight, titleHeight, canvasWidth, unit) {
- var lineWidth = 0;
- var lastSubStrIndex = 0; //每次开始截取的字符串的索引
- var han = 0;
- for (let i = 0; i < str.length; i++) {
- if (han == 2) return;
- //lineWidth += ctx.measureText(str[i]).width;
- lineWidth += ut.measureText(str[i], 21.3 * unit);
- if (lineWidth > canvasWidth) {
- han++;
-
- if (han == 2)
- ctx.fillText(str.substring(lastSubStrIndex, i) + '...', leftWidth, initHeight); //绘制截取部分
- else
- ctx.fillText(str.substring(lastSubStrIndex, i), leftWidth, initHeight);
-
- initHeight += 22; //22为字体的高度
- lineWidth = 0;
- lastSubStrIndex = i;
- titleHeight += 20;
- }
- if (i == str.length - 1) { //绘制剩余部分
- ctx.fillText(str.substring(lastSubStrIndex, i + 1), leftWidth, initHeight);
- }
- }
- },
+ newd['pick_name'] = th.data.sto_sele_name;
+ newd['pick_dis'] = th.data.sto_sele_distr;
+ newd['is_normal'] = th.data.is_normal;
+
+ if (newd['is_normal']) {
+ newd['is_pd_normal'] = 1;
+ //判断一下有没有全局优惠活动
+ th.check_nor_promgood(newd.goods_id, function (e) {
+ if (e && e.act_id) {
+ newd['prom_type'] = 3;
+ newd['prom_id'] = e.act_id;
+ }
+ th.buyNow(newd)
+ })
+ }
+ else th.buyNow_pt(newd);
+ })
+ },
- // ----视频图片----
- // 图片计数器
- swiperChange: function (e) {
- var that = this;
- if (e.detail.current > 0) {
- that.setData({
- hiddenn: 1,
- videopicture: 1,
- })
- } else {
- that.setData({
- hiddenn: 0,
- videopicture: 0,
- })
- }
- if (e.detail.source == 'touch') {
- that.setData({
- current: e.detail.current
- })
- }
- },
+ //----------立即购买_pt-----------
+ buyNow_pt: function (e) {
+ s.set_b_now(e);
+ wx.navigateTo({
+ url: "/pages/cart/cart2_pt/cart2_pt?is_bnow=1&goods_id=" + e.goods_id,
+ });
+ },
- /*---视频相关--*/
- videopicture: function (e) {
- var vipi = e.currentTarget.dataset.vipi;
- this.setData({
- videopicture: vipi,
- swiperCurrent: vipi,
- noon: 0,
- current: 1
- });
- },
+ //-------跳转pt商品-------
+ go_to_nopay: function () {
+ var th = this;
+ url = "/pages/user/order_detail/order_detail?order_id=" + th.data.buy_order.order_id;
+ getApp().goto(url);
- videoPlay: function (e) {
- var _index = e.currentTarget.id
- this.setData({
- _index: _index,
- noon: 1
- })
+ },
+ //-------跳转pt teamshow-------
+ go_to_team_show: function () {
+
+ if (this.data.is_go_to_team_show) return false;
+ this.data.is_go_to_team_show = 1;
+ wx.showLoading();
+
+ var th = this;
+ var url = "/pages/team/team_success/team_success?ordersn=" + th.data.buy_order.order_sn;
+ /*--
+ wx.redirectTo({
+ url:url,
+ })--*/
+ getApp().goto(url);
- setTimeout(function () {
- //将点击视频进行播放
- var videoContext = wx.createVideoContext(_index)
- videoContext.play();
- }, 500)
- },
+ },
+ //---拼团倒计时---
+ countDown2() {
+ if (!this.data.is_timer) return false;
+ var th = this;
+ // 获取当前时间,同时得到活动结束时间数组
+ var newTime = ut.gettimestamp();
+ var List = th.data.teamgroup;
+ for (var j = 0; j < List.length; j++) {
+ // 对结束时间进行处理渲染到页面
+ var endTime = List[j].kt_end_time;
+ let obj = null;
+ // 如果活动未结束,对时间进行处理
+ if (endTime - newTime > 0) {
+ let time = (endTime - newTime);
+ // 获取天、时、分、秒
+ let day = parseInt(time / (60 * 60 * 24));
+ let hou = parseInt(time % (60 * 60 * 24) / 3600);
+ let min = parseInt(time % (60 * 60 * 24) % 3600 / 60);
+ let sec = parseInt(time % (60 * 60 * 24) % 3600 % 60);
+ obj = {
+ day: this.timeFormat(day),
+ hou: this.timeFormat(hou),
+ min: this.timeFormat(min),
+ sec: this.timeFormat(sec)
+ }
+ } else {
+ //活动已结束,全部设置为'00'
+ obj = {
+ day: '00',
+ hou: '00',
+ min: '00',
+ sec: '00'
+ }
+ }
+ var txt = "timer[" + j + "]";
+ th.setData({
+ [txt]: obj
+ });
+ }
+ setTimeout(th.countDown2, 1000);
+ },
+ //跳转参加团
+ go_cj_team: function (e) {
+ var ind = e.currentTarget.dataset.ind;
+ var item = this.data.teamgroup[ind];
+ var id = item.id;
+ var th = this;
+
+ getApp().request.get("/api/weshop/order/page", {
+ data: {
+ pt_prom_id: item.team_id,
+ user_id: oo.user_id,
+ store_id: os.stoid,
+ pageSize: 1,
+ page: 1
+ },
+ success: function (e) {
+ if (e.data.code != 0) {
+ getApp().my_warnning("读取订单失败", 0, th);
+ return fasle;
+ }
+ //--跳转到已经购买的情况--
+ if (e.data.data.pageData.length > 0) {
+ var odr = e.data.data.pageData[0];
+ //还未支付
+ if (odr.pt_status == 0 && (odr.order_status == 1 || odr.order_status == 0)) {
+ wx.showModal({
+ title: "您已经购买了该商品待支付中",
+ success: function (a) {
+ if (a.confirm) {
+ wx.navigateTo({
+ url: "/pages/user/order_detail/order_detail?order_id=" + odr.order_id,
+ });
+ }
+ }
+ });
+ } else if (odr.pt_status == 1 && odr.order_status == 1) {
+ if (this.data.is_go_to_team_show) return false;
+ this.data.is_go_to_team_show = 1;
+ wx.showLoading();
+ /*--
+ wx.redirectTo({
+ url: "/pages/team/team_success/team_success?ordersn=" + odr.order_sn,
+ });--*/
- //--获取头像的本地缓存,回调写法--
- get_head_temp: function (tt, func) {
- var ee = this;
- if (ee.data.share_head) {
- tt(func);
- return false;
- }
- //---获取分享图片的本地地址,头像和商品图片----
- var path2 = getApp().globalData.userInfo.head_pic;
- if (path2 == "") {
- ee.data.share_head = "../../../images/share/hui_hear_pic.png";
- tt(func);
- } else {
- path2 = path2.replace("http://thirdwx.qlogo.cn", "https://wx.qlogo.cn");
- path2 = path2.replace("https://thirdwx.qlogo.cn", "https://wx.qlogo.cn");
- wx.getImageInfo({
- src: path2,
- success: function (res) {
- //res.path是网络图片的本地地址
- ee.data.share_head = res.path;
- tt(func);
- },
- fail: function (res) {
- ee.data.share_head = "../../../images/share/hui_hear_pic.png"; //分享的图片不能用网络的
- tt(func);
+ getApp().goto("/pages/team/team_success/team_success?ordersn=" + odr.order_sn);
+
+ } else {
+ wx.navigateTo({
+ url: "/pages/team/team_show/team_show?tg_id=" + id,
+ });
+ }
+ }
+ //--跳转到参团--
+ else {
+ wx.navigateTo({
+ url: "/pages/team/team_show/team_show?tg_id=" + id,
+ });
+ }
+ }
+ })
+
+ },
+
+ //跳到团更多
+ go_t_more: function () {
+ var team_id = this.data.prom_id;
+ wx.navigateTo({
+ url: "/pages/team/team_more/team_more?team_id=" + team_id,
+ });
+ },
+
+ //--点赞功能--
+ click_zan: function (e) {
+ var com_id = e.currentTarget.dataset.com_id;
+ var item_id = e.currentTarget.dataset.item_id;
+ var app = getApp(),
+ th = this;
+
+ if (app.globalData.userInfo == null || app.globalData.userInfo == undefined) {
+ app.confirmBox("您还未登录");
+ return false;
}
- });
- }
- },
- //--获取商品图片的本地缓存,回调写法--
- get_goods_temp: function (tt) {
- var ee = this;
- if (ee.data.share_goods_img) {
- tt();
- return false;
- }
- var img_url = ee.data.data.original_img;
- if ((this.data.prom_type == 1 || this.data.prom_type == 6) && this.data.prom_act.share_imgurl) {
- img_url = this.data.iurl + this.data.prom_act.share_imgurl;
- }
+ var iszan = th.data.comments[item_id].userZanNum;
+ if (this.data.iszaning) return false;
+ this.data.iszaning = 1;
- //获取商品是分享图信息
- wx.getImageInfo({
- src: img_url,
- success: function (res) {
- //res.path是网络图片的本地地址
- ee.data.share_goods_img = res.path;
- tt();
- },
- fail: function (res) {
- ee.data.share_goods_img = "../../../images/share/default_g_img.gif"; //分享的图片不能用网络的
- tt();
- }
- });
- },
- //--外侧评价的点击效果---
- clik_evaluate: function (e) {
- var val = e.currentTarget.dataset.val;
- this.setData({
- activeCategoryId: 2,
- activeCategoryId3: val,
- comments: null
- });
- this.requestComments_new();
- },
+ app.request.post("/api/weshop/commentZan/save", {
+ data: {
+ store_id: o.stoid,
+ user_id: app.globalData.user_id,
+ goods_id: th.data.gid,
+ comment_id: com_id
+ },
+ success: function (ee) {
- //--跳转到商品详情页面--
- go_goods: function (e) {
- var gid = e.currentTarget.dataset.gid;
- var url = "/pages/goods/goodsInfo/goodsInfo?goods_id=" + gid;
- getApp().goto(url);
- },
+ if (ee.data.code == "-1") {
+ app.my_warnning("不能给自己点赞", 0, th);
+ th.data.iszaning = 0;
+ return;
+ }
- //--跳转到支付尾款界面--
- go_pay_wk: function () {
- var url = "/pages/cart/cart_wk/cart_wk?order_id=" + this.data.wk_order_id;
- getApp().goto(url);
- },
+ if (ee.data.code == 0 && iszan != 1) {
+ var num = th.data.comments[item_id].zan_num;
+ num++;
+ var text = "comments[" + item_id + "].zan_num";
+ var text1 = "comments[" + item_id + "].userZanNum";
+ var _errObj = {};
+ _errObj[text] = num;
+ _errObj[text1] = 1;
+ th.setData(_errObj);
- pop_err_img: function (e) {
- var txt = e.currentTarget.dataset.errorimg;
- var ob = {};
- ob[txt] = this.data.iurl + "/miniapp/images/default_g_img.gif";
- this.setData(ob);
- },
+ } else {
+ var num = th.data.comments[item_id].zan_num;
+ num--;
+ var text = "comments[" + item_id + "].zan_num";
+ var text1 = "comments[" + item_id + "].userZanNum";
+ var _errObj = {};
+ _errObj[text] = num;
+ _errObj[text1] = 0;
+ th.setData(_errObj);
+ }
- //--调用更新阶梯团的接口--
- update_jiti: function (id) {
- var th = this;
- //--更新阶梯团--
- getApp().request.put("/api/weshop/teamgroup/updateTeamOrder/" + os.stoid + "/" + id, {
- success: function (ee) {
- //--等于0是要去支付尾款,接口调用失败,就要去查看参团详情--
- if (ee.data.code == 0) {
- th.setData({
- user_order_pt_state: 3,
- });
- } else if (ee.data.code == -1) {
- th.setData({
- user_order_pt_state: 2,
- });
- }
- }
- })
- },
- // 选择门店
- choice_store: function (ee) {
- var th = this;
- var ind = ee.currentTarget.dataset.ind;
- var bconfig = th.data.bconfig;
-
- if (!th.data.only_pk && !th.data.def_pickpu_list) {
- getApp().confirmBox("门店库存不足", null, 25000, !1);
- return false;
- }
+ setTimeout(function () {
+ th.data.iszaning = 0;
+ }, 500)
- if (th.data.only_pk && !th.data.only_pk.length) {
- getApp().confirmBox("门店库存不足", null, 25000, !1);
- return false;
- }
- if (th.data.def_pickpu_list && !th.data.def_pickpu_list.length) {
- getApp().confirmBox("门店库存不足", null, 25000, !1);
- return false;
- }
+ }
+ })
+ },
+ /*----券的开关---*/
+ switchCoupon: async function (event) {
+ var coupon = event.currentTarget.dataset.coupon;
+ var app = getApp();
+ var url = "/api/weshop/prom/coupon/pageCouponList";
+ var quan_list = this.data.quan_list;
+ var th = this;
+
+ //当开启,且列表为空的情况下要
+ if (!quan_list && coupon == "1") {
+ wx.showLoading();
+ await app.request.promiseGet(url, {
+ data: {
+ store_id: os.stoid,
+ type: 1,
+ pageSize: 100,
+ page: 1,
+ user_id: app.globalData.user_id,
+ is_share: 0
+ }
+ }).then(res => {
+ wx.hideLoading();
+ quan_list = res.data.data.pageData;
+ })
- if (bconfig && bconfig.is_sort_storage) {
- wx.getLocation({
- type: 'gcj02',
- success: function (res) {
+ if (quan_list) {
+ for (var ind in quan_list) {
+ var ep = quan_list[ind];
+ var start = ut.formatTime(ep.use_start_time, "yyyy-MM-dd");
+ var end = ut.formatTime(ep.use_end_time, "yyyy-MM-dd");
+ start = start.replace("00:00:00", "");
+ end = end.replace("00:00:00", "");
+ quan_list[ind].start = start;
+ quan_list[ind].end = end;
+ }
+ }
- th.data.lat = res.latitude;
- th.data.lon = res.longitude;
- th.data.is_get_local_ok = 1;
- th.setData({
- is_gps: 1
- });
- //th.onShow();
- th.get_sto(th.data.is_normal);
- },
- fail: function (res) {
- //th.onShow();
- th.data.is_get_local_ok = 1;
- th.get_sto(th.data.is_normal);
- if (res.errCode == 2) {
th.setData({
- is_gps: 0
+ coupon: coupon,
+ quan_list: quan_list
});
- if (th.data.is_gps == 0) {
- getApp().confirmBox("请开启GPS定位", null, 25000, !1);
- }
- } else {
+ } else {
th.setData({
- is_gps: "3"
+ coupon: coupon
});
- }
+ }
+ },
+
+ //--查看评价--
+ look_pj: function () {
+ this.tabComment();
+ this.doScrollTop();
+ },
+
+ //-----领取券-----
+ get_quan: function (e) {
+ var cid = e.currentTarget.dataset.cid;
+ var index = e.currentTarget.dataset.ind;
+ var item = this.data.quan_list[index];
+
+ //--先判断会员状态--
+ var user_info = getApp().globalData.userInfo;
+ if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
+ wx.navigateTo({
+ url: '/pages/togoin/togoin',
+ })
+ return false;
}
- })
- } else {
- th.data.is_get_local_ok = 1;
- th.get_sto(th.data.is_normal);
- }
- if (ind != undefined && ind != null) {
- this.setData({
- open_ind_store: ind,
- store: 1,
- openSpecModal: !1,
- openSpecModal_pt: !1
- })
- } else {
- this.setData({
- store: 1,
- openSpecModal: !1,
- openSpecModal_pt: !1
- })
- }
- },
- //关闭选择门店
- close_popup: function (e) {
- var th = this;
- this.setData({
- store: 0,
- choice_sort_store: 0,
- sort_store: 0,
- fir_pick_index: 0,
- sec_pick_index: 0
- })
- var openindstore = this.data.open_ind_store;
- if (openindstore == 1) {
- th.setData({
- openSpecModal: !0,
- openSpecModal_ind: openindstore,
- });
- } else if (openindstore == 2) {
- th.setData({
- openSpecModal: !0,
- openSpecModal_ind: openindstore,
- });
- }
- else if (openindstore == 4) { //4就是拼团
- th.setData({
- openSpecModal_pt: 1, //打开拼团购买界面
- store: 0, //关闭门店
- choice_sort_store: 0, //关闭门店2级
- sort_store: 0, //关闭门店2级
- });
- }
- else {
- th.setData({
- store: 0,
- choice_sort_store: 0,
- sort_store: 0
- })
- }
+ //如果券还在领取中,不能再点
+ if (item.linging == 1) {
+ getApp().my_warnning('领取中..', 0, this);
+ return false;
+ }
+ //如果领取的次数到了
+ if (item.everyone_num > 0 && item.lqnum >= item.everyone_num) {
+ getApp().my_warnning('领取失败,您已领完该券', 0, this);
+ return false;
+ }
- },
+ var lq_num = item.lqnum;
- //选择更多门店
- more_store: function () {
- this.setData({
- sort_store: 1
- });
- },
- sort_store: function () {
+ var pdata = {
+ 'uid': oo.user_id,
+ 'cid': cid,
+ 'store_id': os.stoid,
+ 'type': 5
+ };
- },
- // 返回按钮
- returns: function () {
- this.setData({
- sort_store: 0,
- choice_sort_store: 0
- });
- },
- //---选择分类门店---
- choice_sort_store: function (e) {
- var index = e.currentTarget.dataset.index;
- var region_name = e.currentTarget.dataset.region;
- var item = this.data.all_sto[index];
- this.setData({
- region_name: region_name,
- sort_store: 0,
- choice_sort_store: 1,
- sec_sto: item,
- sec_pick_index: 0
- });
- },
+ //-- 导购ID --
+ if (getApp().globalData.guide_id) {
+ pdata.guide_id = getApp().globalData.guide_id;
+ }
- choose_for_store_fir: function (e) {
- var index_c = e.currentTarget.dataset.ind;
- var th = this;
- th.setData({
- fir_pick_index: index_c
- })
+ var app = getApp(),
+ th = this;
+ app.request.post("/api/weshop/couponList/saveCouponList", {
+ data: pdata,
+ success: function (res) {
+ if (res.data.code == 0) {
+ app.my_warnning("领取成功", 1, th);
+ lq_num++;
+ var text = "quan_list[" + index + "].lqnum";
+ var text2 = "quan_list[" + index + "].linging";
+ var obj = {};
+ obj[text] = lq_num;
+ obj[text2] = 0;
+ th.setData(obj);
+ } else {
+ app.confirmBox(res.data.msg);
+ var text2 = "quan_list[" + index + "].linging";
+ var obj = {};
+ obj[text2] = 0;
+ th.setData(obj);
+ }
+ }
+ })
+ },
- },
- //如果开启线下库存,已经急速库存才会使用
- async check_the_pick(item, func) {
- var th = this;
- var goodsinfo = th.data.sele_g;
- var erpwareid = goodsinfo.erpwareid;
- var plist = null;
- var lock = 0;
-
- //---如果是活动的时候,同时不是普通购买---
- if ((th.data.prom_type == 1 || th.data.prom_type == 6 || th.data.prom_type == 4) && !th.data.is_normal) {
- func(); return false;
- }
+ drawPoster(context, unit, img, vpath) {
+ // 1.灰色背景
+ context.setFillStyle('#f2f1f6');
+ context.rect(0, 0, 554 * unit, 899 * unit);
+ context.fill();
+ // 2.商城名称
+ let shopName = this.data.sto_sele_name_1;
+ // let shopNameLen = context.measureText(shopName);
+ // let x_shopNameLen = (554 - shopNameLen.width)/2*unit;
+ // console.log('11111111111111',shopNameLen,x_shopNameLen);
+ context.setTextAlign('center');
+ context.setFontSize(26 * unit);
+ context.setFillStyle('black');
+ context.fillText(shopName, 277 * unit, 60 * unit);
+ // // 3.推荐来源
+ let fromText = `来自${getApp().globalData.userInfo.nickname}的推荐`;
+ // let fromTextLen = context.measureText(fromText);
+ // let x_fromText = (375 - fromTextLen.width)/2;
+ // console.log('222222',fromTextLen,x_fromText);
+ context.setTextAlign('center');
+ context.setFontSize(22 * unit);
+ context.setFillStyle('#96959a');
+ context.fillText(fromText, 277 * unit, 105 * unit);
+ // 4.海报背景
+ // context.beginPath();
+ // context.setStrokeStyle('#f2f1f6');
+ context.setFillStyle('white');
+ context.fillRect(37 * unit, 157 * unit, 480 * unit, 673 * unit);
+ // context.stroke();
+ // context.fill();
+ // 5.商品图片
+ // 图片的x坐标
+ let bg_x = 37 * unit
+ // 图片的y坐标
+ let bg_y = 157 * unit
+ // 图片宽度
+ let bg_w = 480 * unit
+ // 图片高度
+ let bg_h = 474 * unit
+ // 图片圆角
+ let bg_r = 4
+ // 绘制海报背景图片圆角
+ context.save()
+ context.beginPath()
+ context.arc(bg_x + bg_r, bg_y + bg_r, bg_r, Math.PI, Math.PI * 1.5)
+ context.arc(bg_x + bg_w - bg_r, bg_y + bg_r, bg_r, Math.PI * 1.5, Math.PI * 2)
+ context.arc(bg_x + bg_w, bg_y + bg_h, bg_r, 0, Math.PI * 0.5)
+ context.arc(bg_x, bg_y + bg_h, 0, Math.PI * 0.5, Math.PI)
+ context.clip()
+ context.drawImage(img, bg_x, bg_y, bg_w, bg_h);
+ context.restore()
+ // 6.强烈推荐
+ // context.beginPath();
+ let tj_path = "../../../images/share/q_tj.png";
+ context.beginPath()
+ context.drawImage(tj_path, 54 * unit, 648 * unit, 85 * unit, 30 * unit);
+ context.setFontSize(16 * unit)
+ context.setLineJoin('round'); //交点设置成圆角
+ context.setFillStyle("white")
+ context.setTextAlign('left');
+ context.fillText('强烈推荐', 64 * unit, 672 * unit);
+ // 7.商品价格
+ let price = '¥' + this.data.data.shop_price;
+
+ if (this.data.card_field && this.data.data[this.data.card_field]) {
+ price = '¥' + this.data.data[this.data.card_field];
+ }
+
- if (this.data.sales_rules != 2) {
- func();
- } else {
-
- //先读取门店的lock
- await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", {
- data: { store_id: os.stoid, wareId: goodsinfo.goods_id, storageId: item.pickup_id, pageSize: 1000 }
- }).then(res => {
- if (res.data.code == 0 && res.data.data.total > 0) {
- for (var i in res.data.data.pageData)
- lock += res.data.data.pageData[i].outQty;
+ // if (th.data.prom_act)
+ // pri0 = th.data.prom_act.price;
+ context.setFontSize(32 * unit);
+ context.setFillStyle('#DE1117');
+ context.fillText(price, 54 * unit, 730 * unit);
+ // 8.商品标题
+ context.setFontSize(20 * unit);
+ context.setFillStyle('#898989');
+ this.draw_Text(context, this.data.data.goods_name,
+ 54 * unit, 770 * unit, 240 * unit, 240 * unit, unit);
+ // 9.小程序码
+ context.drawImage(vpath, 375 * unit, 660 * unit, 120 * unit, 120 * unit);
+ context.setFontSize(16 * unit);
+ context.setFillStyle('#777');
+ context.fillText('长按识别二维码', 378 * unit, 810 * unit);
+ // 10.竖线
+ context.beginPath();
+ context.setFillStyle('#eee');
+ context.rect(354 * unit, 670 * unit, 1 * unit, 130 * unit);
+ context.fill();
+
+ },
+
+
+ //--定义的保存图片方法,分享团---
+ saveImageToPhotosAlbum: function () {
+ //--先判断会员状态--
+ var user_info = getApp().globalData.userInfo;
+ if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
+ //getApp().my_warnning("请先登录",0,this);
+ wx.navigateTo({url: '/pages/togoin/togoin',})
+ return false;
}
- })
- //读取线下的门店库存
- await getApp().request.promiseGet("/api/weshop/goods/getWareStorages", {
- data: { storageNos: item.pickup_no, wareIds: encodeURIComponent(erpwareid), storeId: os.stoid }
- }).then(res => {
- if (res.data.code == 0 && res.data.data.total > 0) {
- plist = res.data.data.pageData[0];
+
+ if (this.data.share_hidden) {
+ this.setData({share_hidden: false,});
}
- })
+ ;
- if (plist && plist.CanOutQty - lock > 0) {
- item.CanOutQty = plist.CanOutQty - lock;
- func();
- return false;
- }
- getApp().my_warnning(item.pickup_name + "库存不足!", 0, th);
+ //类型 0普通商品 1秒杀商品 2商家和会员团 3阶梯团 4阶梯团
+ var type = this.data.prom_type;
+ if (type == 2) type = -1;
+ if (type == 6) type = 2;
- }
- },
+ if (this.data.prom_act && this.data.prom_act.kttype == 3) type = 3;
- //确定def_pick为选择的门店
- sure_pick: function (e) {
- var th = this;
- var item = null;
- var openindstore = th.data.open_ind_store;
+ wx.showLoading({title: '生成中...',})
+ var that = this, th = that;
+ //设置画板显示,才能开始绘图
+ that.setData({
+ canvasHidden: false
+ })
- if (th.data.choice_sort_store == 0) {
- var index = th.data.fir_pick_index;
- if (th.data.is_show_sto_cat == 1) {
- item = th.data.def_pickpu_list[index];
- } else {
- item = th.data.only_pk[index]; //当没有门店分类的时候
- }
+ var app = getApp();
+ var unit = that.data.screenWidth / 750 * 1.35; //基础单位,
+ var path2 = that.data.data.original_img;
+ var scene = th.data.gid + "";
+ scene += "." + th.data.sele_g.prom_type + "." + th.data.sele_g.prom_id;
- } else {
- var index = th.data.sec_pick_index;
- item = th.data.sec_sto.s_arr[index];
- }
+ var user_id = getApp().globalData.user_id ? getApp().globalData.user_id : 0;
+ if (user_id > 0) {
+ scene += "_" + user_id;
+ }
+ //-- 如果不是会员分享过来的要分享给别人 --
+ if (getApp().globalData.room_id && th.data.data.goods_id == getApp().globalData.room_goods_id && !getApp().globalData.room_user_share) {
+ //固定房间是第3个字符
+ if (!user_id) scene += "_0";
+ scene += "_" + getApp().globalData.room_id;
+ }
+ ///二微码
+ var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" +
+ os.stoid + "?sceneValue=" + scene + "&pageValue=pages/goods/goodsInfo/goodsInfo";
- if (!th.data.sele_g) return false;
- //判断门店的配送方式是不是匹配
- var g_distr_type = th.data.sele_g.distr_type;
- if (item.distr_type != 0 && g_distr_type != 0 && item.distr_type != g_distr_type) {
- wx.showToast({
- title: "门店配送方式不匹配",
- icon: 'none',
- duration: 2000
- });
- return false;
- }
+ console.log(path3);
- //--回调函数的用法--
- th.check_the_pick(item, function () {
- th.setData({
- def_pick_store: item,
- sto_sele_name: item.pickup_name,
- sto_sele_id: item.pickup_id,
- sto_sele_distr: item.distr_type,
- store: 0,
- choice_sort_store: 0,
- fir_pick_index: 0
- });
-
- if (openindstore == 1) {
- th.setData({
- openSpecModal: !0,
- openSpecModal_ind: openindstore,
- });
- } else if (openindstore == 2) {
- th.setData({
- openSpecModal: !0,
- openSpecModal_ind: openindstore,
+
+ // 读取文件成功则OK--
+ wx.getImageInfo({
+ src: path3,
+ success: function (res) {
+ // 回调写法
+ th.get_head_temp(th.get_goods_temp, function () {
+ var vpath = res.path;
+ var context = wx.createCanvasContext('share');
+ // 先画背景
+ var pg_path = "../../../images/share/share_bg.png";
+
+
+ //-- 如果有自定义海报的时候,判断背景的图片 --
+ if (th.data.share_b_img) {
+ pg_path = th.data.share_b_img;
+ }
+ // context.drawImage(pg_path, 0, 0, 554 * unit, 899 * unit);
+
+
+ if (type == 0) { // 如果是普通商品,绘制新海报
+ th.drawPoster(context, unit, th.data.share_goods_img, vpath);
+ } else {
+ context.drawImage(pg_path, 0, 0, 554 * unit, 899 * unit);
+ }
+ ;
+
+ // th.drawPoster(context, unit, th.data.share_goods_img, vpath);
+
+
+ //-- 是自定义海报的情况下 --
+ if (type != 0) {
+
+ if (th.data.poster && parseInt(th.data.poster.style) == 2) {
+ //在线上分享人的情况下
+ if (parseInt(th.data.poster.show_headpic)) {
+ //获取坐标
+ var x = parseFloat(th.data.poster.head_x) * 2;
+ var y = parseFloat(th.data.poster.head_y) * 2;
+ var x1 = (x + 90) * unit;
+ var y1 = (y + 50) * unit;
+ //--昵称---
+ context.setFontSize(24 * unit)
+ context.setFillStyle("black")
+ context.fillText(app.globalData.userInfo.nickname, x1, y1);
+ var width = 24 * app.globalData.userInfo.nickname.length * unit + 4 * unit;
+ //强烈推荐 改许程
+ var tj_path = "../../../images/share/q_tj.png";
+ context.drawImage(tj_path, x1 + width, y1 - 22 * unit, 85 * unit, 30 * unit);
+ context.setFontSize(16 * unit);
+ context.setLineJoin('round'); //交点设置成圆角
+ context.setFillStyle("white");
+ context.fillText('强烈推荐', x1 + width + 8 * unit, y1 - 1 * unit);
+
+ //context.setFillStyle("black")
+ //context.setFontSize(24 * unit)
+ //context.fillText(getApp().globalData.config.store_name, 40 * unit, 130 * unit);
+ }
+ } else {
+ //--昵称---
+ context.setFontSize(24 * unit);
+ context.setFillStyle("black");
+ context.fillText(app.globalData.userInfo.nickname, 152 * unit, 76 * unit);
+ var width = 24 * app.globalData.userInfo.nickname.length * unit + 2 * unit;
+ //强烈推荐 改许程
+ var tj_path = "../../../images/share/q_tj.png";
+ context.drawImage(tj_path, 152 * unit + width, 54 * unit, 85 * unit, 30 * unit);
+ context.setFontSize(16 * unit);
+ context.setLineJoin('round'); //交点设置成圆角
+ context.setFillStyle("white");
+ context.fillText('强烈推荐', 149 * unit + width + 15 * unit, 75 * unit);
+ }
+
+ }
+ ;
+
+
+ var share_title = th.data.data.goods_name;
+ if (th.data.prom_type == 1 || th.data.prom_type == 2 || th.data.prom_type == 6 || th.data.prom_type == 4) {
+ share_title = th.data.prom_act.share_title;
+ if (!share_title) share_title = th.data.prom_act.title;
+ if (th.data.prom_type == 4) share_title = th.data.prom_act.name;
+ }
+
+ //---产品名称---
+ //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度
+ if (type != 4 && type != 0) {
+ context.setFillStyle("black");
+ context.setFontSize(21.3 * unit)
+ th.draw_Text(context, share_title,
+ 38 * unit, 180 * unit, 200 * unit, 279 * unit, unit);
+
+ //------产品的价格-------
+ context.setFontSize(23 * unit)
+ context.setFillStyle("red")
+
+ var pri0 = th.data.data.shop_price;
+ if (th.data.card_field && th.data.data[th.data.card_field]) {
+ pri0 = th.data.data[th.data.card_field];
+ }
+
+ if (th.data.prom_act)
+ pri0 = th.data.prom_price;
+ pri0 = parseFloat(pri0).toFixed(2);
+ var wd1 = th.data.screenWidth - ut.measureText(pri0, 31 * unit) - 25;
+ context.fillText("¥", wd1 - 15, 185 * unit);
+ context.setFontSize(31 * unit)
+ context.fillText(pri0, wd1, 185 * unit);
+
+ //---市场价划掉---
+ context.setFillStyle("gray")
+ context.setFontSize(22 * unit)
+ pri0 = "¥" + th.data.data.market_price.toFixed(2);
+ var wd2 = th.data.screenWidth - ut.measureText(pri0, 22 * unit) - 25;
+ context.fillText(pri0, wd2, 213 * unit);
+
+ context.setStrokeStyle('gray');
+ context.setLineWidth(1 * unit);
+ context.moveTo(wd2 - 5, 206 * unit);
+ context.lineTo(wd2 + ut.measureText(pri0, 22 * unit) + 5, 206 * unit);
+ context.stroke();
+
+ } else if (type == 4 && type != 0) {
+ context.setFillStyle("black");
+ context.setFontSize(21.3 * unit)
+ th.draw_Text(context, share_title,
+ 38 * unit, 170 * unit, 20 * unit, 300 * unit, unit);
+ //------ 产品的价格 -----
+ var pri0 = th.data.prom_act.addmoney;
+ var integral = th.data.prom_act.integral;
+ var text = "";
+ if (integral) {
+ text = integral + "积分";
+ }
+ if (pri0 && integral) {
+ text += "+";
+ }
+ if (pri0) {
+ text += "¥" + pri0;
+ }
+
+ if (!pri0 && !integral) {
+ text = "0积分";
+ }
+ context.setFillStyle("red");
+ context.fillText(text, 38 * unit, 235 * unit);
+
+ }
+
+ //---中间大图---
+ if (type != 0) {
+ context.drawImage(th.data.share_goods_img, 70 * unit, 250 * unit, 408 * unit, 408 * unit);
+ }
+ ;
+
+
+ //-------大图后面就不一样了-----------
+ switch (type) {
+ case 0:
+ break;//普通商品的展示
+ case 4:
+ //中间的几个字
+ if (th.data.poster && parseInt(th.data.poster.style) == 2) {
+ if (parseInt(th.data.poster.show_quality)) {
+ var g_path = "../../../images/share/s_gou.png";
+ context.drawImage(g_path, 56 * unit, 670 * unit, 22 * unit, 22 * unit);
+ context.setFillStyle("red")
+ context.setFontSize(18 * unit)
+ context.fillText("正品保证", 84 * unit, 690 * unit);
+
+ context.drawImage(g_path, 218 * unit, 670 * unit, 22 * unit, 22 * unit);
+ context.setFillStyle("red")
+ context.setFontSize(18 * unit)
+ context.fillText("纯实体店", 246 * unit, 690 * unit);
+
+ context.drawImage(g_path, 388 * unit, 670 * unit, 22 * unit, 22 * unit);
+ context.setFillStyle("red")
+ context.setFontSize(18 * unit)
+ context.fillText("官方验证", 420 * unit, 690 * unit);
+ }
+
+ } else {
+ var g_path = "../../../images/share/s_gou.png";
+ context.drawImage(g_path, 56 * unit, 670 * unit, 22 * unit, 22 * unit);
+ context.setFillStyle("red")
+ context.setFontSize(18 * unit)
+ context.fillText("正品保证", 84 * unit, 690 * unit);
+
+ context.drawImage(g_path, 218 * unit, 670 * unit, 22 * unit, 22 * unit);
+ context.setFillStyle("red")
+ context.setFontSize(18 * unit)
+ context.fillText("纯实体店", 246 * unit, 690 * unit);
+
+ context.drawImage(g_path, 388 * unit, 670 * unit, 22 * unit, 22 * unit);
+ context.setFillStyle("red")
+ context.setFontSize(18 * unit)
+ context.fillText("官方验证", 420 * unit, 690 * unit);
+ }
+
+
+ //---画线---
+ context.setLineWidth(1 * unit)
+ context.moveTo(32 * unit, 710 * unit)
+ context.lineTo(520 * unit, 710 * unit)
+ context.stroke();
+
+ //---文字---
+ context.setFillStyle("black")
+ context.setFontSize(22 * unit)
+
+ if (type == 0 || type == -1) {
+ // 原来start --->
+ context.setFontSize(24 * unit)
+ context.fillText(th.data.sto_sele_name_1, 40 * unit, 766 * unit);
+
+ context.setFontSize(22 * unit)
+ context.fillText("优惠乐翻天,精彩就在你身边", 40 * unit, 806 * unit);
+ context.fillText("长按识别二维码,立即开始抢购", 40 * unit, 846 * unit);
+
+ } else {
+ context.setFontSize(24 * unit)
+ context.fillText(th.data.sto_sele_name_1, 40 * unit, 766 * unit);
+ context.setFontSize(22 * unit)
+ context.fillText("长按识别二维码", 40 * unit, 806 * unit);
+ context.fillText("立即开始兑换", 40 * unit, 846 * unit);
+
+ }
+
+ //---二维吗图---
+ //-- 自定义海报 --
+ if (th.data.poster) {
+ var erm_x = parseFloat(th.data.poster.ewm_x) * 2;
+ var erm_y = parseFloat(th.data.poster.ewm_y) * 2;
+ context.drawImage(vpath, erm_x * unit, erm_y * unit, 136 * unit, 136 * unit);
+ } else {
+ //---二维吗图---
+ context.drawImage(vpath, 390 * unit, 726 * unit, 136 * unit, 136 * unit);
+ }
+ ;
+
+ break;
+ case 1: //秒杀商品的展示
+ //---画线---
+ context.setLineWidth(1 * unit)
+ context.moveTo(32 * unit, 670 * unit)
+ context.lineTo(520 * unit, 670 * unit)
+ context.stroke();
+
+ //画秒杀的图片
+ var miaos_path = '../../../images/share/miao_share.png';
+ context.drawImage(miaos_path, 43 * unit, 700 * unit, 222 * unit, 40 * unit);
+
+ context.setFillStyle("black")
+ context.setFontSize(24 * unit)
+ context.fillText(th.data.sto_sele_name_1, 40 * unit, 786 * unit);
+ //---文字---
+ context.setFontSize(22 * unit)
+ context.setFillStyle("black")
+ context.fillText("特惠好物,限时秒杀", 40 * unit, 826 * unit);
+ context.fillText("长按识别二维码,立即开始抢购", 40 * unit, 866 * unit);
+
+
+ //---二维吗图---
+ //-- 自定义海报 --
+ if (th.data.poster) {
+ var erm_x = parseFloat(th.data.poster.ewm_x) * 2;
+ var erm_y = parseFloat(th.data.poster.ewm_y) * 2;
+ context.drawImage(vpath, erm_x * unit, erm_y * unit, 135 * unit, 135 * unit);
+ } else {
+ //---二维吗图---
+ context.drawImage(vpath, 390 * unit, 726 * unit, 135 * unit, 135 * unit);
+ }
+ break;
+
+ case 2: //会员团和商家团的展示
+ //---画线---
+ context.setLineWidth(1 * unit)
+ context.moveTo(32 * unit, 670 * unit)
+ context.lineTo(520 * unit, 670 * unit)
+ context.stroke();
+ //---文字---
+ context.setFillStyle("black")
+ context.setFontSize(24 * unit)
+ context.fillText(th.data.sto_sele_name_1, 40 * unit, 720 * unit);
+
+ //绘制成团图片
+ var ct_img = "../../../images/share/ct_num.png";
+ context.drawImage(ct_img, 40 * unit, 740 * unit, 120 * unit, 30 * unit);
+ var ct_num = th.data.prom_act.ct_num;
+ context.setFontSize(14 * unit)
+ context.font = 'normal';
+ context.setFillStyle("red")
+ if (ct_num < 10) {
+ context.fillText(ct_num + "人拼团", 92 * unit, 760 * unit);
+ } else {
+ context.fillText(ct_num + "人拼团", 86 * unit, 760 * unit);
+ }
+ context.setFontSize(22 * unit)
+ context.fillText("已拼" + th.data.prom_act.buy_num + "份", 166 * unit, 763 * unit);
+
+ context.setFillStyle("gray")
+ context.fillText("快来和我一起拼团吧!", 40 * unit, 806 * unit);
+ context.setFillStyle("black")
+ context.font = 'normal bold 18px sans-serif';
+ context.setFontSize(21.3 * unit)
+ context.fillText("长按识别二维码,立即参团", 40 * unit, 836 * unit);
+
+
+ //---二维吗图---
+ //-- 自定义海报 --
+ if (th.data.poster) {
+ var erm_x = parseFloat(th.data.poster.ewm_x) * 2;
+ var erm_y = parseFloat(th.data.poster.ewm_y) * 2;
+ context.drawImage(vpath, erm_x * unit, erm_y * unit, 136 * unit, 136 * unit);
+ } else {
+ //---二维吗图---
+ context.drawImage(vpath, 390 * unit, 726 * unit, 136 * unit, 136 * unit);
+ }
+ break
+ case 3: //阶梯团的展示
+ //---画线---
+ context.setLineWidth(1 * unit)
+ context.moveTo(32 * unit, 670 * unit)
+ context.lineTo(520 * unit, 670 * unit)
+ context.stroke();
+ //---文字---
+ context.setFillStyle("black")
+ context.setFontSize(24 * unit)
+ context.fillText(th.data.sto_sele_name_1, 40 * unit, 720 * unit);
+
+ //---绘制中间阶梯的价格---
+ var list = th.data.prom_act.ct_rylist;
+ for (var i = 0; i < list.length; i++) {
+ var item = list[i];
+ var wi = i * 90 * unit;
+ context.font = 'normal';
+ context.setFontSize(16 * unit)
+ context.setFillStyle("red")
+ context.fillText("¥", 40 * unit + wi, 756 * unit);
+ context.setFontSize(22 * unit)
+ var pri = parseFloat(item.price).toFixed(2);
+ context.fillText(pri, 56 * unit + wi, 756 * unit);
+ context.setFillStyle("gray")
+ context.fillText("满" + item.rynum + "人", 40 * unit + wi, 786 * unit);
+ }
+ //----------------下面部分----------------
+ // context.setFillStyle("gray")
+ // context.fillText("快来和我一起拼团吧!", 40 * unit, 830 * unit);
+ // context.setFillStyle("black")
+ // context.font = 'normal bold 18px sans-serif';
+ // context.setFontSize(22 * unit)
+ // context.fillText("长按识别二维码,立即参团", 40 * unit, 860 * unit);
+ //context.setFillStyle("gray")
+ context.setFillStyle("black")
+ context.fillText("快来和我一起拼团吧!", 40 * unit, 820 * unit);
+ //context.font = 'normal bold 18px sans-serif';
+ context.setFontSize(21 * unit)
+ context.fillText("长按识别二维码,立即参团", 40 * unit, 850 * unit);
+
+
+ //-- 自定义海报 --
+ if (th.data.poster) {
+ var erm_x = parseFloat(th.data.poster.ewm_x) * 2;
+ var erm_y = parseFloat(th.data.poster.ewm_y) * 2;
+ context.drawImage(vpath, erm_x * unit, erm_y * unit, 136 * unit, 136 * unit);
+ } else {
+ //---二维吗图---
+ context.drawImage(vpath, 390 * unit, 726 * unit, 136 * unit, 136 * unit);
+ }
+ break
+
+
+ case -1: //秒杀商品的展示
+ //---画线---
+ context.setLineWidth(1 * unit)
+ context.moveTo(32 * unit, 670 * unit)
+ context.lineTo(520 * unit, 670 * unit)
+ context.stroke();
+
+
+ context.setFillStyle("black")
+ context.setFontSize(24 * unit)
+ context.fillText(th.data.sto_sele_name_1, 40 * unit, 744 * unit);
+ //---文字---
+ context.setFontSize(22 * unit)
+ context.setFillStyle("black")
+ context.fillText("长按识别二维码", 40 * unit, 800 * unit);
+ context.fillText("立即开始抢购", 40 * unit, 846 * unit);
+
+
+ //---二维吗图---
+ //-- 自定义海报 --
+ if (th.data.poster) {
+ var erm_x = parseFloat(th.data.poster.ewm_x) * 2;
+ var erm_y = parseFloat(th.data.poster.ewm_y) * 2;
+ context.drawImage(vpath, erm_x * unit, erm_y * unit, 135 * unit, 135 * unit);
+ } else {
+ //---二维吗图---
+ context.drawImage(vpath, 390 * unit, 726 * unit, 135 * unit, 135 * unit);
+ }
+ break;
+
+
+ }
+
+
+ //--- 如果是自定义海报的时候 ---
+ if (type != 0) {
+
+ if (th.data.poster && parseInt(th.data.poster.style) == 2) {
+
+ //如果显示会员信息的话
+ if (parseInt(th.data.poster.show_headpic)) {
+ //获取坐标
+ var x = parseFloat(th.data.poster.head_x) * 2;
+ var y = parseFloat(th.data.poster.head_y) * 2;
+ //---绘制圆形要放在最后----
+ context.save();
+ context.beginPath();
+ var h_x = x * unit;
+ var h_y = y * unit;
+ var h_r = 40 * unit;
+ var cx = h_x + h_r;
+ var cy = h_y + h_r;
+ context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
+ context.closePath();
+ context.fill();
+ context.clip();
+ context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
+ context.restore();
+ }
+
+ } else {
+ //---绘制圆形要放在最后----
+ context.save();
+ context.beginPath();
+ var h_x = 60 * unit;
+ var h_y = 24 * unit;
+ var h_r = 40 * unit;
+ var cx = h_x + h_r;
+ var cy = h_y + h_r;
+ context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
+ context.closePath();
+ context.fill();
+ context.clip();
+ context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
+ context.restore();
+ }
+
+ }
+ ;
+
+
+ //把画板内容绘制成图片,并回调 画板图片路径
+ context.draw(false, function () {
+ setTimeout(function () {
+ wx.canvasToTempFilePath({
+ x: 0,
+ y: 0,
+ width: 750,
+ height: 1217,
+ destWidth: 1.2 * 750 * 750 / that.data.screenWidth,
+ destHeight: 1.2 * 1217 * 750 / that.data.screenWidth,
+ canvasId: 'share',
+ success: function (res) {
+
+ that.setData({
+ shareImgPath: res.tempFilePath,
+ canvasHidden: true
+ })
+
+ if (!res.tempFilePath) {
+ wx.showModal({
+ title: '提示',
+ content: '图片绘制中,请稍后重试',
+ showCancel: false
+ })
+ return false;
+ }
+
+ // wx.previewImage({
+ // //将图片预览出来
+ // urls: [that.data.shareImgPath]
+ // });
+ that.setData({
+ showPoster: true,
+ });
+ wx.hideLoading();
+ }
+ })
+ }, 500)
+
+ });
+ });
+ },
+ fail: function (res) {
+ console.log(res);
+ wx.hideLoading();
+
+ }
});
- }
- else if (openindstore == 4) { //4就是拼团
- th.setData({
- openSpecModal_pt: 1, //打开拼团购买界面
- store: 0, //关闭门店
- choice_sort_store: 0, //关闭门店2级
- sort_store: 0, //关闭门店2级
+ },
+
+
+ //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度
+ draw_Text: function (ctx, str, leftWidth, initHeight, titleHeight, canvasWidth, unit) {
+ var lineWidth = 0;
+ var lastSubStrIndex = 0; //每次开始截取的字符串的索引
+ var han = 0;
+ for (let i = 0; i < str.length; i++) {
+ if (han == 2) return;
+ //lineWidth += ctx.measureText(str[i]).width;
+ lineWidth += ut.measureText(str[i], 21.3 * unit);
+ if (lineWidth > canvasWidth) {
+ han++;
+
+ if (han == 2)
+ ctx.fillText(str.substring(lastSubStrIndex, i) + '...', leftWidth, initHeight); //绘制截取部分
+ else
+ ctx.fillText(str.substring(lastSubStrIndex, i), leftWidth, initHeight);
+
+ initHeight += 22; //22为字体的高度
+ lineWidth = 0;
+ lastSubStrIndex = i;
+ titleHeight += 20;
+ }
+ if (i == str.length - 1) { //绘制剩余部分
+ ctx.fillText(str.substring(lastSubStrIndex, i + 1), leftWidth, initHeight);
+ }
+ }
+ },
+
+ // ----视频图片----
+ // 图片计数器
+ swiperChange: function (e) {
+ var that = this;
+ if (e.detail.current > 0) {
+ that.setData({
+ hiddenn: 1,
+ videopicture: 1,
+ })
+ } else {
+ that.setData({
+ hiddenn: 0,
+ videopicture: 0,
+ })
+ }
+ if (e.detail.source == 'touch') {
+ that.setData({
+ current: e.detail.current
+ })
+ }
+ },
+
+ /*---视频相关--*/
+ videopicture: function (e) {
+ var vipi = e.currentTarget.dataset.vipi;
+ this.setData({
+ videopicture: vipi,
+ swiperCurrent: vipi,
+ noon: 0,
+ current: 1
});
- }
- else {
- th.setData({
- store: 0,
- choice_sort_store: 0,
- sort_store: 0
+ },
+
+ videoPlay: function (e) {
+ var _index = e.currentTarget.id
+ this.setData({
+ _index: _index,
+ noon: 1
})
- }
- //如果商品没有其他活动,要取一下线下价格
- th.get_off_price();
- })
- },
- //---点击二级之后的选择---
- choose_for_store: function (e) {
- var index_c = e.currentTarget.dataset.ind;
- var th = this;
- th.setData({
- sec_pick_index: index_c,
- fir_pick_index: index_c
- })
- },
- //把选择的门店设置成默认的门店def_pick
- set_def_pick: function (e) {
- var th = this;
- var item = null;
- if (th.data.choice_sort_store == 0) {
- var index = th.data.fir_pick_index;
- if (th.data.is_show_sto_cat == 1) {
- item = th.data.def_pickpu_list[index];
- } else {
- item = th.data.only_pk[index]; //当没有门店分类的时候
- }
- } else {
- var index = th.data.sec_pick_index;
- item = th.data.sec_sto.s_arr[index];
- }
+ setTimeout(function () {
+ //将点击视频进行播放
+ var videoContext = wx.createVideoContext(_index)
+ videoContext.play();
+ }, 500)
+
+ },
- //判断门店的配送方式是不是匹配
- var g_distr_type = th.data.sele_g.distr_type;
- if (item.distr_type != 0 && g_distr_type != 0 && item.distr_type != g_distr_type) {
- wx.showToast({
- title: "门店配送方式不匹配",
- icon: 'none',
- duration: 2000
- });
- return false;
+ //加载更多是靠这个函数
+ onReachBottom: function () {
+ if (this.data.activeCategoryId == 2) {
+ if (!this.data.comments_no_more) this.requestComments_new();
}
- //先设置之前,要判断是不是有库存
- th.check_the_pick(item, function () {
- var store_id = o.stoid;
- var user_id = getApp().globalData.user_id;
- var def_pickup_id = item.pickup_id;
+ var goods_list = this.selectComponent("#goods_list"); //组件的id
+ if (goods_list) goods_list.get_list();
+ },
- getApp().request.put('/api/weshop/users/update', {
- data: {
- user_id: user_id,
- def_pickup_id: def_pickup_id
- },
- success: function (res) {
- if (res.data.code == 0) {
- if (th.data.choice_sort_store == 0) th.setData({
- fir_pick_index: 0
+ //--获取头像的本地缓存,回调写法--
+ get_head_temp: function (tt, func) {
+ var ee = this;
+ if (ee.data.share_head) {
+ tt(func);
+ return false;
+ }
+ //---获取分享图片的本地地址,头像和商品图片----
+ var path2 = getApp().globalData.userInfo.head_pic;
+ if (path2 == "") {
+ ee.data.share_head = "../../../images/share/hui_hear_pic.png";
+ tt(func);
+ } else {
+ path2 = path2.replace("http://thirdwx.qlogo.cn", "https://wx.qlogo.cn");
+ path2 = path2.replace("https://thirdwx.qlogo.cn", "https://wx.qlogo.cn");
+ wx.getImageInfo({
+ src: path2,
+ success: function (res) {
+ //res.path是网络图片的本地地址
+ ee.data.share_head = res.path;
+ tt(func);
+ },
+ fail: function (res) {
+ ee.data.share_head = "../../../images/share/hui_hear_pic.png"; //分享的图片不能用网络的
+ tt(func);
+ }
});
- getApp().globalData.pk_store = item;
- } else {
- //s.showWarning("设置默认门店地址失败", null, 500, !1);
- getApp().my_warnning("设置默认门店地址失败", 0, th)
- }
+ }
+ },
+ //--获取商品图片的本地缓存,回调写法--
+ get_goods_temp: function (tt) {
+ var ee = this;
+ if (ee.data.share_goods_img) {
+ tt();
+ return false;
+ }
+ var img_url = ee.data.data.original_img;
+ if ((this.data.prom_type == 1 || this.data.prom_type == 6) && this.data.prom_act.share_imgurl) {
+ img_url = this.data.iurl + this.data.prom_act.share_imgurl;
}
- });
-
- th.setData({
- def_pick_store: item,
- sto_sele_name: item.pickup_name,
- sto_sele_id: item.pickup_id,
- sto_sele_distr: item.distr_type,
- store: 0,
- choice_sort_store: 0
- });
-
- var openindstore = th.data.open_ind_store;
- if (openindstore == 1) {
- th.setData({
- openSpecModal: !0,
- openSpecModal_ind: openindstore,
- store: 0,
- choice_sort_store: 0,
- sort_store: 0,
+
+ //获取商品是分享图信息
+ wx.getImageInfo({
+ src: img_url,
+ success: function (res) {
+ //res.path是网络图片的本地地址
+ ee.data.share_goods_img = res.path;
+ tt();
+ },
+ fail: function (res) {
+ ee.data.share_goods_img = "../../../images/share/default_g_img.gif"; //分享的图片不能用网络的
+ tt();
+ }
});
- } else if (openindstore == 2) {
- th.setData({
- openSpecModal: !0,
- openSpecModal_ind: openindstore,
- store: 0,
- choice_sort_store: 0,
- sort_store: 0,
+ },
+
+ //--外侧评价的点击效果---
+ clik_evaluate: function (e) {
+ var val = e.currentTarget.dataset.val;
+ this.setData({
+ activeCategoryId: 2,
+ activeCategoryId3: val,
+ comments: null
});
- }
- else if (openindstore == 4) { //4就是拼团
- th.setData({
- openSpecModal_pt: 1, //打开拼团购买界面
- store: 0, //关闭门店
- choice_sort_store: 0, //关闭门店2级
- sort_store: 0, //关闭门店2级
+ this.requestComments_new();
+ },
+
+ //--跳转到商品详情页面--
+ go_goods: function (e) {
+ var gid = e.currentTarget.dataset.gid;
+ var url = "/pages/goods/goodsInfo/goodsInfo?goods_id=" + gid;
+ getApp().goto(url);
+ },
+
+ //--跳转到支付尾款界面--
+ go_pay_wk: function () {
+ var url = "/pages/cart/cart_wk/cart_wk?order_id=" + this.data.wk_order_id;
+ getApp().goto(url);
+ },
+
+ pop_err_img: function (e) {
+ var txt = e.currentTarget.dataset.errorimg;
+ var ob = {};
+ ob[txt] = this.data.iurl + "/miniapp/images/default_g_img.gif";
+ this.setData(ob);
+ },
+
+ //--调用更新阶梯团的接口--
+ update_jiti: function (id) {
+ var th = this;
+ //--更新阶梯团--
+ getApp().request.put("/api/weshop/teamgroup/updateTeamOrder/" + os.stoid + "/" + id, {
+ success: function (ee) {
+ //--等于0是要去支付尾款,接口调用失败,就要去查看参团详情--
+ if (ee.data.code == 0) {
+ th.setData({
+ user_order_pt_state: 3,
+ });
+ } else if (ee.data.code == -1) {
+ th.setData({
+ user_order_pt_state: 2,
+ });
+ }
+ }
+ })
+ },
+ // 选择门店
+ choice_store: function (ee) {
+ var th = this;
+ var ind = ee.currentTarget.dataset.ind;
+ var bconfig = th.data.bconfig;
+
+ if (!th.data.only_pk && !th.data.def_pickpu_list) {
+ getApp().confirmBox("门店库存不足", null, 25000, !1);
+ return false;
+ }
+
+ if (th.data.only_pk && !th.data.only_pk.length) {
+ getApp().confirmBox("门店库存不足", null, 25000, !1);
+ return false;
+ }
+ if (th.data.def_pickpu_list && !th.data.def_pickpu_list.length) {
+ getApp().confirmBox("门店库存不足", null, 25000, !1);
+ return false;
+ }
+
+
+ if (bconfig && bconfig.is_sort_storage) {
+ wx.getLocation({
+ type: 'gcj02',
+ success: function (res) {
+
+ th.data.lat = res.latitude;
+ th.data.lon = res.longitude;
+ th.data.is_get_local_ok = 1;
+ th.setData({
+ is_gps: 1
+ });
+ //th.onShow();
+ th.get_sto(th.data.is_normal);
+ },
+ fail: function (res) {
+ //th.onShow();
+ th.data.is_get_local_ok = 1;
+ th.get_sto(th.data.is_normal);
+ if (res.errCode == 2) {
+ th.setData({
+ is_gps: 0
+ });
+ if (th.data.is_gps == 0) {
+ getApp().confirmBox("请开启GPS定位", null, 25000, !1);
+ }
+ } else {
+ th.setData({
+ is_gps: "3"
+ });
+ }
+
+ }
+ })
+ } else {
+ th.data.is_get_local_ok = 1;
+ th.get_sto(th.data.is_normal);
+ }
+
+ if (ind != undefined && ind != null) {
+ this.setData({
+ open_ind_store: ind,
+ store: 1,
+ openSpecModal: !1,
+ openSpecModal_pt: !1,
+ openSpecModal_flash_normal: !1,
+ })
+ } else {
+ this.setData({
+ store: 1,
+ openSpecModal: !1,
+ openSpecModal_pt: !1,
+ openSpecModal_flash_normal: !1
+
+ })
+ }
+ },
+ //关闭选择门店
+ close_popup: function (e) {
+ var th = this;
+ this.setData({
+ store: 0,
+ choice_sort_store: 0,
+ sort_store: 0,
+ fir_pick_index: 0,
+ sec_pick_index: 0
+ })
+
+ var openindstore = this.data.open_ind_store;
+ if (openindstore == 1) {
+ th.setData({
+ openSpecModal: !0,
+ openSpecModal_ind: openindstore,
+ });
+ } else if (openindstore == 2) {
+ th.setData({
+ openSpecModal: !0,
+ openSpecModal_ind: openindstore,
+ });
+ }
+ else if (openindstore == 4) { //4就是拼团
+ th.setData({
+ openSpecModal_pt: 1, //打开拼团购买界面
+ store: 0, //关闭门店
+ choice_sort_store: 0, //关闭门店2级
+ sort_store: 0, //关闭门店2级
+ });
+ }
+ else {
+ th.setData({
+ store: 0,
+ choice_sort_store: 0,
+ sort_store: 0
+ })
+ }
+
+
+ },
+
+ //选择更多门店
+ more_store: function () {
+ this.setData({
+ sort_store: 1
});
- }
+ },
+ sort_store: function () {
+
+ },
+ // 返回按钮
+ returns: function () {
+ this.setData({
+ sort_store: 0,
+ choice_sort_store: 0
+ });
+ },
+ //---选择分类门店---
+ choice_sort_store: function (e) {
+ var index = e.currentTarget.dataset.index;
+ var region_name = e.currentTarget.dataset.region;
+ var item = this.data.all_sto[index];
+ this.setData({
+ region_name: region_name,
+ sort_store: 0,
+ choice_sort_store: 1,
+ sec_sto: item,
+ sec_pick_index: 0
+ });
+ },
- else {
+ choose_for_store_fir: function (e) {
+ var index_c = e.currentTarget.dataset.ind;
+ var th = this;
th.setData({
- store: 0,
- choice_sort_store: 0,
- sort_store: 0,
+ fir_pick_index: index_c
})
- }
- //如果商品没有其他活动,要取一下线下价格
- th.get_off_price();
+ },
+
+ //如果开启线下库存,已经急速库存才会使用
+ async check_the_pick(item, func) {
+ var th = this;
+ var goodsinfo = th.data.sele_g;
+ var erpwareid = goodsinfo.erpwareid;
+ var plist = null;
+ var lock = 0;
+
+ //---如果是活动的时候,同时不是普通购买---
+ if ((th.data.prom_type == 1 || th.data.prom_type == 6 || th.data.prom_type == 4) && !th.data.is_normal) {
+ func();
+ return false;
+ }
+
+ if (this.data.sales_rules != 2) {
+ func();
+ } else {
+
+ //先读取门店的lock
+ await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", {
+ data: {store_id: os.stoid, wareId: goodsinfo.goods_id, storageId: item.pickup_id, pageSize: 1000}
+ }).then(res => {
+ if (res.data.code == 0 && res.data.data.total > 0) {
+ for (var i in res.data.data.pageData)
+ lock += res.data.data.pageData[i].outQty;
+ }
+ })
+ //读取线下的门店库存
+ await getApp().request.promiseGet("/api/weshop/goods/getWareStorages", {
+ data: {storageNos: item.pickup_no, wareIds: encodeURIComponent(erpwareid), storeId: os.stoid}
+ }).then(res => {
+ if (res.data.code == 0 && res.data.data.total > 0) {
+ plist = res.data.data.pageData[0];
+ }
+ })
+
+ if (plist && plist.CanOutQty - lock > 0) {
+ item.CanOutQty = plist.CanOutQty - lock;
+ func();
+ return false;
+ }
+ getApp().my_warnning(item.pickup_name + "库存不足!", 0, th);
+
+ }
+ },
+
+
+ //确定def_pick为选择的门店
+ sure_pick: function (e) {
+ var th = this;
+ var item = null;
+ var openindstore = th.data.open_ind_store;
+
+ if (th.data.choice_sort_store == 0) {
+ var index = th.data.fir_pick_index;
+ if (th.data.is_show_sto_cat == 1) {
+ item = th.data.def_pickpu_list[index];
+ } else {
+ item = th.data.only_pk[index]; //当没有门店分类的时候
+ }
+
+ } else {
+ var index = th.data.sec_pick_index;
+ item = th.data.sec_sto.s_arr[index];
+ }
+
+ if (!th.data.sele_g) return false;
+ //判断门店的配送方式是不是匹配
+ var g_distr_type = th.data.sele_g.distr_type;
+ if (item.distr_type != 0 && g_distr_type != 0 && item.distr_type != g_distr_type) {
+ wx.showToast({
+ title: "门店配送方式不匹配",
+ icon: 'none',
+ duration: 2000
+ });
+ return false;
+ }
+
+ //--回调函数的用法--
+ th.check_the_pick(item, function () {
+ th.setData({
+ def_pick_store: item,
+ sto_sele_name: item.pickup_name,
+ sto_sele_id: item.pickup_id,
+ sto_sele_distr: item.distr_type,
+ store: 0,
+ choice_sort_store: 0,
+ fir_pick_index: 0
+ });
+
+ switch (openindstore){
+ case 1:
+ th.setData({ openSpecModal: !0,openSpecModal_ind: openindstore, });
+ break;
+ case 2:
+ th.setData({openSpecModal: !0, openSpecModal_ind: openindstore, });
+ break;
+ case 4:
+ th.setData({
+ openSpecModal_pt: 1, //打开拼团购买界面
+ store: 0, //关闭门店
+ choice_sort_store: 0, //关闭门店2级
+ sort_store: 0, //关闭门店2级
+ });
+ break;
+ case 5:
+ th.setData({
+ openSpecModal_flash_normal: 1, //打开拼团购买界面
+ store: 0, //关闭门店
+ choice_sort_store: 0, //关闭门店2级
+ sort_store: 0, //关闭门店2级
+ });
+ break;
+ default:
+ th.setData({ store: 0,choice_sort_store: 0, sort_store: 0})
+ break
+ }
+
+ /*--
+ if (openindstore == 1) {
+ th.setData({
+ openSpecModal: !0,
+ openSpecModal_ind: openindstore,
+ });
+ } else if (openindstore == 2) {
+ th.setData({
+ openSpecModal: !0,
+ openSpecModal_ind: openindstore,
+ });
+ }
+ else if (openindstore == 4) { //4就是拼团
+ th.setData({
+ openSpecModal_pt: 1, //打开拼团购买界面
+ store: 0, //关闭门店
+ choice_sort_store: 0, //关闭门店2级
+ sort_store: 0, //关闭门店2级
+ });
+ }
+ else {
+ th.setData({
+ store: 0,
+ choice_sort_store: 0,
+ sort_store: 0
+ })
+ }--*/
+ //如果商品没有其他活动,要取一下线下价格
+ th.get_off_price();
+ })
+ },
+ //---点击二级之后的选择---
+ choose_for_store: function (e) {
+ var index_c = e.currentTarget.dataset.ind;
+ var th = this;
+ th.setData({
+ sec_pick_index: index_c,
+ fir_pick_index: index_c
+ })
+
+ },
+ //把选择的门店设置成默认的门店def_pick
+ set_def_pick: function (e) {
+ var th = this;
+ var item = null;
+ if (th.data.choice_sort_store == 0) {
+ var index = th.data.fir_pick_index;
+ if (th.data.is_show_sto_cat == 1) {
+ item = th.data.def_pickpu_list[index];
+ } else {
+ item = th.data.only_pk[index]; //当没有门店分类的时候
+ }
+ } else {
+ var index = th.data.sec_pick_index;
+ item = th.data.sec_sto.s_arr[index];
+ }
+
+ //判断门店的配送方式是不是匹配
+ var g_distr_type = th.data.sele_g.distr_type;
+ if (item.distr_type != 0 && g_distr_type != 0 && item.distr_type != g_distr_type) {
+ wx.showToast({
+ title: "门店配送方式不匹配",
+ icon: 'none',
+ duration: 2000
+ });
+ return false;
+ }
+
+ //先设置之前,要判断是不是有库存
+ th.check_the_pick(item, function () {
+ var store_id = o.stoid;
+ var user_id = getApp().globalData.user_id;
+ var def_pickup_id = item.pickup_id;
+
+ getApp().request.put('/api/weshop/users/update', {
+ data: {
+ user_id: user_id,
+ def_pickup_id: def_pickup_id
+ },
+ success: function (res) {
+ if (res.data.code == 0) {
+ if (th.data.choice_sort_store == 0) th.setData({
+ fir_pick_index: 0
+ });
+ getApp().globalData.pk_store = item;
+ } else {
+ //s.showWarning("设置默认门店地址失败", null, 500, !1);
+ getApp().my_warnning("设置默认门店地址失败", 0, th)
+ }
+
+ }
+ });
+
+ th.setData({
+ def_pick_store: item,
+ sto_sele_name: item.pickup_name,
+ sto_sele_id: item.pickup_id,
+ sto_sele_distr: item.distr_type,
+ store: 0,
+ choice_sort_store: 0
+ });
+
+ var openindstore = th.data.open_ind_store;
+ if (openindstore == 1) {
+ th.setData({
+ openSpecModal: !0,
+ openSpecModal_ind: openindstore,
+ store: 0,
+ choice_sort_store: 0,
+ sort_store: 0,
+ });
+ } else if (openindstore == 2) {
+ th.setData({
+ openSpecModal: !0,
+ openSpecModal_ind: openindstore,
+ store: 0,
+ choice_sort_store: 0,
+ sort_store: 0,
+ });
+ }
+ else if (openindstore == 4) { //4就是拼团
+ th.setData({
+ openSpecModal_pt: 1, //打开拼团购买界面
+ store: 0, //关闭门店
+ choice_sort_store: 0, //关闭门店2级
+ sort_store: 0, //关闭门店2级
+ });
+ }
+
+ else {
+ th.setData({
+ store: 0,
+ choice_sort_store: 0,
+ sort_store: 0,
+ })
+ }
+
+ //如果商品没有其他活动,要取一下线下价格
+ th.get_off_price();
+
+ })
+ },
- })
- },
+ wait_for_store_config: function () {
+ var th = this;
+ var t_time = setInterval(function () {
+ if (th.data.bconfig == null) false;
+ var e = th.data.bconfig;
+ if (e && e.is_sort_storage) {
+ wx.getLocation({
+ type: 'gcj02',
+ success: function (res) {
+ th.data.lat = res.latitude;
+ th.data.lon = res.longitude;
+ th.data.is_get_local_ok = 1;
+ },
+ fail: function (res) {
+ if (res.errCode == 2) {
+ th.setData({
+ is_gps: 0
+ });
+ if (th.data.is_gps == 0) {
+ getApp().confirmBox("请开启GPS定位", null, 10000, !1);
+ }
- wait_for_store_config: function () {
- var th = this;
- var t_time = setInterval(function () {
- if (th.data.bconfig == null) false;
- var e = th.data.bconfig;
- if (e && e.is_sort_storage) {
- wx.getLocation({
- type: 'gcj02',
- success: function (res) {
- th.data.lat = res.latitude;
- th.data.lon = res.longitude;
- th.data.is_get_local_ok = 1;
- },
- fail: function (res) {
- if (res.errCode == 2) {
- th.setData({
- is_gps: 0
- });
- if (th.data.is_gps == 0) {
- getApp().confirmBox("请开启GPS定位", null, 10000, !1);
- }
+ } else {
+ th.setData({
+ is_gps: "3"
+ });
+ }
+ th.data.is_get_local_ok = 1;
+ }
+ })
} else {
- th.setData({
- is_gps: "3"
- });
+ th.data.is_get_local_ok = 1;
}
-
- th.data.is_get_local_ok = 1;
- }
- })
- } else {
- th.data.is_get_local_ok = 1;
- }
- clearInterval(t_time);
- }, 500)
- },
- //显示全部
- toggleHandler: function (e) {
- var that = this,
- index = e.currentTarget.dataset.index;
- for (var i = 0; i < that.data.comments.length; i++) {
- if (index == i) {
+ clearInterval(t_time);
+ }, 500)
+ },
+ //显示全部
+ toggleHandler: function (e) {
+ var that = this,
+ index = e.currentTarget.dataset.index;
for (var i = 0; i < that.data.comments.length; i++) {
- that.data.comments[index].auto = true;
- that.data.comments[index].seeMore = false;
+ if (index == i) {
+ for (var i = 0; i < that.data.comments.length; i++) {
+ that.data.comments[index].auto = true;
+ that.data.comments[index].seeMore = false;
+ }
+ }
}
- }
- }
- that.setData({
- comments: that.data.comments
- })
- },
+ that.setData({
+ comments: that.data.comments
+ })
+ },
- //收起更多
- toggleContent: function (e) {
- var that = this,
- index = e.currentTarget.dataset.index;
- for (var i = 0; i < that.data.comments.length; i++) {
- if (index == i) {
- that.data.comments[index].auto = true;
- that.data.comments[index].seeMore = true;
- }
- }
- that.setData({
- comments: that.data.comments
- })
- },
+ //收起更多
+ toggleContent: function (e) {
+ var that = this,
+ index = e.currentTarget.dataset.index;
+ for (var i = 0; i < that.data.comments.length; i++) {
+ if (index == i) {
+ that.data.comments[index].auto = true;
+ that.data.comments[index].seeMore = true;
+ }
+ }
+ that.setData({
+ comments: that.data.comments
+ })
+ },
- //--- 获取卡类列表 ---
- getPlusCardType: function (func) {
- var storid = os.stoid;
- var th = this;
- var user = getApp().globalData.userInfo;
- if (!user) return false;
- getApp().request.promiseGet("/api/weshop/plus/vip/mem/bership/list?" + "storeId=" + storid, {}).then(res => {
- var plusCard = res.data.data;
- var arr = [1219, 2089, 3031];
- var new_arr = new Array();
- var card_name_map = new Map();
-
- var list = [];
- for (var i = 0; i < plusCard.length; i++) {
- if ((!user || user.card_field == null || user.card_field == "") && plusCard[i].IsStopBuy == true) continue;
- var name = "card" + plusCard[i].CorrPrice.toLowerCase();
- card_name_map.set(name, plusCard[i].CardName);
- list.push(plusCard[i]);
- }
+ //--- 获取卡类列表 ---
+ getPlusCardType: function (func) {
+ var storid = os.stoid;
+ var th = this;
+ var user = getApp().globalData.userInfo;
+ if (!user) return false;
+ getApp().request.promiseGet("/api/weshop/plus/vip/mem/bership/list?" + "storeId=" + storid, {}).then(res => {
+ var plusCard = res.data.data;
+ var arr = [1219, 2089, 3031];
+ var new_arr = new Array();
+ var card_name_map = new Map();
+
+ var list = [];
+ for (var i = 0; i < plusCard.length; i++) {
+ if ((!user || user.card_field == null || user.card_field == "") && plusCard[i].IsStopBuy == true) continue;
+ var name = "card" + plusCard[i].CorrPrice.toLowerCase();
+ card_name_map.set(name, plusCard[i].CardName);
+ list.push(plusCard[i]);
+ }
- var ob = { "card_list": list, "name_map": card_name_map };
- func(ob);
- })
- },
+ var ob = {"card_list": list, "name_map": card_name_map};
+ func(ob);
+ })
+ },
- go_plus: function () {
- getApp().goto("/pages/user/plus/plus");
- },
- go_card_info: function () {
- getApp().goto("/pages/user/cardinfo/cardinfo");
- },
- //-- 根据ID拿出门店 --
- get_pick_from_list(pid) {
- var all_pick_list = this.data.all_pick_list;
- for (var i in all_pick_list) {
- var item = all_pick_list[i];
- if (item.pickup_id == pid) {
- return item;
- }
- }
- },
- //-----显示优惠券的时候情况-----
- show_more_cx: function () {
- if (this.data.is_more_cx) {
- this.setData({ is_more_cx: 0 });
- } else {
- this.setData({ is_more_cx: 1 });
- }
- },
+ go_plus: function () {
+ getApp().goto("/pages/user/plus/plus");
+ },
+ go_card_info: function () {
+ getApp().goto("/pages/user/cardinfo/cardinfo");
+ },
+ //-- 根据ID拿出门店 --
+ get_pick_from_list(pid) {
+ var all_pick_list = this.data.all_pick_list;
+ for (var i in all_pick_list) {
+ var item = all_pick_list[i];
+ if (item.pickup_id == pid) {
+ return item;
+ }
+ }
+ },
+ //-----显示优惠券的时候情况-----
+ show_more_cx: function () {
+ if (this.data.is_more_cx) {
+ this.setData({is_more_cx: 0});
+ } else {
+ this.setData({is_more_cx: 1});
+ }
+ },
- //----跳转到搭配购买----
- go_prom_list: function () {
+ //----跳转到搭配购买----
+ go_prom_list: function () {
- var url = "../../../packageA/pages/prom_list/prom_list?goods_id=" + this.data.gid;
- var room_id = getApp().globalData.room_id;
- if (room_id && this.data.gid == getApp().globalData.room_goods_id) {
- url += "&room_id=" + room_id;
- }
- wx.navigateTo({ url: url, })
- },
+ var url = "../../../packageA/pages/prom_list/prom_list?goods_id=" + this.data.gid;
+ var room_id = getApp().globalData.room_id;
+ if (room_id && this.data.gid == getApp().globalData.room_goods_id) {
+ url += "&room_id=" + room_id;
+ }
+ wx.navigateTo({url: url,})
+ },
- //---检查有没有优惠活动---
- check_is_youhui: function (gid, is_nor) {
- var th = this;
- var user_id=getApp().globalData.user_id;
- if(!user_id) user_id=0;
- //如果是普通购买的时候,要进行调用
- if (is_nor) {
- getApp().request.get("/api/weshop/goods/getGoodsPromNormal/" + os.stoid + "/" + gid, {
- success: function (res) {
- if (res.data.code == 0) {
- var r_data = res.data.data;
-
- if(r_data.ladderLists){
- var act_id=r_data.ladderLists[0].form_id;
- //-- 判断会员能不能参与阶梯促销 --
- getApp().request.promiseGet("/api/weshop/prom/ladderForm/getNew/" + os.stoid+"/"+user_id + "/"+act_id, {
- }).then(res=>{
- if(res.data.code==0 && res.data.data){
- var prom_content="";
- for(let jj in r_data.ladderLists){
- if(r_data.ladderLists[jj].discount==10){
- prom_content+="第"+(parseInt(jj)+1)+"件原价,";
- }else{
- prom_content+="第"+(parseInt(jj)+1)+"件"+r_data.ladderLists[jj].discount+"折,";
- }
- }
- prom_content=ut.sub_last(prom_content);
- th.data.prom_type=10;
- th.data.prom_id=act_id;
- th.setData({
- jieti_prom:prom_content,
- ladder_act_id:act_id
- })
- }
- })
- }
+ //---检查有没有优惠活动---
+ check_is_youhui: function (gid, is_nor) {
+ var th = this;
+ var user_id = getApp().globalData.user_id;
+ if (!user_id) user_id = 0;
+ //如果是普通购买的时候,要进行调用
+ if (is_nor) {
+ getApp().request.get("/api/weshop/goods/getGoodsPromNormal/" + os.stoid + "/" + gid, {
+ success: function (res) {
+ if (res.data.code == 0) {
+ var r_data = res.data.data;
+
+ if (r_data.ladderLists) {
+ var act_id = r_data.ladderLists[0].form_id;
+ //-- 判断会员能不能参与阶梯促销 --
+ getApp().request.promiseGet("/api/weshop/prom/ladderForm/getNew/" + os.stoid + "/" + user_id + "/" + act_id, {}).then(res => {
+ if (res.data.code == 0 && res.data.data) {
+ var prom_content = "";
+ for (let jj in r_data.ladderLists) {
+ if (r_data.ladderLists[jj].discount == 10) {
+ prom_content += "第" + (parseInt(jj) + 1) + "件原价,";
+ } else {
+ prom_content += "第" + (parseInt(jj) + 1) + "件" + r_data.ladderLists[jj].discount + "折,";
+ }
+ }
+ prom_content = ut.sub_last(prom_content);
+ th.data.prom_type = 10;
+ th.data.prom_id = act_id;
+ th.setData({
+ jieti_prom: prom_content,
+ ladder_act_id: act_id
+ })
+ }
+ })
+ }
- th.setData({
- prom_goods: r_data.promGoodsLists,
+ th.setData({
+ prom_goods: r_data.promGoodsLists,
+ })
+ th.is_show_more_buy();
+ }
+ },
})
- th.is_show_more_buy();
- }
- },
- })
-
- } else {
- //调用接口判断订单优惠,
- getApp().request.get("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + gid + "/0", {
- success: function (res) {
-
- if (res.data.code == 0 && res.data.data) {
- var r_data = res.data.data;
- var max = 0, min = 0;
- if (r_data.collocationList) {
- for (var i in r_data.collocationList) {
- if (max == 0) max = r_data.collocationList[i].price;
- if (min == 0) min = r_data.collocationList[i].price;
-
- if (max < parseFloat(r_data.collocationList[i].price)) max = r_data.collocationList[i].price;
- if (min > parseFloat(r_data.collocationList[i].price)) min = r_data.collocationList[i].price;
- }
- r_data.collocationPromList.max = (max + th.data.data.shop_price).toFixed(2);
- r_data.collocationPromList.min = (min + th.data.data.shop_price).toFixed(2);
- }
-
- if(r_data.ladderLists){
- var act_id=r_data.ladderLists[0].form_id;
- //-- 判断会员能不能参与阶梯促销 --
- getApp().request.promiseGet("/api/weshop/prom/ladderForm/getNew/" + os.stoid+"/"+user_id + "/"+act_id, {
- }).then(res=>{
- if(res.data.code==0 && res.data.data){
- var prom_content="";
- for(let jj in r_data.ladderLists){
- if(r_data.ladderLists[jj].discount==10){
- prom_content+="第"+(parseInt(jj)+1)+"件原价,";
- }else{
- prom_content+="第"+(parseInt(jj)+1)+"件"+r_data.ladderLists[jj].discount+"折,";
+
+ } else {
+ //调用接口判断订单优惠,
+ getApp().request.get("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + gid + "/0", {
+ success: function (res) {
+
+ if (res.data.code == 0 && res.data.data) {
+ var r_data = res.data.data;
+ var max = 0, min = 0;
+ if (r_data.collocationList) {
+ for (var i in r_data.collocationList) {
+ if (max == 0) max = r_data.collocationList[i].price;
+ if (min == 0) min = r_data.collocationList[i].price;
+
+ if (max < parseFloat(r_data.collocationList[i].price)) max = r_data.collocationList[i].price;
+ if (min > parseFloat(r_data.collocationList[i].price)) min = r_data.collocationList[i].price;
}
+ r_data.collocationPromList.max = (max + th.data.data.shop_price).toFixed(2);
+ r_data.collocationPromList.min = (min + th.data.data.shop_price).toFixed(2);
+ }
+
+ if (r_data.ladderLists) {
+ var act_id = r_data.ladderLists[0].form_id;
+ //-- 判断会员能不能参与阶梯促销 --
+ getApp().request.promiseGet("/api/weshop/prom/ladderForm/getNew/" + os.stoid + "/" + user_id + "/" + act_id, {}).then(res => {
+ if (res.data.code == 0 && res.data.data) {
+ var prom_content = "";
+ for (let jj in r_data.ladderLists) {
+ if (r_data.ladderLists[jj].discount == 10) {
+ prom_content += "第" + (parseInt(jj) + 1) + "件原价,";
+ } else {
+ prom_content += "第" + (parseInt(jj) + 1) + "件" + r_data.ladderLists[jj].discount + "折,";
+ }
+ }
+ prom_content = ut.sub_last(prom_content);
+ th.data.prom_type = 10;
+ th.data.prom_id = act_id;
+ th.setData({
+ jieti_prom: prom_content,
+ ladder_act_id: act_id
+ })
+ }
+ })
}
- prom_content=ut.sub_last(prom_content);
- th.data.prom_type=10;
- th.data.prom_id=act_id;
+
th.setData({
- jieti_prom:prom_content,
- ladder_act_id:act_id
+ order_prom: r_data.promOrder,
+ collocationGoods: r_data.collocationPromList,
+ prom_goods: r_data.promGoodsLists,
})
+ th.is_show_more_buy();
}
- })
- }
-
- th.setData({
- order_prom: r_data.promOrder,
- collocationGoods: r_data.collocationPromList,
- prom_goods: r_data.promGoodsLists,
+ }
})
- th.is_show_more_buy();
- }
}
- })
- }
- },
+ },
- closePoster() {
- this.setData({
- showPoster: false,
- });
- },
+ closePoster() {
+ this.setData({
+ showPoster: false,
+ });
+ },
- // 保存图片到手机
- savePic() {
- console.log('保存图片');
- var self = this;
- // 获取用户的当前设置,返回值中有小程序已经向用户请求过的权限
- this.getSetting().then((res) => {
- // 判断用户是否授权了保存到相册的权限,如果没有发起授权
- if (!res.authSetting['scope.writePhotosAlbum']) {
- this.authorize().then(() => {
- // 同意授权后保存下载文件
- this.saveImage(self.data.shareImgPath)
- .then(() => {
- self.setData({
- showPoster: false
- });
- });
- })
- } else {
- // 如果已经授权,保存下载文件
- this.saveImage(self.data.shareImgPath)
- .then(() => {
- self.setData({
- showPoster: false
- });
- });
- }
+ // 保存图片到手机
+ savePic() {
+ console.log('保存图片');
+ var self = this;
+ // 获取用户的当前设置,返回值中有小程序已经向用户请求过的权限
+ this.getSetting().then((res) => {
+ // 判断用户是否授权了保存到相册的权限,如果没有发起授权
+ if (!res.authSetting['scope.writePhotosAlbum']) {
+ this.authorize().then(() => {
+ // 同意授权后保存下载文件
+ this.saveImage(self.data.shareImgPath)
+ .then(() => {
+ self.setData({
+ showPoster: false
+ });
+ });
+ })
+ } else {
+ // 如果已经授权,保存下载文件
+ this.saveImage(self.data.shareImgPath)
+ .then(() => {
+ self.setData({
+ showPoster: false
+ });
+ });
+ }
- })
- },
+ })
+ },
- // 获取用户已经授予了哪些权限
- getSetting() {
- return new Promise((resolve, reject) => {
- wx.getSetting({
- success: res => {
- resolve(res)
- }
- })
- })
- },
+ // 获取用户已经授予了哪些权限
+ getSetting() {
+ return new Promise((resolve, reject) => {
+ wx.getSetting({
+ success: res => {
+ resolve(res)
+ }
+ })
+ })
+ },
- // 发起首次授权请求
- authorize() {
- // isFirst 用来记录是否为首次发起授权,
- // 如果首次授权拒绝后,isFirst赋值为1
- let isFirst = wx.getStorageSync('isFirst') || 0;
- return new Promise((resolve, reject) => {
- wx.authorize({
- scope: 'scope.writePhotosAlbum',
- // 同意授权
- success: () => {
- resolve();
- },
- // 拒绝授权,这里是用户拒绝授权后的回调
- fail: res => {
- if (isFirst === 0) {
- wx.setStorageSync('isFirst', 1);
- wx.showToast({
- title: '保存失败',
- icon: 'none',
- duration: 1000
+ // 发起首次授权请求
+ authorize() {
+ // isFirst 用来记录是否为首次发起授权,
+ // 如果首次授权拒绝后,isFirst赋值为1
+ let isFirst = wx.getStorageSync('isFirst') || 0;
+ return new Promise((resolve, reject) => {
+ wx.authorize({
+ scope: 'scope.writePhotosAlbum',
+ // 同意授权
+ success: () => {
+ resolve();
+ },
+ // 拒绝授权,这里是用户拒绝授权后的回调
+ fail: res => {
+ if (isFirst === 0) {
+ wx.setStorageSync('isFirst', 1);
+ wx.showToast({
+ title: '保存失败',
+ icon: 'none',
+ duration: 1000
+ })
+ } else {
+ this.showModal();
+ }
+ console.log('拒绝授权');
+ reject();
+ }
})
- } else {
- this.showModal();
- }
- console.log('拒绝授权');
- reject();
- }
- })
- })
- },
+ })
+ },
- // 保存图片到系统相册
- saveImage(saveUrl) {
- var self = this;
- return new Promise((resolve, reject) => {
- wx.saveImageToPhotosAlbum({
- filePath: saveUrl,
- success: (res) => {
- wx.showToast({
- title: '保存成功',
- duration: 1000,
- });
- self.setData({
- showPlaybill: 'true'
- });
- resolve();
- },
- fail: () => {
- wx.showToast({
- title: '保存失败',
- duration: 1000,
- });
- }
- })
- })
- },
+ // 保存图片到系统相册
+ saveImage(saveUrl) {
+ var self = this;
+ return new Promise((resolve, reject) => {
+ wx.saveImageToPhotosAlbum({
+ filePath: saveUrl,
+ success: (res) => {
+ wx.showToast({
+ title: '保存成功',
+ duration: 1000,
+ });
+ self.setData({
+ showPlaybill: 'true'
+ });
+ resolve();
+ },
+ fail: () => {
+ wx.showToast({
+ title: '保存失败',
+ duration: 1000,
+ });
+ }
+ })
+ })
+ },
- previewImage(e) {
- this.data.show_prew_img = 1;
- wx.previewImage({
- //将图片预览出来
- urls: [this.data.sele_g.original_img]
- });
- },
+ previewImage(e) {
+ this.data.show_prew_img = 1;
+ wx.previewImage({
+ //将图片预览出来
+ urls: [this.data.sele_g.original_img]
+ });
+ },
- is_show_more_buy: function () {
- var prom_goods = this.data.prom_goods;
- var per_price = this.data.sele_g.shop_price
- if (this.data.card_field && this.data.sele_g[this.data.card_field] > 0) {
- per_price = this.data.sele_g[this.data.card_field];
- }
- var all_price = per_price * this.data.goodsInputNum;
- var con = null;
- for (var i in prom_goods) {
- var item = prom_goods[i];
- if (item.prom_type == 1) {
- if (item.condition > this.data.goodsInputNum) {
- con = item;
- con.need = (item.condition - this.data.goodsInputNum).toFixed(2) + "件";
- break;
+ is_show_more_buy: function () {
+ var prom_goods = this.data.prom_goods;
+ var per_price = this.data.sele_g.shop_price
+ if (this.data.card_field && this.data.sele_g[this.data.card_field] > 0) {
+ per_price = this.data.sele_g[this.data.card_field];
}
- } else {
- if (item.condition > all_price) {
- con = item;
- con.need = (item.condition - all_price).toFixed(2) + "元";
- break;
+ var all_price = per_price * this.data.goodsInputNum;
+ var con = null;
+ for (var i in prom_goods) {
+ var item = prom_goods[i];
+ if (item.prom_type == 1) {
+ if (item.condition > this.data.goodsInputNum) {
+ con = item;
+ con.need = (item.condition - this.data.goodsInputNum).toFixed(2) + "件";
+ break;
+ }
+ } else {
+ if (item.condition > all_price) {
+ con = item;
+ con.need = (item.condition - all_price).toFixed(2) + "元";
+ break;
+ }
+ }
}
- }
- }
- this.setData({ hui_condition: con });
+ this.setData({hui_condition: con});
- },
+ },
- //-- 积分购 --
- go_pay_integral: function () {
- this.data.g_buy_num = new Map();
- this.get_sto(0)
- this.setData({ openSpecModal_inte: 1, goodsInputNum: 1 });
+ //-- 积分购 --
+ go_pay_integral: function () {
+ this.data.g_buy_num = new Map();
+ this.get_sto(0)
+ this.setData({openSpecModal_inte: 1, goodsInputNum: 1});
- },
- //-- 积分购普通购买 --
- go_pay_integral_normal: function () {
-
- this.data.g_buy_num = new Map();
- var th = this;
- if (th.data.sku_g_pt) {
- this.get_sto(1)
- this.setData({ openSpecModal_inte_normal: 1 });
- } else {
- th.get_sto(1);
- th.get_sku(o.stoid, th.data.data, th.data.gid, 1, function () {
- th.setData({
- is_normal: 1,
- openSpecModal_inte_normal: 1
- });
- });
- }
- this.check_is_youhui(th.data.gid, 1);
- },
+ },
+ //-- 积分购普通购买 --
+ go_pay_integral_normal: function () {
+
+ this.data.g_buy_num = new Map();
+ var th = this;
+ if (th.data.sku_g_pt) {
+ this.get_sto(1)
+ this.setData({openSpecModal_inte_normal: 1});
+ } else {
+ th.get_sto(1);
+ th.get_sku(o.stoid, th.data.data, th.data.gid, 1, function () {
+ th.setData({
+ is_normal: 1,
+ openSpecModal_inte_normal: 1
+ });
+ });
+ }
+ this.check_is_youhui(th.data.gid, 1);
+ },
- closeSpecModal_inte: function () {
- this.setData({ openSpecModal_inte: 0 });
- },
- closeSpecModal_inte_normal: function () {
- this.setData({ openSpecModal_inte_normal: 0 });
- //要进行还原
- this.get_sto();
- this.setData({
- sele_g: this.data.data,
- gid: this.data.data.goods_id
- })
+ closeSpecModal_inte: function () {
+ this.setData({openSpecModal_inte: 0});
+ },
+ closeSpecModal_inte_normal: function () {
+ this.setData({openSpecModal_inte_normal: 0});
+ //要进行还原
+ this.get_sto();
+ this.setData({
+ sele_g: this.data.data,
+ gid: this.data.data.goods_id
+ })
- this.sele_spec_chech_activity();
- },
+ this.sele_spec_chech_activity();
+ },
- addCart_inte: function (t) {
- this.add_cart_func_inte(t);
- },
+ addCart_inte: function (t) {
+ this.add_cart_func_inte(t);
+ },
- onShareTimeline() {
- var store_name = getApp().globalData.config ? getApp().globalData.config.store_name : '';
- if (!store_name)
- store_name = getApp().globalData.setting.appName;
- return {
- title: this.data.data.goods_name + '-' + store_name,
- imageUrl: this.data.gallery[0].image_url,
- }
- },
+ onShareTimeline() {
+ var store_name = getApp().globalData.config ? getApp().globalData.config.store_name : '';
+ if (!store_name)
+ store_name = getApp().globalData.setting.appName;
+ return {
+ title: this.data.data.goods_name + '-' + store_name,
+ imageUrl: this.data.gallery[0].image_url,
+ }
+ },
- clickCollapse() {
- this.setData({
- flag: !this.data.flag,
- })
- },
+ clickCollapse() {
+ this.setData({
+ flag: !this.data.flag,
+ })
+ },
- clickShare() {
- this.setData({
- share_hidden: true,
- });
- },
+ clickShare() {
+ this.setData({
+ share_hidden: true,
+ });
+ },
- send() {
- this.setData({
- share_hidden: false,
- });
- },
+ send() {
+ this.setData({
+ share_hidden: false,
+ });
+ },
- cancel() {
- this.setData({
- share_hidden: false,
- });
- },
+ cancel() {
+ this.setData({
+ share_hidden: false,
+ });
+ },
- //积分购和拼团的普通购买的的时候,要判断有没有全场优惠活动
- check_nor_promgood(goods_id, back) {
- getApp().request.get("/api/weshop/goods/getGoodsPromNormal/" + os.stoid + "/" + goods_id, {
- success: function (res) {
- if (res.data.code == 0 && res.data.data && res.data.data.promGoodsLists && res.data.data.promGoodsLists.length > 0) {
- var obj = {
- act_id: res.data.data.promGoodsLists[0].prom_id,
- }
- back(obj);
- } else {
- back(0)
- }
- }
- })
- },
+ //积分购和拼团的普通购买的的时候,要判断有没有全场优惠活动
+ check_nor_promgood(goods_id, back) {
+ getApp().request.get("/api/weshop/goods/getGoodsPromNormal/" + os.stoid + "/" + goods_id, {
+ success: function (res) {
+ if (res.data.code == 0 && res.data.data && res.data.data.promGoodsLists && res.data.data.promGoodsLists.length > 0) {
+ var obj = {
+ act_id: res.data.data.promGoodsLists[0].prom_id,
+ }
+ back(obj);
+ } else {
+ back(0)
+ }
+ }
+ })
+ },
- go_zh: function (e) {
- var id = e.currentTarget.dataset.id;
- getApp().goto("/packageB/pages/zuhegou/index/index?id=" + id);
- },
+ go_zh: function (e) {
+ var id = e.currentTarget.dataset.id;
+ getApp().goto("/packageB/pages/zuhegou/index/index?id=" + id);
+ },
- check_zh_acting: function (func) {
- var isok = 1, item = this.data.sele_g;
- //如果有组合购
- var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + item.prom_id + "/" + getApp().globalData.user_id;
- getApp().request.promiseGet(url, {}).then(res => {
- if (res.data.code == 0 && res.data.data) {
- if (res.data.data.is_show != 1) {
- isok = 0;
- }
- //如果活动已经结束
- if (res.data.data.is_end == 1) {
- isok = 0;
- }
- //已经结束
- if (ut.gettimestamp() > res.data.data.end_time) {
- isok = 0;
- }
- //还未开始
- if (ut.gettimestamp() < res.data.data.start_time) {
- isok = 0;
- }
+ check_zh_acting: function (func) {
+ var isok = 1, item = this.data.sele_g;
+ //如果有组合购
+ var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + item.prom_id + "/" + getApp().globalData.user_id;
+ getApp().request.promiseGet(url, {}).then(res => {
+ if (res.data.code == 0 && res.data.data) {
+ if (res.data.data.is_show != 1) {
+ isok = 0;
+ }
+ //如果活动已经结束
+ if (res.data.data.is_end == 1) {
+ isok = 0;
+ }
+ //已经结束
+ if (ut.gettimestamp() > res.data.data.end_time) {
+ isok = 0;
+ }
+ //还未开始
+ if (ut.gettimestamp() < res.data.data.start_time) {
+ isok = 0;
+ }
- } else {
- //未找到商品的活动
- isok = 0;
- }
- item.act = res.data.data;
- func(isok);
- })
- },
+ } else {
+ //未找到商品的活动
+ isok = 0;
+ }
+ item.act = res.data.data;
+ func(isok);
+ })
+ },
//获取更多秒杀
get_more_flahs: async function (func) {
- var f_more=false;
- var user_id=getApp().globalData.user_id;
- if(!user_id) user_id=0;
+ var f_more = false;
+ var user_id = getApp().globalData.user_id;
+ if (!user_id) user_id = 0;
- var url="/api/weshop/goods/listSkuFlash?store_id="+os.stoid+"&goods_id="+this.data.data.goods_id+"&user_id="+user_id;
- //获取秒杀的多规格
- await getApp().request.promiseGet(url, {}).then(res=>{
- if(res.data.code==0 && res.data.data && res.data.data.length>0){
- f_more=res.data.data;
+ var url = "/api/weshop/goods/listSkuFlash?store_id=" + os.stoid + "&goods_id=" + this.data.data.goods_id + "&user_id=" + user_id;
+ //获取秒杀的多规格
+ await getApp().request.promiseGet(url, {}).then(res => {
+ if (res.data.code == 0 && res.data.data && res.data.data.length > 0) {
+ f_more = res.data.data;
}
})
- if(!f_more) {
+ if (!f_more) {
func(false);
return false;
}
//-- 秒杀的价格要更新 --
- for(let i in f_more){
+ for (let i in f_more) {
- let item=f_more[i];
- f_more[i].prom_id=item.act_id;
- f_more[i].prom_type=1;
- if(item.goods_id==this.data.data.goods_id){
- continue;
+ let item = f_more[i];
+ f_more[i].prom_id = item.act_id;
+ f_more[i].prom_type = 1;
+ if (item.goods_id == this.data.data.goods_id) {
+ continue;
}
- var url="/api/ms/flash_sale/getNew/"+os.stoid+"/"+user_id+"/"+item.act_id;
- await getApp().request.promiseGet(url, {}).then(rs=>{
- if(rs.data.code==0){
- f_more[i].price=rs.data.data.user_price;
+ var url = "/api/ms/flash_sale/getNew/" + os.stoid + "/" + user_id + "/" + item.act_id;
+ await getApp().request.promiseGet(url, {}).then(rs => {
+ if (rs.data.code == 0) {
+ f_more[i].price = rs.data.data.user_price;
- }
+ }
})
}
func(f_more);
@@ -6198,57 +6360,58 @@ Page({
},
//-- 判断是否有秒杀 --
- check_has_flash:function () {
- var th=this;
- var url="/api/weshop/activitylist/getGoodActInfo";
- var user_id=getApp().globalData.user_id;
- if(!user_id) user_id=0;
-
- var req_data={
- store_id:os.stoid,goodsidlist:this.data.data.goods_id,is_detail:1,user_id:user_id
+ check_has_flash: function () {
+ var th = this;
+ var url = "/api/weshop/activitylist/getGoodActInfo";
+ var user_id = getApp().globalData.user_id;
+ if (!user_id) user_id = 0;
+
+ var req_data = {
+ store_id: os.stoid, goodsidlist: this.data.data.goods_id, is_detail: 1, user_id: user_id
};
//获取秒杀的多规格
- getApp().request.promiseGet(url, {data:req_data}).then(async function (res) {
- if(res.data.code==0 && res.data.data && res.data.data.length){
- var arr_data=res.data.data;
- var new_arr=[];
- for(let i in arr_data){
- let item=arr_data[i];
+ getApp().request.promiseGet(url, {data: req_data}).then(async function (res) {
+ if (res.data.code == 0 && res.data.data && res.data.data.length) {
+ var arr_data = res.data.data;
+ var new_arr = [];
+ for (let i in arr_data) {
+ let item = arr_data[i];
//找不到活动要剔除
- if(!item.act_name) continue;
- if(item.prom_type!=1) continue;
+ if (!item.act_name) continue;
+ if (item.prom_type != 1) continue;
new_arr.push(item);
}
- if(new_arr.length==1){
- th.data.prom_id=new_arr[0].act_id;
- th.data.prom_type=new_arr[0].prom_type;
+ if (new_arr.length == 1) {
+ th.data.prom_id = new_arr[0].act_id;
+ th.data.prom_type = new_arr[0].prom_type;
}
- th.setData({more_flash:new_arr});
+ th.setData({more_flash: new_arr});
}
})
},
//-- 跳转到秒杀商品详情页 --
- go_more_flash:function (e) {
- var prom_id=e.currentTarget.dataset.id;
- var goods_id=this.data.data.goods_id;
- var url="/pages/goods/goodsInfo/goodsInfo?goods_id="+goods_id+"&prom_id="+prom_id+"&prom_type=1";
+ go_more_flash: function (e) {
+ var prom_id = e.currentTarget.dataset.id;
+ var goods_id = this.data.data.goods_id;
+ var url = "/pages/goods/goodsInfo/goodsInfo?goods_id=" + goods_id + "&prom_id=" + prom_id + "&prom_type=1";
getApp().goto(url);
},
- close_pop_more:function () {
- this.setData({is_pop_more:0})
+ close_pop_more: function () {
+ this.setData({is_pop_more: 0})
},
- con_weixin:function () {
- var url=this.data.sys_switch.weapp_customertype_url;
- var id=this.data.sys_switch.weapp_customertype_appid;
+ con_weixin: function () {
+ var url = this.data.sys_switch.weapp_customertype_url;
+ var id = this.data.sys_switch.weapp_customertype_appid;
wx.openCustomerServiceChat({
extInfo: {url: url},
corpId: id,
- success(res) {}
+ success(res) {
+ }
})
},
get_normal(gid){
@@ -6258,41 +6421,102 @@ Page({
});
this.get_sku(os.stoid, this.data.data, gid);
this.get_sto();
- this.check_is_youhui(gid,1);
- this.data.is_normal=1;
+ this.check_is_youhui(gid, 1);
+ this.data.is_normal = 1;
},
-
- // 促销 -> 送礼包 -> 查看详情
- viewLbDetails(e) {
- let id = e.currentTarget.dataset.id; // 获取礼包id
- let url = `/packageA/pages/myGiftDetails/myGiftDetails?btn=0&index=0&id=${id}`; // btn=0 控制跳转到的页面不显示按钮
- // console.log('myurl', url);
- getApp().goto(url);
- },
- go_more_ladder:function (e) {
- var prom_id=e.currentTarget.dataset.id;
- getApp().goto("/pages/goods/goodsList/goodsList?ladder_id="+prom_id);
+ // 促销 -> 送礼包 -> 查看详情
+ viewLbDetails(e) {
+ let id = e.currentTarget.dataset.id; // 获取礼包id
+ let url = `/packageA/pages/myGiftDetails/myGiftDetails?btn=0&index=0&id=${id}`; // btn=0 控制跳转到的页面不显示按钮
+ // console.log('myurl', url);
+ getApp().goto(url);
+ },
+
+ go_more_ladder: function (e) {
+ var prom_id = e.currentTarget.dataset.id;
+ getApp().goto("/pages/goods/goodsList/goodsList?ladder_id=" + prom_id);
},
getHistoryBuy() {
- let _this=this;
- let req_data = {
- store_id:os.stoid,
- goods_id:this.data.gid,
- pay_status:1,
- rndid:1
- };
- getApp().request.promiseGet('/api/weshop/ordergoods/list',{
- data:req_data,
- })
- .then(res=>{
- if(t.ajax_ok(res)){
- _this.setData({
- historyBuyInfo:res.data.data.pageData,
- })
+ let _this = this;
+ let req_data = {
+ store_id: os.stoid,
+ goods_id: this.data.gid,
+ pay_status: 1,
+ rndid: 1
+ };
+ getApp().request.promiseGet('/api/weshop/ordergoods/list', {
+ data: req_data,
+ })
+ .then(res => {
+ if (t.ajax_ok(res)) {
+ _this.setData({
+ historyBuyInfo: res.data.data.pageData,
+ })
+ }
+ })
+ },
+
+ //-- 检验商品的活动情况 --
+ check_gd_prom_new: function (func) {
+ var th = this;
+ var user_id = getApp().globalData.user_id;
+ if (!user_id) user_id = 0;
+
+ var url = '/api/weshop/activitylist/listGoodActInfo2';
+ var req_d = {
+ "store_id": os.stoid,
+ "goods_id": this.data.gid,
+ "user_id": user_id,
}
- })
+ getApp().request.get(url, {
+ data: req_d,
+ success: function (e) {
+ if (e.data.code == 0 && e.data.data && e.data.data.length > 0) {
+ var arr = e.data.data;
+ var arr2 = arr.filter(function (e) {
+ return e.s_time < ut.gettimestamp();
+ })
+ //-- 如果只有一个活动的话 --
+ if (arr.length == 1) {
+ th.data.prom_type = arr[0].prom_type;
+ th.data.prom_id = arr[0].act_id;
+ }
+ //-- 如果只有一个进行中的活动的话 --
+ else if (arr2.length == 1) {
+ th.data.prom_type = arr2[0].prom_type;
+ th.data.prom_id = arr2[0].act_id;
+ }
+ }
+ //-- 调用回调 --
+ func();
+ }
+ });
+ },
+
+ //-- 秒杀的普通购买 --
+ openSpecModel_Nor: function () {
+ this.data.g_buy_num = new Map();
+ var th = this;
+ this.setData({open_ind_store: 5, goodsInputNum: 1});//拼团直接给4
+ if (th.data.sku_g_pt) {
+ this.get_sto(1)
+ this.setData({openSpecModal_flash_normal: 1});
+ } else {
+ th.get_sto(1);
+ th.get_sku(o.stoid, th.data.data, th.data.gid, 1, function () {
+ th.setData({
+ openSpecModal_flash_normal: 1
+ });
+ });
+ }
+ this.check_is_youhui(th.data.gid, 1);
+ },
+
+ closeSpecModal_flash_normal: function () {
+ this.setData({openSpecModal_flash_normal: 0});
}
-});
+
+})
diff --git a/pages/goods/goodsInfo/goodsInfo.wxml b/pages/goods/goodsInfo/goodsInfo.wxml
index 41ece2e..fb306f1 100644
--- a/pages/goods/goodsInfo/goodsInfo.wxml
+++ b/pages/goods/goodsInfo/goodsInfo.wxml
@@ -568,6 +568,7 @@
送{{item.couponMoney}}元优惠券
送商品{{item.goods_name}}
送{{item.lbtitle}}
+ 送{{item.zxlbtitle}}
@@ -1003,6 +1004,7 @@
+
@@ -1053,14 +1055,34 @@
加入购物车
立即抢购
+
- 即将开始
+
+
+ 单独购买
+ 即将开始
+
+
+ 即将开始
+
+
+
- 已抢光
+
+
+ 单独购买
+ 已抢光
+
+ 已抢光
- 活动已经结束
+
+ 单独购买
+ 活动已经结束
+
+
+ 活动已经结束
@@ -1267,6 +1289,7 @@
,送优惠券
,送赠品
,送礼包
+ ,送专享礼包
@@ -1664,3 +1687,8 @@
+
+
+
+
+
diff --git a/pages/user/order_detail/order_detail.js b/pages/user/order_detail/order_detail.js
index 811eae6..1a91a14 100644
--- a/pages/user/order_detail/order_detail.js
+++ b/pages/user/order_detail/order_detail.js
@@ -1149,12 +1149,21 @@ Page({
}
})
//----已经结束-----
- if (flash && flash.is_end == 0 && flash.end_time > timestamp && flash.start_time < timestamp) {
- prom = flash;
- prom.price = prom.user_price;
- b_item.price = prom.price;
- good.prom_type = 1;
- good.prom_id = prom.id;
+ if (flash && flash.is_end == 0) {
+
+ if( flash.end_time > timestamp && flash.start_time < timestamp){
+ prom = flash;
+ prom.price = prom.user_price;
+ b_item.price = prom.price;
+ good.prom_type = 1;
+ good.prom_id = prom.id;
+ }else{
+ if(g_item.prom_type==0 && !flash.is_shop_buy ){
+ err_text+=g_item['goods_name']+"秒杀活动不允许普通价\n";
+ continue;
+ }
+ }
+
}
break;
case 2:
@@ -1398,8 +1407,11 @@ Page({
redis_num = res.data.data;
});
if(redis_num<=0){
- err_text+= good['goods_name']+"活动不足\n";
- continue;
+ //不允许商品普通价格修改
+ if(!prom.is_shop_buy && prom.is_shop_buy!=undefined) {
+ err_text += good['goods_name'] + "活动不足\n";
+ continue;
+ }
}
}
diff --git a/pages/user/order_list/order_list.js b/pages/user/order_list/order_list.js
index db9c5d2..2c6924a 100644
--- a/pages/user/order_list/order_list.js
+++ b/pages/user/order_list/order_list.js
@@ -1351,7 +1351,7 @@ Page({
var url="/api/weshop/activitylist/getGoodActInfo";
var req_data={
- store_id:g_item.store_id,goodsidlist:g_item.goods_id,is_detail:1,user_id:user_id
+ store_id:g_item.store_id,goodsidlist:g_item.goods_id,is_detail:1,user_id:user_id,timetype:0
};
await getApp().request.promiseGet(url, {data:req_data}).then(res=>{
if(res.data.code==0){
@@ -1367,16 +1367,25 @@ Page({
switch (good.prom_type) {
case 1:
var flash = null;
- await getApp().request.promiseGet("/api/ms/flash_sale/getNew/" + os.stoid + "/" + user_id + "/" + good.prom_id, {}).then(res => {
+ await getApp().request.promiseGet("/api/ms/flash_sale/getNew/" + os.stoid + "/" + getApp().globalData.user_id + "/" + good.prom_id, {}).then(res => {
if (res.data.code == 0) {
flash = res.data.data;
}
})
- //----已经结束-----
- if (flash && flash.is_end == 0 && flash.end_time > timestamp && flash.start_time < timestamp) {
- prom = flash;
- prom.price = prom.user_price;
- b_item.price = prom.user_price;
+ //----没有结束-----
+ if (flash && flash.is_end == 0 ) {
+
+ if(flash.end_time > timestamp && flash.start_time < timestamp){
+ prom = flash;
+ prom.price = prom.user_price;
+ b_item.price = prom.user_price;
+ }else{
+ if(g_item.prom_type==0 && !flash.is_shop_buy ){
+ err_text+=g_item['goods_name']+"秒杀活动不允许普通价\n";
+ continue;
+ }
+ }
+
}
break;
@@ -1626,8 +1635,11 @@ Page({
redis_num = res.data.data;
});
if(redis_num<=0){
- err_text+= good['goods_name']+"活动不足\n";
- continue;
+ //不允许商品普通价格修改
+ if(!prom.is_shop_buy && prom.is_shop_buy!=undefined ){
+ err_text+= good['goods_name']+"活动不足\n";
+ continue;
+ }
}
}