Commit 2badbe81874fe3e595892b4887c8b38928b42eb5

Authored by yvan.ni
1 parent da9d6b70

秒杀和全场活动的叠加

packageE/pages/cart/cart2/cart2.js
@@ -1411,7 +1411,7 @@ Page({ @@ -1411,7 +1411,7 @@ Page({
1411 } 1411 }
1412 th.setData({ collocation_goods: gg.collocation_goods }); 1412 th.setData({ collocation_goods: gg.collocation_goods });
1413 1413
1414 - if (th.data.all_collocation_list) { 1414 + if (th.data.all_collocation_list && gg.collocation_goods) {
1415 for (var i = 0; i < th.data.all_collocation_list.length; i++) { 1415 for (var i = 0; i < th.data.all_collocation_list.length; i++) {
1416 var item0 = th.data.all_collocation_list[i]; 1416 var item0 = th.data.all_collocation_list[i];
1417 var idx = gg.collocation_goods.findIndex(function (e) { 1417 var idx = gg.collocation_goods.findIndex(function (e) {
@@ -1425,12 +1425,14 @@ Page({ @@ -1425,12 +1425,14 @@ Page({
1425 1425
1426 } 1426 }
1427 1427
  1428 + if( gg.collocation_goods){
  1429 + //var narr=gg.collocation_goods;
  1430 + //修改成深拷贝,确保返回是数据正确
  1431 + var narr = JSON.parse(JSON.stringify(gg.collocation_goods));
  1432 + narr.push(t.data.data);
  1433 + await th.get_collocation_list(narr);
  1434 + }
1428 1435
1429 - //var narr=gg.collocation_goods;  
1430 - //修改成深拷贝,确保返回是数据正确  
1431 - var narr = JSON.parse(JSON.stringify(gg.collocation_goods));  
1432 - narr.push(t.data.data);  
1433 - await th.get_collocation_list(narr);  
1434 } 1436 }
1435 th.setData({ 1437 th.setData({
1436 bn_goods: gd, bn_pickname: gg.pick_name, index: m_wind, 1438 bn_goods: gd, bn_pickname: gg.pick_name, index: m_wind,
@@ -1914,6 +1916,9 @@ Page({ @@ -1914,6 +1916,9 @@ Page({
1914 1916
1915 1917
1916 calclate_lbNum(r_data) { 1918 calclate_lbNum(r_data) {
  1919 +
  1920 + if(!r_data) return false;
  1921 +
1917 let send_lb = this.data.send_lb; 1922 let send_lb = this.data.send_lb;
1918 //g_lb_num我的礼包 g_zxlb_num专享礼包 1923 //g_lb_num我的礼包 g_zxlb_num专享礼包
1919 r_data.forEach(r_d => { 1924 r_data.forEach(r_d => {
pages/cart/cart/cart.js
@@ -427,6 +427,9 @@ Page({ @@ -427,6 +427,9 @@ Page({
427 th.data.ladder_map = {}; 427 th.data.ladder_map = {};
428 var rd = Math.random().toString(36).substr(2, 15); 428 var rd = Math.random().toString(36).substr(2, 15);
429 var user_id = getApp().globalData.user_id; 429 var user_id = getApp().globalData.user_id;
  430 +
  431 + wx.showLoading();
  432 +
430 getApp().request.get("/api/weshop/cart/list", { 433 getApp().request.get("/api/weshop/cart/list", {
431 data: { 434 data: {
432 user_id: app.globalData.user_id, 435 user_id: app.globalData.user_id,
@@ -1161,6 +1164,8 @@ Page({ @@ -1161,6 +1164,8 @@ Page({
1161 }), 1164 }),
1162 th.doCheckAll(), wx.stopPullDownRefresh(); 1165 th.doCheckAll(), wx.stopPullDownRefresh();
1163 1166
  1167 + wx.hideLoading();
  1168 +
1164 } 1169 }
1165 }); 1170 });
1166 }, 1171 },
pages/goods/goodsInfo/goodsInfo.js
@@ -987,8 +987,8 @@ Page({ @@ -987,8 +987,8 @@ Page({
987 ee.data.prom_id = t.data.data.prom_id; 987 ee.data.prom_id = t.data.data.prom_id;
988 } 988 }
989 989
990 -  
991 //一件代发商品不去计算优惠 990 //一件代发商品不去计算优惠
  991 + //if (!ee.data.fir_goods.whsle_id && ee.data.prom_type != 1 && ee.data.prom_type != 4 && ee.data.prom_type != 6 && ee.data.prom_type != 2) {
992 if (!ee.data.fir_goods.whsle_id && ee.data.prom_type != 1 && ee.data.prom_type != 4 && ee.data.prom_type != 6 && ee.data.prom_type != 2) { 992 if (!ee.data.fir_goods.whsle_id && ee.data.prom_type != 1 && ee.data.prom_type != 4 && ee.data.prom_type != 6 && ee.data.prom_type != 2) {
993 ee.check_is_youhui(ee.data.gid); 993 ee.check_is_youhui(ee.data.gid);
994 } 994 }
@@ -2037,51 +2037,89 @@ Page({ @@ -2037,51 +2037,89 @@ Page({
2037 } else { 2037 } else {
2038 2038
2039 //-- 这一步主要是要让立即购买 走 购物车的逻辑 参与活动,如果有zh_act就强制组合购购买 -- 2039 //-- 这一步主要是要让立即购买 走 购物车的逻辑 参与活动,如果有zh_act就强制组合购购买 --
2040 - if(th.data.zh_act && th.data.zh_act.buy_limit !=0 && th.data.zh_act.buy_limit <= th.data.userbuynum && th.data.zh_act.zhbuyqty <= th.data.goodsInputNum){  
2041 - wx.hideLoading()  
2042 -  
2043 - wx.showModal({  
2044 - title: '提示',  
2045 - // content: `商品${str},组合购活动,购买次数已超,将以普通商品购买?`,  
2046 - content: `${th.data.data.goods_name}超出组合购限购次数,将以普通商品购买`,  
2047 - success:res=>{  
2048 - if (res.confirm) {  
2049 - console.log('用户点击确定')  
2050 - //----先看会员在购物车中是否加入了该商品,立即购买的-----  
2051 - getApp().request.get("/api/weshop/cart/page", {  
2052 - data: { 2040 + if(th.data.zh_act
  2041 + && th.data.zh_act.zhbuyqty <= th.data.goodsInputNum){
  2042 + wx.hideLoading();
  2043 +
  2044 + if((th.data.zh_act.buy_limit !=0 && th.data.zh_act.buy_limit <= th.data.userbuynum)){
  2045 + wx.showModal({
  2046 + title: '提示',
  2047 + // content: `商品${str},组合购活动,购买次数已超,将以普通商品购买?`,
  2048 + content: `${th.data.data.goods_name}超出组合购限购次数,将以普通商品购买`,
  2049 + success:res=>{
  2050 + if (res.confirm) {
  2051 + console.log('用户点击确定')
  2052 + //----先看会员在购物车中是否加入了该商品,立即购买的-----
  2053 + getApp().request.get("/api/weshop/cart/page", {
  2054 + data: {
2053 store_id: e.data.stoid, 2055 store_id: e.data.stoid,
2054 user_id: oo.user_id, 2056 user_id: oo.user_id,
2055 state: 1 2057 state: 1
2056 - },  
2057 - success: function (res) { 2058 + },
  2059 + success: function (res) {
2058 //-------如果购物车中有相关的数据--------- 2060 //-------如果购物车中有相关的数据---------
2059 if (res.data.code == 0 && res.data.data.total > 0) { 2061 if (res.data.code == 0 && res.data.data.total > 0) {
2060 - for (let j in res.data.data.pageData) {  
2061 - let item_j = res.data.data.pageData[j];  
2062 - var url = '/api/weshop/cart/del/' + e.data.stoid + '/' + item_j.id;  
2063 - getApp().request.delete(url, {});  
2064 - } 2062 + for (let j in res.data.data.pageData) {
  2063 + let item_j = res.data.data.pageData[j];
  2064 + var url = '/api/weshop/cart/del/' + e.data.stoid + '/' + item_j.id;
  2065 + getApp().request.delete(url, {});
  2066 + }
2065 } 2067 }
2066 newd.state = 1; 2068 newd.state = 1;
2067 newd.prom_type=0; 2069 newd.prom_type=0;
2068 newd.prom_id=0 2070 newd.prom_id=0
2069 getApp().request.post("/api/weshop/cart/save", { 2071 getApp().request.post("/api/weshop/cart/save", {
2070 - data: newd,  
2071 - success: function (t) {  
2072 - th.closeSpecModal();  
2073 - getApp().goto("/packageE/pages/cart/cart2/cart2?state=1");  
2074 - } 2072 + data: newd,
  2073 + success: function (t) {
  2074 + th.closeSpecModal();
  2075 + getApp().goto("/packageE/pages/cart/cart2/cart2?state=1");
  2076 + }
2075 }); 2077 });
  2078 + }
  2079 + })
  2080 + } else if (res.cancel) {
  2081 +
  2082 + console.log('用户点击取消')
  2083 + }
  2084 + }
  2085 + })
  2086 + }else{
  2087 +
  2088 +
  2089 + //----先看会员在购物车中是否加入了该商品,立即购买的-----
  2090 + getApp().request.get("/api/weshop/cart/page", {
  2091 + data: {
  2092 + store_id: e.data.stoid,
  2093 + user_id: oo.user_id,
  2094 + state: 1
  2095 + },
  2096 + success: function (res) {
  2097 + //-------如果购物车中有相关的数据,先清理掉---------
  2098 + if (res.data.code == 0 && res.data.data.total > 0) {
  2099 + for (let j in res.data.data.pageData) {
  2100 + let item_j = res.data.data.pageData[j];
  2101 + var url = '/api/weshop/cart/del/' + e.data.stoid + '/' + item_j.id;
  2102 + getApp().request.delete(url, {});
2076 } 2103 }
2077 - })  
2078 - } else if (res.cancel) { 2104 + }
  2105 +
  2106 + newd.state = 1;
  2107 + newd.prom_type=7;
  2108 + newd.prom_id=th.data.zh_act.id;
  2109 + getApp().request.post("/api/weshop/cart/save", {
  2110 + data: newd,
  2111 + success: function (t) {
  2112 + th.closeSpecModal();
  2113 + getApp().goto("/packageE/pages/cart/cart2/cart2?state=1");
  2114 + }
  2115 + });
2079 2116
2080 - console.log('用户点击取消') 2117 + }
  2118 + })
2081 } 2119 }
2082 - }  
2083 - })  
2084 - return false 2120 +
  2121 +
  2122 + return false
2085 }else{ 2123 }else{
2086 //----先看会员在购物车中是否加入了该商品,立即购买的----- 2124 //----先看会员在购物车中是否加入了该商品,立即购买的-----
2087 getApp().request.get("/api/weshop/cart/page", { 2125 getApp().request.get("/api/weshop/cart/page", {
@@ -2128,11 +2166,19 @@ Page({ @@ -2128,11 +2166,19 @@ Page({
2128 } 2166 }
2129 2167
2130 //如果有阶梯促销的时候 2168 //如果有阶梯促销的时候
2131 - if(th.data.jieti_prom){ 2169 + if(th.data.jieti_prom && newd.prom_type==0){
2132 newd.prom_type = 7; 2170 newd.prom_type = 7;
2133 newd.prom_id = th.data.ladder_act_id; 2171 newd.prom_id = th.data.ladder_act_id;
2134 } 2172 }
2135 2173
  2174 +
  2175 + //如果有搭配购的时候的时候
  2176 + if(th.data.collocationGoods && newd.prom_type==0){
  2177 + newd.prom_type = 5;
  2178 + newd.prom_id = th.data.collocationGoods.id;
  2179 + }
  2180 +
  2181 +
2136 newd['pick_name'] = th.data.sto_sele_name; 2182 newd['pick_name'] = th.data.sto_sele_name;
2137 newd['pick_dis'] = th.data.sto_sele_distr; 2183 newd['pick_dis'] = th.data.sto_sele_distr;
2138 th.buyNow(newd); 2184 th.buyNow(newd);
@@ -2585,7 +2631,7 @@ Page({ @@ -2585,7 +2631,7 @@ Page({
2585 callback(); 2631 callback();
2586 } else { 2632 } else {
2587 //-- 判断有没有优惠活动 -- 2633 //-- 判断有没有优惠活动 --
2588 - getApp().request.promiseGet("/api/weshop/goods/getGoodsPromListNew/" + os.stoid + "/" + th.data.sele_g.goods_id + "/0" + "/" + usr.user_id, {}).then(res => { 2634 + getApp().request.promiseGet("/api/weshop/goods/getGoodsPromListNew1/" + os.stoid + "/" + th.data.sele_g.goods_id + "/0" + "/" + usr.user_id, {}).then(res => {
2589 if (res.data.code == 0) { 2635 if (res.data.code == 0) {
2590 var r_data = res.data.data; 2636 var r_data = res.data.data;
2591 th.data.prom_goods = r_data.promGoodsLists; 2637 th.data.prom_goods = r_data.promGoodsLists;
@@ -7046,12 +7092,14 @@ Page({ @@ -7046,12 +7092,14 @@ Page({
7046 7092
7047 } else { 7093 } else {
7048 //调用接口判断订单优惠, 7094 //调用接口判断订单优惠,
7049 - getApp().request.get("/api/weshop/goods/getGoodsPromListNew/" + os.stoid + "/" + gid + "/0" + "/" + user_id, { 7095 + getApp().request.get("/api/weshop/goods/getGoodsPromListNew1/" + os.stoid + "/" + gid + "/0" + "/" + user_id, {
7050 success: function (res) { 7096 success: function (res) {
7051 if (res.data.code == 0 && res.data.data) { 7097 if (res.data.code == 0 && res.data.data) {
7052 var r_data = res.data.data; 7098 var r_data = res.data.data;
7053 var max = 0, 7099 var max = 0,
7054 min = 0; 7100 min = 0;
  7101 +
  7102 +
7055 if (r_data.collocationList) { 7103 if (r_data.collocationList) {
7056 for (var i in r_data.collocationList) { 7104 for (var i in r_data.collocationList) {
7057 if (max == 0) max = r_data.collocationList[i].price; 7105 if (max == 0) max = r_data.collocationList[i].price;
@@ -7062,8 +7110,13 @@ Page({ @@ -7062,8 +7110,13 @@ Page({
7062 } 7110 }
7063 r_data.collocationPromList.max = (max + th.data.data.shop_price).toFixed(2); 7111 r_data.collocationPromList.max = (max + th.data.data.shop_price).toFixed(2);
7064 r_data.collocationPromList.min = (min + th.data.data.shop_price).toFixed(2); 7112 r_data.collocationPromList.min = (min + th.data.data.shop_price).toFixed(2);
  7113 +
  7114 + //如果有搭配促销先不和 阶梯促销和优惠测序重合,做到后台可以重合
  7115 + r_data.ladderLists=null;
  7116 + r_data.promGoodsLists=null;
7065 } 7117 }
7066 7118
  7119 +
7067 if (r_data.ladderLists) { 7120 if (r_data.ladderLists) {
7068 var act_id = r_data.ladderLists[0].form_id; 7121 var act_id = r_data.ladderLists[0].form_id;
7069 //-- 判断会员能不能参与阶梯促销 -- 7122 //-- 判断会员能不能参与阶梯促销 --
@@ -7088,6 +7141,8 @@ Page({ @@ -7088,6 +7141,8 @@ Page({
7088 }) 7141 })
7089 } 7142 }
7090 7143
  7144 +
  7145 +
7091 th.setData({ 7146 th.setData({
7092 order_prom: r_data.promOrder, 7147 order_prom: r_data.promOrder,
7093 collocationGoods: r_data.collocationPromList, 7148 collocationGoods: r_data.collocationPromList,
@@ -7367,7 +7422,8 @@ Page({ @@ -7367,7 +7422,8 @@ Page({
7367 store_id: os.stoid, 7422 store_id: os.stoid,
7368 goodsidlist: this.data.data.goods_id, 7423 goodsidlist: this.data.data.goods_id,
7369 is_detail: 1, 7424 is_detail: 1,
7370 - user_id: user_id 7425 + user_id: user_id,
  7426 + timetype:0
7371 }; 7427 };
7372 //获取秒杀的多规格 7428 //获取秒杀的多规格
7373 getApp().request.promiseGet(url, { 7429 getApp().request.promiseGet(url, {
@@ -7470,7 +7526,7 @@ Page({ @@ -7470,7 +7526,7 @@ Page({
7470 }, 7526 },
7471 7527
7472 //-- 检验商品的活动情况 -- 7528 //-- 检验商品的活动情况 --
7473 - check_gd_prom_new: function (func) { 7529 + check_gd_prom_new: async function (func) {
7474 7530
7475 if([1,2,4,6,8,9].indexOf(parseInt(this.data.prom_type))>-1 ){ 7531 if([1,2,4,6,8,9].indexOf(parseInt(this.data.prom_type))>-1 ){
7476 func(); return false; 7532 func(); return false;
@@ -7480,7 +7536,7 @@ Page({ @@ -7480,7 +7536,7 @@ Page({
7480 var user_id = getApp().globalData.user_id; 7536 var user_id = getApp().globalData.user_id;
7481 if (!user_id) user_id = 0; 7537 if (!user_id) user_id = 0;
7482 7538
7483 - var url = '/api/weshop/activitylist/listGoodActInfo2'; 7539 + var url = '/api/weshop/activitylist/listGoodActInfo2New';
7484 var req_d = { 7540 var req_d = {
7485 "store_id": os.stoid, 7541 "store_id": os.stoid,
7486 "goods_id": this.data.gid, 7542 "goods_id": this.data.gid,
@@ -7491,7 +7547,8 @@ Page({ @@ -7491,7 +7547,8 @@ Page({
7491 success: function (e) { 7547 success: function (e) {
7492 if (e.data.code == 0 && e.data.data && e.data.data.length > 0) { 7548 if (e.data.code == 0 && e.data.data && e.data.data.length > 0) {
7493 var arr = e.data.data; 7549 var arr = e.data.data;
7494 - let times = new Date().getTime() 7550 + let times = new Date().getTime();
  7551 +
7495 arr.map(item=>{ 7552 arr.map(item=>{
7496 //如果是积分购的话,要进行活动时间判断 7553 //如果是积分购的话,要进行活动时间判断
7497 if(item.prom_type==4){ 7554 if(item.prom_type==4){
@@ -7505,8 +7562,9 @@ Page({ @@ -7505,8 +7562,9 @@ Page({
7505 } 7562 }
7506 }) 7563 })
7507 7564
  7565 + //-- 预热也要计算 --
7508 var arr2 = arr.filter(function (e) { 7566 var arr2 = arr.filter(function (e) {
7509 - return e.s_time < ut.gettimestamp(); 7567 + return e.s_time < ut.gettimestamp() || (e.warm_uptime && e.warm_uptime<ut.gettimestamp() )
7510 }) 7568 })
7511 7569
7512 var arr3 = arr.filter(function (e) { 7570 var arr3 = arr.filter(function (e) {
pages/goods/goodsInfo/goodsInfo.wxml
@@ -697,6 +697,7 @@ @@ -697,6 +697,7 @@
697 </view> 697 </view>
698 </view> 698 </view>
699 </view> 699 </view>
  700 +
700 <!-- - 搭配促销 -- --> 701 <!-- - 搭配促销 -- -->
701 <view class="dp_cx_view" wx:if="{{collocationGoods}}"> 702 <view class="dp_cx_view" wx:if="{{collocationGoods}}">
702 <view class="bb_view"> 703 <view class="bb_view">