Closed
Merge Request #908 · created by 后端研发-苏明海


Dev ladder


From dev_ladder into dev

Closed by 后端研发-苏明海

Changes were not merged into target branch

1 participants





pages/cart/cart/cart.js
@@ -5,8 +5,9 @@ var t = getApp(), @@ -5,8 +5,9 @@ var t = getApp(),
5 app = getApp(), 5 app = getApp(),
6 rq = t.request, 6 rq = t.request,
7 ut = require("../../../utils/util.js"), 7 ut = require("../../../utils/util.js"),
8 - zh_calc = require("zh_calculate.js");  
9 - var regeneratorRuntime = require('../../../utils/runtime.js'); 8 + zh_calc = require("zh_calculate.js"),
  9 + ladder_calc = require("ladder_calculate.js");
  10 + var regeneratorRuntime = require('../../../utils/runtime.js');
10 11
11 Page({ 12 Page({
12 data: { 13 data: {
@@ -38,6 +39,8 @@ Page({ @@ -38,6 +39,8 @@ Page({
38 zuhe_map:{}, 39 zuhe_map:{},
39 zuhe_map_good:{}, 40 zuhe_map_good:{},
40 in_zhact_gdmap:{}, //不同门店参与同一活动的限购 41 in_zhact_gdmap:{}, //不同门店参与同一活动的限购
  42 +
  43 + ladder_map:{}, //阶梯促销需要的map
41 }, 44 },
42 onLoad: function() { 45 onLoad: function() {
43 var a = this,ee=a; 46 var a = this,ee=a;
@@ -83,7 +86,6 @@ Page({ @@ -83,7 +86,6 @@ Page({
83 th.setData({ 86 th.setData({
84 bconfig: e,sales_rules:e.sales_rules 87 bconfig: e,sales_rules:e.sales_rules
85 }); 88 });
86 -  
87 getApp().request.promiseGet("/store/storemoduleendtime/page?store_id=" +os.stoid + "&type=6",{}).then(res=>{ 89 getApp().request.promiseGet("/store/storemoduleendtime/page?store_id=" +os.stoid + "&type=6",{}).then(res=>{
88 //未购买 90 //未购买
89 if(res.data.code!=0 || !res.data.data || !res.data.data.pageData || !res.data.data.pageData.length){ 91 if(res.data.code!=0 || !res.data.data || !res.data.data.pageData || !res.data.data.pageData.length){
@@ -210,6 +212,8 @@ Page({ @@ -210,6 +212,8 @@ Page({
210 get_cart: function() { 212 get_cart: function() {
211 var th = this; 213 var th = this;
212 th.data.in_zhact_gdmap={}; 214 th.data.in_zhact_gdmap={};
  215 + th.data.ladder_map={};
  216 +
213 var rd = Math.random().toString(36).substr(2, 15); 217 var rd = Math.random().toString(36).substr(2, 15);
214 var user_id=getApp().globalData.userInfo.user_id; 218 var user_id=getApp().globalData.userInfo.user_id;
215 getApp().request.get("/api/weshop/cart/list", { 219 getApp().request.get("/api/weshop/cart/list", {
@@ -223,8 +227,7 @@ Page({ @@ -223,8 +227,7 @@ Page({
223 success:async function(su) { 227 success:async function(su) {
224 console.log(su,10000); 228 console.log(su,10000);
225 //按门店分类的数组 229 //按门店分类的数组
226 - var arr = new Array(),  
227 - carr = su.data.data.pageData; 230 + var arr = new Array(), carr = su.data.data.pageData;
228 var all_num = 0; 231 var all_num = 0;
229 232
230 if(carr && carr.length>0) { 233 if(carr && carr.length>0) {
@@ -354,35 +357,86 @@ Page({ @@ -354,35 +357,86 @@ Page({
354 } 357 }
355 } 358 }
356 359
357 - //--判断优惠活动有没有过期-- 360 + //--判断优惠活动有没有过期,--
358 else if (item.prom_type == 3) { 361 else if (item.prom_type == 3) {
359 - var isok = 1;  
360 - await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + item.goods_id + "/1", {}).then(res => {  
361 - if (res.data.code == 0) {  
362 - var r_data = res.data.data;  
363 - if (!r_data.promGoodsLists) { 362 + var isok = 1,is_g_prom=0;
  363 +
  364 + //因为有全场优惠活动,商品参加的活动还未开始
  365 + var url="/api/weshop/activitylist/getGoodActInfo";
  366 + var req_data={
  367 + store_id:os.stoid,goodsidlist:item.goods_id,is_detail:1
  368 + };
  369 + await getApp().request.promiseGet(url, {data:req_data}).then(async function (res) {
  370 + if(res.data.code==0 && res.data.data && res.data.data.length){
  371 + for(let i in res.data.data){
  372 + let item=res.data.data[i];
  373 + if(item.prom_type==3) {
  374 + is_g_prom=1; break;
  375 + }
  376 + }
  377 + }
  378 + })
  379 +
  380 + if(is_g_prom){
  381 + await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + item.goods_id + "/1", {}).then(res => {
  382 + if (res.data.code == 0) {
  383 + var r_data = res.data.data;
  384 + if (!r_data.promGoodsLists) {
  385 + var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;
  386 + getApp().request.delete(url, {});
  387 + //商品已经无活动
  388 + isok = 0;
  389 + }else{
  390 + //如果活动的ID不一样,说明原先的活动已经没有参与了或者过期了
  391 + if(item.prom_id!=r_data.promGoodsLists[0].prom_id ){
  392 + var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;
  393 + getApp().request.delete(url, {});
  394 + //商品已经下架
  395 + isok = 0;
  396 + }
  397 + }
  398 +
  399 + } else {
364 var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id; 400 var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;
365 getApp().request.delete(url, {}); 401 getApp().request.delete(url, {});
366 - //商品已经无活动 402 + //商品已经下架
367 isok = 0; 403 isok = 0;
368 - }else{  
369 - //如果活动的ID不一样,说明原先的活动已经没有参与了或者过期了  
370 - if(item.prom_id!=r_data.promGoodsLists[0].prom_id ){  
371 - var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;  
372 - getApp().request.delete(url, {});  
373 - //商品已经下架  
374 - isok = 0;  
375 - }  
376 - }  
377 -  
378 - } else {  
379 - var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;  
380 - getApp().request.delete(url, {});  
381 - //商品已经下架  
382 - isok = 0;  
383 - }  
384 - }) 404 + }
  405 + })
  406 +
  407 + }else{
  408 + await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromNormal/" + os.stoid + "/" + item.goods_id, {}).then(res => {
  409 + if (res.data.code == 0) {
  410 + var r_data = res.data.data;
  411 + if (!r_data.promGoodsLists) {
  412 + var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;
  413 + getApp().request.delete(url, {});
  414 + //商品已经无活动
  415 + isok = 0;
  416 + }else{
  417 + //如果活动的ID不一样,说明原先的活动已经没有参与了或者过期了
  418 + if(item.prom_id!=r_data.promGoodsLists[0].prom_id ){
  419 + var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;
  420 + getApp().request.delete(url, {});
  421 + //商品已经下架
  422 + isok = 0;
  423 + }
  424 + }
  425 +
  426 + } else {
  427 + var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;
  428 + getApp().request.delete(url, {});
  429 + //商品已经下架
  430 + isok = 0;
  431 + }
  432 + })
  433 +
  434 + }
  435 +
385 if (!isok) continue; 436 if (!isok) continue;
  437 +
  438 +
  439 +
386 } 440 }
387 else if (item.prom_type == 7) { 441 else if (item.prom_type == 7) {
388 if(!th.data.zuhe_map[item.prom_id]){ 442 if(!th.data.zuhe_map[item.prom_id]){
@@ -470,6 +524,68 @@ Page({ @@ -470,6 +524,68 @@ Page({
470 // continue; 524 // continue;
471 // } 525 // }
472 } 526 }
  527 + else if (item.prom_type == 10) {
  528 + if(!th.data.ladder_map[item.prom_id]){
  529 + //如果有组合购
  530 + var isok = 1;
  531 + var is_flag=1;
  532 + var act=null;
  533 + var url="/api/weshop/prom/ladderForm/getNew/"+os.stoid+"/"+user_id+"/"+item.prom_id;
  534 + await getApp().request.promiseGet(url, {}).then(res => {
  535 + console.log(res,1000);
  536 + if(res.data.code==0 && res.data.data){
  537 + if(res.data.data.isuse!=1){
  538 + isok=0;
  539 + }
  540 + //如果活动已经结束
  541 + if(res.data.data.is_end==1){
  542 + isok=0;
  543 + }
  544 + //已经结束
  545 + if(ut.gettimestamp()>res.data.data.end_time){
  546 + isok=0;
  547 + }
  548 + //还未开始
  549 + if(ut.gettimestamp()<res.data.data.start_time){
  550 + isok=0;
  551 + }
  552 + act=res.data.data;
  553 +
  554 + }else{
  555 + //未找到商品的活动
  556 + is_flag = 0;
  557 + }
  558 + })
  559 + if (!isok){
  560 + var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;
  561 + getApp().request.delete(url, {});
  562 + th.data.ladder_map[item.prom_id]=-1;
  563 + continue;
  564 + }
  565 + th.data.ladder_map[item.prom_id]=act;
  566 +
  567 + //-- 获取阶梯规则 --
  568 + var url1 = "/api/weshop/prom/ladderList/list";
  569 + var req_data = {
  570 + store_id: os.stoid,
  571 + form_id: item.prom_id,
  572 + }
  573 + await getApp().request.promiseGet(url1, {
  574 + data: req_data
  575 + }).then(rs1 => {
  576 + if (rs1.data.code==0 && rs1.data.data) {
  577 + var gdlist = rs1.data.data;
  578 + th.data.ladder_map[item.prom_id].ladder_list=gdlist;
  579 + }
  580 + })
  581 + }
  582 + //直接把活动赋值给元素
  583 + if(th.data.ladder_map[item.prom_id] && th.data.ladder_map[item.prom_id]!=-1 ){
  584 + item.act=th.data.ladder_map[item.prom_id];
  585 + }
  586 +
  587 + }
  588 +
473 else if(item.prom_type == 0) { 589 else if(item.prom_type == 0) {
474 //如果有优惠活动,要更新活动 590 //如果有优惠活动,要更新活动
475 await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + item.goods_id + "/1", {}).then(res => { 591 await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + item.goods_id + "/1", {}).then(res => {
@@ -575,9 +691,6 @@ Page({ @@ -575,9 +691,6 @@ Page({
575 } 691 }
576 } 692 }
577 693
578 - // console.log('AAAAAAAAAAAA', all_num);  
579 - // getApp().globalData.cartGoodsNum = all_num;  
580 -  
581 th.setData({ 694 th.setData({
582 requestData: arr, 695 requestData: arr,
583 all_num: all_num, 696 all_num: all_num,
@@ -948,11 +1061,13 @@ Page({ @@ -948,11 +1061,13 @@ Page({
948 if(item[j].is_gift) continue; 1061 if(item[j].is_gift) continue;
949 1062
950 var obj=JSON.parse(JSON.stringify(item[j])); 1063 var obj=JSON.parse(JSON.stringify(item[j]));
951 - //计算之前先移除 1064 + //计算之前先移除组合购的计算
952 if(obj.prom_type==7) 1065 if(obj.prom_type==7)
953 zh_calc.remove_zhprom(dda,i,obj); 1066 zh_calc.remove_zhprom(dda,i,obj);
954 -  
955 - 1067 + //计算之前先移除阶梯购的计算
  1068 + if(obj.prom_type==10)
  1069 + ladder_calc.remove_ladder_prom(dda,i,obj);
  1070 +
956 if (fir == 0) { 1071 if (fir == 0) {
957 fir = item[j].distr_type; 1072 fir = item[j].distr_type;
958 } else { 1073 } else {
@@ -965,8 +1080,12 @@ Page({ @@ -965,8 +1080,12 @@ Page({
965 var txt = "requestData[" + i + "].goods[" + j + "].selected"; 1080 var txt = "requestData[" + i + "].goods[" + j + "].selected";
966 1081
967 if(e.data.checkAllToggle) obj.goods_num=0; 1082 if(e.data.checkAllToggle) obj.goods_num=0;
968 - if(obj.prom_type==7)  
969 - zh_calc.add_zhprom(dda,i,obj); 1083 +
  1084 + //加入组合购计算
  1085 + if(obj.prom_type==7) zh_calc.add_zhprom(dda,i,obj);
  1086 + //加入阶梯促销计算
  1087 + if(obj.prom_type==10) ladder_calc.add_ladder_prom(dda,i,obj);
  1088 +
970 1089
971 e.setData({ 1090 e.setData({
972 [txt]: !e.data.checkAllToggle, 1091 [txt]: !e.data.checkAllToggle,
@@ -974,7 +1093,7 @@ Page({ @@ -974,7 +1093,7 @@ Page({
974 1093
975 if (!e.data.checkAllToggle) { 1094 if (!e.data.checkAllToggle) {
976 //组合购的金额要另外算 1095 //组合购的金额要另外算
977 - if(item[j].prom_type!=7) 1096 + if(item[j].prom_type!=7 && item[j].prom_type!=10)
978 tfeel += item[j].goods_num * item[j].goods_price; 1097 tfeel += item[j].goods_num * item[j].goods_price;
979 t_num += item[j].goods_num; 1098 t_num += item[j].goods_num;
980 } 1099 }
@@ -1012,6 +1131,12 @@ Page({ @@ -1012,6 +1131,12 @@ Page({
1012 offline_price+=zh_calc_res.offline_price; 1131 offline_price+=zh_calc_res.offline_price;
1013 offline_num+=zh_calc_res.offline_num; 1132 offline_num+=zh_calc_res.offline_num;
1014 1133
  1134 + //总的价格,把阶梯促销的商品的价格拿出来
  1135 + var ladder_calc_res=ladder_calc.calculate_ladder(dda,i,this);
  1136 + tfeel+=ladder_calc_res.tfeel;
  1137 + offline_price+=ladder_calc_res.offline_price;
  1138 + offline_num+=ladder_calc_res.offline_num;
  1139 +
1015 //当有线下取价的时候 1140 //当有线下取价的时候
1016 if(offline_price){ 1141 if(offline_price){
1017 var txt1= "requestData[" + i + "].offline_price"; 1142 var txt1= "requestData[" + i + "].offline_price";
@@ -1326,7 +1451,10 @@ Page({ @@ -1326,7 +1451,10 @@ Page({
1326 1451
1327 //不管怎么样都要移出去 1452 //不管怎么样都要移出去
1328 var obj=JSON.parse(JSON.stringify(item[c])); 1453 var obj=JSON.parse(JSON.stringify(item[c]));
  1454 +
1329 zh_calc.remove_zhprom(car,a,obj); 1455 zh_calc.remove_zhprom(car,a,obj);
  1456 + ladder_calc.remove_ladder_prom(car,a,obj);
  1457 +
1330 if (item[c].selected == 0) { 1458 if (item[c].selected == 0) {
1331 ischeck = 0; 1459 ischeck = 0;
1332 is_s_sele = 0; 1460 is_s_sele = 0;
@@ -1334,11 +1462,20 @@ Page({ @@ -1334,11 +1462,20 @@ Page({
1334 obj.goods_num=0; 1462 obj.goods_num=0;
1335 zh_calc.add_zhprom(car,a,obj); 1463 zh_calc.add_zhprom(car,a,obj);
1336 } 1464 }
  1465 + if(item[c].prom_type==10) {
  1466 + obj.goods_num=0;
  1467 + ladder_calc.add_ladder_prom(car,a,obj);
  1468 + }
  1469 +
  1470 +
1337 } else { 1471 } else {
1338 if(item[c].prom_type==7){ 1472 if(item[c].prom_type==7){
1339 - //先把商品放入组合计算的专用的区域  
1340 - zh_calc.add_zhprom(car,a,obj);  
1341 - }else{ 1473 + //先把商品放入组合计算的专用的区域
  1474 + zh_calc.add_zhprom(car,a,obj);
  1475 + }else if(item[c].prom_type==10){
  1476 + ladder_calc.add_ladder_prom(car,a,obj);
  1477 + }
  1478 + else{
1342 tfeel += item[c].goods_num * item[c].goods_price; 1479 tfeel += item[c].goods_num * item[c].goods_price;
1343 } 1480 }
1344 t_num += item[c].goods_num; 1481 t_num += item[c].goods_num;
@@ -1353,10 +1490,17 @@ Page({ @@ -1353,10 +1490,17 @@ Page({
1353 1490
1354 //总的价格,把组合商品的价格拿出来 1491 //总的价格,把组合商品的价格拿出来
1355 var zh_calc_res=zh_calc.calculate_zh(car,a,th); 1492 var zh_calc_res=zh_calc.calculate_zh(car,a,th);
  1493 + //总的价格,把阶梯促销商品的价格拿出来
  1494 + var ladder_calc_res=ladder_calc.calculate_ladder(car,a,th);
  1495 +
1356 tfeel+=zh_calc_res.tfeel; 1496 tfeel+=zh_calc_res.tfeel;
1357 offline_price+=zh_calc_res.offline_price; 1497 offline_price+=zh_calc_res.offline_price;
1358 offline_num+=zh_calc_res.offline_num; 1498 offline_num+=zh_calc_res.offline_num;
1359 1499
  1500 + tfeel+=ladder_calc_res.tfeel;
  1501 + offline_price+=ladder_calc_res.offline_price;
  1502 + offline_num+=ladder_calc_res.offline_num;
  1503 +
1360 var txt = "requestData[" + a + "].selected"; 1504 var txt = "requestData[" + a + "].selected";
1361 th.setData({ 1505 th.setData({
1362 [txt]: Number(is_s_sele) 1506 [txt]: Number(is_s_sele)
@@ -1409,9 +1553,6 @@ Page({ @@ -1409,9 +1553,6 @@ Page({
1409 }); 1553 });
1410 } 1554 }
1411 } 1555 }
1412 -  
1413 - // getApp().globalData.cartGoodsNum = all_num;  
1414 - // console.log('CCCCCCC', all_num, getApp().globalData.cartGoodsNum);  
1415 1556
1416 this.setData({ 1557 this.setData({
1417 checkAllToggle: ischeck, 1558 checkAllToggle: ischeck,
@@ -1423,11 +1564,8 @@ Page({ @@ -1423,11 +1564,8 @@ Page({
1423 1564
1424 //----------------------更新购物数量,加减,调用接口--------------------- 1565 //----------------------更新购物数量,加减,调用接口---------------------
1425 postCardList: function(t, item, pitem) { 1566 postCardList: function(t, item, pitem) {
1426 -  
1427 var e = this,th=e; 1567 var e = this,th=e;
1428 var user_id = getApp().globalData.user_id; 1568 var user_id = getApp().globalData.user_id;
1429 - // console.log('update');  
1430 - // console.log('9995959595959',t);  
1431 rq.get("/api/weshop/goods/get/" + oo.stoid + "/" + t.goods_id, { 1569 rq.get("/api/weshop/goods/get/" + oo.stoid + "/" + t.goods_id, {
1432 isShowLoading: 0, 1570 isShowLoading: 0,
1433 async success(d) { 1571 async success(d) {
@@ -1456,12 +1594,9 @@ Page({ @@ -1456,12 +1594,9 @@ Page({
1456 th.setData({[txt]:promgoodsbuynum}); 1594 th.setData({[txt]:promgoodsbuynum});
1457 } 1595 }
1458 goodsbuynum = buy_num_data.goodsbuynum; 1596 goodsbuynum = buy_num_data.goodsbuynum;
1459 -  
1460 -  
1461 - // console.log('goodsbuynum===========', goodsbuynum); 1597 +
1462 }) 1598 })
1463 1599
1464 -  
1465 1600
1466 var buyed_mum2 = t.goods_num + goodsbuynum; 1601 var buyed_mum2 = t.goods_num + goodsbuynum;
1467 if (buyed_mum2 > limit && limit > 0) { 1602 if (buyed_mum2 > limit && limit > 0) {
pages/cart/cart/cart.wxml
@@ -164,6 +164,15 @@ @@ -164,6 +164,15 @@
164 </view> 164 </view>
165 </block> 165 </block>
166 166
  167 + <!-- 阶梯促销提示多少件的优惠 -->
  168 + <block wx:if="{{item.l_need_list && item.l_need_list.length>0 && !is_edit}}">
  169 +
  170 + <view class="fs28 pdr20 pdl20 pdb20 c-red2 flex jc_sb" wx:for="{{item.l_need_list}}">
  171 + <text>{{item.title}}</text>
  172 + <text data-url="/pages/goods/goodsList/goodsList?ladder_id={{item.id}}" bindtap="go_url">去凑单</text>
  173 + </view>
  174 + </block>
  175 +
167 176
168 <!-- 线下取价 --> 177 <!-- 线下取价 -->
169 <view style="margin:10rpx 0; padding: 0 30rpx;color: #999" wx:if="{{item.offline_price}}" class="fs28"> 178 <view style="margin:10rpx 0; padding: 0 30rpx;color: #999" wx:if="{{item.offline_price}}" class="fs28">
pages/cart/cart/ladder_calculate.js 0 → 100644
  1 +module.exports = {
  2 + //辅助数组添加元素功能
  3 + find_in_add: function(list, ele) {
  4 + var idx=list.findIndex(function (e) {
  5 + return e.goods_id==ele.goods_id;
  6 + })
  7 + if(idx>-1) return false;
  8 + list.push(ele);
  9 + },
  10 + //辅助数组添加元素功能
  11 + find_in_remove: function(list, ele) {
  12 + var idx=list.findIndex(function (e) {
  13 + return e.goods_id==ele.goods_id;
  14 + })
  15 + if(idx==-1) return false;
  16 + list.splice(idx, 1);
  17 + },
  18 +
  19 + //主要是把组合购的商品分离出来
  20 + add_ladder_prom: function(car, a, ele) {
  21 + var point = car[a];
  22 + if (point.ladder_map) {
  23 + if (point.ladder_map[ele.prom_id]) {
  24 + this.find_in_add(point.ladder_map[ele.prom_id].goods, ele);
  25 + } else {
  26 + point.ladder_map[ele.prom_id] = {
  27 + goods: [],
  28 + act: ele.act
  29 + };
  30 + point.ladder_map[ele.prom_id].goods.push(ele);
  31 + }
  32 + } else {
  33 + point.ladder_map = {};
  34 + point.ladder_map[ele.prom_id] = {
  35 + goods: [],
  36 + act: ele.act
  37 + };
  38 + point.ladder_map[ele.prom_id].goods.push(ele);
  39 + }
  40 + },
  41 + //未选中的商品,要从中剔除
  42 + remove_ladder_prom: function(car, a, ele) {
  43 + var point = car[a];
  44 + if (point.ladder_map) {
  45 + if (point.ladder_map[ele.prom_id]) {
  46 + this.find_in_remove(point.ladder_map[ele.prom_id].goods, ele);
  47 + }
  48 + }
  49 + },
  50 +
  51 + //把组合购的商品价格计算出来,同时每个会员都有购买组合商品的上限!ladder_b_num是已经购买了多少件
  52 + calculate_ladder: function(car, a, th) {
  53 + var car_item = car[a];
  54 + var tfeel = 0,offline_price = 0,offline_num = 0;
  55 + var txt = "requestData[" + a + "].l_need_list";
  56 + var need_to=[];
  57 +
  58 + //活动的列表都存储在这里面,可以快速查询
  59 + if (!car_item.ladder_map) {
  60 + var res = {
  61 + tfeel: tfeel,
  62 + offline_price: offline_price,
  63 + offline_num: offline_num
  64 + };
  65 + th.setData({
  66 + [txt]: null
  67 + });
  68 + return res;
  69 + }
  70 +
  71 + //因为可能有多个组合购的活动
  72 + for (var mi in car_item.ladder_map) {
  73 + var bitem = car_item.ladder_map[mi];
  74 + var act = bitem.act; //获取到组合购的详情
  75 + var all_num = 0; //商品数量之和
  76 + var all_price = 0;
  77 + var aprice=0;
  78 + var no_in_arr = []; //剩余的未加入组合购
  79 +
  80 + var title =""; //提示语;
  81 + var goods = car_item.goods;
  82 +
  83 + //-- 每件商品要剔除的量 --
  84 + for (let v3 in car_item.goods) {
  85 + car_item.goods[v3].l_need_downlow_num=0;
  86 + }
  87 +
  88 + //寻找一下
  89 + function get_num2(ite) {
  90 + var vh=car_item.goods.findIndex(function (e) {
  91 + return e.goods_id == ite.goods_id
  92 + })
  93 + if(vh>-1) return vh;
  94 + return 0;
  95 + }
  96 +
  97 + for (var i in goods) {
  98 + if(goods[i].prom_type!=10) continue;
  99 + if(!goods[i].selected) continue;
  100 + if(goods[i].prom_id!=act.id) continue;
  101 + var item = goods[i];
  102 + item.goods_price=item.goods_price;
  103 + item.offline_price=item.offline_price;
  104 + item.cart_num =item.goods_num;
  105 + all_num += item.cart_num;
  106 + for (var j = 0; j < item.cart_num; j++) {
  107 + no_in_arr.push({
  108 + price: item.goods_price,offline_price:item.offline_price,goods_id:item.goods_id,shop_price:item.shop_price
  109 + })
  110 + }
  111 + }
  112 +
  113 + function sortData(a, b) {
  114 + return a.price - b.price
  115 + }
  116 + no_in_arr.sort(sortData);
  117 +
  118 + //开始阶梯计算价格
  119 + var lev=0;
  120 + for(let j in act.ladder_list){
  121 + if(no_in_arr.length==0) break;
  122 + let item_j=act.ladder_list[j];
  123 + var end=no_in_arr.pop();
  124 + var new_price=parseInt(item_j.discount_field)==1?end.shop_price:end.price;
  125 + aprice+=new_price* parseFloat(item_j.discount)/10;
  126 + lev++;
  127 + }
  128 +
  129 + //获取阶梯促销的下一个促销
  130 + if(lev>0 && lev<act.ladder_list.length){
  131 + title = "再买1件,第"+(lev+1)+"件"+act.ladder_list[lev].discount+"折";
  132 + var it = {
  133 + id: act.id,
  134 + pickup_id: car_item.pid,
  135 + title: title
  136 + };
  137 + need_to.push(it);
  138 + }
  139 +
  140 + all_price+=aprice;
  141 + //算一下剩余的钱
  142 + if (no_in_arr.length) {
  143 + for (var ii in no_in_arr) {
  144 + var item = no_in_arr[ii];
  145 + var gitem=get_num2(item);
  146 + if(gitem) {
  147 + if (!gitem.l_need_downlow_num) {
  148 + gitem.l_need_downlow_num = 1;
  149 + }
  150 + else {
  151 + gitem.l_need_downlow_num++;
  152 + }
  153 + all_price += item.price;
  154 + if (item.offline_price) {
  155 + offline_price += gitem.goods_price - gitem.offline_price;
  156 + offline_num += 1;
  157 + }
  158 + }
  159 + }
  160 + }
  161 + tfeel += all_price;
  162 + }
  163 + var res = {
  164 + tfeel: tfeel,
  165 + aprice:aprice,
  166 + offline_price: offline_price,
  167 + offline_num: offline_num,
  168 + };
  169 +
  170 + th.setData({ [txt]: need_to});
  171 + return res;
  172 + },
  173 +
  174 + find_need_to: function(list, iter) {
  175 + if (!list || list.length <= 0) return -1;
  176 + for (var i in list) {
  177 + var item = list[i];
  178 + if (item.id == iter.id) {
  179 + return i;
  180 + }
  181 + }
  182 + return -1;
  183 + },
  184 +
  185 + //筛选阶梯促销,纯粹的数组按活动id分组
  186 + find_split: function(arr) {
  187 + //过滤只有团购的商品
  188 + var oarr = arr.goods.filter(function(ele) {
  189 + return ele.prom_type == 10
  190 + })
  191 + if(!oarr || oarr.length==0) return null;
  192 + //看一下有多少个不同的团购
  193 + var map = {},dest = [];
  194 + for (var i = 0; i < oarr.length; i++) {
  195 + var ai = oarr[i];
  196 + var index=map[ai.prom_id]
  197 + if (!index) {
  198 + dest.push({
  199 + prom_id: ai.prom_id,
  200 + data: [ai]
  201 + });
  202 + map[ai.prom_id]=dest.length; //存储下标
  203 + } else {
  204 + var dj = dest[index-1];
  205 + dj.data.push(ai);
  206 + }
  207 + }
  208 + return dest;
  209 + }
  210 +
  211 +
  212 +}
pages/cart/cart2/cart2.js
@@ -4,6 +4,7 @@ var oo = t.globalData.setting, os = oo; @@ -4,6 +4,7 @@ var oo = t.globalData.setting, os = oo;
4 var regeneratorRuntime = require('../../../utils/runtime.js'); 4 var regeneratorRuntime = require('../../../utils/runtime.js');
5 var util_pay = require("../../../utils/pay.js"); 5 var util_pay = require("../../../utils/pay.js");
6 var zh_calc = require("zh_calculate.js"); 6 var zh_calc = require("zh_calculate.js");
  7 +var ladder_calc = require("ladder_calculate.js");
7 8
8 Page({ 9 Page({
9 data: { 10 data: {
@@ -33,6 +34,7 @@ Page({ @@ -33,6 +34,7 @@ Page({
33 couponCode: "",//使用优惠券(多单就用逗号隔开) 34 couponCode: "",//使用优惠券(多单就用逗号隔开)
34 shipping_price: 0,//物流费用 35 shipping_price: 0,//物流费用
35 }, 36 },
  37 +
36 /*-----------当是购物车结算的时候-------------*/ 38 /*-----------当是购物车结算的时候-------------*/
37 cartlist: null, 39 cartlist: null,
38 old_cartlist: null, 40 old_cartlist: null,
@@ -124,7 +126,10 @@ Page({ @@ -124,7 +126,10 @@ Page({
124 in_zhact_gdmap:{}, //不同门店参与同一活动的限购 126 in_zhact_gdmap:{}, //不同门店参与同一活动的限购
125 hid_inp:1, 127 hid_inp:1,
126 user_note:{}, 128 user_note:{},
127 - zuhe_map_good:{}, 129 + zuhe_map_good:{}, //组合购的map表
  130 + ladder_map:{}, //阶梯促销的map表
  131 +
  132 + state:0, //阶梯促销的的立即购买也走购物车流程state=1
128 }, 133 },
129 onLoad: function (t) { 134 onLoad: function (t) {
130 wx.setNavigationBarTitle({title: "填写订单",}) 135 wx.setNavigationBarTitle({title: "填写订单",})
@@ -140,6 +145,11 @@ Page({ @@ -140,6 +145,11 @@ Page({
140 } 145 }
141 }); 146 });
142 147
  148 + //阶梯购的立即购买
  149 + if(t.state){
  150 + th.data.state=1;
  151 + }
  152 +
143 153
144 }, 154 },
145 onUnload: function () { 155 onUnload: function () {
@@ -407,9 +417,11 @@ Page({ @@ -407,9 +417,11 @@ Page({
407 //-----真的获取购物车,入口-------- 417 //-----真的获取购物车,入口--------
408 get_cart: function () { 418 get_cart: function () {
409 var th = this, app = getApp(); 419 var th = this, app = getApp();
  420 + var state=0;
  421 + if(th.data.state) state=1;
410 a.get("/api/weshop/cart/list", { 422 a.get("/api/weshop/cart/list", {
411 data: { 423 data: {
412 - user_id: to.globalData.user_id, selected: 1, state: 0, 424 + user_id: to.globalData.user_id, selected: 1, state: state,
413 store_id: oo.stoid, pageSize: 600 425 store_id: oo.stoid, pageSize: 600
414 }, 426 },
415 success: async function (su) { 427 success: async function (su) {
@@ -452,54 +464,113 @@ Page({ @@ -452,54 +464,113 @@ Page({
452 } 464 }
453 465
454 //要把组合购的东西拿出来算一下 466 //要把组合购的东西拿出来算一下
455 - if (item1.prom_type == 7) {  
456 - var isok = 1;  
457 - var is_flag=1;  
458 - //如果有组合购  
459 - var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + item1.prom_id+'/'+getApp().globalData.userInfo.user_id;  
460 - await getApp().request.promiseGet(url, {}).then(res => {  
461 - if (res.data.code == 0 && res.data.data) {  
462 - //如果活动已经结束  
463 - if (res.data.data.is_end == 1) {  
464 - isok = 0;  
465 - }  
466 - if (ut.gettimestamp() > res.data.data.end_time) {  
467 - isok = 0; 467 + if(item1.prom_type == 7) {
  468 + if(!th.data.zuhe_map_good[item1.prom_id]) {
  469 + var isok = 1;
  470 + var is_flag = 1;
  471 + //如果有组合购
  472 + var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + item1.prom_id + '/' + getApp().globalData.userInfo.user_id;
  473 + await getApp().request.promiseGet(url, {}).then(res => {
  474 + if (res.data.code == 0 && res.data.data) {
  475 + //如果活动已经结束
  476 + if (res.data.data.is_end == 1) {
  477 + isok = 0;
  478 + }
  479 + if (ut.gettimestamp() > res.data.data.end_time) {
  480 + isok = 0;
  481 + }
  482 + item1.act = res.data.data;
  483 + } else {
  484 + //未找到商品的活动
  485 + is_flag = 0;
468 } 486 }
469 - item1.act = res.data.data;  
470 - } else {  
471 - //未找到商品的活动  
472 - is_flag = 0; 487 + })
  488 + if (!isok) {
  489 + getApp().my_warnning("组合购的活动已经过期", 0, th);
  490 + return false;
473 } 491 }
474 - })  
475 - if (!isok) {  
476 - getApp().my_warnning("组合购的活动已经过期", 0, th);  
477 - return false;  
478 - }  
479 - var url1 = "/api/weshop/prom/zhbuyGoods/page";  
480 - var req_data = {  
481 - page: 1,  
482 - pageSize: 2000,  
483 - store_id: os.stoid,  
484 - zh_id: item1.prom_id, 492 + var url1 = "/api/weshop/prom/zhbuyGoods/page";
  493 + var req_data = {
  494 + page: 1,
  495 + pageSize: 2000,
  496 + store_id: os.stoid,
  497 + zh_id: item1.prom_id,
  498 + }
  499 + await getApp().request.promiseGet(url1, {
  500 + data: req_data
  501 + }).then(res => {
  502 + if (ut.ajax_ok(res)) {
  503 + var gdlist = res.data.data.pageData;
  504 + gdlist.forEach(i => {
  505 + if (item1.goods_id == i.goods_id && !is_flag) {
  506 + item1.prom_type = 0;
  507 + item1.prom_type1 = 0;
  508 + item1.prom_id = 0;
  509 + item1.prom_id1 = 0
  510 + }
  511 + })
  512 + th.data.zuhe_map_good[item1.prom_id] = gdlist;
  513 + }
  514 + })
485 } 515 }
486 - await getApp().request.promiseGet(url1, {  
487 - data: req_data  
488 - }).then(res => {  
489 - if (ut.ajax_ok(res)) {  
490 - var gdlist = res.data.data.pageData;  
491 - gdlist.forEach(i=>{  
492 - if(item1.goods_id==i.goods_id&&!is_flag){  
493 - item1.prom_type=0;  
494 - item1.prom_type1=0;  
495 - item1.prom_id=0;  
496 - item1.prom_id1=0 516 + }
  517 + if(item1.prom_type==10){
  518 + if(!th.data.ladder_map[item1.prom_id]){
  519 + //如果有组合购
  520 + var isok = 1;
  521 + var is_flag=1;
  522 + var act=null;
  523 + var url="/api/weshop/prom/ladderForm/get/"+os.stoid+"/"+item1.prom_id;
  524 + await getApp().request.promiseGet(url, {}).then(res => {
  525 + console.log(res,1000);
  526 + if(res.data.code==0 && res.data.data){
  527 + if(res.data.data.isuse!=1){
  528 + isok=0;
497 } 529 }
498 - })  
499 - th.data.zuhe_map_good[item1.prom_id]=gdlist; 530 + //如果活动已经结束
  531 + if(res.data.data.is_end==1){
  532 + isok=0;
  533 + }
  534 + //已经结束
  535 + if(ut.gettimestamp()>res.data.data.end_time){
  536 + isok=0;
  537 + }
  538 + //还未开始
  539 + if(ut.gettimestamp()<res.data.data.start_time){
  540 + isok=0;
  541 + }
  542 + act=res.data.data;
  543 +
  544 + }else{
  545 + //未找到商品的活动
  546 + is_flag = 0;
  547 + }
  548 + })
  549 + if (!isok){
  550 + var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;
  551 + getApp().request.delete(url, {});
  552 + th.data.ladder_map[item1.prom_id]=-1;
  553 + continue;
500 } 554 }
501 - }) 555 + th.data.ladder_map[item1.prom_id]=act;
  556 +
  557 + //-- 获取阶梯规则 --
  558 + var url1 = "/api/weshop/prom/ladderList/list";
  559 + var req_data = {
  560 + store_id: os.stoid,
  561 + form_id: item1.prom_id,
  562 + }
  563 + await getApp().request.promiseGet(url1, {
  564 + data: req_data
  565 + }).then(rs1 => {
  566 + if (rs1.data.code==0 && rs1.data.data) {
  567 + var gdlist = rs1.data.data;
  568 + th.data.ladder_map[item1.prom_id].ladder_list=gdlist;
  569 + }
  570 + })
  571 + }
502 } 572 }
  573 +
503 } 574 }
504 575
505 //在分组的时候,就不要再调用接口,await 576 //在分组的时候,就不要再调用接口,await
@@ -688,31 +759,31 @@ Page({ @@ -688,31 +759,31 @@ Page({
688 //存储不同活动的商品列表 759 //存储不同活动的商品列表
689 u_item.zh_prom_goods = {}; 760 u_item.zh_prom_goods = {};
690 for (let var1 in obj) { 761 for (let var1 in obj) {
691 - var h_item=obj[var1];  
692 - var gdlist= th.data.zuhe_map_good[h_item.prom_id];  
693 - //获取活动需要的商品列表  
694 - // u_item.zh_prom_goods[h_item.prom_id]=gdlist;  
695 - // var h_item = obj[var1];  
696 - // var gdlist = null;  
697 - // var url1 = "/api/weshop/prom/zhbuyGoods/page";  
698 - // var req_data = {  
699 - // page: 1,  
700 - // pageSize: 2000,  
701 - // store_id: os.stoid,  
702 - // zh_id: h_item.prom_id,  
703 - // }  
704 - // await getApp().request.promiseGet(url1, {  
705 - // data: req_data  
706 - // }).then(res => {  
707 - // if (ut.ajax_ok(res)) {  
708 - // gdlist = res.data.data.pageData;  
709 - // }  
710 - // }) 762 + var h_item = obj[var1];
  763 + var gdlist = th.data.zuhe_map_good[h_item.prom_id];
711 //获取活动需要的商品列表 764 //获取活动需要的商品列表
712 u_item.zh_prom_goods[h_item.prom_id] = {gdlist: gdlist, act: h_item.act}; 765 u_item.zh_prom_goods[h_item.prom_id] = {gdlist: gdlist, act: h_item.act};
713 } 766 }
714 zh_calc.fir_set_arr(u_item, th); 767 zh_calc.fir_set_arr(u_item, th);
715 } 768 }
  769 +
  770 + //每一个门店内的阶梯促销要进行拆分,
  771 + //还得把阶梯促销商品的多余商品的线下价格算一算
  772 + for (let var1 in arr) {
  773 + //把阶梯促销进行分组
  774 + var obj = ladder_calc.find_split(u_item);
  775 + if (!obj) continue;
  776 + //存储不同阶梯促销活动的商品列表
  777 + u_item.ladder_map = {};
  778 + for (let var1 in obj) {
  779 + var h_item=obj[var1];
  780 + var act= th.data.ladder_map[h_item.prom_id];
  781 + //获取活动需要的商品列表
  782 + u_item.ladder_map[h_item.prom_id] =act;
  783 + }
  784 + ladder_calc.fir_set_arr(u_item, th);
  785 + }
  786 +
716 //深拷贝 787 //深拷贝
717 th.data.old_cartlist = JSON.parse(JSON.stringify(arr)); 788 th.data.old_cartlist = JSON.parse(JSON.stringify(arr));
718 th.setData({ 789 th.setData({
@@ -1269,6 +1340,7 @@ Page({ @@ -1269,6 +1340,7 @@ Page({
1269 var all_coupon_price_m = 0; //所有的订单用户使用优惠券价格 1340 var all_coupon_price_m = 0; //所有的订单用户使用优惠券价格
1270 var all_cutprice = 0; //所有的优惠减 1341 var all_cutprice = 0; //所有的优惠减
1271 var all_zh_cutprice = 0; //所有的组合优惠减 1342 var all_zh_cutprice = 0; //所有的组合优惠减
  1343 + var all_ladder_cutprice = 0; //所有的阶梯促销优惠减
1272 var all_order_prom = 0; //所有的订单优惠 1344 var all_order_prom = 0; //所有的订单优惠
1273 1345
1274 var umoney = th.data.userinfo.user_money - th.data.txmon - (th.data.userinfo.frozen_money ? th.data.userinfo.frozen_money : 0); 1346 var umoney = th.data.userinfo.user_money - th.data.txmon - (th.data.userinfo.frozen_money ? th.data.userinfo.frozen_money : 0);
@@ -1301,6 +1373,8 @@ Page({ @@ -1301,6 +1373,8 @@ Page({
1301 await th.calc_per(c_arr); 1373 await th.calc_per(c_arr);
1302 //调用函数计算每件组合购商品的单价, 1374 //调用函数计算每件组合购商品的单价,
1303 await zh_calc.calc_zh_split_price(c_arr,th); 1375 await zh_calc.calc_zh_split_price(c_arr,th);
  1376 + //调用函数计算每件阶梯促销商品的单价,
  1377 + await ladder_calc.calc_split_price(c_arr,th);
1304 //调用函数计算,优惠券优惠什么商品价格,优惠券优惠什么商品 1378 //调用函数计算,优惠券优惠什么商品价格,优惠券优惠什么商品
1305 await th.get_cart_quan(c_arr); 1379 await th.get_cart_quan(c_arr);
1306 //---循环购物车--- 1380 //---循环购物车---
@@ -1332,7 +1406,10 @@ Page({ @@ -1332,7 +1406,10 @@ Page({
1332 var coupon_price = 0; 1406 var coupon_price = 0;
1333 var quan_no = null; 1407 var quan_no = null;
1334 var is_has_zh=c_arr[i].is_has_zh; 1408 var is_has_zh=c_arr[i].is_has_zh;
1335 - var zh_prom_goods=c_arr[i].zh_prom_goods; //组合购计算的原始数据存储空间 1409 + var is_has_ladder=c_arr[i].is_has_ladder;
  1410 +
  1411 + var zh_prom_goods=c_arr[i].zh_prom_goods; //组合购计算的原始数据存储空间
  1412 + var ladder_prom_goods=c_arr[i].ladder_prom_goods; //组合购计算的原始数据存储空间
1336 1413
1337 if (th.data.using_quan[pickid] != null && th.data.using_quan[pickid] != undefined) 1414 if (th.data.using_quan[pickid] != null && th.data.using_quan[pickid] != undefined)
1338 quan_no = th.data.using_quan[pickid].coupon_no; 1415 quan_no = th.data.using_quan[pickid].coupon_no;
@@ -1360,12 +1437,24 @@ Page({ @@ -1360,12 +1437,24 @@ Page({
1360 1437
1361 //--------循环计算总价----------- 1438 //--------循环计算总价-----------
1362 for (var j = 0; j < item.length; j++) { 1439 for (var j = 0; j < item.length; j++) {
1363 - if(item[j].prom_type!=7){  
1364 - o_price_no_zh += item[j].goods_price * item[j].goods_num; 1440 +
  1441 + var is_no_zh=0;
  1442 + if(item[j].prom_type!=7 && item[j].prom_type!=10 ) is_no_zh=1;
  1443 +
  1444 + //组合购的商品,且有订单优惠的叠加,is_orderyh就是优惠叠加
  1445 + if(item[j].prom_type==7 && zh_prom_goods && zh_prom_goods[item[j].prom_id]
  1446 + && zh_prom_goods[item[j].prom_id].act.is_orderyh )
  1447 + {
  1448 + is_no_zh=1;
1365 } 1449 }
1366 //组合购的商品,且有订单优惠的叠加,is_orderyh就是优惠叠加 1450 //组合购的商品,且有订单优惠的叠加,is_orderyh就是优惠叠加
1367 - else if(zh_prom_goods && zh_prom_goods[item[j].prom_id] && zh_prom_goods[item[j].prom_id].act.is_orderyh ) 1451 + if(item[j].prom_type==10 && ladder_prom_goods && ladder_prom_goods[item[j].prom_id]
  1452 + && th.data.ladder_map[item[j].prom_id].is_useorderyh )
1368 { 1453 {
  1454 + is_no_zh=1;
  1455 + }
  1456 +
  1457 + if(is_no_zh){
1369 o_price_no_zh += item[j].goods_price * item[j].goods_num; 1458 o_price_no_zh += item[j].goods_price * item[j].goods_num;
1370 } 1459 }
1371 o_price += item[j].goods_price * item[j].goods_num; 1460 o_price += item[j].goods_price * item[j].goods_num;
@@ -1384,13 +1473,25 @@ Page({ @@ -1384,13 +1473,25 @@ Page({
1384 //找到那些可以订单优惠叠加的 1473 //找到那些可以订单优惠叠加的
1385 for(let ij in zh_prom_goods){ 1474 for(let ij in zh_prom_goods){
1386 let kitem=zh_prom_goods[ij]; 1475 let kitem=zh_prom_goods[ij];
1387 - var is_has_zh=kitem.is_has_zh;  
1388 if(kitem.act.is_orderyh) 1476 if(kitem.act.is_orderyh)
1389 o_price_no_zh-=kitem.cut_price; 1477 o_price_no_zh-=kitem.cut_price;
1390 } 1478 }
1391 } 1479 }
1392 } 1480 }
1393 1481
  1482 + //如果有组合购优惠的钱,就要减价
  1483 + if (c_arr[i].ladder_cut_price>0 || c_arr[i].ladder_cut_price<0){
  1484 + o_price -= c_arr[i].ladder_cut_price;
  1485 + if(o_price_no_zh>0){
  1486 + //找到那些可以订单优惠叠加的
  1487 + for(let ij in ladder_prom_goods){
  1488 + let kitem=ladder_prom_goods[ij];
  1489 + if(th.data.ladder_map[ij].is_useorderyh )
  1490 + o_price_no_zh-=kitem.cut_price;
  1491 + }
  1492 + }
  1493 + }
  1494 +
1394 //-- 计算线下取价的功能 -- 1495 //-- 计算线下取价的功能 --
1395 if (cart_item.is_offline == 1) { 1496 if (cart_item.is_offline == 1) {
1396 o_price = o_price - cart_item.offline_price; 1497 o_price = o_price - cart_item.offline_price;
@@ -1580,6 +1681,13 @@ Page({ @@ -1580,6 +1681,13 @@ Page({
1580 o_condition=o_price_no_zh-quan_price; 1681 o_condition=o_price_no_zh-quan_price;
1581 } 1682 }
1582 1683
  1684 + //看一下是不是不用组合购的订单优惠的叠加
  1685 + if(is_has_ladder){
  1686 + o_condition=o_price_no_zh-quan_price;
  1687 + }
  1688 +
  1689 +
  1690 +
1583 var order_m = 0; 1691 var order_m = 0;
1584 //---判断是不是有订单优惠--- 1692 //---判断是不是有订单优惠---
1585 await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", { 1693 await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", {
@@ -1663,6 +1771,7 @@ Page({ @@ -1663,6 +1771,7 @@ Page({
1663 all_coupon_price_m += parseFloat(cart_item.coupon_price); 1771 all_coupon_price_m += parseFloat(cart_item.coupon_price);
1664 all_cutprice += parseFloat(cart_item.cut_price); 1772 all_cutprice += parseFloat(cart_item.cut_price);
1665 all_zh_cutprice += parseFloat(cart_item.zh_cut_price); 1773 all_zh_cutprice += parseFloat(cart_item.zh_cut_price);
  1774 + all_ladder_cutprice += parseFloat(cart_item.ladder_cut_price);
1666 all_order_prom += parseFloat(cart_item.order_prom_amount); 1775 all_order_prom += parseFloat(cart_item.order_prom_amount);
1667 } 1776 }
1668 1777
@@ -1676,6 +1785,7 @@ Page({ @@ -1676,6 +1785,7 @@ Page({
1676 all_cutprice = all_cutprice.toFixed(2); 1785 all_cutprice = all_cutprice.toFixed(2);
1677 all_order_prom = all_order_prom.toFixed(2); 1786 all_order_prom = all_order_prom.toFixed(2);
1678 all_zh_cutprice = parseFloat(all_zh_cutprice).toFixed(2); 1787 all_zh_cutprice = parseFloat(all_zh_cutprice).toFixed(2);
  1788 + all_ladder_cutprice = parseFloat(all_ladder_cutprice).toFixed(2);
1679 1789
1680 var atxt = "formData.total_amount"; 1790 var atxt = "formData.total_amount";
1681 var atxt1 = "formData.order_amount"; 1791 var atxt1 = "formData.order_amount";
@@ -1686,12 +1796,13 @@ Page({ @@ -1686,12 +1796,13 @@ Page({
1686 var atxt6 = "formData.cut_price"; 1796 var atxt6 = "formData.cut_price";
1687 var atxt7 = "formData.order_prom_amount"; 1797 var atxt7 = "formData.order_prom_amount";
1688 var atxt8 = "formData.zh_cut_price"; 1798 var atxt8 = "formData.zh_cut_price";
  1799 + var atxt9 = "formData.ladder_cut_price";
1689 1800
1690 th.setData({ 1801 th.setData({
1691 [atxt]: all_total_m, [atxt1]: all_order_m, 1802 [atxt]: all_total_m, [atxt1]: all_order_m,
1692 [atxt2]: all_price, [atxt3]: all_user_m, [atxt4]: all_shipping_m, 1803 [atxt2]: all_price, [atxt3]: all_user_m, [atxt4]: all_shipping_m,
1693 [atxt5]: all_coupon_price_m, [atxt6]: all_cutprice, 1804 [atxt5]: all_coupon_price_m, [atxt6]: all_cutprice,
1694 - [atxt7]: all_order_prom, show_submit: 1, [atxt8]: all_zh_cutprice 1805 + [atxt7]: all_order_prom, show_submit: 1, [atxt8]: all_zh_cutprice, [atxt9]: all_ladder_cutprice
1695 }) 1806 })
1696 th.data.order_prom_list_cart = c_arr; 1807 th.data.order_prom_list_cart = c_arr;
1697 th.set_can_num(); 1808 th.set_can_num();
@@ -2379,13 +2490,22 @@ Page({ @@ -2379,13 +2490,22 @@ Page({
2379 //--判断优惠活动的提交-- 2490 //--判断优惠活动的提交--
2380 if (t_item.cut_price > 0) { 2491 if (t_item.cut_price > 0) {
2381 order_prom_list.discount_amount += t_item.cut_price; 2492 order_prom_list.discount_amount += t_item.cut_price;
2382 - order_prom_list.prom_pt_json = JSON.stringify(t_item.prom_pt_json);  
2383 } 2493 }
2384 //--判断组合优惠活动的提交-- 2494 //--判断组合优惠活动的提交--
2385 if (t_item.zh_cut_price > 0 || t_item.zh_cut_price<0) { 2495 if (t_item.zh_cut_price > 0 || t_item.zh_cut_price<0) {
2386 order_prom_list.discount_amount += t_item.zh_cut_price; 2496 order_prom_list.discount_amount += t_item.zh_cut_price;
2387 order_prom_list.zh_pt_json = JSON.stringify(t_item.zh_pt_json); 2497 order_prom_list.zh_pt_json = JSON.stringify(t_item.zh_pt_json);
2388 } 2498 }
  2499 +
  2500 + //--判断阶梯优惠活动的提交--
  2501 + if (t_item.ladder_cut_price > 0 || t_item.ladder_cut_price<0) {
  2502 + order_prom_list.discount_amount += t_item.ladder_cut_price;
  2503 + }
  2504 +
  2505 + if(t_item.prom_pt_json){
  2506 + order_prom_list.prom_pt_json = JSON.stringify(t_item.prom_pt_json);
  2507 + }
  2508 +
2389 if (t_item.s_intValue > 0) { 2509 if (t_item.s_intValue > 0) {
2390 order_prom_list.give_integral = t_item.s_intValue; 2510 order_prom_list.give_integral = t_item.s_intValue;
2391 } 2511 }
@@ -2460,6 +2580,7 @@ Page({ @@ -2460,6 +2580,7 @@ Page({
2460 switch (g_item.prom_type) { 2580 switch (g_item.prom_type) {
2461 case 1: 2581 case 1:
2462 case 2: 2582 case 2:
  2583 + case 10:
2463 goods.prom_type = g_item.prom_type; 2584 goods.prom_type = g_item.prom_type;
2464 goods.prom_id = g_item.prom_id; 2585 goods.prom_id = g_item.prom_id;
2465 break; 2586 break;
@@ -2524,6 +2645,12 @@ Page({ @@ -2524,6 +2645,12 @@ Page({
2524 goods.room_id = g_item.room_id; 2645 goods.room_id = g_item.room_id;
2525 room_ids += g_item.room_id + ","; 2646 room_ids += g_item.room_id + ",";
2526 } 2647 }
  2648 +
  2649 + //如果有阶梯促销
  2650 + if(g_item.ladder_list_id){
  2651 + goods.ladder_list_id=g_item.ladder_list_id;
  2652 + }
  2653 +
2527 item.order_goods.push(goods); 2654 item.order_goods.push(goods);
2528 } 2655 }
2529 2656
@@ -3408,6 +3535,7 @@ Page({ @@ -3408,6 +3535,7 @@ Page({
3408 get_cart_quan: async function (order_prom_list_cart) { 3535 get_cart_quan: async function (order_prom_list_cart) {
3409 var th = this; 3536 var th = this;
3410 var is_xz_yh = 1; 3537 var is_xz_yh = 1;
  3538 + var user_id=getApp().globalData.user_id;
3411 //等待值的出现 3539 //等待值的出现
3412 //getApp().waitfor2(this,"g_cart_q_time","order_prom_list_cart",async function () { 3540 //getApp().waitfor2(this,"g_cart_q_time","order_prom_list_cart",async function () {
3413 //var arr=th.data.order_prom_list_cart; 3541 //var arr=th.data.order_prom_list_cart;
@@ -3441,7 +3569,19 @@ Page({ @@ -3441,7 +3569,19 @@ Page({
3441 }).then(res => { 3569 }).then(res => {
3442 if (res.data.code == 0) prom1 = res.data.data; 3570 if (res.data.code == 0) prom1 = res.data.data;
3443 }) 3571 })
3444 - if(!prom1.isQuan){ 3572 + if(prom1 && !prom1.isQuan){
  3573 + continue;
  3574 + }
  3575 + }
  3576 +
  3577 + //--如果是团购,要判断有没有限制使用优惠券
  3578 + if(gd.prom_type == 10){
  3579 + var prom1=null;
  3580 + await getApp().request.promiseGet("/api/weshop/prom/ladderForm/getNew/"+ os.stoid +"/"+user_id+"/"+ gd.prom_id, {
  3581 + }).then(res => {
  3582 + if (res.data.code == 0) prom1 = res.data.data;
  3583 + })
  3584 + if(prom1 && prom1.isuse && prom1. is_usecoupon){
3445 continue; 3585 continue;
3446 } 3586 }
3447 } 3587 }
pages/cart/cart2/cart2.wxml
@@ -95,7 +95,8 @@ @@ -95,7 +95,8 @@
95 95
96 <!-----商品名称规格------> 96 <!-----商品名称规格------>
97 <view class="order-num flex-space-between"> 97 <view class="order-num flex-space-between">
98 - <view class="co-red">¥<text class="fs36">{{filters.toFix(items.goods_price,2)}}</text></view> 98 + <view wx:if="{{items.prom_type==10}}" class="co-red">¥<text class="fs36">{{filters.toFix(items.goods_price,2)}}</text><text>({{items.discount}}折)</text></view>
  99 + <view wx:else class="co-red">¥<text class="fs36">{{filters.toFix(items.goods_price,2)}}</text></view>
99 <view class="goods-num">x{{items.goods_num}}</view> 100 <view class="goods-num">x{{items.goods_num}}</view>
100 </view> 101 </view>
101 </navigator> 102 </navigator>
@@ -431,6 +432,11 @@ @@ -431,6 +432,11 @@
431 <view>组合购优惠</view> 432 <view>组合购优惠</view>
432 <view class="co-red">- ¥ {{filters.toFix(formData.zh_cut_price,2)}}元</view> 433 <view class="co-red">- ¥ {{filters.toFix(formData.zh_cut_price,2)}}元</view>
433 </view> 434 </view>
  435 + <!-- 组合购优惠金额 -->
  436 + <view class="item" wx:if="{{formData.ladder_cut_price>0 || formData.ladder_cut_price<0}}">
  437 + <view>阶梯促销优惠</view>
  438 + <view class="co-red">- ¥ {{filters.toFix(formData.ladder_cut_price,2)}}元</view>
  439 + </view>
434 440
435 <!-- 订单优惠优惠金额 --> 441 <!-- 订单优惠优惠金额 -->
436 <view class="item" wx:if="{{formData.order_prom_amount>0}}"> 442 <view class="item" wx:if="{{formData.order_prom_amount>0}}">
pages/cart/cart2/ladder_calculate.js 0 → 100644
  1 +var regeneratorRuntime = require('../../../utils/runtime.js');
  2 +module.exports = {
  3 + //主要的作用,就是把阶梯促销多余的商品进行拆分,
  4 + //如果没有达成阶梯促销的要求,所有的商品都打回原价购买
  5 + fir_set_arr: function (c_item, th) {
  6 + //寻找一下
  7 + function get_num2(ite) {
  8 + var vh = c_item.goods.findIndex(function (e) {
  9 + return e.goods_id == ite.goods_id
  10 + })
  11 + if (vh > -1) return vh;
  12 + return 0;
  13 + }
  14 +
  15 + //组合活动,以及组合活动从表的商品
  16 + let ladder_map = c_item.ladder_map;
  17 + let goods = c_item.goods; //一个门店中所有的商品
  18 + let tfeel = 0, cut_price = 0, offline_price = 0, offline_num = 0;
  19 + //多个活动要拿来循环一下
  20 + for (let i in ladder_map) {
  21 + let title = ""; //提示语;
  22 + //其中的一个活动
  23 + let act_item = ladder_map[i];
  24 + let ladder_list = act_item.ladder_list;
  25 +
  26 + let all_num = 0; //商品数量之和
  27 + let all_price0 = 0; //商品数量之和
  28 + let aprice = 0; //达到活动条件的购买价格
  29 +
  30 + let no_in_arr = []; //剩余的未加入组合购
  31 + let del_g=[];
  32 + for (var li in goods) {
  33 + if (goods[li].prom_type != 10) continue;
  34 + if (goods[li].prom_id != act_item.id) continue;
  35 + var item = goods[li];
  36 + item.goods_price = item.goods_price;
  37 + item.offline_price = item.offline_price;
  38 + item.cart_num = item.goods_num;
  39 + all_num += item.cart_num;
  40 + for (var j = 0; j < item.cart_num; j++) {
  41 + no_in_arr.push({
  42 + price: item.goods_price,
  43 + offline_price: item.offline_price,
  44 + goods_id: item.goods_id,
  45 + shop_price: item.shop_price,
  46 + item:item
  47 + })
  48 + }
  49 + del_g.push(item);
  50 + }
  51 +
  52 + //开始阶梯计算价格
  53 + var lev = 0;
  54 + for (let j in ladder_list) {
  55 + if (no_in_arr.length == 0) break;
  56 + let item_j =ladder_list[j];
  57 + var end = no_in_arr.pop();
  58 + var new_price = parseInt(item_j.discount_field) == 1 ? end.shop_price : end.price;
  59 + var account=new_price * parseFloat(item_j.discount) / 10;
  60 + aprice +=account;
  61 +
  62 + //-- 单个文件新增 --
  63 + let new_g = JSON.parse(JSON.stringify(end.item));
  64 + new_g.goods_num = 1;
  65 + new_g.account = account.toFixed(2);
  66 + new_g.discount = item_j.discount;
  67 + new_g.goods_price =new_price;
  68 + new_g.ladder_list_id =item_j.id;
  69 + goods.push(new_g);
  70 + lev++;
  71 + }
  72 +
  73 + let goods_map = {};
  74 + //算一下剩余的商品
  75 + if (no_in_arr.length) {
  76 + for (let ii in no_in_arr) {
  77 + let item = no_in_arr[ii];
  78 + if (item.offline_price) {
  79 + offline_price += item.price - item.offline_price;
  80 + offline_num += 1;
  81 + }
  82 + if (goods_map[item.goods_id]) {
  83 + var num = goods_map[item.goods_id];
  84 + goods_map[item.goods_id] = ++num;
  85 + } else {
  86 + goods_map[item.goods_id] = 1;
  87 + }
  88 + }
  89 + }
  90 +
  91 + if (Object.keys(goods_map).length) {
  92 + //这里就开始拆分提交订单时的列表
  93 + for (let j in goods_map) {
  94 + //map中存的就是商品的数量
  95 + let num = goods_map[j];
  96 + //找到相应的商品
  97 + let idx = goods.findIndex(function (ele) {
  98 + return ele.goods_id == j;
  99 + })
  100 + //goods[idx].goods_num -= num;
  101 + let new_g = JSON.parse(JSON.stringify(goods[idx]));
  102 + new_g.goods_num = num;
  103 + new_g.prom_type = 0;
  104 + new_g.prom_id = 0;
  105 + goods.push(new_g);
  106 + goods.splice(idx, 1);
  107 + }
  108 + }
  109 +
  110 + for(var h in del_g){
  111 + var it=del_g[h];
  112 + let idx = goods.findIndex(function (ele) {
  113 + return ele.goods_id == it.goods_id;
  114 + })
  115 + goods.splice(idx, 1);
  116 + }
  117 +
  118 + //-- 只统计是参与活动的商品 --
  119 + for (var ij in goods) {
  120 + var iter = goods[ij];
  121 + if (iter.prom_type != 10 || iter.prom_id != act_item.id) {
  122 + continue;
  123 + }
  124 + all_price0 += iter.goods_num * iter.goods_price;
  125 + }
  126 +
  127 + if(!c_item.ladder_prom_goods) c_item.ladder_prom_goods={};
  128 + if(!c_item.ladder_prom_goods[act_item.id]) c_item.ladder_prom_goods[act_item.id]={};
  129 +
  130 + //-- 活动的条件已经满足 --
  131 + c_item.ladder_prom_goods[act_item.id].is_has_ladder = 1;
  132 + c_item.is_has_ladder = 1;
  133 + c_item.ladder_prom_goods[act_item.id].actual_price = aprice;
  134 + c_item.ladder_prom_goods[act_item.id].cut_price = all_price0 - aprice;
  135 +
  136 + tfeel += aprice;
  137 + cut_price += all_price0 - aprice;
  138 +
  139 + }
  140 +
  141 + c_item.ladder_all_price = tfeel;
  142 + c_item.ladder_cut_price = cut_price;
  143 +
  144 + if (c_item.is_offline == 1) {
  145 + c_item.offline_price += offline_price;
  146 + c_item.offline_num += offline_num;
  147 + } else {
  148 + c_item.is_offline == 1;
  149 + c_item.offline_price = offline_price;
  150 + c_item.offline_num = offline_num;
  151 + }
  152 + },
  153 + //筛选组合购,纯粹的数组按活动id分组
  154 + find_split: function (arr) {
  155 + //过滤只有团购的商品
  156 + let oarr = arr.goods.filter(function (ele) {
  157 + return ele.prom_type == 10
  158 + })
  159 + if (!oarr || oarr.length == 0) return null;
  160 + //看一下有多少个不同的团购
  161 + let map = {},
  162 + dest = [];
  163 + for (let i = 0; i < oarr.length; i++) {
  164 + let ai = oarr[i];
  165 + let index = map[ai.prom_id]
  166 + if (!index) {
  167 + dest.push({
  168 + prom_id: ai.prom_id,
  169 + act: ai.act,
  170 + data: [ai]
  171 + });
  172 + map[ai.prom_id] = dest.length; //存储下标
  173 + } else {
  174 + let dj = dest[index - 1];
  175 + dj.data.push(ai);
  176 + }
  177 + }
  178 + return dest;
  179 + },
  180 +
  181 + //-- 平摊组合购的价格 --
  182 + calc_split_price: async function (c_arr, th) {
  183 + //-- 循环处理 --
  184 + for (var k in c_arr) {
  185 + var cart_item = c_arr[k]; //就是每一单的意思
  186 + var ord_goods = c_arr[k].goods; //就是每一单的从表的意思
  187 +
  188 + var ladder_map = cart_item.ladder_prom_goods; //一单中所有的组合购的集合
  189 + var item_map = {};
  190 + for (let i in ladder_map) {
  191 + let item = ladder_map[i];
  192 + let prom_id = i;
  193 + //如果这个活动还没有达到要求,继续下一个计算
  194 + if (!item.is_has_ladder) continue;
  195 + //过滤出相应组合购活动的商品
  196 + let glist = ord_goods.filter(function (ele) {
  197 + return ele.prom_type == 10 && ele.prom_id == i;
  198 + })
  199 +
  200 + var all_good_price = 0;
  201 + var post_gd = [];
  202 + for (let j in glist) {
  203 + let item = glist[j];
  204 + all_good_price += item.goods_price * item.goods_num;
  205 + var gitem = {
  206 + goods_id: item.goods_id,
  207 + goods_num: item.goods_num,
  208 + goods_price: item.goods_price
  209 + }
  210 + post_gd.push(gitem);
  211 + }
  212 + //要进行优惠的计算
  213 + if (all_good_price - item.actual_price) {
  214 + if (cart_item.prom_pt_json) {
  215 + cart_item.prom_pt_json.push({
  216 + "ladder_prom_id": prom_id,
  217 + "dis": (all_good_price - item.actual_price).toFixed(2),
  218 + "ispt": 0
  219 + })
  220 + } else {
  221 + cart_item.prom_pt_json = [{
  222 + "ladder_prom_id": prom_id,
  223 + "dis": (all_good_price - item.actual_price).toFixed(2),
  224 + "ispt": 0
  225 + }];
  226 + }
  227 + }
  228 + }
  229 +
  230 +
  231 + }
  232 + }
  233 +
  234 +
  235 +}
pages/cart/cart2_pt/cart2_pt.js
@@ -296,7 +296,7 @@ Page({ @@ -296,7 +296,7 @@ Page({
296 th.setData({ user_addr: ie }); 296 th.setData({ user_addr: ie });
297 if (!th.data.user_addr || th.data.user_addr.address_id != ie.address_id) { 297 if (!th.data.user_addr || th.data.user_addr.address_id != ie.address_id) {
298 th.setData({ add_back: 1 }); 298 th.setData({ add_back: 1 });
299 - if (this.data.bn_goods) th.calculatePrice2(); 299 + if (th.data.bn_goods) th.calculatePrice2();
300 } 300 }
301 }) 301 })
302 //--更新默认地址--,看一下是不是跳到地址页面 302 //--更新默认地址--,看一下是不是跳到地址页面
pages/goods/goodsInfo/goodsInfo.js
@@ -840,7 +840,7 @@ Page({ @@ -840,7 +840,7 @@ Page({
840 840
841 841
842 //获取统一条形码,普通商品和优惠促销的商品 842 //获取统一条形码,普通商品和优惠促销的商品
843 - 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) { 843 + 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 == 10) {
844 //默认门店要拿下门店库存 844 //默认门店要拿下门店库存
845 if (that.data.sales_rules == 2 && that.data.is_newsales_rules) { 845 if (that.data.sales_rules == 2 && that.data.is_newsales_rules) {
846 //获取门店 846 //获取门店
@@ -1056,7 +1056,7 @@ Page({ @@ -1056,7 +1056,7 @@ Page({
1056 if (this.data.prom_type == 1 || this.data.prom_type == 2) { 1056 if (this.data.prom_type == 1 || this.data.prom_type == 2) {
1057 this.getactLen(function (num) { 1057 this.getactLen(function (num) {
1058 if (num < th.data.goodsInputNum) { 1058 if (num < th.data.goodsInputNum) {
1059 - getApp().my_warnning("秒杀库存不足!", 0, th); 1059 + getApp().my_warnning("活动库存不足!", 0, th);
1060 return false; 1060 return false;
1061 } else { 1061 } else {
1062 th.add_cart_func(t); 1062 th.add_cart_func(t);
@@ -1066,9 +1066,7 @@ Page({ @@ -1066,9 +1066,7 @@ Page({
1066 th.add_cart_func(t); 1066 th.add_cart_func(t);
1067 } 1067 }
1068 }, 1068 },
1069 -  
1070 -  
1071 - 1069 +
1072 //-- 加入购物的函数 -- 1070 //-- 加入购物的函数 --
1073 add_cart_func_inte: function (t) { 1071 add_cart_func_inte: function (t) {
1074 var i = getApp().request; 1072 var i = getApp().request;
@@ -1342,10 +1340,15 @@ Page({ @@ -1342,10 +1340,15 @@ Page({
1342 }) 1340 })
1343 1341
1344 } 1342 }
1345 - else if (th.data.prom_type == 0 || th.data.prom_type == 3 || th.data.prom_type == 4 || th.data.prom_type == 5) { 1343 + 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) {
1346 newd.prom_type = 0; 1344 newd.prom_type = 0;
1347 newd.prom_id = 0; 1345 newd.prom_id = 0;
1348 1346
  1347 + if(th.data.prom_type == 10){
  1348 + newd.prom_type = th.data.prom_type;
  1349 + newd.prom_id = th.data.prom_id;
  1350 + }
  1351 +
1349 //---如果是线下门店销售的时候--- 1352 //---如果是线下门店销售的时候---
1350 if (th.data.sales_rules == 2) { 1353 if (th.data.sales_rules == 2) {
1351 var pick = th.get_pick_from_list(th.data.sto_sele_id) 1354 var pick = th.get_pick_from_list(th.data.sto_sele_id)
@@ -1438,6 +1441,7 @@ Page({ @@ -1438,6 +1441,7 @@ Page({
1438 user_id: oo.user_id, 1441 user_id: oo.user_id,
1439 goods_id: a, 1442 goods_id: a,
1440 pick_id: e.data.sto_sele_id, 1443 pick_id: e.data.sto_sele_id,
  1444 + state:0
1441 }, 1445 },
1442 success: function (re) { 1446 success: function (re) {
1443 1447
@@ -1506,9 +1510,41 @@ Page({ @@ -1506,9 +1510,41 @@ Page({
1506 }); 1510 });
1507 1511
1508 } 1512 }
1509 - //else "exchange" == t.currentTarget.dataset.action ? this.exchange(d) : this.buyNow(d);  
1510 else { 1513 else {
1511 1514
  1515 + if(newd.prom_type==10){
  1516 + //----先看会员在购物车中是否加入了该商品,立即购买的-----
  1517 + getApp().request.get("/api/weshop/cart/page", {
  1518 + data: {
  1519 + store_id: e.data.stoid,
  1520 + user_id: oo.user_id,
  1521 + state:1
  1522 + },
  1523 + success: function (res) {
  1524 + //-------如果购物车中有相关的数据---------
  1525 + if (res.data.code==0 && res.data.data.total > 0) {
  1526 + for(let j in res.data.data.pageData){
  1527 + let item_j=res.data.data.pageData[j];
  1528 + var url = '/api/weshop/cart/del/' +e.data.stoid+ '/' + item_j.id;
  1529 + getApp().request.delete(url, {});
  1530 + }
  1531 + }
  1532 + newd.state=1;
  1533 + getApp().request.post("/api/weshop/cart/save", {
  1534 + data: newd,
  1535 + success: function (t) {
  1536 + th.closeSpecModal();
  1537 + getApp().goto("/pages/cart/cart2/cart2?state=1");
  1538 + }
  1539 + });
  1540 +
  1541 +
  1542 + }
  1543 + })
  1544 + return false;
  1545 + }
  1546 +
  1547 +
1512 if (th.data.prom_goods) { 1548 if (th.data.prom_goods) {
1513 var prom_d = th.data.prom_goods; 1549 var prom_d = th.data.prom_goods;
1514 for (var i in prom_d) { 1550 for (var i in prom_d) {
@@ -1803,39 +1839,43 @@ Page({ @@ -1803,39 +1839,43 @@ Page({
1803 }); 1839 });
1804 }, 1840 },
1805 1841
1806 - openSpecModel: function (t) {  
1807 - var th = this;  
1808 - var open_store = t.currentTarget.dataset.ind;  
1809 - this.setData({  
1810 - store: 0,  
1811 - choice_sort_store: 0,  
1812 - sort_store: 0,  
1813 - open_ind_store: open_store,  
1814 - })  
1815 - //--先判断会员状态--  
1816 - var user_info = getApp().globalData.userInfo;  
1817 - if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {  
1818 - wx.navigateTo({  
1819 - url: '/pages/togoin/togoin',  
1820 - })  
1821 - return false;  
1822 - }  
1823 -  
1824 - if(th.data.more_flash && open_store==1){  
1825 - th.setData({is_pop_more:1});  
1826 - }else{  
1827 - var ind = t.currentTarget.dataset.ind;  
1828 - //回调。判断是不是优惠促销  
1829 - th.check_is_prom_goods(function () {  
1830 - th.setData({  
1831 - openSpecModal: !0,  
1832 - openSpecModal_ind: ind,  
1833 - });  
1834 - //var is_open=th.data.config  
1835 - th.get_off_price(); 1842 + openSpecModel: function (t) {
  1843 + var th = this;
  1844 + var open_store = t.currentTarget.dataset.ind;
  1845 + this.setData({
  1846 + store: 0,
  1847 + choice_sort_store: 0,
  1848 + sort_store: 0,
  1849 + open_ind_store: open_store,
1836 }) 1850 })
1837 - }  
1838 - }, 1851 + //--先判断会员状态--
  1852 + var user_info = getApp().globalData.userInfo;
  1853 + if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
  1854 + wx.navigateTo({
  1855 + url: '/pages/togoin/togoin',
  1856 + })
  1857 + return false;
  1858 + }
  1859 + var is_go_next = 1;
  1860 + if (th.data.more_flash && th.data.more_flash.length > 1 && open_store == 1) {
  1861 + is_go_next = 0;
  1862 + }
  1863 + if (is_go_next) {
  1864 + var ind = t.currentTarget.dataset.ind;
  1865 + //回调。判断是不是优惠促销
  1866 + th.check_is_prom_goods(function () {
  1867 + th.setData({
  1868 + openSpecModal: !0,
  1869 + openSpecModal_ind: ind,
  1870 + });
  1871 + //var is_open=th.data.config
  1872 + th.get_off_price();
  1873 + })
  1874 + } else {
  1875 + th.setData({is_pop_more: 1});
  1876 +
  1877 + }
  1878 + },
1839 1879
1840 open_next(){ 1880 open_next(){
1841 var th=this; 1881 var th=this;
@@ -2996,7 +3036,7 @@ Page({ @@ -2996,7 +3036,7 @@ Page({
2996 var user_id=getApp().globalData.user_id; 3036 var user_id=getApp().globalData.user_id;
2997 if(!user_id) user_id=0; 3037 if(!user_id) user_id=0;
2998 3038
2999 - if (prom_type == 3 || prom_type == 0 || prom_type == 5 || prom_type == 7) { 3039 + if (prom_type == 3 || prom_type == 0 || prom_type == 5 || prom_type == 7 || prom_type == 10) {
3000 this.setData({ 3040 this.setData({
3001 prom_type: 0,isshow: 1, 3041 prom_type: 0,isshow: 1,
3002 }); 3042 });
@@ -3100,6 +3140,7 @@ Page({ @@ -3100,6 +3140,7 @@ Page({
3100 3140
3101 3141
3102 } 3142 }
  3143 +
3103 if (prom_type == 1 && prom_id==0){ 3144 if (prom_type == 1 && prom_id==0){
3104 this.setData({ 3145 this.setData({
3105 prom_type: 0,isshow: 1, 3146 prom_type: 0,isshow: 1,
@@ -5657,6 +5698,8 @@ Page({ @@ -5657,6 +5698,8 @@ Page({
5657 //---检查有没有优惠活动--- 5698 //---检查有没有优惠活动---
5658 check_is_youhui: function (gid, is_nor) { 5699 check_is_youhui: function (gid, is_nor) {
5659 var th = this; 5700 var th = this;
  5701 + var user_id=getApp().globalData.user_id;
  5702 + if(!user_id) user_id=0;
5660 //如果是普通购买的时候,要进行调用 5703 //如果是普通购买的时候,要进行调用
5661 if (is_nor) { 5704 if (is_nor) {
5662 getApp().request.get("/api/weshop/goods/getGoodsPromNormal/" + os.stoid + "/" + gid, { 5705 getApp().request.get("/api/weshop/goods/getGoodsPromNormal/" + os.stoid + "/" + gid, {
@@ -5676,7 +5719,7 @@ Page({ @@ -5676,7 +5719,7 @@ Page({
5676 getApp().request.get("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + gid + "/0", { 5719 getApp().request.get("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + gid + "/0", {
5677 success: function (res) { 5720 success: function (res) {
5678 console.log(res); 5721 console.log(res);
5679 - if (res.data.code == 0) { 5722 + if (res.data.code == 0 && res.data.data) {
5680 var r_data = res.data.data; 5723 var r_data = res.data.data;
5681 var max = 0, min = 0; 5724 var max = 0, min = 0;
5682 if (r_data.collocationList) { 5725 if (r_data.collocationList) {
@@ -5690,6 +5733,32 @@ Page({ @@ -5690,6 +5733,32 @@ Page({
5690 r_data.collocationPromList.max = (max + th.data.data.shop_price).toFixed(2); 5733 r_data.collocationPromList.max = (max + th.data.data.shop_price).toFixed(2);
5691 r_data.collocationPromList.min = (min + th.data.data.shop_price).toFixed(2); 5734 r_data.collocationPromList.min = (min + th.data.data.shop_price).toFixed(2);
5692 } 5735 }
  5736 +
  5737 + if(r_data.ladderLists){
  5738 + var act_id=r_data.ladderLists[0].form_id;
  5739 + //-- 判断会员能不能参与阶梯促销 --
  5740 + getApp().request.promiseGet("/api/weshop/prom/ladderForm/getNew/" + os.stoid+"/"+user_id + "/"+act_id, {
  5741 + }).then(res=>{
  5742 + if(res.data.code==0 && res.data.data){
  5743 + var prom_content="";
  5744 + for(let jj in r_data.ladderLists){
  5745 + if(r_data.ladderLists[jj].discount==10){
  5746 + prom_content+="第"+(parseInt(jj)+1)+"件原价,";
  5747 + }else{
  5748 + prom_content+="第"+(parseInt(jj)+1)+"件"+r_data.ladderLists[jj].discount+"折,";
  5749 + }
  5750 + }
  5751 + prom_content=ut.sub_last(prom_content);
  5752 + th.data.prom_type=10;
  5753 + th.data.prom_id=act_id;
  5754 + th.setData({
  5755 + jieti_prom:prom_content,
  5756 + ladder_act_id:act_id
  5757 + })
  5758 + }
  5759 + })
  5760 + }
  5761 +
5693 th.setData({ 5762 th.setData({
5694 order_prom: r_data.promOrder, 5763 order_prom: r_data.promOrder,
5695 collocationGoods: r_data.collocationPromList, 5764 collocationGoods: r_data.collocationPromList,
@@ -5698,11 +5767,8 @@ Page({ @@ -5698,11 +5767,8 @@ Page({
5698 th.is_show_more_buy(); 5767 th.is_show_more_buy();
5699 } 5768 }
5700 } 5769 }
5701 -  
5702 }) 5770 })
5703 } 5771 }
5704 -  
5705 -  
5706 }, 5772 },
5707 5773
5708 closePoster() { 5774 closePoster() {
@@ -6018,13 +6084,31 @@ Page({ @@ -6018,13 +6084,31 @@ Page({
6018 check_has_flash:function () { 6084 check_has_flash:function () {
6019 var th=this; 6085 var th=this;
6020 var url="/api/weshop/activitylist/getGoodActInfo"; 6086 var url="/api/weshop/activitylist/getGoodActInfo";
  6087 + var user_id=getApp().globalData.user_id;
  6088 + if(!user_id) user_id=0;
  6089 +
6021 var req_data={ 6090 var req_data={
6022 - store_id:os.stoid,goodsidlist:this.data.data.goods_id,is_detail:1 6091 + store_id:os.stoid,goodsidlist:this.data.data.goods_id,is_detail:1,user_id:user_id
6023 }; 6092 };
6024 //获取秒杀的多规格 6093 //获取秒杀的多规格
6025 - getApp().request.promiseGet(url, {data:req_data}).then(res=>{ 6094 + getApp().request.promiseGet(url, {data:req_data}).then(async function (res) {
6026 if(res.data.code==0 && res.data.data && res.data.data.length){ 6095 if(res.data.code==0 && res.data.data && res.data.data.length){
6027 - th.setData({more_flash:res.data.data}); 6096 + var arr_data=res.data.data;
  6097 + var new_arr=[];
  6098 + for(let i in arr_data){
  6099 + let item=arr_data[i];
  6100 + //找不到活动要剔除
  6101 + if(!item.act_name) continue;
  6102 + if(item.prom_type!=1) continue;
  6103 + new_arr.push(item);
  6104 + }
  6105 +
  6106 + if(new_arr.length==1){
  6107 + th.data.prom_id=new_arr[0].act_id;
  6108 + th.data.prom_type=new_arr[0].prom_type;
  6109 + }
  6110 +
  6111 + th.setData({more_flash:new_arr});
6028 } 6112 }
6029 }) 6113 })
6030 }, 6114 },
@@ -6049,9 +6133,12 @@ Page({ @@ -6049,9 +6133,12 @@ Page({
6049 corpId: id, 6133 corpId: id,
6050 success(res) {} 6134 success(res) {}
6051 }) 6135 })
6052 - }  
6053 - 6136 + },
6054 6137
  6138 + go_more_ladder:function (e) {
  6139 + var prom_id=e.currentTarget.dataset.id;
  6140 + getApp().goto("/pages/goods/goodsList/goodsList?ladder_id="+prom_id);
  6141 + }
6055 6142
6056 6143
6057 }); 6144 });
pages/goods/goodsInfo/goodsInfo.wxml
@@ -614,6 +614,24 @@ @@ -614,6 +614,24 @@
614 </view> 614 </view>
615 </block> 615 </block>
616 616
  617 + <block wx:if="{{jieti_prom}}">
  618 + <view class="cx-frame flex jc_sb" bindtap="go_more_ladder" data-id="{{ladder_act_id}}"
  619 + style="position: relative; height: auto">
  620 + <view class="flex" style="width: 92%">
  621 + <view class="cx-sizs fs30" style="width: 90rpx;flex-shrink: 0">阶梯促</view>
  622 + <!-- 中间显示层 -->
  623 + <view class="ellipsis-1 fs24">
  624 + <text class="jie_show fs22">阶</text>
  625 + {{jieti_prom}}
  626 + </view>
  627 + </view>
  628 + <view data-coupon="1" bindtap="show_more_cx" class="cx-obtain-coupon wsize">
  629 + <text class="bg_jj" style="position: relative;right: 3rpx"></text>
  630 + </view>
  631 + </view>
  632 + </block>
  633 +
  634 +
617 <!-- 要判断是不是有订单优惠 --> 635 <!-- 要判断是不是有订单优惠 -->
618 <block wx:if="{{order_prom}}"> 636 <block wx:if="{{order_prom}}">
619 <view class="cx-frame flex" style="position: relative; height: auto"> 637 <view class="cx-frame flex" style="position: relative; height: auto">
@@ -654,26 +672,30 @@ @@ -654,26 +672,30 @@
654 <!-- 判断是不是有秒杀 --> 672 <!-- 判断是不是有秒杀 -->
655 <block wx:if="{{more_flash}}"> 673 <block wx:if="{{more_flash}}">
656 674
657 - <block wx:for="{{more_flash}}">  
658 -  
659 - <view class="cx-frame flex" style="position: relative; height: auto" wx:if="{{item.prom_type==1}}" >  
660 - <view class="cx-sizs wsize" style="width: 144rpx">秒杀</view>  
661 - <!-- 中间显示层 -->  
662 - <view class="flex ai-center jc_sb" style="width: 570rpx" bindtap="go_more_flash" data-id="{{item.act_id}}">  
663 - <view class="flex">  
664 - <view class="miao_lab">秒</view>  
665 - <view class="order_hui">  
666 - <view class="fs28 ellipsis-1">{{item.act_name}}</view>  
667 - <view class="fs26">  
668 - (活动时间:{{tool.format_tt(item.s_time)}} - {{tool.format_tt(item.e_time)}}) 675 + <block wx:for="{{more_flash}}">
  676 + <view class="cx-frame flex" style="position: relative; height: auto" wx:if="{{item.prom_type==1}}">
  677 + <view class="cx-sizs wsize" style="width: 144rpx">秒杀</view>
  678 + <!-- 中间显示层 -->
  679 + <view class="flex ai-center jc_sb" style="width: 570rpx" bindtap="go_more_flash"
  680 + data-id="{{item.act_id}}">
  681 + <view class="flex">
  682 + <view class="miao_lab">秒</view>
  683 + <view class="order_hui">
  684 + <view class="fs28 ellipsis-1">{{item.act_name}}</view>
  685 + <view class="fs26">
  686 + (活动时间:{{tool.format_tt(item.s_time)}} - {{tool.format_tt(item.e_time)}})
  687 + </view>
669 </view> 688 </view>
670 </view> 689 </view>
  690 + <view>
  691 + <text class="bg_jj is_more_cx" style="position: relative;top:-10rpx"></text>
  692 + </view>
671 </view> 693 </view>
672 - <view><text class="bg_jj is_more_cx" style="position: relative;top:-10rpx"></text></view>  
673 </view> 694 </view>
674 - </view>  
675 </block> 695 </block>
676 </block> 696 </block>
  697 +
  698 + <!-- 保障服务 -->
677 <view class="bz_view flex bdt16" wx:if="{{bconfig}}" style=""> 699 <view class="bz_view flex bdt16" wx:if="{{bconfig}}" style="">
678 <image class="bzfu_img" src="{{iurl}}/miniapp/images/bzfu_w.png"></image> 700 <image class="bzfu_img" src="{{iurl}}/miniapp/images/bzfu_w.png"></image>
679 <view class="flex f1 ai_c rel"> 701 <view class="flex f1 ai_c rel">
@@ -681,8 +703,6 @@ @@ -681,8 +703,6 @@
681 <view bindtap="clickCollapse" class="cx-obtain-coupon wsize arrow"> 703 <view bindtap="clickCollapse" class="cx-obtain-coupon wsize arrow">
682 <text class="bg_jj {{flag?'down1':''}}"></text> 704 <text class="bg_jj {{flag?'down1':''}}"></text>
683 </view> 705 </view>
684 - <!-- <text class="bg_jj" bindtap="clickCollapse"></text> -->  
685 - <!-- <text class="iconfont icon-shuangjiantouxia c-db"></text> -->  
686 </view> 706 </view>
687 </view> 707 </view>
688 <!-- - 搭配促销 -- --> 708 <!-- - 搭配促销 -- -->
pages/goods/goodsInfo/goodsInfo.wxss
@@ -2875,4 +2875,6 @@ button.custom-service::after{ @@ -2875,4 +2875,6 @@ button.custom-service::after{
2875 line-height: 70rpx; 2875 line-height: 70rpx;
2876 border-radius: 50%; 2876 border-radius: 50%;
2877 color: #aaa; 2877 color: #aaa;
2878 -}  
2879 \ No newline at end of file 2878 \ No newline at end of file
  2879 +}
  2880 +
  2881 +.jie_show{ display: inline-block; width: 40rpx; height: 40rpx; background-color:#ff0505;border-radius:50%;color: #fff;text-align: center; margin: 0 20rpx }
2880 \ No newline at end of file 2882 \ No newline at end of file
pages/goods/goodsList/goodsList.js
@@ -67,8 +67,12 @@ Page({ @@ -67,8 +67,12 @@ Page({
67 67
68 if (0 != t.is_new && t.is_new != undefined) { url += "&is_new=" + t.is_new; } 68 if (0 != t.is_new && t.is_new != undefined) { url += "&is_new=" + t.is_new; }
69 if (0 != t.is_hot && t.is_hot != undefined) { url += "&is_hot=" + t.is_hot; } 69 if (0 != t.is_hot && t.is_hot != undefined) { url += "&is_hot=" + t.is_hot; }
70 -  
71 - 70 + if (0 != t.ladder_id && t.ladder_id != undefined) { url += "&ladder_id=" + t.ladder_id; }
  71 +
  72 + var user_id=getApp().globalData.user_id;
  73 + if(!user_id) user_id=0;
  74 + url += "&user_id="+user_id;
  75 +
72 // 优惠促销列表 76 // 优惠促销列表
73 if(t.prom_goods_id) { 77 if(t.prom_goods_id) {
74 url += '&prom_goods_id=' + t.prom_goods_id; 78 url += '&prom_goods_id=' + t.prom_goods_id;
@@ -94,6 +98,34 @@ Page({ @@ -94,6 +98,34 @@ Page({
94 } 98 }
95 }) 99 })
96 } 100 }
  101 +
  102 + //--- 阶梯优惠活动的凑单 ---
  103 + if(t.ladder_id){
  104 + var user_id=getApp().globalData.user_id;
  105 + if(!user_id) user_id=0;
  106 + getApp().request.promiseGet("/api/weshop/prom/ladderForm/getNew/"+oo.stoid+"/"+user_id+"/"+t.ladder_id,{
  107 + }).then(res=>{
  108 + if(res.data.code==0 && res.data.data){
  109 + var arr= res.data.data;
  110 + var url1="/api/weshop/prom/ladderList/list?store_id="+oo.stoid+"&form_id="+arr.id;
  111 + getApp().request.promiseGet(url1, {}).then(rs=>{
  112 + if(rs.data.code==0 && rs.data.data && rs.data.data.length) {
  113 + var prom_content="";
  114 + for(let jj in rs.data.data){
  115 + if(rs.data.data[jj].discount==10){
  116 + prom_content+="第"+(parseInt(jj)+1)+"件原价,";
  117 + }else{
  118 + prom_content+="第"+(parseInt(jj)+1)+"件"+rs.data.data[jj].discount+"折,";
  119 + }
  120 + }
  121 + prom_content=ut.sub_last(prom_content);
  122 + th.setData({jieti_prom:prom_content})
  123 + }
  124 + })
  125 + }
  126 + })
  127 + }
  128 +
97 this.requestGoodsList(url); 129 this.requestGoodsList(url);
98 getApp().getConfig2(function(rs){ 130 getApp().getConfig2(function(rs){
99 //计算等级价相关 131 //计算等级价相关
pages/goods/goodsList/goodsList.wxml
@@ -12,8 +12,10 @@ @@ -12,8 +12,10 @@
12 <text space="{{true}}" wx:if="{{item.content.is_libao && item.content.is_libao!='0'}}">送{{item.content.lb_name}} </text> 12 <text space="{{true}}" wx:if="{{item.content.is_libao && item.content.is_libao!='0'}}">送{{item.content.lb_name}} </text>
13 </view> 13 </view>
14 </block> 14 </block>
  15 + <!-- 新增 -->
  16 + <view wx:if="{{jieti_prom}}" class="fs30 ellipsis-1" style="padding: 20rpx">阶梯促销:{{jieti_prom}}</view>
  17 +
15 </view> 18 </view>
16 -  
17 <view class="pd20 flex ai-center jc_sb"> 19 <view class="pd20 flex ai-center jc_sb">
18 <!-- 搜索框 --> 20 <!-- 搜索框 -->
19 <view class="search-box f1"> 21 <view class="search-box f1">
pages/user/order_list/order_list.js
1 const app = getApp(); 1 const app = getApp();
2 -var t = function(t) {  
3 - return t && t.__esModule ? t : {  
4 - default: t  
5 - };  
6 - }(require("../../../utils/LoadMore.js")),  
7 - e = getApp(),  
8 - os = e.globalData.setting,  
9 - oo = e.globalData,  
10 - r = e.request,  
11 - rq = r,  
12 - a = require("../../../utils/common.js"),  
13 - s = new t.default(); 2 +var t = function (t) {
  3 + return t && t.__esModule ? t : {
  4 + default: t
  5 + };
  6 + }(require("../../../utils/LoadMore.js")),
  7 + e = getApp(),
  8 + os = e.globalData.setting,
  9 + oo = e.globalData,
  10 + r = e.request,
  11 + rq = r,
  12 + a = require("../../../utils/common.js"),
  13 + s = new t.default();
14 var regeneratorRuntime = require('../../../utils/runtime.js'); 14 var regeneratorRuntime = require('../../../utils/runtime.js');
15 -var ut= require('../../../utils/util.js'); 15 +var ut = require('../../../utils/util.js');
16 var t = require("../../../utils/pay.js"); 16 var t = require("../../../utils/pay.js");
17 17
18 Page({ 18 Page({
19 - data: {  
20 - url: e.globalData.setting.url,  
21 - resourceUrl: e.globalData.setting.imghost,  
22 - iurl: e.globalData.setting.imghost,  
23 - categories: [{  
24 - name: "全部",  
25 - id: 0  
26 - }, {  
27 - name: "待付款",  
28 - id: 1  
29 - }, {  
30 - name: "待发货",  
31 - id: 2  
32 - }, {  
33 - name: "待收货",  
34 - id: 3  
35 - }, {  
36 - name: "待评价",  
37 - id: 4  
38 - }],  
39 - activeCategoryId: 0,  
40 - orderList: null,  
41 - currentPage: 1,  
42 - //已经读取过接口  
43 - is_get: 0,  
44 - conf: null,  
45 - iscodeall: null,  
46 - sales_rules:1, //默认是显示线上库存  
47 -  
48 - //会员的等级价位  
49 - card_field:null,  
50 -  
51 - back_goods_arr:null, //返回商品的列表  
52 - currentIndex: 0,  
53 -  
54 - startDate: '',  
55 - endDate: '',  
56 - list2: [],  
57 - currentPage2: 1,  
58 - currentDate: '',  
59 - total: 0, //读取时段内记录数量  
60 - is_no_data2: 0,  
61 - is_no_more2: 0,  
62 -  
63 -  
64 - // 搜索内容  
65 - searchContent: '',  
66 - },  
67 - onLoad: function(t) {  
68 - // 设置日期选择器的结束时间为当前日期  
69 - var now=new Date();  
70 - var nowDate = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate();  
71 - var date = new Date(now.getTime() - 7 * 24 * 3600 * 1000);  
72 - var startDate=date.getFullYear() + '-' + (date.getMonth() + 1) + '-' + date.getDate();  
73 -  
74 -  
75 - if(t.index) {  
76 - this.setData({  
77 - currentIndex: t.index  
78 - });  
79 - };  
80 -  
81 - this.setData({  
82 - currentDate: this.currentDate(),  
83 - startDate:startDate,  
84 - endDate:nowDate,  
85 - });  
86 -  
87 -  
88 - var th = this;  
89 - if (t.type != undefined) this.setData({  
90 - activeCategoryId: t.type  
91 - });  
92 - s.init(this, "", "orderList");  
93 - },  
94 - onShow: function() {  
95 - var th=this;  
96 - //---查看会员的等级价---  
97 - getApp().getConfig2(function(e) {  
98 - th.setData({conf: e,sales_rules:e.sales_rules });  
99 - //--- 看后台是不是有开通等级卡 ---  
100 - if(e.switch_list){  
101 - var s_list=JSON.parse(e.switch_list);  
102 - var user=getApp().globalData.userInfo;  
103 - var is_open_offline=s_list.is_pricing_open;  
104 - //-- 如果后台有开启等级价的功能 --  
105 - if(parseInt(s_list.rank_switch)==2 && user['card_expiredate']){  
106 - var str = user['card_expiredate'].replace(/-/g, '/');  
107 - var end = new Date(str);  
108 - end = Date.parse(end) / 1000;  
109 - var now = ut.gettimestamp();  
110 - //--- 判断是等级会员,且在有效期范围内 ---  
111 - if(user.card_field && now<end){  
112 - th.setData({card_field:user.card_field})  
113 - }  
114 - }  
115 - //-- 判断有没有过期 --  
116 - getApp().request.promiseGet("/store/storemoduleendtime/page?store_id=" +os.stoid + "&type=6",{}).then(res=>{  
117 - //未购买  
118 - if(res.data.code!=0 || !res.data.data || !res.data.data.pageData || !res.data.data.pageData.length){  
119 - is_open_offline=0;  
120 - }else{  
121 - //已经过期  
122 - var item=res.data.data.pageData[0];  
123 - if(item.end_time<ut.gettimestamp()){  
124 - is_open_offline=0;  
125 - }  
126 - }  
127 -  
128 - th.data.is_open_offline=is_open_offline;  
129 - })  
130 - }  
131 - },1)  
132 -  
133 - this.resetData(), this.requestOrderList(this.data.activeCategoryId);  
134 -  
135 - },  
136 - changeTab: function(t) {  
137 - if (this.data.activeCategoryId == t.currentTarget.id) return false;  
138 - this.resetData(), this.requestOrderList(t.currentTarget.id);  
139 - },  
140 - resetData: function() {  
141 - s.resetConfig(),this.data.orderList = null, this.data.currentPage = 1;  
142 - }, 19 + data: {
  20 + url: e.globalData.setting.url,
  21 + resourceUrl: e.globalData.setting.imghost,
  22 + iurl: e.globalData.setting.imghost,
  23 + categories: [{
  24 + name: "全部",
  25 + id: 0
  26 + }, {
  27 + name: "待付款",
  28 + id: 1
  29 + }, {
  30 + name: "待发货",
  31 + id: 2
  32 + }, {
  33 + name: "待收货",
  34 + id: 3
  35 + }, {
  36 + name: "待评价",
  37 + id: 4
  38 + }],
  39 + activeCategoryId: 0,
  40 + orderList: null,
  41 + currentPage: 1,
  42 + //已经读取过接口
  43 + is_get: 0,
  44 + conf: null,
  45 + iscodeall: null,
  46 + sales_rules: 1, //默认是显示线上库存
  47 +
  48 + //会员的等级价位
  49 + card_field: null,
  50 +
  51 + back_goods_arr: null, //返回商品的列表
  52 + currentIndex: 0,
  53 +
  54 + startDate: '',
  55 + endDate: '',
  56 + list2: [],
  57 + currentPage2: 1,
  58 + currentDate: '',
  59 + total: 0, //读取时段内记录数量
  60 + is_no_data2: 0,
  61 + is_no_more2: 0,
  62 +
  63 +
  64 + // 搜索内容
  65 + searchContent: '',
  66 + },
  67 + onLoad: function (t) {
  68 + // 设置日期选择器的结束时间为当前日期
  69 + var now = new Date();
  70 + var nowDate = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate();
  71 + var date = new Date(now.getTime() - 7 * 24 * 3600 * 1000);
  72 + var startDate = date.getFullYear() + '-' + (date.getMonth() + 1) + '-' + date.getDate();
  73 +
  74 +
  75 + if (t.index) {
  76 + this.setData({
  77 + currentIndex: t.index
  78 + });
  79 + };
  80 +
  81 + this.setData({
  82 + currentDate: this.currentDate(),
  83 + startDate: startDate,
  84 + endDate: nowDate,
  85 + });
  86 +
  87 +
  88 + var th = this;
  89 + if (t.type != undefined) this.setData({
  90 + activeCategoryId: t.type
  91 + });
  92 + s.init(this, "", "orderList");
  93 + },
  94 + onShow: function () {
  95 + var th = this;
  96 + //---查看会员的等级价---
  97 + getApp().getConfig2(function (e) {
  98 + th.setData({
  99 + conf: e,
  100 + sales_rules: e.sales_rules
  101 + });
  102 + //--- 看后台是不是有开通等级卡 ---
  103 + if (e.switch_list) {
  104 + var s_list = JSON.parse(e.switch_list);
  105 + var user = getApp().globalData.userInfo;
  106 + var is_open_offline = s_list.is_pricing_open;
  107 + //-- 如果后台有开启等级价的功能 --
  108 + if (parseInt(s_list.rank_switch) == 2 && user['card_expiredate']) {
  109 + var str = user['card_expiredate'].replace(/-/g, '/');
  110 + var end = new Date(str);
  111 + end = Date.parse(end) / 1000;
  112 + var now = ut.gettimestamp();
  113 + //--- 判断是等级会员,且在有效期范围内 ---
  114 + if (user.card_field && now < end) {
  115 + th.setData({
  116 + card_field: user.card_field
  117 + })
  118 + }
  119 + }
  120 + //-- 判断有没有过期 --
  121 + getApp().request.promiseGet("/store/storemoduleendtime/page?store_id=" + os.stoid + "&type=6", {}).then(res => {
  122 + //未购买
  123 + if (res.data.code != 0 || !res.data.data || !res.data.data.pageData || !res.data.data.pageData.length) {
  124 + is_open_offline = 0;
  125 + } else {
  126 + //已经过期
  127 + var item = res.data.data.pageData[0];
  128 + if (item.end_time < ut.gettimestamp()) {
  129 + is_open_offline = 0;
  130 + }
  131 + }
  132 +
  133 + th.data.is_open_offline = is_open_offline;
  134 + })
  135 + }
  136 + }, 1)
  137 +
  138 + this.resetData(), this.requestOrderList(this.data.activeCategoryId);
  139 +
  140 + },
  141 + changeTab: function (t) {
  142 + if (this.data.activeCategoryId == t.currentTarget.id) return false;
  143 + this.resetData(), this.requestOrderList(t.currentTarget.id);
  144 + },
  145 + resetData: function () {
  146 + s.resetConfig(), this.data.orderList = null, this.data.currentPage = 1;
  147 + },
143 148
144 149
145 /*---------获取订单列表--------*/ 150 /*---------获取订单列表--------*/
146 requestOrderList: function (t) { 151 requestOrderList: function (t) {
147 var rd = Math.random() * 100; 152 var rd = Math.random() * 100;
148 - var e = this, th = e, r = e.data.url + "/api/weshop/order/page?rd=" + rd, a = ""; 153 + var e = this,
  154 + th = e,
  155 + r = e.data.url + "/api/weshop/order/page?rd=" + rd,
  156 + a = "";
149 switch (t) { 157 switch (t) {
150 case "1": 158 case "1":
151 r += "&wait_status=0"; 159 r += "&wait_status=0";
@@ -164,16 +172,24 @@ Page({ @@ -164,16 +172,24 @@ Page({
164 if (this.data.searchContent) { 172 if (this.data.searchContent) {
165 r += "&keyWord=" + this.data.searchContent; 173 r += "&keyWord=" + this.data.searchContent;
166 } 174 }
167 - this.setData({activeCategoryId: t}); 175 + this.setData({
  176 + activeCategoryId: t
  177 + });
168 r = r + "&page=" + e.data.currentPage; 178 r = r + "&page=" + e.data.currentPage;
169 s.request(r, function (t) { 179 s.request(r, function (t) {
170 180
171 - th.setData({is_get: 1}); 181 + th.setData({
  182 + is_get: 1
  183 + });
172 var data = e.data.orderList; 184 var data = e.data.orderList;
173 data.forEach(async function (item, ind) { 185 data.forEach(async function (item, ind) {
174 var tt = null; 186 var tt = null;
175 await getApp().request.promiseGet('/api/weshop/ordergoods/list', { 187 await getApp().request.promiseGet('/api/weshop/ordergoods/list', {
176 - data: {order_id: item.order_id, store_id: os.stoid, pageSize: 600}, 188 + data: {
  189 + order_id: item.order_id,
  190 + store_id: os.stoid,
  191 + pageSize: 600
  192 + },
177 }).then(res => { 193 }).then(res => {
178 tt = res; 194 tt = res;
179 }) 195 })
@@ -184,22 +200,23 @@ Page({ @@ -184,22 +200,23 @@ Page({
184 } 200 }
185 } 201 }
186 202
187 - data[ind]['ord_url']='/pages/user/order_detail/order_detail'; 203 + data[ind]['ord_url'] = '/pages/user/order_detail/order_detail';
188 //-- 如果是优惠活动 -- 204 //-- 如果是优惠活动 --
189 - if(glist[0].prom_type==8){  
190 - await getApp().request.promiseGet('/api/weshop/order/orderPresell/get/'+os.stoid+'/'+item.order_id, {  
191 - }).then(res => {  
192 - if(res.data.code==0){ 205 + if (glist[0].prom_type == 8) {
  206 + await getApp().request.promiseGet('/api/weshop/order/orderPresell/get/' + os.stoid + '/' + item.order_id, {}).then(res => {
  207 + if (res.data.code == 0) {
193 data[ind]['presell'] = res.data.data; 208 data[ind]['presell'] = res.data.data;
194 - data[ind]['ord_url']='/packageC/pages/presell/cart/cart'; 209 + data[ind]['ord_url'] = '/packageC/pages/presell/cart/cart';
195 } 210 }
196 }) 211 })
197 } 212 }
198 //------------对比一下有没有退款记录------------ 213 //------------对比一下有没有退款记录------------
199 await getApp().request.promiseGet("/api/weshop/order/returngoods/page", { 214 await getApp().request.promiseGet("/api/weshop/order/returngoods/page", {
200 data: { 215 data: {
201 - order_id: item.order_id, store_id: os.stoid,  
202 - user_id: oo.user_id, pageSize: 20 216 + order_id: item.order_id,
  217 + store_id: os.stoid,
  218 + user_id: oo.user_id,
  219 + pageSize: 20
203 } 220 }
204 }).then(rs => { 221 }).then(rs => {
205 var ttd = rs; 222 var ttd = rs;
@@ -222,8 +239,8 @@ Page({ @@ -222,8 +239,8 @@ Page({
222 }); 239 });
223 } else { 240 } else {
224 //--------整单退-------- 241 //--------整单退--------
225 - if (ttd.data.data.pageData[0]['goods_id_list'] != null  
226 - && ttd.data.data.pageData[0]['goods_id_list'] != '') { 242 + if (ttd.data.data.pageData[0]['goods_id_list'] != null &&
  243 + ttd.data.data.pageData[0]['goods_id_list'] != '') {
227 var eea = ttd.data.data.pageData[0]; 244 var eea = ttd.data.data.pageData[0];
228 //1.退款正在进行中, 245 //1.退款正在进行中,
229 //2.退款被拒绝就要显示可以退款 246 //2.退款被拒绝就要显示可以退款
@@ -262,16 +279,16 @@ Page({ @@ -262,16 +279,16 @@ Page({
262 if (eea.goods_id == eeb.goods_id) { 279 if (eea.goods_id == eeb.goods_id) {
263 switch (eea.status) { 280 switch (eea.status) {
264 case 0: 281 case 0:
265 - case 1://退款处理中 282 + case 1: //退款处理中
266 data[ind]['has_rt'] = 1; //有部分退 283 data[ind]['has_rt'] = 1; //有部分退
267 goodslist[iii]['return_btn'] = 2; 284 goodslist[iii]['return_btn'] = 2;
268 break; 285 break;
269 - case 2://退款完成 286 + case 2: //退款完成
270 data[ind]['has_rt'] = 1; //有部分退 287 data[ind]['has_rt'] = 1; //有部分退
271 goodslist[iii]['return_btn'] = 4; 288 goodslist[iii]['return_btn'] = 4;
272 rt_ok_num++; 289 rt_ok_num++;
273 break; 290 break;
274 - case 3://已拒绝,重新退款 291 + case 3: //已拒绝,重新退款
275 goodslist[iii]['return_btn'] = 3; 292 goodslist[iii]['return_btn'] = 3;
276 break; 293 break;
277 default: 294 default:
@@ -300,166 +317,175 @@ Page({ @@ -300,166 +317,175 @@ Page({
300 }); 317 });
301 data[ind]['g_num'] = g_num; 318 data[ind]['g_num'] = g_num;
302 }) 319 })
303 - th.setData({orderList: data,}); 320 + th.setData({
  321 + orderList: data,
  322 + });
304 323
305 }); 324 });
306 - e.data.currentPage++ , 325 + e.data.currentPage++,
307 wx.stopPullDownRefresh(); 326 wx.stopPullDownRefresh();
308 - }, null, {store_id: os.stoid, user_id: oo.user_id}); 327 + }, null, {
  328 + store_id: os.stoid,
  329 + user_id: oo.user_id
  330 + });
309 }, 331 },
310 - //滑倒底部  
311 - onReachBottom: function() {  
312 - if(this.data.currentIndex == 0) {  
313 - if (s.data.goodsLoadFinishFlag) {  
314 - this.setData({  
315 - iscodeall: 1  
316 - })  
317 - }  
318 - s.canloadMore() && this.requestOrderList(this.data.activeCategoryId);  
319 - } else {  
320 - this.request_list({  
321 - store_id: os.stoid,  
322 - user_id: oo.user_id,  
323 - page: this.data.currentPage2,  
324 - });  
325 - }  
326 - },  
327 - onPullDownRefresh: function(t) {  
328 - // sty取消  
329 - // this.resetData(), this.requestOrderList(this.data.activeCategoryId);  
330 - },  
331 -  
332 - /*-----------取消订单-----------*/  
333 - cancelOrder: function(t) {  
334 - var e = this,  
335 - a = t.currentTarget.dataset.id,  
336 - th = this;  
337 - var is_zsorder = parseFloat(t.currentTarget.dataset.zsorder);  
338 - var index = t.currentTarget.dataset.orderindex;  
339 - var order = th.data.orderList[index];  
340 - var is_skill = 0;  
341 - var order_goods = order.order_goods;  
342 - //--判断是不是秒杀--  
343 - order_goods.forEach(function(val, ind) {  
344 - if (val.prom_type == 1) {  
345 - is_skill = 1;  
346 - return false;  
347 - }  
348 - })  
349 -  
350 - wx.showModal({  
351 - title: "是否取消订单?",  
352 - success: function(t) {  
353 - //如果是秒杀和拼单的商品,取消订单要返回redis,并取消订单  
354 - if (t.confirm) {  
355 - //if(is_skill==1 || is_zsorder>=2){  
356 - getApp().request.post("/api/weshop/order/cancelOrder/"+os.stoid+"/"+a+"/"+getApp().globalData.user_id, {  
357 - data: {},  
358 - success: function(t) {  
359 - if (t.data.code == 0) {  
360 - 0 == e.data.activeCategoryId ?  
361 - (e.resetData(), e.requestOrderList(e.data.activeCategoryId)) : e.deleteOrderData2(a);  
362 - } else {  
363 - getApp().confirmBox(e.data.msg);  
364 - }  
365 - },  
366 - }) 332 + //滑倒底部
  333 + onReachBottom: function () {
  334 + if (this.data.currentIndex == 0) {
  335 + if (s.data.goodsLoadFinishFlag) {
  336 + this.setData({
  337 + iscodeall: 1
  338 + })
  339 + }
  340 + s.canloadMore() && this.requestOrderList(this.data.activeCategoryId);
  341 + } else {
  342 + this.request_list({
  343 + store_id: os.stoid,
  344 + user_id: oo.user_id,
  345 + page: this.data.currentPage2,
  346 + });
  347 + }
  348 + },
  349 + onPullDownRefresh: function (t) {
  350 + // sty取消
  351 + // this.resetData(), this.requestOrderList(this.data.activeCategoryId);
  352 + },
  353 +
  354 + /*-----------取消订单-----------*/
  355 + cancelOrder: function (t) {
  356 + var e = this,
  357 + a = t.currentTarget.dataset.id,
  358 + th = this;
  359 + var is_zsorder = parseFloat(t.currentTarget.dataset.zsorder);
  360 + var index = t.currentTarget.dataset.orderindex;
  361 + var order = th.data.orderList[index];
  362 + var is_skill = 0;
  363 + var order_goods = order.order_goods;
  364 + //--判断是不是秒杀--
  365 + order_goods.forEach(function (val, ind) {
  366 + if (val.prom_type == 1) {
  367 + is_skill = 1;
  368 + return false;
  369 + }
  370 + })
  371 +
  372 + wx.showModal({
  373 + title: "是否取消订单?",
  374 + success: function (t) {
  375 + //如果是秒杀和拼单的商品,取消订单要返回redis,并取消订单
  376 + if (t.confirm) {
  377 + //if(is_skill==1 || is_zsorder>=2){
  378 + getApp().request.post("/api/weshop/order/cancelOrder/" + os.stoid + "/" + a + "/" + getApp().globalData.user_id, {
  379 + data: {},
  380 + success: function (t) {
  381 + if (t.data.code == 0) {
  382 + 0 == e.data.activeCategoryId ?
  383 + (e.resetData(), e.requestOrderList(e.data.activeCategoryId)) : e.deleteOrderData2(a);
  384 + } else {
  385 + getApp().confirmBox(e.data.msg);
  386 + }
  387 + },
  388 + })
  389 + }
  390 + }
  391 + });
  392 + },
  393 +
  394 + /*-----------确认收货-----------*/
  395 + confirmOrder: function (t) {
  396 + var e = this,
  397 + a = t.currentTarget.dataset.id;
  398 + var is_zsorder = t.currentTarget.dataset.zsorder;
  399 + var th = this;
  400 +
  401 + wx.showModal({
  402 + title: "是否确认收货?",
  403 + success: function (t) {
  404 + t.confirm && rq.post("/api/weshop/order/confirmOrder/" + os.stoid + "/" + a + "/" + getApp().globalData.user_id, {
  405 + success: function (e) {
  406 + if (e.data.code == 0) {
  407 + th.deleteOrderData2(a);
  408 + getApp().confirmBox("确认收货成功!");
  409 + }
  410 + }
  411 + })
  412 + }
  413 + });
  414 + },
  415 +
  416 + //-----删除订单-----
  417 + deleteOrderData: function (t) {
  418 + var th = this;
  419 + var order_id = t.currentTarget.dataset.order_id;
  420 + var index = t.currentTarget.dataset.index;
  421 + var up_data = {
  422 + order_id: order_id,
  423 + isdel: 1
  424 + };
  425 + var order = th.data.orderList[index];
  426 + if (order.order_status != 6) {
  427 + up_data.order_status = 5;
367 } 428 }
368 - }  
369 - });  
370 - },  
371 -  
372 - /*-----------确认收货-----------*/  
373 - confirmOrder: function(t) {  
374 - var e = this,a = t.currentTarget.dataset.id;  
375 - var is_zsorder = t.currentTarget.dataset.zsorder;  
376 - var th = this;  
377 -  
378 - wx.showModal({  
379 - title: "是否确认收货?",  
380 - success: function(t) {  
381 - t.confirm && rq.post("/api/weshop/order/confirmOrder/"+os.stoid+"/"+a+"/"+getApp().globalData.user_id,{  
382 - success:function (e) {  
383 - if(e.data.code==0){  
384 - th.deleteOrderData2(a);  
385 - getApp().confirmBox( "确认收货成功!");  
386 - } 429 + wx.showModal({
  430 + title: "是否删除订单?",
  431 + success: function (tt) {
  432 + tt.confirm && rq.put("/api/weshop/order/updatebyId", {
  433 + data: up_data,
  434 + success: function (t) {
  435 + for (var e = 0; e < th.data.orderList.length; e++)
  436 + if (th.data.orderList[e].order_id == order_id) {
  437 + th.data.orderList.splice(e, 1), th.setData({
  438 + orderList: th.data.orderList
  439 + });
  440 + break;
  441 + }
  442 + }
  443 + })
387 } 444 }
388 - })  
389 - }  
390 - });  
391 - },  
392 -  
393 - //-----删除订单-----  
394 - deleteOrderData: function(t) {  
395 - var th = this;  
396 - var order_id = t.currentTarget.dataset.order_id;  
397 - var index = t.currentTarget.dataset.index;  
398 - var up_data={order_id: order_id,isdel:1};  
399 - var order=th.data.orderList[index];  
400 - if(order.order_status!=6){  
401 - up_data.order_status=5;  
402 - }  
403 - wx.showModal({  
404 - title: "是否删除订单?",  
405 - success: function(tt) {  
406 - tt.confirm && rq.put("/api/weshop/order/updatebyId", {  
407 - data: up_data,  
408 - success: function(t) {  
409 - for (var e = 0; e < th.data.orderList.length; e++)  
410 - if (th.data.orderList[e].order_id == order_id) { 445 + });
  446 + },
  447 +
  448 + deleteOrderData2: function (order_id) {
  449 + var th = this;
  450 + for (var e = 0; e < th.data.orderList.length; e++)
  451 + if (th.data.orderList[e].order_id == order_id) {
411 th.data.orderList.splice(e, 1), th.setData({ 452 th.data.orderList.splice(e, 1), th.setData({
412 - orderList: th.data.orderList 453 + orderList: this.data.orderList
413 }); 454 });
414 break; 455 break;
415 - }  
416 - }  
417 - })  
418 - }  
419 - });  
420 - },  
421 -  
422 - deleteOrderData2: function(order_id) {  
423 - var th = this;  
424 - for (var e = 0; e < th.data.orderList.length; e++)  
425 - if (th.data.orderList[e].order_id == order_id) {  
426 - th.data.orderList.splice(e, 1), th.setData({  
427 - orderList: this.data.orderList  
428 - });  
429 - break;  
430 - }  
431 - },  
432 -  
433 - //---判断是不是有退款-----  
434 - checkReturnGoodsStatus: function(t) {  
435 - var e = t.currentTarget.dataset.recid;  
436 - var oid = t.currentTarget.dataset.oid;  
437 - r.get("/api/weshop/order/returngoods/page", {  
438 - data: {  
439 - goods_id: e,  
440 - order_id: oid,  
441 - store_id: os.stoid  
442 - },  
443 - success: function(t) {  
444 - if (t.data.code == 0) {  
445 - var r = t.data.data.total;  
446 - if (0 == r) return wx.navigateTo({  
447 - url: "/pages/user/return_goods/return_goods?rec_id=" + e + "&order_id=" + oid,  
448 - });  
449 - //--如果拒绝,就重新申请退款--  
450 - if (t.data.data.pageData[0].status == 3) {  
451 - return wx.navigateTo({  
452 - url: "/pages/user/return_goods/return_goods?rec_id=" + e + "&order_id=" + oid,  
453 - });  
454 - } 456 + }
  457 + },
455 458
456 - wx.navigateTo({  
457 - url: "/pages/user/return_goods_info/return_goods_info?id=" + r  
458 - });  
459 - }  
460 - }  
461 - });  
462 - }, 459 + //---判断是不是有退款-----
  460 + checkReturnGoodsStatus: function (t) {
  461 + var e = t.currentTarget.dataset.recid;
  462 + var oid = t.currentTarget.dataset.oid;
  463 + r.get("/api/weshop/order/returngoods/page", {
  464 + data: {
  465 + goods_id: e,
  466 + order_id: oid,
  467 + store_id: os.stoid
  468 + },
  469 + success: function (t) {
  470 + if (t.data.code == 0) {
  471 + var r = t.data.data.total;
  472 + if (0 == r) return wx.navigateTo({
  473 + url: "/pages/user/return_goods/return_goods?rec_id=" + e + "&order_id=" + oid,
  474 + });
  475 + //--如果拒绝,就重新申请退款--
  476 + if (t.data.data.pageData[0].status == 3) {
  477 + return wx.navigateTo({
  478 + url: "/pages/user/return_goods/return_goods?rec_id=" + e + "&order_id=" + oid,
  479 + });
  480 + }
  481 +
  482 + wx.navigateTo({
  483 + url: "/pages/user/return_goods_info/return_goods_info?id=" + r
  484 + });
  485 + }
  486 + }
  487 + });
  488 + },
463 /*----------跳转支付-----------*/ 489 /*----------跳转支付-----------*/
464 async jumpToCart4(t) { 490 async jumpToCart4(t) {
465 var o_index = t.currentTarget.dataset.idx; 491 var o_index = t.currentTarget.dataset.idx;
@@ -467,7 +493,7 @@ Page({ @@ -467,7 +493,7 @@ Page({
467 var th = this; 493 var th = this;
468 var order = e; 494 var order = e;
469 var order_goods = e.order_goods; 495 var order_goods = e.order_goods;
470 - var user_id=getApp().globalData.userInfo.user_id; 496 + var user_id = getApp().globalData.userInfo.user_id;
471 497
472 var wlist = ""; 498 var wlist = "";
473 for (var i in order_goods) { 499 for (var i in order_goods) {
@@ -480,9 +506,13 @@ Page({ @@ -480,9 +506,13 @@ Page({
480 }); 506 });
481 return false; 507 return false;
482 } 508 }
483 - 509 +
484 //要每件每件的商品进行检查,看有么有超出库存,超出限购 510 //要每件每件的商品进行检查,看有么有超出库存,超出限购
485 - var good = order_goods[i], goodsbuynum = 0, promgoodsbuynum = 0, gg = null,presellList=null; 511 + var good = order_goods[i],
  512 + goodsbuynum = 0,
  513 + promgoodsbuynum = 0,
  514 + gg = null,
  515 + presellList = null;
486 516
487 //获取单品的现在的活动状态 517 //获取单品的现在的活动状态
488 await getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + good.goods_id, {}).then(res => { 518 await getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + good.goods_id, {}).then(res => {
@@ -577,16 +607,21 @@ Page({ @@ -577,16 +607,21 @@ Page({
577 } 607 }
578 608
579 //如果是预售的时候, 609 //如果是预售的时候,
580 - if(good.prom_type==8){  
581 - await getApp().request.promiseGet("/api/weshop/order/orderPresell/countBuyGoodsSum",{  
582 - data: {store_id: os.stoid, user_id: user_id, goods_id: good.goods_id, prom_id: good.prom_id},  
583 - }).then(e=>{ 610 + if (good.prom_type == 8) {
  611 + await getApp().request.promiseGet("/api/weshop/order/orderPresell/countBuyGoodsSum", {
  612 + data: {
  613 + store_id: os.stoid,
  614 + user_id: user_id,
  615 + goods_id: good.goods_id,
  616 + prom_id: good.prom_id
  617 + },
  618 + }).then(e => {
584 if (e.data.code == 0) { 619 if (e.data.code == 0) {
585 - promgoodsbuynum=e.data.data.sumgoodsnum; 620 + promgoodsbuynum = e.data.data.sumgoodsnum;
586 } 621 }
587 }) 622 })
588 623
589 - var presell_id =good.prom_id; 624 + var presell_id = good.prom_id;
590 var url = "/api/weshop/marketing/marketingPresellList/list" 625 var url = "/api/weshop/marketing/marketingPresellList/list"
591 var rd = { 626 var rd = {
592 store_id: os.stoid, 627 store_id: os.stoid,
@@ -599,13 +634,13 @@ Page({ @@ -599,13 +634,13 @@ Page({
599 }).then(res => { 634 }).then(res => {
600 if (res.data.code == 0 && res.data.data && res.data.data.length > 0) { 635 if (res.data.code == 0 && res.data.data && res.data.data.length > 0) {
601 var arr = res.data.data[0]; 636 var arr = res.data.data[0];
602 - presellList=arr 637 + presellList = arr
603 } 638 }
604 }) 639 })
605 640
606 - if(presellList){ 641 + if (presellList) {
607 642
608 - if(good.goods_num>presellList.presell_sumqty-presellList.buy_goodnum){ 643 + if (good.goods_num > presellList.presell_sumqty - presellList.buy_goodnum) {
609 var content = good.goods_name + '购买数量超出商品库存,请取消订单'; 644 var content = good.goods_name + '购买数量超出商品库存,请取消订单';
610 th.toast(content); 645 th.toast(content);
611 return false; 646 return false;
@@ -652,39 +687,39 @@ Page({ @@ -652,39 +687,39 @@ Page({
652 } 687 }
653 688
654 //商品的普通购买 ,不要进行判断 689 //商品的普通购买 ,不要进行判断
655 - if ((good.prom_type == 1 || good.prom_type == 2 || good.prom_type == 6 || good.prom_type == 4 || good.prom_type == 8)  
656 - && !good.is_gift && !good.is_collocation && !good.is_integral_normal && !good.is_pd_normal) {  
657 - if (gg.prom_type != good.prom_type && gg.prom_type>0) { 690 + if ((good.prom_type == 1 || good.prom_type == 2 || good.prom_type == 6 || good.prom_type == 4 || good.prom_type == 8) &&
  691 + !good.is_gift && !good.is_collocation && !good.is_integral_normal && !good.is_pd_normal) {
  692 + if (gg.prom_type != good.prom_type && gg.prom_type > 0) {
658 var content = gg.goods_name + '商品的活动发生了变化,请取消订单重新购买'; 693 var content = gg.goods_name + '商品的活动发生了变化,请取消订单重新购买';
659 th.toast(content); 694 th.toast(content);
660 return false; 695 return false;
661 } 696 }
662 697
663 } else { 698 } else {
664 - if ((gg.prom_type == 1 || good.prom_type == 2 || gg.prom_type == 3 || gg.prom_type == 5 || gg.prom_type == 6 || gg.prom_type == 4)  
665 - && !good.is_collocation && !good.is_gift && !good.is_integral_normal && !good.is_pd_normal) {  
666 - var prom = null; 699 + if ((gg.prom_type == 1 || gg.prom_type == 2 || gg.prom_type == 3 || gg.prom_type == 4 || gg.prom_type == 5 || gg.prom_type == 6 || gg.prom_type == 10) &&
  700 + !good.is_collocation && !good.is_gift && !good.is_integral_normal && !good.is_pd_normal) {
667 //---如果是活动的时候--- 701 //---如果是活动的时候---
668 - var prom = null, th = this; 702 + var prom = null,
  703 + th = this;
669 if (gg.prom_type == 1) { 704 if (gg.prom_type == 1) {
670 - await getApp().request.promiseGet("/api/ms/flash_sale/getNew/" + os.stoid + "/"+ user_id + "/" + gg.prom_id, {}).then(res => { 705 + await getApp().request.promiseGet("/api/ms/flash_sale/getNew/" + os.stoid + "/" + user_id + "/" + gg.prom_id, {}).then(res => {
  706 + if (res.data.code == 0) {
  707 + prom = res.data.data;
  708 + prom.price = prom.user_price;
  709 + }
  710 + })
  711 + }
  712 +
  713 + if (gg.prom_type == 2) {
  714 + await getApp().request.promiseGet("/api/weshop/goods/groupBuy/getActInfo/" + os.stoid + "/" + gg.goods_id + "/" + gg.prom_id, {}).then(res => {
671 if (res.data.code == 0) { 715 if (res.data.code == 0) {
672 prom = res.data.data; 716 prom = res.data.data;
673 - prom.price=prom.user_price; 717 + prom.price = prom.price;
674 } 718 }
675 }) 719 })
676 } 720 }
677 -  
678 - if (gg.prom_type == 2) {  
679 - await getApp().request.promiseGet("/api/weshop/goods/groupBuy/getActInfo/" + os.stoid + "/"+ gg.goods_id + "/" + gg.prom_id, {}).then(res => {  
680 - if (res.data.code == 0) {  
681 - prom = res.data.data;  
682 - prom.price=prom.price;  
683 - }  
684 - })  
685 - }  
686 -  
687 - 721 +
  722 +
688 if (gg.prom_type == 6) { 723 if (gg.prom_type == 6) {
689 await getApp().request.promiseGet("/api/weshop/teamlist/get/" + os.stoid + "/" + gg.prom_id, {}).then(res => { 724 await getApp().request.promiseGet("/api/weshop/teamlist/get/" + os.stoid + "/" + gg.prom_id, {}).then(res => {
690 if (res.data.code == 0) { 725 if (res.data.code == 0) {
@@ -695,25 +730,34 @@ Page({ @@ -695,25 +730,34 @@ Page({
695 730
696 if (gg.prom_type == 4) { 731 if (gg.prom_type == 4) {
697 await getApp().request.promiseGet("/api/weshop/integralbuy/pageIntegralBuyGoodsList?stype=1&stypeup=1", { 732 await getApp().request.promiseGet("/api/weshop/integralbuy/pageIntegralBuyGoodsList?stype=1&stypeup=1", {
698 - data: {store_id: os.stoid, goods_id: gg.goods_id} 733 + data: {
  734 + store_id: os.stoid,
  735 + goods_id: gg.goods_id
  736 + }
699 }).then(res => { 737 }).then(res => {
700 if (res.data.code == 0 && res.data.data && res.data.data.pageData) { 738 if (res.data.code == 0 && res.data.data && res.data.data.pageData) {
701 prom = res.data.data.pageData[0]; 739 prom = res.data.data.pageData[0];
702 } 740 }
703 }) 741 })
704 } 742 }
  743 + if (gg.prom_type == 10) {
  744 + var url = `/api/weshop/prom/ladderForm/getNew/${os.stoid}/${user_id}/${gg.prom_id}`;
  745 + await getApp().request.promiseGet(url, {}).then(res => {
  746 + if (res.data.code == 0 && res.data.data && !res.data.data.isuse || res.data.data.is_end == 1) {
  747 + prom = res.data.data;
  748 + }
  749 + })
  750 + }
705 751
706 if (prom) { 752 if (prom) {
707 var t_now = ut.gettimestamp(); 753 var t_now = ut.gettimestamp();
708 if (prom.is_end == 0 && prom.start_time < t_now && prom.end_time > t_now) { 754 if (prom.is_end == 0 && prom.start_time < t_now && prom.end_time > t_now) {
709 -  
710 var content = gg.goods_name + '商品的活动发生了变化,请取消订单重新购买'; 755 var content = gg.goods_name + '商品的活动发生了变化,请取消订单重新购买';
711 th.toast(content); 756 th.toast(content);
712 return false; 757 return false;
713 } 758 }
714 } 759 }
715 - }  
716 - else { 760 + } else {
717 if (!good.is_gift && good.prom_type != 3) { 761 if (!good.is_gift && good.prom_type != 3) {
718 var t_ok = 1; 762 var t_ok = 1;
719 await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + good.goods_id + "/0", {}).then(res => { 763 await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + good.goods_id + "/0", {}).then(res => {
@@ -723,6 +767,7 @@ Page({ @@ -723,6 +767,7 @@ Page({
723 if (r_data.promGoodsLists) { 767 if (r_data.promGoodsLists) {
724 var content = gg.goods_name + '商品的活动发生了变化,请取消订单重新购买'; 768 var content = gg.goods_name + '商品的活动发生了变化,请取消订单重新购买';
725 th.toast(content); 769 th.toast(content);
  770 + console.log(3);
726 t_ok = 0; 771 t_ok = 0;
727 } 772 }
728 } 773 }
@@ -740,7 +785,7 @@ Page({ @@ -740,7 +785,7 @@ Page({
740 if (!good.is_gift && !good.is_collocation) { 785 if (!good.is_gift && !good.is_collocation) {
741 if (card_field && gg[card_field] > 0) { 786 if (card_field && gg[card_field] > 0) {
742 if (good.goods_price != gg[card_field] && good.offline_cut <= 0) isok = 0; 787 if (good.goods_price != gg[card_field] && good.offline_cut <= 0) isok = 0;
743 - if (good.goods_price > gg[card_field] && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过 788 + if (good.goods_price > gg[card_field] && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过
744 789
745 } else { 790 } else {
746 if (good.goods_price != gg.shop_price && good.offline_cut <= 0) isok = 0; 791 if (good.goods_price != gg.shop_price && good.offline_cut <= 0) isok = 0;
@@ -751,6 +796,7 @@ Page({ @@ -751,6 +796,7 @@ Page({
751 796
752 var content = gg.goods_name + '商品的价格发生了变化,请取消订单重新购买1' 797 var content = gg.goods_name + '商品的价格发生了变化,请取消订单重新购买1'
753 th.toast(content); 798 th.toast(content);
  799 + console.log(4);
754 return false; 800 return false;
755 } 801 }
756 } 802 }
@@ -780,26 +826,28 @@ Page({ @@ -780,26 +826,28 @@ Page({
780 } 826 }
781 827
782 //---如果是活动的时候--- 828 //---如果是活动的时候---
783 - var prom = null, goodsinfo = good, th = this; 829 + var prom = null,
  830 + goodsinfo = good,
  831 + th = this;
784 if (goodsinfo.prom_type == 1) { 832 if (goodsinfo.prom_type == 1) {
785 - await getApp().request.promiseGet("/api/ms/flash_sale/getNew/" + os.stoid + "/"+ user_id + "/" + goodsinfo.prom_id, {}).then(res => { 833 + await getApp().request.promiseGet("/api/ms/flash_sale/getNew/" + os.stoid + "/" + user_id + "/" + goodsinfo.prom_id, {}).then(res => {
786 if (res.data.code == 0) { 834 if (res.data.code == 0) {
787 prom = res.data.data; 835 prom = res.data.data;
788 - prom.price=prom.user_price; 836 + prom.price = prom.user_price;
789 } 837 }
790 }) 838 })
791 } 839 }
792 -  
793 - if (goodsinfo.prom_type == 2) {  
794 - await getApp().request.promiseGet("/api/weshop/goods/groupBuy/getActInfo/" + os.stoid + "/"+ good.goods_id + "/" + goodsinfo.prom_id, {}).then(res => {  
795 - if (res.data.code == 0) {  
796 - prom = res.data.data;  
797 - prom.price=prom.price;  
798 - }  
799 - })  
800 - }  
801 -  
802 - 840 +
  841 + if (goodsinfo.prom_type == 2) {
  842 + await getApp().request.promiseGet("/api/weshop/goods/groupBuy/getActInfo/" + os.stoid + "/" + good.goods_id + "/" + goodsinfo.prom_id, {}).then(res => {
  843 + if (res.data.code == 0) {
  844 + prom = res.data.data;
  845 + prom.price = prom.price;
  846 + }
  847 + })
  848 + }
  849 +
  850 +
803 if (goodsinfo.prom_type == 6 && !good.is_pd_normal) { 851 if (goodsinfo.prom_type == 6 && !good.is_pd_normal) {
804 await getApp().request.promiseGet("/api/weshop/teamlist/get/" + os.stoid + "/" + goodsinfo.prom_id, {}).then(res => { 852 await getApp().request.promiseGet("/api/weshop/teamlist/get/" + os.stoid + "/" + goodsinfo.prom_id, {}).then(res => {
805 if (res.data.code == 0) { 853 if (res.data.code == 0) {
@@ -810,7 +858,10 @@ Page({ @@ -810,7 +858,10 @@ Page({
810 858
811 if (goodsinfo.prom_type == 4 && !good.is_integral_normal) { 859 if (goodsinfo.prom_type == 4 && !good.is_integral_normal) {
812 await getApp().request.promiseGet("/api/weshop/integralbuy/pageIntegralBuyGoodsList?stype=1&stypeup=1", { 860 await getApp().request.promiseGet("/api/weshop/integralbuy/pageIntegralBuyGoodsList?stype=1&stypeup=1", {
813 - data: {store_id: os.stoid, goods_id: goodsinfo.goods_id} 861 + data: {
  862 + store_id: os.stoid,
  863 + goods_id: goodsinfo.goods_id
  864 + }
814 }).then(res => { 865 }).then(res => {
815 if (res.data.code == 0 && res.data.data && res.data.data.pageData) { 866 if (res.data.code == 0 && res.data.data && res.data.data.pageData) {
816 prom = res.data.data.pageData[0]; 867 prom = res.data.data.pageData[0];
@@ -836,18 +887,18 @@ Page({ @@ -836,18 +887,18 @@ Page({
836 } 887 }
837 888
838 // --看一下会员的秒杀价格是不是发生了变化,因为会员的身份发生了变化 889 // --看一下会员的秒杀价格是不是发生了变化,因为会员的身份发生了变化
839 - if(goodsinfo.prom_type==1 && goodsinfo.goods_price!=prom.price){  
840 - var content=goodsinfo.goods_name+'秒杀活动的价格发生了变化'; 890 + if (goodsinfo.prom_type == 1 && goodsinfo.goods_price != prom.price) {
  891 + var content = goodsinfo.goods_name + '秒杀活动的价格发生了变化';
  892 + th.toast(content);
  893 + return false;
  894 + }
  895 +
  896 + // --看一下会员的团购价格是不是发生了变化
  897 + if (goodsinfo.prom_type == 2 && goodsinfo.goods_price != prom.price) {
  898 + var content = goodsinfo.goods_name + '秒杀活动的价格发生了变化';
841 th.toast(content); 899 th.toast(content);
842 return false; 900 return false;
843 } 901 }
844 -  
845 - // --看一下会员的团购价格是不是发生了变化  
846 - if(goodsinfo.prom_type==2 && goodsinfo.goods_price!=prom.price){  
847 - var content=goodsinfo.goods_name+'秒杀活动的价格发生了变化';  
848 - th.toast(content);  
849 - return false;  
850 - }  
851 902
852 if (goodsinfo.prom_type == 4) { 903 if (goodsinfo.prom_type == 4) {
853 if (good.goods_num > prom.limitqty - prom.buy_num) { 904 if (good.goods_num > prom.limitqty - prom.buy_num) {
@@ -856,12 +907,12 @@ Page({ @@ -856,12 +907,12 @@ Page({
856 th.toast(content); 907 th.toast(content);
857 return false; 908 return false;
858 } 909 }
859 - } else if(goodsinfo.prom_type == 1 || goodsinfo.prom_type == 2 || goodsinfo.prom_type == 6 ) {  
860 - if(order.add_time+5*60<ut.gettimestamp()) { 910 + } else if (goodsinfo.prom_type == 1 || goodsinfo.prom_type == 2 || goodsinfo.prom_type == 6) {
  911 + if (order.add_time + 5 * 60 < ut.gettimestamp()) {
861 var content = gg.goods_name + '该订单已经超时无法支付,请取消订单'; 912 var content = gg.goods_name + '该订单已经超时无法支付,请取消订单';
862 th.toast(content); 913 th.toast(content);
863 return false; 914 return false;
864 - } 915 + }
865 } 916 }
866 917
867 } 918 }
@@ -875,14 +926,13 @@ Page({ @@ -875,14 +926,13 @@ Page({
875 if (!keyid) return false; 926 if (!keyid) return false;
876 var offarr = null; 927 var offarr = null;
877 await getApp().request.promiseGet("/api/weshop/goods/listWarePrice", { 928 await getApp().request.promiseGet("/api/weshop/goods/listWarePrice", {
878 - data: {  
879 - VIPId: encodeURIComponent(user_info.erpvipid),  
880 - store_id: os.stoid,  
881 - PickupId: keyid,  
882 - WareIds: wlist  
883 - }, 929 + data: {
  930 + VIPId: encodeURIComponent(user_info.erpvipid),
  931 + store_id: os.stoid,
  932 + PickupId: keyid,
  933 + WareIds: wlist
884 }, 934 },
885 - ).then(res => { 935 + }, ).then(res => {
886 if (res.data.code == 0 && res.data.data && res.data.data.length > 0) { 936 if (res.data.code == 0 && res.data.data && res.data.data.length > 0) {
887 offarr = res.data.data; 937 offarr = res.data.data;
888 } 938 }
@@ -900,292 +950,337 @@ Page({ @@ -900,292 +950,337 @@ Page({
900 950
901 var content = good.goods_name + '商品的价格发生了变化,请取消订单重新购买'; 951 var content = good.goods_name + '商品的价格发生了变化,请取消订单重新购买';
902 th.toast(content); 952 th.toast(content);
  953 + console.log(5);
903 return false; 954 return false;
904 } 955 }
905 } 956 }
906 } 957 }
907 th.pay_next(e, o_index); 958 th.pay_next(e, o_index);
908 }, 959 },
909 -  
910 -  
911 - pay_next(e,o_index){  
912 - var th=this;  
913 - if (e.order_amount == 0) {  
914 - var dd = {  
915 - parent_sn: e.order_sn,  
916 - store_id: e.store_id,  
917 - type: 1,  
918 - };  
919 - getApp().request.post("/api/weshop/order/pay/createOrder", {  
920 - data: dd,  
921 - success: function(t) {  
922 - if (t.data.code == 0) {  
923 - th.onload();  
924 - } else {  
925 - getApp().confirmBox(t.data.msg + "请您取消该订单");  
926 - }  
927 - }  
928 - })  
929 - return false;  
930 - }  
931 -  
932 - /*---  
933 - a.jumpToCart4({  
934 - order_sn: e.order_sn,  
935 - order_amount: e.order_amount,  
936 - type: 1 //正常单  
937 - });--*/  
938 -  
939 - t.pay(e.order_sn, function() {  
940 - wx.showToast({title: '支付成功'})  
941 - th.data.orderList.splice(o_index,1);  
942 - th.setData({orderList:th.data.orderList});  
943 - },null,os.stoid,1);  
944 -  
945 -  
946 - },  
947 - 960 +
  961 +
  962 + pay_next(e, o_index) {
  963 + var th = this;
  964 + if (e.order_amount == 0) {
  965 + var dd = {
  966 + parent_sn: e.order_sn,
  967 + store_id: e.store_id,
  968 + type: 1,
  969 + };
  970 + getApp().request.post("/api/weshop/order/pay/createOrder", {
  971 + data: dd,
  972 + success: function (t) {
  973 + if (t.data.code == 0) {
  974 + th.onload();
  975 + } else {
  976 + getApp().confirmBox(t.data.msg + "请您取消该订单");
  977 + }
  978 + }
  979 + })
  980 + return false;
  981 + }
  982 +
  983 + /*---
  984 + a.jumpToCart4({
  985 + order_sn: e.order_sn,
  986 + order_amount: e.order_amount,
  987 + type: 1 //正常单
  988 + });--*/
  989 +
  990 + t.pay(e.order_sn, function () {
  991 + wx.showToast({
  992 + title: '支付成功'
  993 + })
  994 + th.data.orderList.splice(o_index, 1);
  995 + th.setData({
  996 + orderList: th.data.orderList
  997 + });
  998 + }, null, os.stoid, 1);
  999 +
  1000 +
  1001 + },
  1002 +
948 //---检验线下库存的数量的子函数--- 1003 //---检验线下库存的数量的子函数---
949 - async check_down_line_next(gg,num,pick_id,func){  
950 -  
951 - var lock=0,pick_no,plist;  
952 - //先读取门店的lock  
953 - await getApp().request.promiseGet("/api/weshop/order/ware/lock/page",{  
954 - data:{store_id:os.stoid,wareId:gg.goods_id,storageId:pick_id}  
955 - }).then(res=>{  
956 - if(res.data.code==0 && res.data.data.total>0){  
957 - for(var i in res.data.data.pageData)  
958 - lock+=res.data.data.pageData[i].outQty;  
959 - }  
960 - })  
961 - //先获取门店的编号  
962 - await getApp().request.promiseGet("/api/weshop/pickup/get/"+os.stoid+"/"+pick_id,{  
963 - data:{storeId:os.stoid,goodsId:gg.goods_id,pickupId:pick_id}  
964 - }).then(res=>{  
965 - if(res.data.code==0){  
966 - pick_no=res.data.data.pickup_no;  
967 - }  
968 - })  
969 - //读取线下的门店库存  
970 - await getApp().request.promiseGet("/api/weshop/goods/getWareStorages",{  
971 - data:{storageNos:pick_no,wareIds:encodeURIComponent(gg.erpwareid),storeId:os.stoid}  
972 - }).then(res=>{  
973 - if(res.data.code==0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length>0){  
974 - plist=res.data.data.pageData[0];  
975 - }  
976 - })  
977 -  
978 - var ob={}; ob.code=1;  
979 - if(!plist){  
980 - ob.code=-1; ob.CanOutQty=0;  
981 - func(ob);return false;  
982 - }  
983 -  
984 - if(num>plist.CanOutQty-lock){  
985 - ob.code=-1;  
986 - ob.CanOutQty=plist.CanOutQty-lock  
987 - if(ob.CanOutQty<0) ob.CanOutQty=0;  
988 - }  
989 - func(ob) 1004 + async check_down_line_next(gg, num, pick_id, func) {
  1005 +
  1006 + var lock = 0,
  1007 + pick_no, plist;
  1008 + //先读取门店的lock
  1009 + await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", {
  1010 + data: {
  1011 + store_id: os.stoid,
  1012 + wareId: gg.goods_id,
  1013 + storageId: pick_id
  1014 + }
  1015 + }).then(res => {
  1016 + if (res.data.code == 0 && res.data.data.total > 0) {
  1017 + for (var i in res.data.data.pageData)
  1018 + lock += res.data.data.pageData[i].outQty;
  1019 + }
  1020 + })
  1021 + //先获取门店的编号
  1022 + await getApp().request.promiseGet("/api/weshop/pickup/get/" + os.stoid + "/" + pick_id, {
  1023 + data: {
  1024 + storeId: os.stoid,
  1025 + goodsId: gg.goods_id,
  1026 + pickupId: pick_id
  1027 + }
  1028 + }).then(res => {
  1029 + if (res.data.code == 0) {
  1030 + pick_no = res.data.data.pickup_no;
  1031 + }
  1032 + })
  1033 + //读取线下的门店库存
  1034 + await getApp().request.promiseGet("/api/weshop/goods/getWareStorages", {
  1035 + data: {
  1036 + storageNos: pick_no,
  1037 + wareIds: encodeURIComponent(gg.erpwareid),
  1038 + storeId: os.stoid
  1039 + }
  1040 + }).then(res => {
  1041 + if (res.data.code == 0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length > 0) {
  1042 + plist = res.data.data.pageData[0];
  1043 + }
  1044 + })
  1045 +
  1046 + var ob = {};
  1047 + ob.code = 1;
  1048 + if (!plist) {
  1049 + ob.code = -1;
  1050 + ob.CanOutQty = 0;
  1051 + func(ob);
  1052 + return false;
  1053 + }
  1054 +
  1055 + if (num > plist.CanOutQty - lock) {
  1056 + ob.code = -1;
  1057 + ob.CanOutQty = plist.CanOutQty - lock
  1058 + if (ob.CanOutQty < 0) ob.CanOutQty = 0;
  1059 + }
  1060 + func(ob)
990 }, 1061 },
991 -  
992 -  
993 -  
994 - //------图片失败,默认图片---------  
995 - bind_bnerr: function(e) {  
996 - var _errImg = e.currentTarget.dataset.errorimg;  
997 - var _errObj = {};  
998 - _errObj[_errImg] = "public/images/default_goods_image_240.gif";  
999 - this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;  
1000 - },  
1001 -  
1002 - //--------跳转到退款详情-----------  
1003 - gotoreturn: function(t) {  
1004 - var e = t.currentTarget.dataset.recid;  
1005 - var oid = t.currentTarget.dataset.oid;  
1006 - var wh = "";  
1007 - if (e != undefined && e != null && e != "") {  
1008 - wh = "&goods_id=" + e;  
1009 - }  
1010 - wx.navigateTo({  
1011 - url: "/pages/user/return_goods_info/return_goods_info?order_id=" + oid + wh,  
1012 - });  
1013 - },  
1014 -  
1015 - //-----支付尾款------  
1016 - pay_wk: function(ee) {  
1017 - console.log("pay_wk");  
1018 - var order_id = ee.currentTarget.dataset.order_id;  
1019 - wx.navigateTo({  
1020 - url: "/pages/cart/cart_wk/cart_wk?order_id=" + order_id,  
1021 - });  
1022 -  
1023 - },  
1024 -  
1025 - //--判断是不是可以单个商品退--  
1026 - check_for_return_btn: function(item) {  
1027 - if (item.coupon_no) return false; //有用优惠券  
1028 - if (item.order_prom_id) return false; //有订单优惠  
1029 - if (item.order_status >= 2) return false; //订单状态>2  
1030 - var istrue = true;  
1031 - //----判断是不是有优惠活动和赠送商品----  
1032 - for (var g in item.goodslist) {  
1033 - var g_item = item.goodslist[g];  
1034 - if ((g_item.prom_type == 3 && g_item.discount_amount > 0) ||  
1035 - (g_item.prom_type == 3 && g_item.goods_price <= 0)  
1036 - ) {  
1037 - istrue = false;  
1038 - break  
1039 - }  
1040 - if (g_item.prom_type == 5) {  
1041 - istrue = false;  
1042 - break  
1043 - }  
1044 - }  
1045 - if (!istrue) return false;  
1046 - var conf = this.data.conf;  
1047 - //判断是不是原路退回  
1048 - if (conf.refund_type == 1) return true;  
1049 - else {  
1050 - if (item.order_amount == 0 || item.user_money == 0) return true;  
1051 - }  
1052 - return false;  
1053 - },  
1054 - //跳到首页  
1055 - goto: function(e) {  
1056 - wx.navigateTo({  
1057 - url: '/pages/index/index/index',  
1058 - })  
1059 - },  
1060 -  
1061 - //显示核销码  
1062 - code_show: function(e) {  
1063 - var th = this;  
1064 - //--获取成功的时候--  
1065 - var no = e.currentTarget.dataset.order_sn;  
1066 - var qc_com = th.selectComponent("#qc_com"); //组件的id  
1067 - var obj = {  
1068 - val: no,  
1069 - content: "请将二维码展示给核销员,收货更快捷"  
1070 - };  
1071 - qc_com.open(obj)  
1072 - },  
1073 -  
1074 - //再来一单的功能的实现  
1075 - moreOrder:function(e){  
1076 -  
1077 - if(this.data.moring) return false;  
1078 - this.data.moring=1;  
1079 -  
1080 - var th=this;  
1081 - var index=e.currentTarget.dataset.index;  
1082 - var item=th.data.orderList[index];  
1083 - th.check_more_order(item);  
1084 - },  
1085 -  
1086 -  
1087 - check_more_order:async function(item){  
1088 - var pickup=null,th=this;  
1089 - var user_id=getApp().globalData.user_id; 1062 +
  1063 +
  1064 +
  1065 + //------图片失败,默认图片---------
  1066 + bind_bnerr: function (e) {
  1067 + var _errImg = e.currentTarget.dataset.errorimg;
  1068 + var _errObj = {};
  1069 + _errObj[_errImg] = "public/images/default_goods_image_240.gif";
  1070 + this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;
  1071 + },
  1072 +
  1073 + //--------跳转到退款详情-----------
  1074 + gotoreturn: function (t) {
  1075 + var e = t.currentTarget.dataset.recid;
  1076 + var oid = t.currentTarget.dataset.oid;
  1077 + var wh = "";
  1078 + if (e != undefined && e != null && e != "") {
  1079 + wh = "&goods_id=" + e;
  1080 + }
  1081 + wx.navigateTo({
  1082 + url: "/pages/user/return_goods_info/return_goods_info?order_id=" + oid + wh,
  1083 + });
  1084 + },
  1085 +
  1086 + //-----支付尾款------
  1087 + pay_wk: function (ee) {
  1088 + console.log("pay_wk");
  1089 + var order_id = ee.currentTarget.dataset.order_id;
  1090 + wx.navigateTo({
  1091 + url: "/pages/cart/cart_wk/cart_wk?order_id=" + order_id,
  1092 + });
  1093 +
  1094 + },
  1095 +
  1096 + //--判断是不是可以单个商品退--
  1097 + check_for_return_btn: function (item) {
  1098 + if (item.coupon_no) return false; //有用优惠券
  1099 + if (item.order_prom_id) return false; //有订单优惠
  1100 + if (item.order_status >= 2) return false; //订单状态>2
  1101 + var istrue = true;
  1102 + //----判断是不是有优惠活动和赠送商品----
  1103 + for (var g in item.goodslist) {
  1104 + var g_item = item.goodslist[g];
  1105 + if ((g_item.prom_type == 3 && g_item.discount_amount > 0) ||
  1106 + (g_item.prom_type == 3 && g_item.goods_price <= 0)
  1107 + ) {
  1108 + istrue = false;
  1109 + break
  1110 + }
  1111 + if (g_item.prom_type == 5) {
  1112 + istrue = false;
  1113 + break
  1114 + }
  1115 + }
  1116 + if (!istrue) return false;
  1117 + var conf = this.data.conf;
  1118 + //判断是不是原路退回
  1119 + if (conf.refund_type == 1) return true;
  1120 + else {
  1121 + if (item.order_amount == 0 || item.user_money == 0) return true;
  1122 + }
  1123 + return false;
  1124 + },
  1125 + //跳到首页
  1126 + goto: function (e) {
  1127 + wx.navigateTo({
  1128 + url: '/pages/index/index/index',
  1129 + })
  1130 + },
  1131 +
  1132 + //显示核销码
  1133 + code_show: function (e) {
  1134 + var th = this;
  1135 + //--获取成功的时候--
  1136 + var no = e.currentTarget.dataset.order_sn;
  1137 + var qc_com = th.selectComponent("#qc_com"); //组件的id
  1138 + var obj = {
  1139 + val: no,
  1140 + content: "请将二维码展示给核销员,收货更快捷"
  1141 + };
  1142 + qc_com.open(obj)
  1143 + },
  1144 +
  1145 + //再来一单的功能的实现
  1146 + moreOrder: function (e) {
  1147 +
  1148 + if (this.data.moring) return false;
  1149 + this.data.moring = 1;
  1150 +
  1151 + var th = this;
  1152 + var index = e.currentTarget.dataset.index;
  1153 + var item = th.data.orderList[index];
  1154 + th.check_more_order(item);
  1155 + },
  1156 +
  1157 +
  1158 + check_more_order: async function (item) {
  1159 + console.log(item, 100000);
  1160 + var pickup = null,
  1161 + th = this;
  1162 + var user_id = getApp().globalData.user_id;
1090 wx.showLoading(); 1163 wx.showLoading();
1091 //--------获取门店----------- 1164 //--------获取门店-----------
1092 await getApp().request.promiseGet("/api/weshop/pickup/get/" + os.stoid + "/" + item.pickup_id, { 1165 await getApp().request.promiseGet("/api/weshop/pickup/get/" + os.stoid + "/" + item.pickup_id, {
1093 1166
1094 - }).then(res=>{ 1167 + }).then(res => {
1095 pickup = res.data.data; 1168 pickup = res.data.data;
1096 }) 1169 })
1097 1170
1098 //--------获取商品---------- 1171 //--------获取商品----------
1099 - var goods_list=item.order_goods; 1172 + var goods_list = item.order_goods;
1100 //--- 返回的内容 --- 1173 //--- 返回的内容 ---
1101 - var back_goods_arr=[];  
1102 - var err_text="";  
1103 - for(var i in goods_list){  
1104 - var g_item=goods_list[i]; 1174 + var back_goods_arr = [];
  1175 + var err_text = "";
  1176 + for (var i in goods_list) {
  1177 + var g_item = goods_list[i];
  1178 + var b_item = {}
1105 //--如果是赠品,不加入购物车-- 1179 //--如果是赠品,不加入购物车--
1106 - if(g_item['is_gift']) continue;  
1107 - if(g_item['prom_type']==4 ){  
1108 - err_text+= g_item['goods_name']+"积分购商品不加入购物车\n"; 1180 + if (g_item['is_gift']) continue;
  1181 + if (g_item['prom_type'] == 4) {
  1182 + err_text += g_item['goods_name'] + "积分购商品不加入购物车\n";
1109 continue; 1183 continue;
1110 } 1184 }
1111 - if(g_item['prom_type']==5){  
1112 - err_text+= g_item['goods_name']+"搭配购商品不加入购物车\n"; 1185 + if (g_item['prom_type'] == 5) {
  1186 + err_text += g_item['goods_name'] + "搭配购商品不加入购物车\n";
1113 continue; 1187 continue;
1114 } 1188 }
1115 - if(g_item['prom_type']==6 ){  
1116 - err_text+= g_item['goods_name']+"拼团商品不加入购物车\n"; 1189 + if (g_item['prom_type'] == 6) {
  1190 + err_text += g_item['goods_name'] + "拼团商品不加入购物车\n";
1117 continue; 1191 continue;
1118 } 1192 }
1119 1193
1120 //--获取商品-- 1194 //--获取商品--
1121 - var good=null; 1195 + var good = null;
1122 await getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + g_item.goods_id, { 1196 await getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + g_item.goods_id, {
1123 1197
1124 - }).then(res=>{  
1125 - good=res.data.data;  
1126 - }) 1198 + }).then(res => {
  1199 + good = res.data.data;
1127 1200
1128 - if(!good){  
1129 - err_text+= g_item['goods_name']+"未找到商品\n"; 1201 + })
  1202 + //调用接口判断订单优惠,
  1203 + const res = await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + g_item.goods_id + "/0", {})
  1204 + if (res.data.code == 0 && res.data.data) {
  1205 + var r_data = res.data.data;
  1206 + if (r_data.ladderLists) {
  1207 + var act_id = r_data.ladderLists[0].form_id;
  1208 + //-- 判断会员能不能参与阶梯促销 --
  1209 + const data = await getApp().request.promiseGet("/api/weshop/prom/ladderForm/getNew/" + os.stoid + "/" + user_id + "/" + act_id, {})
  1210 + if (data.data.code == 0 && data.data.data && data.data.data.isuse && data.data.data.is_end == 0) {
  1211 + b_item.prom_type = 10;
  1212 + b_item.prom_id = data.data.data.id;
  1213 + }
  1214 + }
  1215 + }
  1216 + if (!good) {
  1217 + err_text += g_item['goods_name'] + "未找到商品\n";
1130 continue; 1218 continue;
1131 } 1219 }
1132 if (good.is_on_sale != 1) { 1220 if (good.is_on_sale != 1) {
1133 - err_text+= g_item['goods_name']+"已经下架\n"; 1221 + err_text += g_item['goods_name'] + "已经下架\n";
1134 continue; 1222 continue;
1135 } 1223 }
1136 1224
1137 var timestamp = ut.gettimestamp(); 1225 var timestamp = ut.gettimestamp();
1138 if (good.on_time > timestamp) { 1226 if (good.on_time > timestamp) {
1139 - err_text+= g_item['goods_name']+"还未上架\n"; 1227 + err_text += g_item['goods_name'] + "还未上架\n";
1140 continue; 1228 continue;
1141 } 1229 }
1142 if (good.down_time > 0) { 1230 if (good.down_time > 0) {
1143 if (good.down_time < timestamp) { 1231 if (good.down_time < timestamp) {
1144 - err_text+=g_item['goods_name']+"已经下架\n"; 1232 + err_text += g_item['goods_name'] + "已经下架\n";
1145 continue; 1233 continue;
1146 } 1234 }
1147 } 1235 }
1148 1236
1149 //如果商品的配送方式和门店不匹配 1237 //如果商品的配送方式和门店不匹配
1150 - if(good['distr_type']>0 && pickup['distr_type']>0 && good['distr_type']!=pickup['distr_type'] ){  
1151 - err_text+= good['goods_name']+"配送方式不一致\n"; 1238 + if (good['distr_type'] > 0 && pickup['distr_type'] > 0 && good['distr_type'] != pickup['distr_type']) {
  1239 + err_text += good['goods_name'] + "配送方式不一致\n";
1152 continue; 1240 continue;
1153 } 1241 }
1154 1242
1155 - var prom=null;  
1156 - var b_item={}  
1157 - b_item.goods_id=g_item.goods_id;  
1158 - b_item.goods_name=g_item.goods_name;  
1159 - b_item.goods_num=g_item.goods_num;  
1160 - b_item.guide_id=g_item.guide_id;  
1161 - b_item.guide_type=g_item.guide_type;  
1162 - b_item.pickup_id=item.pickup_id;  
1163 - b_item.price=good.shop_price;  
1164 - b_item.goods_sn=good.goods_sn;  
1165 - b_item.sku=good.sku;  
1166 - b_item.is_integral_normal=g_item.is_integral_normal;  
1167 - 1243 + var prom = null;
  1244 + b_item.goods_id = g_item.goods_id;
  1245 + b_item.goods_name = g_item.goods_name;
  1246 + b_item.goods_num = g_item.goods_num;
  1247 + b_item.guide_id = g_item.guide_id;
  1248 + b_item.guide_type = g_item.guide_type;
  1249 + b_item.pickup_id = item.pickup_id;
  1250 + b_item.price = good.shop_price;
  1251 + b_item.goods_sn = good.goods_sn;
  1252 + b_item.sku = good.sku;
  1253 + b_item.is_integral_normal = g_item.is_integral_normal;
  1254 + console.log(b_item, 'b_item');
1168 //-- 如果会员是等级卡的时候,同时商品也有设置相应的卡价格 -- 1255 //-- 如果会员是等级卡的时候,同时商品也有设置相应的卡价格 --
1169 - var card_field=th.data.card_field;  
1170 - if(card_field && good[card_field]>0){  
1171 - b_item.price=good[card_field]; 1256 + var card_field = th.data.card_field;
  1257 + if (card_field && good[card_field] > 0) {
  1258 + b_item.price = good[card_field];
1172 } 1259 }
1173 1260
1174 - var url="/api/weshop/activitylist/getGoodActInfo";  
1175 - var req_data={  
1176 - store_id:g_item.store_id,goodsidlist:g_item.goods_id,is_detail:1 1261 + var url = "/api/weshop/activitylist/getGoodActInfo";
  1262 + var req_data = {
  1263 + store_id: g_item.store_id,
  1264 + goodsidlist: g_item.goods_id,
  1265 + is_detail: 1
1177 }; 1266 };
1178 - await getApp().request.promiseGet(url, {data:req_data}).then(res=>{  
1179 - if(res.data.code==0){  
1180 - var list = res.data.data;  
1181 - for(let i in list){  
1182 - let item=list[i];  
1183 - if(item.prom_type==1){ good.prom_type=1; good.prom_id=item.act_id; }  
1184 - }  
1185 - } 1267 + await getApp().request.promiseGet(url, {
  1268 + data: req_data
  1269 + }).then(res => {
  1270 + if (res.data.code == 0) {
  1271 + var list = res.data.data;
  1272 + console.log('list', list);
  1273 + for (let i in list) {
  1274 + let item = list[i];
  1275 + if (item.prom_type == 1) {
  1276 + good.prom_type = 1;
  1277 + good.prom_id = item.act_id;
  1278 + }
  1279 + }
  1280 + }
1186 }) 1281 })
1187 1282
1188 - if(!prom) { 1283 + if (!prom) {
1189 //--判断商品当前的活动情况-- 1284 //--判断商品当前的活动情况--
1190 switch (good.prom_type) { 1285 switch (good.prom_type) {
1191 case 1: 1286 case 1:
@@ -1195,29 +1290,29 @@ Page({ @@ -1195,29 +1290,29 @@ Page({
1195 flash = res.data.data; 1290 flash = res.data.data;
1196 } 1291 }
1197 }) 1292 })
1198 - //----已经结束----- 1293 + //----进行中-----
1199 if (flash && flash.is_end == 0 && flash.end_time > timestamp && flash.start_time < timestamp) { 1294 if (flash && flash.is_end == 0 && flash.end_time > timestamp && flash.start_time < timestamp) {
1200 prom = flash; 1295 prom = flash;
1201 prom.price = prom.user_price; 1296 prom.price = prom.user_price;
1202 b_item.price = prom.user_price; 1297 b_item.price = prom.user_price;
1203 } 1298 }
1204 break; 1299 break;
1205 -  
1206 - case 2:  
1207 - var group = null;  
1208 - await getApp().request.promiseGet("/api/weshop/goods/groupBuy/getActInfo/" + os.stoid + "/" + good.goods_id + "/" + good.prom_id, {}).then(res => {  
1209 - if (res.data.code == 0) {  
1210 - group = res.data.data;  
1211 - }  
1212 - })  
1213 - //----已经结束-----  
1214 - if (group && group.is_end == 0 && group.end_time > timestamp && group.start_time < timestamp) {  
1215 - prom = group;  
1216 - prom.price = prom.price;  
1217 - b_item.price = prom.price;  
1218 - }  
1219 - break;  
1220 - 1300 +
  1301 + case 2:
  1302 + var group = null;
  1303 + await getApp().request.promiseGet("/api/weshop/goods/groupBuy/getActInfo/" + os.stoid + "/" + good.goods_id + "/" + good.prom_id, {}).then(res => {
  1304 + if (res.data.code == 0) {
  1305 + group = res.data.data;
  1306 + }
  1307 + })
  1308 + //----进行中-----
  1309 + if (group && group.is_end == 0 && group.end_time > timestamp && group.start_time < timestamp) {
  1310 + prom = group;
  1311 + prom.price = prom.price;
  1312 + b_item.price = prom.price;
  1313 + }
  1314 + break;
  1315 +
1221 case 6: 1316 case 6:
1222 b_item.is_pd_normal = 1; 1317 b_item.is_pd_normal = 1;
1223 break; 1318 break;
@@ -1226,30 +1321,38 @@ Page({ @@ -1226,30 +1321,38 @@ Page({
1226 var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + good.prom_id + "/" + getApp().globalData.userInfo.user_id; 1321 var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + good.prom_id + "/" + getApp().globalData.userInfo.user_id;
1227 await getApp().request.promiseGet(url, {}).then(res => { 1322 await getApp().request.promiseGet(url, {}).then(res => {
1228 if (res.data.code == 0 && res.data.data) { 1323 if (res.data.code == 0 && res.data.data) {
1229 - if (res.data.data.is_show == 1 && res.data.data.is_end == 0  
1230 - && ut.gettimestamp() < res.data.data.end_time  
1231 - && ut.gettimestamp() > res.data.data.start_time 1324 + if (res.data.data.is_show == 1 && res.data.data.is_end == 0 &&
  1325 + ut.gettimestamp() < res.data.data.end_time &&
  1326 + ut.gettimestamp() > res.data.data.start_time
1232 ) { 1327 ) {
1233 b_item.prom_type = 7; 1328 b_item.prom_type = 7;
1234 b_item.prom_id = res.data.data.id; 1329 b_item.prom_id = res.data.data.id;
1235 good.prom_type = 7; 1330 good.prom_type = 7;
1236 good.prom_id = b_item.prom_id; 1331 good.prom_id = b_item.prom_id;
1237 -  
1238 } 1332 }
1239 } 1333 }
1240 }) 1334 })
1241 break; 1335 break;
  1336 + case 10:
  1337 + let user_id = getApp().globalData.userInfo.user_id;
  1338 + var url = `/api/weshop/prom/ladderForm/getNew/${os.stoid}/${user_id}/${good.prom_id}`;
  1339 + await getApp().request.promiseGet(url, {}).then(res => {
  1340 + if (res.data.code == 0 && res.data.data && res.data.data.isuse && res.data.data.is_end == 0) {
  1341 + b_item.prom_type = 10;
  1342 + b_item.prom_id = res.data.data.id;
  1343 + }
  1344 + })
1242 } 1345 }
1243 } 1346 }
1244 1347
1245 //如果有优惠促销的时候,要看下商品的优惠活动有没有过期 1348 //如果有优惠促销的时候,要看下商品的优惠活动有没有过期
1246 - if(g_item.prom_type==3 || good.prom_type==3){ 1349 + if (g_item.prom_type == 3 || good.prom_type == 3) {
1247 await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + good.goods_id + "/1", {}).then(res => { 1350 await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + good.goods_id + "/1", {}).then(res => {
1248 if (res.data.code == 0) { 1351 if (res.data.code == 0) {
1249 var r_data = res.data.data; 1352 var r_data = res.data.data;
1250 if (r_data.promGoodsLists) { 1353 if (r_data.promGoodsLists) {
1251 - b_item.prom_type=3;  
1252 - b_item.prom_id=r_data.promGoodsLists[0].prom_id; 1354 + b_item.prom_type = 3;
  1355 + b_item.prom_id = r_data.promGoodsLists[0].prom_id;
1253 } 1356 }
1254 } 1357 }
1255 }) 1358 })
@@ -1257,34 +1360,41 @@ Page({ @@ -1257,34 +1360,41 @@ Page({
1257 1360
1258 1361
1259 //判断是不是线下库存的购买, 是不是秒杀活动 1362 //判断是不是线下库存的购买, 是不是秒杀活动
1260 - if(th.data.sales_rules==2 && !prom){ 1363 + if (th.data.sales_rules == 2 && !prom) {
1261 1364
1262 //-- 看一下购物车上有多少商品 -- 1365 //-- 看一下购物车上有多少商品 --
1263 - var cart_num=0; 1366 + var cart_num = 0;
1264 await getApp().request.promiseGet("/api/weshop/cart/page", { 1367 await getApp().request.promiseGet("/api/weshop/cart/page", {
1265 data: { 1368 data: {
1266 store_id: os.stoid, 1369 store_id: os.stoid,
1267 user_id: getApp().globalData.user_id, 1370 user_id: getApp().globalData.user_id,
1268 - state:0, is_gift:0,  
1269 - goods_id:good.goods_id, 1371 + state: 0,
  1372 + is_gift: 0,
  1373 + goods_id: good.goods_id,
1270 pick_id: b_item.pickup_id 1374 pick_id: b_item.pickup_id
1271 } 1375 }
1272 - }).then(res=>{ 1376 + }).then(res => {
1273 var num = 0; 1377 var num = 0;
1274 - if(res.data.code==0 && res.data.data && res.data.data.pageData) { 1378 + if (res.data.code == 0 && res.data.data && res.data.data.pageData) {
1275 for (var i = 0; i < res.data.data.pageData.length; i++) { 1379 for (var i = 0; i < res.data.data.pageData.length; i++) {
1276 num += res.data.data.pageData[i].goods_num; 1380 num += res.data.data.pageData[i].goods_num;
1277 } 1381 }
1278 } 1382 }
1279 - cart_num=num; 1383 + cart_num = num;
1280 }) 1384 })
1281 1385
1282 - var lock=0,plist=null; 1386 + var lock = 0,
  1387 + plist = null;
1283 1388
1284 - if(b_item.prom_type!=7) { 1389 + if (b_item.prom_type != 7) {
1285 //先读取门店的lock, 1390 //先读取门店的lock,
1286 await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", { 1391 await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", {
1287 - data: {store_id: os.stoid, wareId: good.goods_id, storageId: b_item.pickup_id, pageSize: 1000} 1392 + data: {
  1393 + store_id: os.stoid,
  1394 + wareId: good.goods_id,
  1395 + storageId: b_item.pickup_id,
  1396 + pageSize: 1000
  1397 + }
1288 }).then(res => { 1398 }).then(res => {
1289 if (res.data.code == 0 && res.data.data.total > 0) { 1399 if (res.data.code == 0 && res.data.data.total > 0) {
1290 for (var i in res.data.data.pageData) 1400 for (var i in res.data.data.pageData)
@@ -1317,100 +1427,101 @@ Page({ @@ -1317,100 +1427,101 @@ Page({
1317 b_item.goods_num = plist.CanOutQty - lock; 1427 b_item.goods_num = plist.CanOutQty - lock;
1318 } 1428 }
1319 } 1429 }
1320 - var req_data={ 1430 + var req_data = {
1321 store_id: os.stoid, 1431 store_id: os.stoid,
1322 user_id: getApp().globalData.user_id, 1432 user_id: getApp().globalData.user_id,
1323 goods_id: good.goods_id, 1433 goods_id: good.goods_id,
1324 }; 1434 };
1325 - if(b_item.prom_type==7){  
1326 - req_data.prom_type=7;  
1327 - req_data.prom_id=b_item.prom_id; 1435 + if (b_item.prom_type == 7) {
  1436 + req_data.prom_type = 7;
  1437 + req_data.prom_id = b_item.prom_id;
1328 } 1438 }
1329 1439
1330 - var buynum=0;  
1331 - var promnum=0; 1440 + var buynum = 0;
  1441 + var promnum = 0;
1332 //---要获得商品,该用户买了多少件,同步应用--- 1442 //---要获得商品,该用户买了多少件,同步应用---
1333 await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", { 1443 await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
1334 data: req_data, 1444 data: req_data,
1335 }).then(res => { 1445 }).then(res => {
1336 - if(res.data.code==0){ 1446 + if (res.data.code == 0) {
1337 var buy_num_data = res.data.data; 1447 var buy_num_data = res.data.data;
1338 buynum = buy_num_data.goodsbuynum; 1448 buynum = buy_num_data.goodsbuynum;
1339 - if(buy_num_data.promgoodsbuynum){  
1340 - promnum=buy_num_data.promgoodsbuynum; 1449 + if (buy_num_data.promgoodsbuynum) {
  1450 + promnum = buy_num_data.promgoodsbuynum;
1341 } 1451 }
1342 } 1452 }
1343 }) 1453 })
1344 1454
1345 //---- 要计算商品的限购 ----- 1455 //---- 要计算商品的限购 -----
1346 - if(good['viplimited']>0){  
1347 - if(cart_num+buynum>good['viplimited']){  
1348 - err_text+= good['goods_name']+"超出限购\n"; 1456 + if (good['viplimited'] > 0) {
  1457 + if (cart_num + buynum > good['viplimited']) {
  1458 + err_text += good['goods_name'] + "超出限购\n";
1349 continue; 1459 continue;
1350 } 1460 }
1351 - good['viplimited']-=(cart_num+buynum);  
1352 - if(b_item.goods_num>good['viplimited']){  
1353 - b_item.goods_num=good['viplimited']; 1461 + good['viplimited'] -= (cart_num + buynum);
  1462 + if (b_item.goods_num > good['viplimited']) {
  1463 + b_item.goods_num = good['viplimited'];
1354 } 1464 }
1355 } 1465 }
1356 //不需要计算组合购的限购 1466 //不需要计算组合购的限购
1357 1467
1358 - back_goods_arr.push(b_item); //返回商品元素 1468 + back_goods_arr.push(b_item); //返回商品元素
1359 1469
1360 - }else{ 1470 + } else {
1361 1471
1362 //-- 看一下购物车上有多少商品 -- 1472 //-- 看一下购物车上有多少商品 --
1363 - var cart_num=0; 1473 + var cart_num = 0;
1364 await getApp().request.promiseGet("/api/weshop/cart/page", { 1474 await getApp().request.promiseGet("/api/weshop/cart/page", {
1365 data: { 1475 data: {
1366 store_id: os.stoid, 1476 store_id: os.stoid,
1367 user_id: getApp().globalData.user_id, 1477 user_id: getApp().globalData.user_id,
1368 - state:0, is_gift:0,  
1369 - goods_id:good.goods_id 1478 + state: 0,
  1479 + is_gift: 0,
  1480 + goods_id: good.goods_id
1370 } 1481 }
1371 - }).then(res=>{ 1482 + }).then(res => {
1372 var num = 0; 1483 var num = 0;
1373 - if(res.data.code==0 && res.data.data && res.data.data.pageData) { 1484 + if (res.data.code == 0 && res.data.data && res.data.data.pageData) {
1374 for (var i = 0; i < res.data.data.pageData.length; i++) { 1485 for (var i = 0; i < res.data.data.pageData.length; i++) {
1375 num += res.data.data.pageData[i].goods_num; 1486 num += res.data.data.pageData[i].goods_num;
1376 } 1487 }
1377 } 1488 }
1378 - cart_num=num; 1489 + cart_num = num;
1379 }) 1490 })
1380 1491
1381 1492
1382 - if(good.store_count<=0){  
1383 - err_text+= good['goods_name']+"库存不足\n"; 1493 + if (good.store_count <= 0) {
  1494 + err_text += good['goods_name'] + "库存不足\n";
1384 continue; 1495 continue;
1385 } 1496 }
1386 - if(b_item.goods_num>good.store_count)  
1387 - b_item.goods_num=good.store_count; 1497 + if (b_item.goods_num > good.store_count)
  1498 + b_item.goods_num = good.store_count;
1388 1499
1389 - var buynum=0; //商品已经购买多少件  
1390 - var promgoodsbuynum=0; //活动已经购买多少件  
1391 - var redis_num = 0; //redis库存 1500 + var buynum = 0; //商品已经购买多少件
  1501 + var promgoodsbuynum = 0; //活动已经购买多少件
  1502 + var redis_num = 0; //redis库存
1392 1503
1393 - var req_data={ 1504 + var req_data = {
1394 store_id: os.stoid, 1505 store_id: os.stoid,
1395 user_id: getApp().globalData.user_id, 1506 user_id: getApp().globalData.user_id,
1396 goods_id: good.goods_id, 1507 goods_id: good.goods_id,
1397 }; 1508 };
1398 1509
1399 - if(prom){  
1400 - req_data.prom_type= good.prom_type;  
1401 - req_data.prom_id= good.prom_id;  
1402 - b_item.prom_type=good.prom_type;  
1403 - b_item.prom_id=good.prom_id; 1510 + if (prom) {
  1511 + req_data.prom_type = good.prom_type;
  1512 + req_data.prom_id = good.prom_id;
  1513 + b_item.prom_type = good.prom_type;
  1514 + b_item.prom_id = good.prom_id;
1404 1515
1405 //------判断活动是否抢光----- 1516 //------判断活动是否抢光-----
1406 await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + 1517 await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" +
1407 os.stoid + "/" + good.prom_type + "/" + good.prom_id, { 1518 os.stoid + "/" + good.prom_type + "/" + good.prom_id, {
1408 - 1: 1  
1409 - }).then(res => { 1519 + 1: 1
  1520 + }).then(res => {
1410 redis_num = res.data.data; 1521 redis_num = res.data.data;
1411 }); 1522 });
1412 - if(redis_num<=0){  
1413 - err_text+= good['goods_name']+"活动不足\n"; 1523 + if (redis_num <= 0) {
  1524 + err_text += good['goods_name'] + "活动不足\n";
1414 continue; 1525 continue;
1415 } 1526 }
1416 1527
@@ -1420,7 +1531,7 @@ Page({ @@ -1420,7 +1531,7 @@ Page({
1420 await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", { 1531 await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
1421 data: req_data, 1532 data: req_data,
1422 }).then(res => { 1533 }).then(res => {
1423 - if(res.data.code==0){ 1534 + if (res.data.code == 0) {
1424 var buy_num_data = res.data.data; 1535 var buy_num_data = res.data.data;
1425 if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum; 1536 if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum;
1426 buynum = buy_num_data.goodsbuynum; 1537 buynum = buy_num_data.goodsbuynum;
@@ -1428,20 +1539,20 @@ Page({ @@ -1428,20 +1539,20 @@ Page({
1428 }) 1539 })
1429 1540
1430 //---- 要计算商品的限购 ----- 1541 //---- 要计算商品的限购 -----
1431 - if(good['viplimited']>0){  
1432 - if(cart_num+buynum>good['viplimited']){  
1433 - err_text+= good['goods_name']+"超出限购\n"; 1542 + if (good['viplimited'] > 0) {
  1543 + if (cart_num + buynum > good['viplimited']) {
  1544 + err_text += good['goods_name'] + "超出限购\n";
1434 continue; 1545 continue;
1435 } 1546 }
1436 - good['viplimited']-=(cart_num+buynum);  
1437 - if(b_item.goods_num>good['viplimited']){  
1438 - b_item.goods_num=good['viplimited']; 1547 + good['viplimited'] -= (cart_num + buynum);
  1548 + if (b_item.goods_num > good['viplimited']) {
  1549 + b_item.goods_num = good['viplimited'];
1439 } 1550 }
1440 1551
1441 } 1552 }
1442 1553
1443 //-- 判断活动的库存 -- 1554 //-- 判断活动的库存 --
1444 - if(prom) { 1555 + if (prom) {
1445 if (prom['goods_num'] <= prom['buy_num']) { 1556 if (prom['goods_num'] <= prom['buy_num']) {
1446 err_text += good['goods_name'] + "超出活动库存\n"; 1557 err_text += good['goods_name'] + "超出活动库存\n";
1447 continue; 1558 continue;
@@ -1466,367 +1577,378 @@ Page({ @@ -1466,367 +1577,378 @@ Page({
1466 } 1577 }
1467 } 1578 }
1468 } 1579 }
1469 -  
1470 -  
1471 - back_goods_arr.push(b_item); //返回商品元素 1580 + back_goods_arr.push(b_item); //返回商品元素
1472 } 1581 }
1473 } 1582 }
1474 1583
1475 //有重新购买的数据是时候,就要重新生成订单 1584 //有重新购买的数据是时候,就要重新生成订单
1476 - if(back_goods_arr.length>0){  
1477 - th.setData({back_goods_arr:back_goods_arr});  
1478 - if(!err_text){ 1585 + if (back_goods_arr.length > 0) {
  1586 + th.setData({
  1587 + back_goods_arr: back_goods_arr
  1588 + });
  1589 + if (!err_text) {
1479 th.more_add_cart(); 1590 th.more_add_cart();
1480 - }else{ 1591 + } else {
1481 wx.hideLoading(); 1592 wx.hideLoading();
1482 // 如果没有获取用户信息 1593 // 如果没有获取用户信息
1483 wx.showModal({ 1594 wx.showModal({
1484 - title:'确定',  
1485 - content: err_text+',确定要买其他商品码?', 1595 + title: '确定',
  1596 + content: err_text + ',确定要买其他商品吗?',
1486 success(res) { 1597 success(res) {
1487 if (res.confirm) { 1598 if (res.confirm) {
1488 //跳转到登录页 1599 //跳转到登录页
1489 th.more_add_cart(); 1600 th.more_add_cart();
1490 - }else{  
1491 - th.data.moring=0; 1601 + } else {
  1602 + th.data.moring = 0;
1492 wx.hideLoading(); 1603 wx.hideLoading();
1493 } 1604 }
1494 - },fail(){  
1495 - th.data.moring=0; 1605 + },
  1606 + fail() {
  1607 + th.data.moring = 0;
1496 wx.hideLoading(); 1608 wx.hideLoading();
1497 } 1609 }
1498 }); 1610 });
1499 1611
1500 } 1612 }
1501 - }else{  
1502 - th.data.moring=0; 1613 + } else {
  1614 + th.data.moring = 0;
1503 wx.hideLoading(); 1615 wx.hideLoading();
1504 getApp().confirmBox(err_text); 1616 getApp().confirmBox(err_text);
1505 } 1617 }
1506 }, 1618 },
1507 -  
1508 - more_add_cart:async function(){  
1509 - var back_goods_arr=this.data.back_goods_arr;  
1510 - var err_text="";  
1511 - var ok_num=0;  
1512 -  
1513 - for(var i in back_goods_arr){  
1514 - //商品ID  
1515 - var g_item=back_goods_arr[i];  
1516 - var newd = {  
1517 - goods_id: g_item.goods_id,  
1518 - goods_num: g_item.goods_num,  
1519 - pick_id: g_item.pickup_id,  
1520 - user_id: oo.user_id,  
1521 - store_id: os.stoid,  
1522 - goods_price: g_item.price,  
1523 - member_goods_price: g_item.price,  
1524 - goods_name: g_item.goods_name,  
1525 - goods_sn: g_item.goods_sn,  
1526 - sku: g_item.sku,  
1527 - };  
1528 -  
1529 - if(g_item.guide_id){  
1530 - newd['guide_id']=g_item.guide_id;  
1531 - newd['guide_type']=g_item.guide_type;  
1532 - }  
1533 -  
1534 - if(g_item.is_integral_normal){  
1535 - newd['is_integral_normal']=g_item.is_integral_normal;  
1536 - }  
1537 - if(g_item.is_pd_normal){  
1538 - newd['is_pd_normal']=g_item.is_pd_normal;  
1539 - }  
1540 -  
1541 - if(g_item.prom_type){  
1542 - newd['prom_type']=g_item.prom_type;  
1543 - newd['prom_id']=g_item.prom_id;  
1544 - }  
1545 -  
1546 -  
1547 - var b_cart_goods=null;  
1548 - await getApp().request.promiseGet("/api/weshop/cart/page", {  
1549 - data: {  
1550 - store_id: os.stoid,  
1551 - user_id: oo.user_id,  
1552 - goods_id: g_item.goods_id,  
1553 - pick_id: g_item.pickup_id,  
1554 - },  
1555 - }).then(res=>{  
1556 - //-------如果购物车中有相关的数据-------  
1557 - if (res.data.data.total > 0) {  
1558 - b_cart_goods= res.data.data.pageData[0];  
1559 - }  
1560 - })  
1561 -  
1562 - //-- 如果就加入过购物车 --  
1563 - if(b_cart_goods){  
1564 - var updata = {  
1565 - id: b_cart_goods.id,  
1566 - goods_num: newd.goods_num + b_cart_goods.goods_num,  
1567 - goods_price: newd.goods_price,  
1568 - member_goods_price:newd.goods_price,  
1569 - store_id: os.stoid,  
1570 - };  
1571 - if(newd.guide_id){  
1572 - updata.guide_id=newd.guide_id;  
1573 - updata.guide_type=newd.guide_type;  
1574 - }  
1575 - if(newd.prom_type){  
1576 - updata.prom_type=newd.prom_type;  
1577 - updata.prom_id=newd.prom_id;  
1578 - }  
1579 -  
1580 - await getApp().request.promisePut("/api/weshop/cart/update", {  
1581 - data: updata  
1582 - }).then(res=>{  
1583 - if(res.data.code==0) {  
1584 - ok_num++;  
1585 - }else{  
1586 - err_text+=newd.goods_name+"加入购物车失败\n";  
1587 - }  
1588 - })  
1589 -  
1590 - }else{  
1591 - await getApp().request.promisePost("/api/weshop/cart/save", {  
1592 - data: newd  
1593 - }).then(res=>{  
1594 - if(res.data.code==0) {  
1595 - ok_num++;  
1596 - }else{  
1597 - err_text+=newd.goods_name+"加入购物车失败\n";  
1598 - }  
1599 - })  
1600 - }  
1601 - }  
1602 - wx.hideLoading();  
1603 - this.data.moring=0;  
1604 - if(ok_num==0){  
1605 - //-- 如果没有获取用户信息 --  
1606 - wx.showModal({  
1607 - title:'提示',  
1608 - content: err_text,  
1609 - success(res) {}  
1610 - });  
1611 - }else{  
1612 - if(err_text==""){  
1613 - getApp().goto("/pages/cart/cart/cart");  
1614 - }else{  
1615 - // 如果没有获取用户信息  
1616 - wx.showModal({  
1617 - title:'提示',  
1618 - content: err_text,  
1619 - success(res) {  
1620 - if (res.confirm) {  
1621 - //跳转到登录页  
1622 - getApp().goto("/pages/cart/cart/cart");  
1623 - }  
1624 - }  
1625 - });  
1626 -  
1627 - }  
1628 - }  
1629 - },  
1630 -  
1631 - request_list: function(data, callback){  
1632 - // console.log('进入request_list');  
1633 -  
1634 - var th = this;  
1635 - if(this.data.is_load2) return false; //-- 正在加载  
1636 - if(this.data.is_no_data2) return false; //-- 没有数据  
1637 - if(this.data.is_no_more2) return false; //-- 没有更多  
1638 -  
1639 - // 开启加载状态  
1640 - this.data.is_load2=1;  
1641 -  
1642 - // var req_data = {  
1643 - // page:th.data.currentPage2  
1644 - // }  
1645 -  
1646 - app.request.promiseGet("/api/weshop/order/pagePosOrder", {  
1647 - data: data  
1648 - }).then(res=>{  
1649 - // 关闭加载状态  
1650 - th.data.is_load2=0;  
1651 - // 请求成功  
1652 - if(res.data.code==0) {  
1653 - if(res.data.data.pageData.length>0) {  
1654 - th.data.currentPage2++;  
1655 - var data = res.data.data.pageData;  
1656 - // 判断有无更多数据可以加载,如果大于则没有更多数据,反之则有  
1657 - if(res.data.data.page*res.data.data.pageSize > res.data.data.total){th.setData({is_no_more2:1});}  
1658 - var list=th.data.list2;  
1659 - list=list.concat(data);  
1660 - th.setData({list2:list});  
1661 - } else {  
1662 - if(th.data.currentPage2==1){  
1663 - th.setData({is_no_data2:1});  
1664 - } else {  
1665 - th.setData({is_no_more2:1});  
1666 - }  
1667 - }  
1668 - if(callback) callback(res);  
1669 - } else {  
1670 - wx.showToast({  
1671 - title: res.data.msg,  
1672 - icon: 'none',  
1673 - duration: 2000  
1674 - })  
1675 - }  
1676 - })  
1677 - },  
1678 -  
1679 -  
1680 - onClickTab(e) {  
1681 - let currentIndex = e.target.dataset.index;  
1682 - this.setData({  
1683 - currentIndex: currentIndex  
1684 - });  
1685 - console.log(this.data.currentIndex);  
1686 - this.setData({  
1687 - is_no_data2: 0,  
1688 - is_no_more2: 0,  
1689 - currentPage2: 1,  
1690 - });  
1691 - if(currentIndex == 0) {  
1692 - console.log('线上订单');  
1693 - /*---  
1694 - this.setData({  
1695 - startDate: '选择开始时间',  
1696 - endDate: '选择结束时间',  
1697 - });--*/  
1698 - } else if(currentIndex == 1) {  
1699 - console.log('线下订单');  
1700 - this.request_list({  
1701 - store_id: os.stoid,  
1702 - user_id: oo.user_id,  
1703 - page: 1,  
1704 - BeginDate: this.data.startDate,  
1705 - EndDate: this.data.endDate  
1706 - });  
1707 - };  
1708 - },  
1709 -  
1710 - bindDateChange1: function(e) {  
1711 - console.log('picker发送选择改变,携带值为', e.detail.value)  
1712 - this.setData({  
1713 - startDate: e.detail.value  
1714 - })  
1715 - },  
1716 -  
1717 - bindDateChange2: function(e) {  
1718 - console.log('picker发送选择改变,携带值为', e.detail.value)  
1719 - this.setData({  
1720 - endDate: e.detail.value  
1721 - })  
1722 - },  
1723 -  
1724 - bindInput(e) {  
1725 - this.data.searchContent = e.detail.value;  
1726 - },  
1727 -  
1728 - searchOnline() {  
1729 - console.log('online',this.data.searchContent);  
1730 - if(this.data.searchContent) {  
1731 - console.log(this.data.searchContent);  
1732 - this.resetData(), this.requestOrderList(this.data.activeCategoryId);  
1733 - } else {  
1734 - wx.showToast({  
1735 - title: '您还没有输入搜索内容~',  
1736 - icon: 'none',  
1737 - })  
1738 - };  
1739 - },  
1740 -  
1741 - searchOffline() {  
1742 - console.log('执行查询');  
1743 - let th = this;  
1744 - let startDate = this.data.startDate;  
1745 - let endDate = this.data.endDate;  
1746 -  
1747 - // this.data.is_no_data2 = 0;  
1748 - this.setData({  
1749 - currentPage2: 1,  
1750 - list2: [],  
1751 - is_no_data2: 0,  
1752 - });  
1753 -  
1754 -  
1755 - if(startDate == '选择开始时间' || endDate == '选择结束时间') {  
1756 - wx.showToast({  
1757 - title: '请选择完整的查询时间~',  
1758 - icon: 'none',  
1759 - })  
1760 - };  
1761 -  
1762 - if(new Date(startDate) > new Date(endDate)) {  
1763 - wx.showToast({  
1764 - title: '不对噢!开始时间不能晚于结束时间~',  
1765 - icon: 'none',  
1766 - })  
1767 - return;  
1768 - };  
1769 -  
1770 -  
1771 - this.request_list({  
1772 - store_id: os.stoid,  
1773 - user_id: oo.user_id,  
1774 - page: 1,  
1775 - BeginDate: this.data.startDate,  
1776 - EndDate: this.data.endDate  
1777 - }, function(res) {  
1778 - if(res.data.data.total == 0) {  
1779 - wx.showToast({  
1780 - title: '没有找到相关订单',  
1781 - icon: 'none',  
1782 - duration: 2000  
1783 - })  
1784 - } else {  
1785 - th.setData({  
1786 - total: res.data.data.total  
1787 - });  
1788 - }  
1789 - });  
1790 - },  
1791 -  
1792 - currentDate() {  
1793 - var now = new Date();  
1794 - var year = now.getFullYear(); //年  
1795 - var month = now.getMonth() + 1; //月  
1796 - var day = now.getDate(); //日  
1797 -  
1798 - var clock = year + "-";  
1799 -  
1800 - if(month < 10) month += "0";  
1801 - clock += month + "-";  
1802 -  
1803 - if(day < 10) day += "0";  
1804 - clock += day;  
1805 -  
1806 - // if(hh < 10)  
1807 - // clock += "0";  
1808 -  
1809 - // clock += hh + ":";  
1810 - // if (mm < 10) clock += '0';  
1811 - // clock += mm + ":";  
1812 -  
1813 - // if (ss < 10) clock += '0';  
1814 - // clock += ss;  
1815 - return clock;  
1816 - },  
1817 -  
1818 - toast(msg){  
1819 - wx.showToast({  
1820 - title: msg,  
1821 - icon: 'none',  
1822 - duration: 3000  
1823 - })  
1824 - },  
1825 -  
1826 - go_url(e){  
1827 - var url=e.currentTarget.dataset.url;  
1828 - getApp().goto(url); 1619 +
  1620 + more_add_cart: async function () {
  1621 + var back_goods_arr = this.data.back_goods_arr;
  1622 + var err_text = "";
  1623 + var ok_num = 0;
  1624 +
  1625 + for (var i in back_goods_arr) {
  1626 + //商品ID
  1627 + var g_item = back_goods_arr[i];
  1628 + console.log(g_item, 'g_item');
  1629 + var newd = {
  1630 + goods_id: g_item.goods_id,
  1631 + goods_num: g_item.goods_num,
  1632 + pick_id: g_item.pickup_id,
  1633 + user_id: oo.user_id,
  1634 + store_id: os.stoid,
  1635 + goods_price: g_item.price,
  1636 + member_goods_price: g_item.price,
  1637 + goods_name: g_item.goods_name,
  1638 + goods_sn: g_item.goods_sn,
  1639 + sku: g_item.sku,
  1640 + };
  1641 +
  1642 + if (g_item.guide_id) {
  1643 + newd['guide_id'] = g_item.guide_id;
  1644 + newd['guide_type'] = g_item.guide_type;
  1645 + }
  1646 +
  1647 + if (g_item.is_integral_normal) {
  1648 + newd['is_integral_normal'] = g_item.is_integral_normal;
  1649 + }
  1650 + if (g_item.is_pd_normal) {
  1651 + newd['is_pd_normal'] = g_item.is_pd_normal;
  1652 + }
  1653 + if (g_item.prom_type) {
  1654 + newd['prom_type'] = g_item.prom_type;
  1655 + newd['prom_id'] = g_item.prom_id;
  1656 + }
  1657 +
  1658 +
  1659 + var b_cart_goods = null;
  1660 + await getApp().request.promiseGet("/api/weshop/cart/page", {
  1661 + data: {
  1662 + store_id: os.stoid,
  1663 + user_id: oo.user_id,
  1664 + goods_id: g_item.goods_id,
  1665 + pick_id: g_item.pickup_id,
  1666 + },
  1667 + }).then(res => {
  1668 + //-------如果购物车中有相关的数据-------
  1669 + if (res.data.data.total > 0) {
  1670 + b_cart_goods = res.data.data.pageData[0];
  1671 + }
  1672 + })
  1673 +
  1674 + //-- 如果就加入过购物车 --
  1675 + if (b_cart_goods) {
  1676 + var updata = {
  1677 + id: b_cart_goods.id,
  1678 + goods_num: newd.goods_num + b_cart_goods.goods_num,
  1679 + goods_price: newd.goods_price,
  1680 + member_goods_price: newd.goods_price,
  1681 + store_id: os.stoid,
  1682 + };
  1683 + if (newd.guide_id) {
  1684 + updata.guide_id = newd.guide_id;
  1685 + updata.guide_type = newd.guide_type;
  1686 + }
  1687 + if (newd.prom_type) {
  1688 + updata.prom_type = newd.prom_type;
  1689 + updata.prom_id = newd.prom_id;
  1690 + }
  1691 +
  1692 + await getApp().request.promisePut("/api/weshop/cart/update", {
  1693 + data: updata
  1694 + }).then(res => {
  1695 + if (res.data.code == 0) {
  1696 + ok_num++;
  1697 + } else {
  1698 + err_text += newd.goods_name + "加入购物车失败\n";
  1699 + }
  1700 + })
  1701 +
  1702 + } else {
  1703 + await getApp().request.promisePost("/api/weshop/cart/save", {
  1704 + data: newd
  1705 + }).then(res => {
  1706 + if (res.data.code == 0) {
  1707 + ok_num++;
  1708 + } else {
  1709 + err_text += newd.goods_name + "加入购物车失败\n";
  1710 + }
  1711 + })
  1712 + }
  1713 + }
  1714 + wx.hideLoading();
  1715 + this.data.moring = 0;
  1716 + if (ok_num == 0) {
  1717 + //-- 如果没有获取用户信息 --
  1718 + wx.showModal({
  1719 + title: '提示',
  1720 + content: err_text,
  1721 + success(res) {}
  1722 + });
  1723 + } else {
  1724 + if (err_text == "") {
  1725 + getApp().goto("/pages/cart/cart/cart");
  1726 + } else {
  1727 + // 如果没有获取用户信息
  1728 + wx.showModal({
  1729 + title: '提示',
  1730 + content: err_text,
  1731 + success(res) {
  1732 + if (res.confirm) {
  1733 + //跳转到登录页
  1734 + getApp().goto("/pages/cart/cart/cart");
  1735 + }
  1736 + }
  1737 + });
  1738 +
  1739 + }
  1740 + }
  1741 + },
  1742 +
  1743 + request_list: function (data, callback) {
  1744 + // console.log('进入request_list');
  1745 +
  1746 + var th = this;
  1747 + if (this.data.is_load2) return false; //-- 正在加载
  1748 + if (this.data.is_no_data2) return false; //-- 没有数据
  1749 + if (this.data.is_no_more2) return false; //-- 没有更多
  1750 +
  1751 + // 开启加载状态
  1752 + this.data.is_load2 = 1;
  1753 +
  1754 + // var req_data = {
  1755 + // page:th.data.currentPage2
  1756 + // }
  1757 +
  1758 + app.request.promiseGet("/api/weshop/order/pagePosOrder", {
  1759 + data: data
  1760 + }).then(res => {
  1761 + // 关闭加载状态
  1762 + th.data.is_load2 = 0;
  1763 + // 请求成功
  1764 + if (res.data.code == 0) {
  1765 + if (res.data.data.pageData.length > 0) {
  1766 + th.data.currentPage2++;
  1767 + var data = res.data.data.pageData;
  1768 + // 判断有无更多数据可以加载,如果大于则没有更多数据,反之则有
  1769 + if (res.data.data.page * res.data.data.pageSize > res.data.data.total) {
  1770 + th.setData({
  1771 + is_no_more2: 1
  1772 + });
  1773 + }
  1774 + var list = th.data.list2;
  1775 + list = list.concat(data);
  1776 + th.setData({
  1777 + list2: list
  1778 + });
  1779 + } else {
  1780 + if (th.data.currentPage2 == 1) {
  1781 + th.setData({
  1782 + is_no_data2: 1
  1783 + });
  1784 + } else {
  1785 + th.setData({
  1786 + is_no_more2: 1
  1787 + });
  1788 + }
  1789 + }
  1790 + if (callback) callback(res);
  1791 + } else {
  1792 + wx.showToast({
  1793 + title: res.data.msg,
  1794 + icon: 'none',
  1795 + duration: 2000
  1796 + })
  1797 + }
  1798 + })
  1799 + },
  1800 +
  1801 +
  1802 + onClickTab(e) {
  1803 + let currentIndex = e.target.dataset.index;
  1804 + this.setData({
  1805 + currentIndex: currentIndex
  1806 + });
  1807 + console.log(this.data.currentIndex);
  1808 + this.setData({
  1809 + is_no_data2: 0,
  1810 + is_no_more2: 0,
  1811 + currentPage2: 1,
  1812 + });
  1813 + if (currentIndex == 0) {
  1814 + console.log('线上订单');
  1815 + /*---
  1816 + this.setData({
  1817 + startDate: '选择开始时间',
  1818 + endDate: '选择结束时间',
  1819 + });--*/
  1820 + } else if (currentIndex == 1) {
  1821 + console.log('线下订单');
  1822 + this.request_list({
  1823 + store_id: os.stoid,
  1824 + user_id: oo.user_id,
  1825 + page: 1,
  1826 + BeginDate: this.data.startDate,
  1827 + EndDate: this.data.endDate
  1828 + });
  1829 + };
  1830 + },
  1831 +
  1832 + bindDateChange1: function (e) {
  1833 + console.log('picker发送选择改变,携带值为', e.detail.value)
  1834 + this.setData({
  1835 + startDate: e.detail.value
  1836 + })
  1837 + },
  1838 +
  1839 + bindDateChange2: function (e) {
  1840 + console.log('picker发送选择改变,携带值为', e.detail.value)
  1841 + this.setData({
  1842 + endDate: e.detail.value
  1843 + })
  1844 + },
  1845 +
  1846 + bindInput(e) {
  1847 + this.data.searchContent = e.detail.value;
  1848 + },
  1849 +
  1850 + searchOnline() {
  1851 + console.log('online', this.data.searchContent);
  1852 + if (this.data.searchContent) {
  1853 + console.log(this.data.searchContent);
  1854 + this.resetData(), this.requestOrderList(this.data.activeCategoryId);
  1855 + } else {
  1856 + wx.showToast({
  1857 + title: '您还没有输入搜索内容~',
  1858 + icon: 'none',
  1859 + })
  1860 + };
  1861 + },
  1862 +
  1863 + searchOffline() {
  1864 + console.log('执行查询');
  1865 + let th = this;
  1866 + let startDate = this.data.startDate;
  1867 + let endDate = this.data.endDate;
  1868 +
  1869 + // this.data.is_no_data2 = 0;
  1870 + this.setData({
  1871 + currentPage2: 1,
  1872 + list2: [],
  1873 + is_no_data2: 0,
  1874 + });
  1875 +
  1876 +
  1877 + if (startDate == '选择开始时间' || endDate == '选择结束时间') {
  1878 + wx.showToast({
  1879 + title: '请选择完整的查询时间~',
  1880 + icon: 'none',
  1881 + })
  1882 + };
  1883 +
  1884 + if (new Date(startDate) > new Date(endDate)) {
  1885 + wx.showToast({
  1886 + title: '不对噢!开始时间不能晚于结束时间~',
  1887 + icon: 'none',
  1888 + })
  1889 + return;
  1890 + };
  1891 +
  1892 +
  1893 + this.request_list({
  1894 + store_id: os.stoid,
  1895 + user_id: oo.user_id,
  1896 + page: 1,
  1897 + BeginDate: this.data.startDate,
  1898 + EndDate: this.data.endDate
  1899 + }, function (res) {
  1900 + if (res.data.data.total == 0) {
  1901 + wx.showToast({
  1902 + title: '没有找到相关订单',
  1903 + icon: 'none',
  1904 + duration: 2000
  1905 + })
  1906 + } else {
  1907 + th.setData({
  1908 + total: res.data.data.total
  1909 + });
  1910 + }
  1911 + });
  1912 + },
  1913 +
  1914 + currentDate() {
  1915 + var now = new Date();
  1916 + var year = now.getFullYear(); //年
  1917 + var month = now.getMonth() + 1; //月
  1918 + var day = now.getDate(); //日
  1919 +
  1920 + var clock = year + "-";
  1921 +
  1922 + if (month < 10) month += "0";
  1923 + clock += month + "-";
  1924 +
  1925 + if (day < 10) day += "0";
  1926 + clock += day;
  1927 +
  1928 + // if(hh < 10)
  1929 + // clock += "0";
  1930 +
  1931 + // clock += hh + ":";
  1932 + // if (mm < 10) clock += '0';
  1933 + // clock += mm + ":";
  1934 +
  1935 + // if (ss < 10) clock += '0';
  1936 + // clock += ss;
  1937 + return clock;
  1938 + },
  1939 +
  1940 + toast(msg) {
  1941 + wx.showToast({
  1942 + title: msg,
  1943 + icon: 'none',
  1944 + duration: 3000
  1945 + })
  1946 + },
  1947 +
  1948 + go_url(e) {
  1949 + var url = e.currentTarget.dataset.url;
  1950 + getApp().goto(url);
1829 } 1951 }
1830 -  
1831 - 1952 +
  1953 +
1832 }); 1954 });
1833 \ No newline at end of file 1955 \ No newline at end of file
utils/LoadMore.js
@@ -59,52 +59,49 @@ var e = function() { @@ -59,52 +59,49 @@ var e = function() {
59 var n = !0; 59 var n = !0;
60 60
61 var i, r = s.data.listName, l = s.data.resultName, d = s.data.resultListName; 61 var i, r = s.data.listName, l = s.data.resultName, d = s.data.resultListName;
62 - i = "" != r ? t.data.data[r] : t.data.data.pageData; //data.pageData是接口固定会出现的,封装好了 62 + i = "" != r ? t.data.data[r] : (t.data.data && t.data.data.pageData?t.data.data.pageData:null); //data.pageData是接口固定会出现的,封装好了
63 var u = !1, g = null, c = s.data.page; 63 var u = !1, g = null, c = s.data.page;
64 64
65 - console.log('loadmore');  
66 - console.log(t.data.data.pageData);  
67 - console.log(c );  
68 -  
69 //如果已经的第二页的时候,就是把数据加入数组 65 //如果已经的第二页的时候,就是把数据加入数组
70 if (c !=undefined && c.data[l]) { 66 if (c !=undefined && c.data[l]) {
71 u = !0; 67 u = !0;
72 var f = null; 68 var f = null;
73 f = "" != d ? c.data[l][d] : c.data[l], [].push.apply(f, i), g = c.data[l]; 69 f = "" != d ? c.data[l][d] : c.data[l], [].push.apply(f, i), g = c.data[l];
74 - } else g = t.data.data.pageData; 70 + } else g = (t.data.data && t.data.data.pageData?t.data.data.pageData:null);
75 71
76 72
77 //格式化 73 //格式化
78 var glist=""; 74 var glist="";
79 -  
80 - for (var ii = 0; ii < g.length; ii++) {  
81 - //if(g[i].prom_type == 1 || g[i].prom_type == 2 || g[i].prom_type == 6) {  
82 - if (g[ii].prom_type && g[ii].prom_type == 1) {  
83 - glist += g[ii].goods_id+",";  
84 - }  
85 - if (g[ii].original_img!=undefined){  
86 - if (g[ii].original_img.indexOf(oo.imghost)==-1)  
87 - g[ii].original_img = oo.imghost + g[ii].original_img;  
88 - }  
89 -  
90 - if (g[ii].add_time != undefined && rurl.indexOf("goodscollect")<0){  
91 - var tx = g[ii].add_time + "";  
92 - if (tx.indexOf('-') == -1) {  
93 - g[ii].add_time = ut.formatTime(g[ii].add_time, 'yyyy-MM-dd hh:mm:ss'); 75 + if(g) {
  76 + for (var ii = 0; ii < g.length; ii++) {
  77 + //if(g[i].prom_type == 1 || g[i].prom_type == 2 || g[i].prom_type == 6) {
  78 + if (g[ii].prom_type && g[ii].prom_type == 1) {
  79 + glist += g[ii].goods_id + ",";
  80 + }
  81 + if (g[ii].original_img != undefined) {
  82 + if (g[ii].original_img.indexOf(oo.imghost) == -1)
  83 + g[ii].original_img = oo.imghost + g[ii].original_img;
  84 + }
  85 +
  86 + if (g[ii].add_time != undefined && rurl.indexOf("goodscollect") < 0) {
  87 + var tx = g[ii].add_time + "";
  88 + if (tx.indexOf('-') == -1) {
  89 + g[ii].add_time = ut.formatTime(g[ii].add_time, 'yyyy-MM-dd hh:mm:ss');
  90 + }
  91 + }
  92 + if (rurl.indexOf('comment/page') != -1) {
  93 + console.log('comment/page');
  94 + console.log(g[ii].img);
  95 + var tx1 = g[ii].img;
  96 +
  97 + if (tx1 != "" && tx1 != null && ut.isString(tx1)) {
  98 + var arr = ut.unserialize(tx1);
  99 + g[ii].img = arr;
  100 + } else if (!ut.isArray(tx1)) {
  101 + g[ii].img = "";
  102 + }
  103 + }
94 } 104 }
95 - }  
96 - if (rurl.indexOf('comment/page')!=-1){  
97 - console.log('comment/page');  
98 - console.log(g[ii].img);  
99 - var tx1 = g[ii].img;  
100 -  
101 - if (tx1 != "" && tx1 != null && ut.isString(tx1)){  
102 - var arr = ut.unserialize(tx1);  
103 - g[ii].img=arr;  
104 - } else if (!ut.isArray(tx1)){  
105 - g[ii].img="";  
106 - }  
107 - }  
108 } 105 }
109 106
110 107