Merged
Merge Request #362 · created by 后端研发-苏明海


Dev


From dev into test

Merged by 后端研发-苏明海

1 participants


pages/goods/goodsInfo/goodsInfo.js
@@ -219,6 +219,7 @@ Page({ @@ -219,6 +219,7 @@ Page({
219 new_user: 0, //新用户 219 new_user: 0, //新用户
220 220
221 def_pick_store: null, // 默认的门店 221 def_pick_store: null, // 默认的门店
  222 + fir_def_store:null, //客户默认的门店的
222 lat: null, //维度 223 lat: null, //维度
223 lon: null, //经度 224 lon: null, //经度
224 225
@@ -233,11 +234,13 @@ Page({ @@ -233,11 +234,13 @@ Page({
233 is_collect_load:0, //是不是处理 234 is_collect_load:0, //是不是处理
234 is_newsales_rules:0, //是否开启最新的门店规则,此时会新读门店,当点击选择门店时会触发读取线下库存 235 is_newsales_rules:0, //是否开启最新的门店规则,此时会新读门店,当点击选择门店时会触发读取线下库存
235 sales_rules:1, //默认是线上销售 236 sales_rules:1, //默认是线上销售
  237 +
  238 + wait_for_user_store:null,
  239 +
236 }, 240 },
237 241
238 //------初始化加载---------- 242 //------初始化加载----------
239 onLoad: function(t) { 243 onLoad: function(t) {
240 -  
241 wx.setNavigationBarTitle({ 244 wx.setNavigationBarTitle({
242 title: "商品详情", 245 title: "商品详情",
243 }) 246 })
@@ -297,7 +300,6 @@ Page({ @@ -297,7 +300,6 @@ Page({
297 //---如果后台又开等级卡的开关--- 300 //---如果后台又开等级卡的开关---
298 if(sw_arr.rank_switch && sw_arr.rank_switch=="2"){ 301 if(sw_arr.rank_switch && sw_arr.rank_switch=="2"){
299 th.setData({rank_switch:true}); 302 th.setData({rank_switch:true});
300 -  
301 //---回调卡的列表--- 303 //---回调卡的列表---
302 th.getPlusCardType(function(ob){ 304 th.getPlusCardType(function(ob){
303 th.setData({card_list:ob.card_list}); 305 th.setData({card_list:ob.card_list});
@@ -346,38 +348,38 @@ Page({ @@ -346,38 +348,38 @@ Page({
346 clearInterval(w_time); 348 clearInterval(w_time);
347 var distance = null; 349 var distance = null;
348 var e=JSON.parse(JSON.stringify(ee)); 350 var e=JSON.parse(JSON.stringify(ee));
349 -  
350 351
351 //如果有开启近距离的话,同时距离优不一样了 352 //如果有开启近距离的话,同时距离优不一样了
352 if (that.data.lat != null) { 353 if (that.data.lat != null) {
353 //如果经纬度有变化的话 354 //如果经纬度有变化的话
354 if( appd.lat==that.data.lat && appd.lon==that.data.lon && e.distance>0 ){ 355 if( appd.lat==that.data.lat && appd.lon==that.data.lon && e.distance>0 ){
  356 + that.data.fir_def_store=e;
355 that.setData({ 357 that.setData({
356 def_pick_store: e, 358 def_pick_store: e,
357 sto_sele_name: e.pickup_name, 359 sto_sele_name: e.pickup_name,
358 sto_sele_id: e.pickup_id, 360 sto_sele_id: e.pickup_id,
359 sto_sele_distr: e.distr_type 361 sto_sele_distr: e.distr_type
360 }) 362 })
361 - }else{  
362 - //要用接口是获取距离,js的计算不准  
363 - getApp().request.get("/api/weshop/pickup/list",{  
364 - data:{store_id:os.stoid,pickup_id:e.pickup_id,lat:th.data.lat,lon: th.data.lon},  
365 - success:function (res) {  
366 - if(res.data.code==0){  
367 - e=res.data.data.pageData[0];  
368 - if (e){  
369 - appd.pk_store=e;  
370 - that.setData({  
371 - def_pick_store: e,  
372 - sto_sele_name: e.pickup_name,  
373 - sto_sele_id: e.pickup_id,  
374 - sto_sele_distr: e.distr_type  
375 - })  
376 - }  
377 -  
378 - }  
379 - }  
380 - }) 363 + }else{
  364 + //要用接口是获取距离,js的计算不准
  365 + getApp().request.promiseGet("/api/weshop/pickup/list",{
  366 + data:{store_id:os.stoid,pickup_id:e.pickup_id,lat:th.data.lat,lon: th.data.lon},
  367 + }).then(res=>{
  368 + if(res.data.code==0){
  369 + e=res.data.data.pageData[0];
  370 + if (e){
  371 + appd.pk_store=e;
  372 + that.data.fir_def_store=e;
  373 + that.setData({
  374 + def_pick_store: e,
  375 + sto_sele_name: e.pickup_name,
  376 + sto_sele_id: e.pickup_id,
  377 + sto_sele_distr: e.distr_type
  378 + })
  379 + }
  380 +
  381 + }
  382 + })
381 } 383 }
382 384
383 //e.distance = distance; 385 //e.distance = distance;
@@ -387,18 +389,16 @@ Page({ @@ -387,18 +389,16 @@ Page({
387 }else{ 389 }else{
388 if (e) { 390 if (e) {
389 e.distance = null; 391 e.distance = null;
  392 + that.data.fir_def_store=e;
390 that.setData({ 393 that.setData({
391 def_pick_store: e, 394 def_pick_store: e,
392 sto_sele_name: e.pickup_name, 395 sto_sele_name: e.pickup_name,
393 sto_sele_id: e.pickup_id, 396 sto_sele_id: e.pickup_id,
394 sto_sele_distr: e.distr_type 397 sto_sele_distr: e.distr_type
395 }) 398 })
396 - }  
397 -  
398 - 399 + }
399 } 400 }
400 -  
401 - 401 +
402 }, 500) 402 }, 500)
403 }); 403 });
404 404
@@ -549,7 +549,7 @@ Page({ @@ -549,7 +549,7 @@ Page({
549 549
550 //---展示--- 550 //---展示---
551 onShow: function() { 551 onShow: function() {
552 - var goods_list = null,th = this; 552 + var goods_list = null,th = this,that=this;
553 var ui = setInterval(function () { 553 var ui = setInterval(function () {
554 goods_list = th.selectComponent("#goods_list"); 554 goods_list = th.selectComponent("#goods_list");
555 if (goods_list) { 555 if (goods_list) {
@@ -626,10 +626,49 @@ Page({ @@ -626,10 +626,49 @@ Page({
626 626
627 627
628 //获取统一条形码,普通商品和优惠促销的商品 628 //获取统一条形码,普通商品和优惠促销的商品
629 - if (ee.data.data.prom_type == 0 || ee.data.data.prom_type == 2 || ee.data.data.prom_type == 3 || ee.data.data.prom_type == 4 || ee.data.data.prom_type == 5){  
630 -  
631 - //获取门店  
632 - ee.get_sto(); 629 + if (ee.data.data.prom_type == 0 || ee.data.data.prom_type == 2 || ee.data.data.prom_type == 3 || ee.data.data.prom_type == 4 || ee.data.data.prom_type == 5){
  630 + //默认门店要拿下门店库存
  631 + if(that.data.sales_rules==2 && that.data.is_newsales_rules){
  632 + //--等待某个值只运行---,这里有可能因为导航的时间太久,而不能计算门店库存
  633 + getApp().waitfor2(that,"wait_for_user_store","fir_def_store",function(){
  634 + if(th.data.fir_def_store){
  635 + var lock=0,plist=null;
  636 + //先读取门店的lock,采用链式写法,少用await
  637 + getApp().request.promiseGet("/api/weshop/order/ware/lock/page",{
  638 + data:{store_id:os.stoid,wareId:ee.data.data.goods_id,storageId:that.data.fir_def_store.pickup_id}
  639 + }).then(res=>{
  640 + if(res.data.code==0 && res.data.data.total>0){
  641 + for(var i in res.data.data.pageData)
  642 + lock+=res.data.data.pageData[i].outQty
  643 + }
  644 + //---通过接口获取门店的线下库存信息--
  645 + return getApp().request.promiseGet("/api/weshop/goods/getWareStorages",{
  646 + data:{storageNos:that.data.fir_def_store.pickup_no,wareIds:encodeURIComponent(th.data.data.erpwareid),storeId:os.stoid}
  647 + })
  648 + }).then(res=>{
  649 + if(res.data.code==0 && res.data.data.total>0){
  650 + plist=res.data.data.pageData[0];
  651 + }
  652 + if(plist && plist.CanOutQty-lock>0){
  653 + that.data.fir_def_store.CanOutQty=plist.CanOutQty-lock;
  654 + }else{
  655 + that.data.fir_def_store.CanOutQty=0;
  656 + }
  657 + //--给门店赋值线下库存--
  658 + th.setData({def_pick_store:that.data.fir_def_store});
  659 + //获取门店
  660 + ee.get_sto();
  661 + })
  662 + }else{
  663 + //--获取门店--
  664 + ee.get_sto();
  665 + }
  666 + })
  667 + }else{
  668 + //获取门店
  669 + ee.get_sto();
  670 + }
  671 +
633 ee.get_sku(o.stoid, t.data.data.sku, gid); 672 ee.get_sku(o.stoid, t.data.data.sku, gid);
634 } 673 }
635 else { 674 else {
@@ -1453,6 +1492,7 @@ Page({ @@ -1453,6 +1492,7 @@ Page({
1453 1492
1454 //-----------选择属性的按钮事件---------- 1493 //-----------选择属性的按钮事件----------
1455 sele_spec: function(e) { 1494 sele_spec: function(e) {
  1495 + var that=this,ee=this,th=this;
1456 var gid = e.currentTarget.dataset.gid; 1496 var gid = e.currentTarget.dataset.gid;
1457 var sku_g = this.data.sku_g; 1497 var sku_g = this.data.sku_g;
1458 var item = null; 1498 var item = null;
@@ -1466,7 +1506,37 @@ Page({ @@ -1466,7 +1506,37 @@ Page({
1466 sele_g: item, 1506 sele_g: item,
1467 gid: gid 1507 gid: gid
1468 }); 1508 });
1469 - this.get_sto(); 1509 +
  1510 + this.get_sto();
  1511 + //默认门店要拿下门店库存
  1512 + if(that.data.sales_rules==2 && that.data.def_pick_store){
  1513 + var lock=0,plist=null;
  1514 + //先读取门店的lock,采用链式写法,少用await
  1515 + getApp().request.promiseGet("/api/weshop/order/ware/lock/page",{
  1516 + data:{store_id:os.stoid,wareId:ee.data.sele_g.goods_id,storageId:that.data.def_pick_store.pickup_id}
  1517 + }).then(res=>{
  1518 + if(res.data.code==0 && res.data.data.total>0){
  1519 + for(var i in res.data.data.pageData)
  1520 + lock+=res.data.data.pageData[i].outQty
  1521 + }
  1522 + //---通过接口获取门店的线下库存信息--
  1523 + return getApp().request.promiseGet("/api/weshop/goods/getWareStorages",{
  1524 + data:{storageNos:that.data.def_pick_store.pickup_no,wareIds:encodeURIComponent(th.data.sele_g.erpwareid),storeId:os.stoid}
  1525 + })
  1526 + }).then(res=>{
  1527 + if(res.data.code==0 && res.data.data.total>0){
  1528 + plist=res.data.data.pageData[0];
  1529 + }
  1530 + if(plist && plist.CanOutQty-lock>0){
  1531 + that.data.def_pick_store.CanOutQty=plist.CanOutQty-lock;
  1532 + }else{
  1533 + that.data.def_pick_store.CanOutQty=0;
  1534 + }
  1535 + //--给门店赋值线下库存--
  1536 + th.setData({def_pick_store:that.data.def_pick_store});
  1537 + })
  1538 + }
  1539 +
1470 1540
1471 this.sele_spec_chech_activity(); 1541 this.sele_spec_chech_activity();
1472 }, 1542 },
@@ -1521,7 +1591,7 @@ Page({ @@ -1521,7 +1591,7 @@ Page({
1521 1591
1522 //---------拿出门店分类和门店------------ 1592 //---------拿出门店分类和门店------------
1523 get_sto(e) { 1593 get_sto(e) {
1524 - var th = this; 1594 + var th = this,that=this;
1525 var timer_get = setInterval(function() { 1595 var timer_get = setInterval(function() {
1526 if (th.data.is_get_local_ok == 0) return false; 1596 if (th.data.is_get_local_ok == 0) return false;
1527 var dd = null, 1597 var dd = null,
@@ -1562,6 +1632,7 @@ Page({ @@ -1562,6 +1632,7 @@ Page({
1562 sto_sele_id: e.data.data.pageData[0].pickup_id, 1632 sto_sele_id: e.data.data.pageData[0].pickup_id,
1563 sto_sele_distr: e.data.data.pageData[0].distr_type 1633 sto_sele_distr: e.data.data.pageData[0].distr_type
1564 }); 1634 });
  1635 + th.data.fir_def_store=e.data.data.pageData[0];
1565 } 1636 }
1566 1637
1567 //-- 如果有默认选择门店的时候,要把默认门店放在第一位 -- 1638 //-- 如果有默认选择门店的时候,要把默认门店放在第一位 --
@@ -1599,7 +1670,7 @@ Page({ @@ -1599,7 +1670,7 @@ Page({
1599 var th=this; 1670 var th=this;
1600 //单总量超出5个的时候 1671 //单总量超出5个的时候
1601 if (e.data.data.total > 5) { 1672 if (e.data.data.total > 5) {
1602 - i.get("/api/weshop/storagecategory/page", { 1673 + getApp().request.get("/api/weshop/storagecategory/page", {
1603 data: { 1674 data: {
1604 store_id: o.stoid, 1675 store_id: o.stoid,
1605 is_show: 1, 1676 is_show: 1,
@@ -1780,10 +1851,11 @@ Page({ @@ -1780,10 +1851,11 @@ Page({
1780 o_plist[kk].CanOutQty=n_item.CanOutQty-lock_num; 1851 o_plist[kk].CanOutQty=n_item.CanOutQty-lock_num;
1781 new_list.push(o_plist[kk]); 1852 new_list.push(o_plist[kk]);
1782 //如果找到默认门店 1853 //如果找到默认门店
1783 - if(def_pick_store && n_item.StorageNo==def_pick_store.pickup_no){  
1784 - def_pick_store.CanOutQty=n_item.CanOutQty-lock_num;  
1785 - th.setData({def_pick_store:def_pick_store})  
1786 - is_find_def_store=1; 1854 + if(n_item.StorageNo==th.data.fir_def_store.pickup_no){
  1855 + th.data.fir_def_store.CanOutQty=n_item.CanOutQty-lock_num;
  1856 + if(def_pick_store.pickup_id==th.data.fir_def_store.pickup_id)
  1857 + th.setData({def_pick_store:th.data.fir_def_store})
  1858 + is_find_def_store=1;
1787 } 1859 }
1788 } 1860 }
1789 break; 1861 break;
@@ -1794,14 +1866,21 @@ Page({ @@ -1794,14 +1866,21 @@ Page({
1794 //数据组装下 1866 //数据组装下
1795 var em={};em.data={};em.data.data={}; 1867 var em={};em.data={};em.data.data={};
1796 em.data.data.total=new_list.length; 1868 em.data.data.total=new_list.length;
1797 - em.data.data.pageData=new_list;  
1798 - 1869 + em.data.data.pageData=new_list;
  1870 +
  1871 + if(th.data.fir_def_store && !is_find_def_store){
  1872 + th.data.fir_def_store.CanOutQty=0;
  1873 + //--当选择的门店是客户默认的门店的时候--
  1874 + if(th.data.fir_def_store.pickup_id==th.data.def_pick_store.pickup_id) {
  1875 + th.setData({def_pick_store:th.data.fir_def_store});
  1876 + em.data.data.pageData.unshift(th.data.def_pick_store);
  1877 + }else{
  1878 + em.data.data.pageData.splice(1,0,th.data.fir_def_store);
  1879 + }
  1880 + }
  1881 +
1799 //---把数组组装进去--- 1882 //---把数组组装进去---
1800 - th.deal_pickup(em);  
1801 - if(th.data.def_pick_store && !is_find_def_store){  
1802 - th.setData({def_pick_store:null});  
1803 - }  
1804 - 1883 + th.deal_pickup(em);
1805 }else{ 1884 }else{
1806 th.setData({def_pick_store:null,all_sto:null,only_pk:null}) 1885 th.setData({def_pick_store:null,all_sto:null,only_pk:null})
1807 } 1886 }
@@ -2172,7 +2251,7 @@ Page({ @@ -2172,7 +2251,7 @@ Page({
2172 t.data.data.ct_rylist = JSON.parse(t.data.data.ct_rylist); 2251 t.data.data.ct_rylist = JSON.parse(t.data.data.ct_rylist);
2173 var max_num = 0; 2252 var max_num = 0;
2174 t.data.data.ct_rylist.forEach(function(val, ind) { 2253 t.data.data.ct_rylist.forEach(function(val, ind) {
2175 - if (val.rynum > max_num) max_num = val.rynum; 2254 + if (parseInt(val.rynum) > max_num) max_num = parseInt(val.rynum);
2176 }) 2255 })
2177 t.data.data.max_ct_num = max_num; 2256 t.data.data.max_ct_num = max_num;
2178 } 2257 }
@@ -3405,7 +3484,7 @@ Page({ @@ -3405,7 +3484,7 @@ Page({
3405 // 选择门店 3484 // 选择门店
3406 choice_store: function(ee) { 3485 choice_store: function(ee) {
3407 var th = this; 3486 var th = this;
3408 - //var ind=ee.currentTarget.dataset.ind; 3487 + var ind=ee.currentTarget.dataset.ind;
3409 var bconfig = th.data.bconfig; 3488 var bconfig = th.data.bconfig;
3410 3489
3411 if(!th.data.only_pk && !th.data.def_pickpu_list){ 3490 if(!th.data.only_pk && !th.data.def_pickpu_list){
@@ -3461,25 +3540,63 @@ Page({ @@ -3461,25 +3540,63 @@ Page({
3461 th.get_sto(); 3540 th.get_sto();
3462 } 3541 }
3463 3542
3464 -  
3465 -  
3466 -  
3467 - this.setData({  
3468 - //open_ind_store: ind,  
3469 - store: 1,  
3470 - openSpecModal: !1,  
3471 - openSpecModal_pt: !1  
3472 - }) 3543 + if(ind!=undefined && ind!=null ){
  3544 + this.setData({
  3545 + open_ind_store: ind,
  3546 + store: 1,
  3547 + openSpecModal: !1,
  3548 + openSpecModal_pt: !1
  3549 + })
  3550 + }else{
  3551 + this.setData({
  3552 + store: 1,
  3553 + openSpecModal: !1,
  3554 + openSpecModal_pt: !1
  3555 + })
  3556 + }
3473 }, 3557 },
3474 //关闭选择门店 3558 //关闭选择门店
3475 close_popup: function(e) { 3559 close_popup: function(e) {
3476 - 3560 + var th=this;
3477 this.setData({ 3561 this.setData({
3478 store: 0, 3562 store: 0,
3479 choice_sort_store: 0, 3563 choice_sort_store: 0,
3480 - sort_store: 0 3564 + sort_store: 0,
  3565 + fir_pick_index:0,
  3566 + sec_pick_index:0
3481 }) 3567 })
  3568 +
  3569 + var openindstore=this.data.open_ind_store;
  3570 + if (openindstore == 1) {
  3571 + th.setData({
  3572 + openSpecModal: !0,
  3573 + openSpecModal_ind: openindstore,
  3574 + });
  3575 + } else if (openindstore == 2) {
  3576 + th.setData({
  3577 + openSpecModal: !0,
  3578 + openSpecModal_ind: openindstore,
  3579 + });
  3580 + }
  3581 + else if (openindstore == 4) { //4就是拼团
  3582 + th.setData({
  3583 + openSpecModal_pt: 1, //打开拼团购买界面
  3584 + store: 0, //关闭门店
  3585 + choice_sort_store: 0, //关闭门店2级
  3586 + sort_store: 0, //关闭门店2级
  3587 + });
  3588 + }
  3589 + else {
  3590 + th.setData({
  3591 + store: 0,
  3592 + choice_sort_store: 0,
  3593 + sort_store: 0
  3594 + })
  3595 + }
  3596 +
  3597 +
3482 }, 3598 },
  3599 +
3483 //选择更多门店 3600 //选择更多门店
3484 more_store: function() { 3601 more_store: function() {
3485 this.setData({ 3602 this.setData({
@@ -3509,19 +3626,18 @@ Page({ @@ -3509,19 +3626,18 @@ Page({
3509 sec_pick_index: 0 3626 sec_pick_index: 0
3510 }); 3627 });
3511 }, 3628 },
  3629 +
3512 choose_for_store_fir: function(e) { 3630 choose_for_store_fir: function(e) {
3513 var index_c = e.currentTarget.dataset.ind; 3631 var index_c = e.currentTarget.dataset.ind;
3514 - var th=this;  
3515 - this.check_the_pick(index_c,function(){  
3516 - th.setData({  
3517 - fir_pick_index: index_c  
3518 - })  
3519 - })  
3520 - 3632 + var th=this;
  3633 + th.setData({
  3634 + fir_pick_index: index_c
  3635 + })
  3636 +
3521 }, 3637 },
3522 3638
3523 //如果开启线下库存,已经急速库存才会使用 3639 //如果开启线下库存,已经急速库存才会使用
3524 - async check_the_pick(index,func){ 3640 + async check_the_pick(item,func){
3525 var th=this; 3641 var th=this;
3526 var goodsinfo=th.data.sele_g; 3642 var goodsinfo=th.data.sele_g;
3527 var erpwareid=goodsinfo.erpwareid; 3643 var erpwareid=goodsinfo.erpwareid;
@@ -3535,18 +3651,8 @@ Page({ @@ -3535,18 +3651,8 @@ Page({
3535 3651
3536 if(this.data.sales_rules!=2 && this.data.is_newsales_rules!=1){ 3652 if(this.data.sales_rules!=2 && this.data.is_newsales_rules!=1){
3537 func(); 3653 func();
3538 - }else{  
3539 - var item=null;  
3540 - if (th.data.choice_sort_store == 0) {  
3541 - if (th.data.is_show_sto_cat == 1) {  
3542 - item = th.data.def_pickpu_list[index];  
3543 - } else {  
3544 - item = th.data.only_pk[index]; //当没有门店分类的时候  
3545 - }  
3546 - } else {  
3547 - item = th.data.sec_sto.s_arr[index];  
3548 - }  
3549 - 3654 + }else{
  3655 +
3550 //先读取门店的lock 3656 //先读取门店的lock
3551 await getApp().request.promiseGet("/api/weshop/order/ware/lock/page",{ 3657 await getApp().request.promiseGet("/api/weshop/order/ware/lock/page",{
3552 data:{store_id:os.stoid,wareId:goodsinfo.goods_id,storageId:item.pickup_id} 3658 data:{store_id:os.stoid,wareId:goodsinfo.goods_id,storageId:item.pickup_id}
@@ -3555,8 +3661,7 @@ Page({ @@ -3555,8 +3661,7 @@ Page({
3555 for(var i in res.data.data.pageData ) 3661 for(var i in res.data.data.pageData )
3556 lock+=res.data.data.pageData[i].outQty; 3662 lock+=res.data.data.pageData[i].outQty;
3557 } 3663 }
3558 - })  
3559 - 3664 + })
3560 //读取线下的门店库存 3665 //读取线下的门店库存
3561 await getApp().request.promiseGet("/api/weshop/goods/getWareStorages",{ 3666 await getApp().request.promiseGet("/api/weshop/goods/getWareStorages",{
3562 data:{storageNos:item.pickup_no,wareIds:encodeURIComponent(erpwareid),storeId:os.stoid} 3667 data:{storageNos:item.pickup_no,wareIds:encodeURIComponent(erpwareid),storeId:os.stoid}
@@ -3567,6 +3672,7 @@ Page({ @@ -3567,6 +3672,7 @@ Page({
3567 }) 3672 })
3568 3673
3569 if(plist && plist.CanOutQty-lock>0){ 3674 if(plist && plist.CanOutQty-lock>0){
  3675 + item.CanOutQty=plist.CanOutQty-lock;
3570 func(); 3676 func();
3571 return false; 3677 return false;
3572 } 3678 }
@@ -3594,144 +3700,142 @@ Page({ @@ -3594,144 +3700,142 @@ Page({
3594 var index = th.data.sec_pick_index; 3700 var index = th.data.sec_pick_index;
3595 item = th.data.sec_sto.s_arr[index]; 3701 item = th.data.sec_sto.s_arr[index];
3596 } 3702 }
3597 - th.setData({  
3598 - def_pick_store: item,  
3599 - sto_sele_name: item.pickup_name,  
3600 - sto_sele_id: item.pickup_id,  
3601 - sto_sele_distr: item.distr_type,  
3602 - store: 0,  
3603 - choice_sort_store: 0,  
3604 - fir_pick_index: 0  
3605 - });  
3606 -  
3607 - if (openindstore == 1) {  
3608 - th.setData({  
3609 - openSpecModal: !0,  
3610 - openSpecModal_ind: openindstore,  
3611 - });  
3612 - } else if (openindstore == 2) {  
3613 - th.setData({  
3614 - openSpecModal: !0,  
3615 - openSpecModal_ind: openindstore,  
3616 - });  
3617 - }  
3618 - else if (openindstore == 4) { //4就是拼团  
3619 - th.setData({  
3620 - openSpecModal_pt: 1, //打开拼团购买界面  
3621 - store: 0, //关闭门店  
3622 - choice_sort_store: 0, //关闭门店2级  
3623 - sort_store: 0, //关闭门店2级  
3624 - });  
3625 - }  
3626 -  
3627 - else {  
3628 - th.setData({  
3629 - store: 0,  
3630 - choice_sort_store: 0,  
3631 - sort_store: 0  
3632 - })  
3633 - }  
3634 - 3703 +
  3704 + //--回调函数的用法--
  3705 + th.check_the_pick(item,function(){
  3706 + th.setData({
  3707 + def_pick_store: item,
  3708 + sto_sele_name: item.pickup_name,
  3709 + sto_sele_id: item.pickup_id,
  3710 + sto_sele_distr: item.distr_type,
  3711 + store: 0,
  3712 + choice_sort_store: 0,
  3713 + fir_pick_index: 0
  3714 + });
  3715 +
  3716 + if (openindstore == 1) {
  3717 + th.setData({
  3718 + openSpecModal: !0,
  3719 + openSpecModal_ind: openindstore,
  3720 + });
  3721 + } else if (openindstore == 2) {
  3722 + th.setData({
  3723 + openSpecModal: !0,
  3724 + openSpecModal_ind: openindstore,
  3725 + });
  3726 + }
  3727 + else if (openindstore == 4) { //4就是拼团
  3728 + th.setData({
  3729 + openSpecModal_pt: 1, //打开拼团购买界面
  3730 + store: 0, //关闭门店
  3731 + choice_sort_store: 0, //关闭门店2级
  3732 + sort_store: 0, //关闭门店2级
  3733 + });
  3734 + }
  3735 + else {
  3736 + th.setData({
  3737 + store: 0,
  3738 + choice_sort_store: 0,
  3739 + sort_store: 0
  3740 + })
  3741 + }
  3742 + })
3635 }, 3743 },
3636 //---点击二级之后的选择--- 3744 //---点击二级之后的选择---
3637 choose_for_store: function(e) { 3745 choose_for_store: function(e) {
3638 var index_c = e.currentTarget.dataset.ind; 3746 var index_c = e.currentTarget.dataset.ind;
3639 - var th=this;  
3640 - th.check_the_pick(index_c,function(){  
3641 - th.setData({ 3747 + var th=this;
  3748 + th.setData({
3642 sec_pick_index: index_c, 3749 sec_pick_index: index_c,
3643 fir_pick_index: index_c 3750 fir_pick_index: index_c
3644 - })  
3645 - }) 3751 + })
  3752 +
3646 }, 3753 },
3647 //把选择的门店设置成默认的门店def_pick 3754 //把选择的门店设置成默认的门店def_pick
3648 set_def_pick: function(e) { 3755 set_def_pick: function(e) {
3649 var th = this; 3756 var th = this;
3650 var item = null; 3757 var item = null;
3651 -  
3652 if (th.data.choice_sort_store == 0) { 3758 if (th.data.choice_sort_store == 0) {
3653 -  
3654 var index = th.data.fir_pick_index; 3759 var index = th.data.fir_pick_index;
3655 -  
3656 if (th.data.is_show_sto_cat == 1) { 3760 if (th.data.is_show_sto_cat == 1) {
3657 item = th.data.def_pickpu_list[index]; 3761 item = th.data.def_pickpu_list[index];
3658 } else { 3762 } else {
3659 item = th.data.only_pk[index]; //当没有门店分类的时候 3763 item = th.data.only_pk[index]; //当没有门店分类的时候
3660 -  
3661 } 3764 }
3662 } else { 3765 } else {
3663 var index = th.data.sec_pick_index; 3766 var index = th.data.sec_pick_index;
3664 item = th.data.sec_sto.s_arr[index]; 3767 item = th.data.sec_sto.s_arr[index];
3665 } 3768 }
3666 -  
3667 - var store_id = o.stoid;  
3668 - var user_id = getApp().globalData.user_id;  
3669 - var def_pickup_id = item.pickup_id;  
3670 -  
3671 - getApp().request.put('/api/weshop/users/update', {  
3672 - data: {  
3673 - user_id,  
3674 - def_pickup_id  
3675 - },  
3676 - success: function(res) {  
3677 - if (res.data.code == 0) {  
3678 - if (th.data.choice_sort_store == 0) th.setData({  
3679 - fir_pick_index: 0  
3680 - });  
3681 - getApp().globalData.pk_store = item;  
3682 - } else {  
3683 - //s.showWarning("设置默认门店地址失败", null, 500, !1);  
3684 - getApp().my_warnning("设置默认门店地址失败",0,th)  
3685 - }  
3686 -  
3687 - }  
3688 - });  
3689 -  
3690 - th.setData({  
3691 - def_pick_store: item,  
3692 - sto_sele_name: item.pickup_name,  
3693 - sto_sele_id: item.pickup_id,  
3694 - sto_sele_distr: item.distr_type,  
3695 - store: 0,  
3696 - choice_sort_store: 0  
3697 - });  
3698 -  
3699 -  
3700 - var openindstore = th.data.open_ind_store;  
3701 - if (openindstore == 1) {  
3702 - th.setData({  
3703 - openSpecModal: !0,  
3704 - openSpecModal_ind: openindstore,  
3705 - store: 0,  
3706 - choice_sort_store: 0,  
3707 - sort_store: 0,  
3708 - });  
3709 - } else if (openindstore == 2) {  
3710 - th.setData({  
3711 - openSpecModal: !0,  
3712 - openSpecModal_ind: openindstore,  
3713 - store: 0,  
3714 - choice_sort_store: 0,  
3715 - sort_store: 0,  
3716 - });  
3717 - }  
3718 - else if (openindstore == 4) { //4就是拼团  
3719 - th.setData({  
3720 - openSpecModal_pt: 1, //打开拼团购买界面  
3721 - store: 0, //关闭门店  
3722 - choice_sort_store: 0, //关闭门店2级  
3723 - sort_store: 0, //关闭门店2级  
3724 - });  
3725 - }  
3726 -  
3727 - else {  
3728 - th.setData({  
3729 - store: 0,  
3730 - choice_sort_store: 0,  
3731 - sort_store: 0,  
3732 - })  
3733 - }  
3734 - 3769 +
  3770 + //先设置之前,要判断是不是有库存
  3771 + th.check_the_pick(item,function(){
  3772 + var store_id = o.stoid;
  3773 + var user_id = getApp().globalData.user_id;
  3774 + var def_pickup_id = item.pickup_id;
  3775 +
  3776 + getApp().request.put('/api/weshop/users/update', {
  3777 + data: {
  3778 + user_id,
  3779 + def_pickup_id
  3780 + },
  3781 + success: function(res) {
  3782 + if (res.data.code == 0) {
  3783 + if (th.data.choice_sort_store == 0) th.setData({
  3784 + fir_pick_index: 0
  3785 + });
  3786 + getApp().globalData.pk_store = item;
  3787 + } else {
  3788 + //s.showWarning("设置默认门店地址失败", null, 500, !1);
  3789 + getApp().my_warnning("设置默认门店地址失败",0,th)
  3790 + }
  3791 +
  3792 + }
  3793 + });
  3794 +
  3795 + th.setData({
  3796 + def_pick_store: item,
  3797 + sto_sele_name: item.pickup_name,
  3798 + sto_sele_id: item.pickup_id,
  3799 + sto_sele_distr: item.distr_type,
  3800 + store: 0,
  3801 + choice_sort_store: 0
  3802 + });
  3803 +
  3804 + var openindstore = th.data.open_ind_store;
  3805 + if (openindstore == 1) {
  3806 + th.setData({
  3807 + openSpecModal: !0,
  3808 + openSpecModal_ind: openindstore,
  3809 + store: 0,
  3810 + choice_sort_store: 0,
  3811 + sort_store: 0,
  3812 + });
  3813 + } else if (openindstore == 2) {
  3814 + th.setData({
  3815 + openSpecModal: !0,
  3816 + openSpecModal_ind: openindstore,
  3817 + store: 0,
  3818 + choice_sort_store: 0,
  3819 + sort_store: 0,
  3820 + });
  3821 + }
  3822 + else if (openindstore == 4) { //4就是拼团
  3823 + th.setData({
  3824 + openSpecModal_pt: 1, //打开拼团购买界面
  3825 + store: 0, //关闭门店
  3826 + choice_sort_store: 0, //关闭门店2级
  3827 + sort_store: 0, //关闭门店2级
  3828 + });
  3829 + }
  3830 +
  3831 + else {
  3832 + th.setData({
  3833 + store: 0,
  3834 + choice_sort_store: 0,
  3835 + sort_store: 0,
  3836 + })
  3837 + }
  3838 + })
3735 }, 3839 },
3736 3840
3737 wait_for_store_config: function() { 3841 wait_for_store_config: function() {
pages/goods/goodsInfo/goodsInfo.wxml
@@ -404,7 +404,15 @@ @@ -404,7 +404,15 @@
404 距离:{{def_pick_store.distance>1000?filters.toFix(def_pick_store.distance/1000,2)+"km":filters.toFix(def_pick_store.distance,0)+"m"}} 404 距离:{{def_pick_store.distance>1000?filters.toFix(def_pick_store.distance/1000,2)+"km":filters.toFix(def_pick_store.distance,0)+"m"}}
405 405
406 </view> 406 </view>
407 - </view> 407 + </view>
  408 + <view class="no_store" wx:if="{{only_pk && !only_pk.length}}">(库存不足)</view>
  409 + <block wx:else>
  410 + <view class="no_store" wx:if="{{def_pickpu_list && !def_pickpu_list.length}}">(库存不足)</view>
  411 + <block wx:else>
  412 + <view class="no_store" wx:if="{{def_pick_store && !def_pick_store.CanOutQty && sales_rules==2 && prom_type==0}}">(库存不足)</view>
  413 + </block>
  414 + </block>
  415 +
408 <view class="fs24 xc-ash-9f">地址:{{def_pick_store.fulladdress}}</view> 416 <view class="fs24 xc-ash-9f">地址:{{def_pick_store.fulladdress}}</view>
409 </view> 417 </view>
410 </view> 418 </view>
@@ -910,11 +918,11 @@ @@ -910,11 +918,11 @@
910 <text class="right-arrow"></text> 918 <text class="right-arrow"></text>
911 </view> 919 </view>
912 </view> 920 </view>
913 - <view wx:if="{{only_pk && !only_pk.length}}">门店库存不足</view> 921 + <view wx:if="{{only_pk && !only_pk.length}}">(库存不足)</view>
914 <block wx:else> 922 <block wx:else>
915 - <view wx:if="{{def_pickpu_list && !def_pickpu_list.length}}">门店库存不足</view> 923 + <view wx:if="{{def_pickpu_list && !def_pickpu_list.length}}">(库存不足)</view>
916 <block wx:else> 924 <block wx:else>
917 - <view wx:if="{{def_pick_store && def_pick_store.CanOutQty<=0 && sales_rules==2 && prom_type==0}}">门店库存不足</view> 925 + <view wx:if="{{def_pick_store && !def_pick_store.CanOutQty && sales_rules==2 && prom_type==0}}">(库存不足)</view>
918 </block> 926 </block>
919 </block> 927 </block>
920 928
@@ -960,11 +968,10 @@ @@ -960,11 +968,10 @@
960 <block wx:if="{{!def_pick_store}}"> 968 <block wx:if="{{!def_pick_store}}">
961 <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999">请先选择门店</view> 969 <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999">请先选择门店</view>
962 </block> 970 </block>
963 - <block wx:else>  
964 - 971 + <block wx:else>
965 <!-- 如果是线下库存购买的时候,且是普通商品购买的时候 --> 972 <!-- 如果是线下库存购买的时候,且是普通商品购买的时候 -->
966 <block wx:if="{{sales_rules==2 && prom_type==0}}"> 973 <block wx:if="{{sales_rules==2 && prom_type==0}}">
967 - <block wx:if="{{def_pick_store.CanOutQty<=0}}"> 974 + <block wx:if="{{!def_pick_store.CanOutQty}}">
968 <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999">库存不足</view> 975 <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999">库存不足</view>
969 </block> 976 </block>
970 <block wx:else> 977 <block wx:else>
pages/goods/goodsInfo/goodsInfo.wxss
@@ -2254,7 +2254,7 @@ right:17rpx; top:55rpx; @@ -2254,7 +2254,7 @@ right:17rpx; top:55rpx;
2254 height: 90rpx; 2254 height: 90rpx;
2255 } 2255 }
2256 .sn_height{ 2256 .sn_height{
2257 - height: 170rpx; 2257 + min-height: 170rpx; height: auto;padding: 10rpx 0;
2258 } 2258 }
2259 .xc-address_frame .address_frame{ 2259 .xc-address_frame .address_frame{
2260 width: 92%; 2260 width: 92%;
@@ -2566,4 +2566,5 @@ border-radius: 55rpx; @@ -2566,4 +2566,5 @@ border-radius: 55rpx;
2566 button.custom-service { line-height: normal; border: 0;} 2566 button.custom-service { line-height: normal; border: 0;}
2567 button.custom-service::after{ 2567 button.custom-service::after{
2568 border: 0; 2568 border: 0;
2569 -}  
2570 \ No newline at end of file 2569 \ No newline at end of file
  2570 +}
  2571 +.no_store{color:#d60021; font-size: 26rpx;}
2571 \ No newline at end of file 2572 \ No newline at end of file
pages/user/order_detail/order_detail.js
1 var e = getApp(), r = e.request,rq=r,t = require("../../../utils/util.js"), o = require("../../../utils/common.js"),oo=e.globalData,os=oo.setting; 1 var e = getApp(), r = e.request,rq=r,t = require("../../../utils/util.js"), o = require("../../../utils/common.js"),oo=e.globalData,os=oo.setting;
2 var regeneratorRuntime = require('../../../utils/runtime.js'); 2 var regeneratorRuntime = require('../../../utils/runtime.js');
  3 +var ut= require('../../../utils/util.js');
  4 +
3 5
4 Page({ 6 Page({
5 data: { 7 data: {
@@ -270,10 +272,206 @@ Page({ @@ -270,10 +272,206 @@ Page({
270 }, 272 },
271 273
272 //--------立即支付---------- 274 //--------立即支付----------
273 - jumpToCart4: function(e) {  
274 - this.data.optionIsGoup ? wx.navigateTo({  
275 - url: "/pages/team/team_confirm/team_confirm?orderSn=" + this.data.order.order_sn + "&orderPay=true"  
276 - }) : o.jumpToCart4({ 275 + async jumpToCart4(e) {
  276 + var th=this;
  277 + if(this.data.optionIsGoup)
  278 + wx.navigateTo({
  279 + url: "/pages/team/team_confirm/team_confirm?orderSn=" + this.data.order.order_sn + "&orderPay=true"
  280 + })
  281 + var order=this.data.order;
  282 + var order_goods=order.order_goods;
  283 +
  284 + for(var i in order_goods){
  285 + var good=order_goods[i];
  286 + //如果不是小程序有的功能,直接提示要去3.0处理
  287 + if(good.prom_type==2 || good.prom_type==3 || good.prom_type==4 || good.prom_type==5){
  288 + wx.showModal({
  289 + title: '提示',
  290 + content: '小程序还未有该活动,请到3.0公众号支付'
  291 + });
  292 + return false;
  293 + }
  294 +
  295 + //要每件每件的商品进行检查,看有么有超出库存,超出限购
  296 + var good= order_goods[i],goodsbuynum=0,promgoodsbuynum=0,gg=null;
  297 + //获取单品的现在的活动状态
  298 + await getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + good.goods_id, {
  299 + }).then(res=>{
  300 + gg=res.data.data;
  301 + })
  302 + var limit = gg.viplimited;
  303 + var store_count = gg.store_count;
  304 +
  305 + //---要获得商品,该用户买了多少件,同步应用---
  306 + await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
  307 + data: {
  308 + store_id: os.stoid,
  309 + user_id: getApp().globalData.user_id,
  310 + goods_id: good.goods_id,
  311 + prom_type: good.prom_type,
  312 + prom_id: good.prom_id
  313 + },
  314 + }).then(res => {
  315 + var buy_num_data = res.data.data;
  316 + if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum;
  317 + goodsbuynum = buy_num_data.goodsbuynum;
  318 + })
  319 +
  320 + var buyed_mum2=goodsbuynum+good.goods_num;
  321 + if (buyed_mum2 > limit && limit > 0) {
  322 + wx.showModal({
  323 + title: '提示',
  324 + content: gg.goods_name+'购买数量超出商品限购'
  325 + });
  326 + return false;
  327 + }
  328 +
  329 + if(good.prom_type==1 || good.prom_type==6){
  330 + if(gg.prom_type!=good.prom_type) {
  331 + wx.showModal({
  332 + title: '提示',
  333 + content: gg.goods_name+'商品的活动发生了变化'
  334 + });
  335 + return false;
  336 + }
  337 +
  338 + }else{
  339 +
  340 + if(gg.prom_type==1 || gg.prom_type==6){
  341 + var prom=null;
  342 + //---如果是活动的时候---
  343 + var prom=null,th=this;
  344 + if(gg.prom_type==1){
  345 + await getApp().request.promiseGet("/api/ms/flash_sale/get/"+os.stoid+"/"+gg.prom_id,{
  346 + }).then(res=>{
  347 + if(res.data.code==0){
  348 + prom=res.data.data;
  349 + }
  350 + })
  351 + }
  352 + if(gg.prom_type==6){
  353 + await getApp().request.promiseGet("/api/weshop/teamlist/get/"+os.stoid+"/"+gg.prom_id,{
  354 + }).then(res=>{
  355 + if(res.data.code==0){
  356 + prom=res.data.data;
  357 + }
  358 + })
  359 + }
  360 +
  361 + if(prom){
  362 + var t_now=ut.gettimestamp();
  363 + if(prom.is_end==0 && prom.start_time<t_now && prom.end_time>t_now){
  364 + wx.showModal({
  365 + title: '提示',
  366 + content: gg.goods_name+'商品的活动发生了变化'
  367 + });
  368 + return false;
  369 + }
  370 + }
  371 + }
  372 +
  373 +
  374 + var isok=1;
  375 + var card_field=th.data.card_field;
  376 + //如果会员是等级会员,商品有等级价,且不是活动商品
  377 + if(card_field && gg[card_field]>0){
  378 + if (good.goods_price != gg[card_field]) isok = 0;
  379 + }else{
  380 + if (good.goods_price != gg.shop_price) isok = 0;
  381 +
  382 + }
  383 + if(!isok){
  384 + wx.showModal({
  385 + title: '提示',
  386 + content: gg.goods_name+'商品的价格发生了变化'
  387 + });
  388 + return false;
  389 + }
  390 +
  391 + //--如果是线下库存的时候--
  392 + if(th.data.conf.sales_rules==2){
  393 + var ob={};
  394 + await th.check_down_line_next(gg,good.goods_num,order.pickup_id,function(obj){
  395 + ob=obj;
  396 + })
  397 + if(ob.code==-1){
  398 + wx.showModal({
  399 + title: '提示',
  400 + content: gg.goods_name+'门店库存不足'
  401 + });
  402 + return false;
  403 + }
  404 +
  405 + }else{
  406 + if(good.goods_num>store_count){
  407 + wx.showModal({
  408 + title: '提示',
  409 + content: gg.goods_name+'商品的库存不足'
  410 + });
  411 + return false;
  412 + }
  413 +
  414 + }
  415 + }
  416 +
  417 + var prom=null;
  418 + //---如果是活动的时候---
  419 + var prom=null,goodsinfo=good,th=this;
  420 + if(goodsinfo.prom_type==1){
  421 + await getApp().request.promiseGet("/api/ms/flash_sale/get/"+os.stoid+"/"+goodsinfo.prom_id,{
  422 + }).then(res=>{
  423 + if(res.data.code==0){
  424 + prom=res.data.data;
  425 + }
  426 + })
  427 + }
  428 + if(goodsinfo.prom_type==6){
  429 + await getApp().request.promiseGet("/api/weshop/teamlist/get/"+os.stoid+"/"+goodsinfo.prom_id,{
  430 + }).then(res=>{
  431 + if(res.data.code==0){
  432 + prom=res.data.data;
  433 + }
  434 + })
  435 + }
  436 + //----------如果有活动,并且在进行中,就不计算线下库存---------------
  437 + if(prom){
  438 + var now=ut.gettimestamp();
  439 + if(prom.is_end==1 && prom.end_time<now){
  440 + wx.showModal({
  441 + title: '提示',
  442 + content: goodsinfo.goods_name+'商品的活动已经结束'
  443 + });
  444 + return false;
  445 + }
  446 +
  447 + buyed_mum2=promgoodsbuynum+good.goods_num;
  448 + if (buyed_mum2 > prom.buy_limit && prom.buy_limit > 0) {
  449 + wx.showModal({
  450 + title: '提示',
  451 + content: goodsinfo.goods_name+'购买数量超出商品活动限购'
  452 + });
  453 + return false;
  454 + }
  455 +
  456 + var redis_num = 0;
  457 + //------判断活动是否抢光-----
  458 + await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" +
  459 + os.stoid + "/" + goodsinfo.prom_type + "/" + goodsinfo.prom_id, {
  460 + }).then(res => {
  461 + redis_num = res.data.data;
  462 + });
  463 +
  464 + if (good.goods_num > redis_num) {
  465 + wx.showModal({
  466 + title: gg.goods_name+'超出商品活动库存',
  467 + });
  468 + return false;
  469 + }
  470 + }
  471 +
  472 + }
  473 +
  474 + o.jumpToCart4({
277 order_sn: this.data.order.order_sn, 475 order_sn: this.data.order.order_sn,
278 order_amount: this.data.order.order_amount 476 order_amount: this.data.order.order_amount
279 }, 1); 477 }, 1);
@@ -393,7 +591,48 @@ Page({ @@ -393,7 +591,48 @@ Page({
393 if(item.order_amount==0 || item.user_money==0) return true; 591 if(item.order_amount==0 || item.user_money==0) return true;
394 } 592 }
395 return false; 593 return false;
396 - } 594 + },
  595 +
  596 +
  597 +
  598 + //---检验线下库存的数量的子函数---
  599 + async check_down_line_next(gg,num,pick_id,func){
  600 +
  601 + var lock=0,pick_no,plist;
  602 + //先读取门店的lock
  603 + await getApp().request.promiseGet("/api/weshop/order/ware/lock/page",{
  604 + data:{store_id:os.stoid,wareId:gg.goods_id,storageId:pick_id}
  605 + }).then(res=>{
  606 + if(res.data.code==0 && res.data.data.total>0){
  607 + for(var i in res.data.data.pageData)
  608 + lock+=res.data.data.pageData[i].outQty;
  609 + }
  610 + })
  611 + //先获取门店的编号
  612 + await getApp().request.promiseGet("/api/weshop/pickup/get/"+os.stoid+"/"+pick_id,{
  613 + data:{storeId:os.stoid,goodsId:gg.goods_id,pickupId:pick_id}
  614 + }).then(res=>{
  615 + if(res.data.code==0){
  616 + pick_no=res.data.data.pickup_no;
  617 + }
  618 + })
  619 + //读取线下的门店库存
  620 + await getApp().request.promiseGet("/api/weshop/goods/getWareStorages",{
  621 + data:{storageNos:pick_no,wareIds:encodeURIComponent(gg.erpwareid),storeId:os.stoid}
  622 + }).then(res=>{
  623 + if(res.data.code==0){
  624 + plist=res.data.data.pageData[0];
  625 + }
  626 + })
  627 + var ob={}; ob.code=1;
  628 + if(num>plist.CanOutQty-lock){
  629 + ob.code=-1;
  630 + ob.CanOutQty=plist.CanOutQty-lock
  631 + if(ob.CanOutQty<0) ob.CanOutQty=0;
  632 + }
  633 + func(ob)
  634 + },
  635 +
397 636
398 637
399 638
pages/user/order_list/order_list.js
@@ -422,13 +422,18 @@ Page({ @@ -422,13 +422,18 @@ Page({
422 return false; 422 return false;
423 } 423 }
424 424
  425 +
  426 + console.log("-----------------111-------------------");
  427 +
425 if(good.prom_type==1 || good.prom_type==6){ 428 if(good.prom_type==1 || good.prom_type==6){
426 - if(gg.prom_type!=good.prom_type)  
427 - wx.showModal({  
428 - title: '提示',  
429 - content: gg.goods_name+'商品的活动发生了变化'  
430 - });  
431 - return false; 429 + if(gg.prom_type!=good.prom_type) {
  430 + wx.showModal({
  431 + title: '提示',
  432 + content: gg.goods_name+'商品的活动发生了变化'
  433 + });
  434 + return false;
  435 + }
  436 +
432 }else{ 437 }else{
433 438
434 if(gg.prom_type==1 || gg.prom_type==6){ 439 if(gg.prom_type==1 || gg.prom_type==6){
@@ -507,6 +512,8 @@ Page({ @@ -507,6 +512,8 @@ Page({
507 512
508 } 513 }
509 } 514 }
  515 +
  516 + console.log("------------------------------------");
510 517
511 var prom=null; 518 var prom=null;
512 //---如果是活动的时候--- 519 //---如果是活动的时候---
@@ -604,7 +611,8 @@ Page({ @@ -604,7 +611,8 @@ Page({
604 data:{store_id:os.stoid,wareId:gg.goods_id,storageId:pick_id} 611 data:{store_id:os.stoid,wareId:gg.goods_id,storageId:pick_id}
605 }).then(res=>{ 612 }).then(res=>{
606 if(res.data.code==0 && res.data.data.total>0){ 613 if(res.data.code==0 && res.data.data.total>0){
607 - lock=res.data.data.pageData[0].outQty; 614 + for(var i in res.data.data.pageData)
  615 + lock+=res.data.data.pageData[i].outQty;
608 } 616 }
609 }) 617 })
610 //先获取门店的编号 618 //先获取门店的编号