Commit 4223fe7897a8173eb9fda899698218d7afdbaa5a
Merge branch 'dev' into 'test'
Dev See merge request !362
Showing
5 changed files
with
578 additions
and
219 deletions
pages/goods/goodsInfo/goodsInfo.js
| ... | ... | @@ -219,6 +219,7 @@ Page({ | 
| 219 | 219 | new_user: 0, //新用户 | 
| 220 | 220 | |
| 221 | 221 | def_pick_store: null, // 默认的门店 | 
| 222 | + fir_def_store:null, //客户默认的门店的 | |
| 222 | 223 | lat: null, //维度 | 
| 223 | 224 | lon: null, //经度 | 
| 224 | 225 | |
| ... | ... | @@ -233,11 +234,13 @@ Page({ | 
| 233 | 234 | is_collect_load:0, //是不是处理 | 
| 234 | 235 | is_newsales_rules:0, //是否开启最新的门店规则,此时会新读门店,当点击选择门店时会触发读取线下库存 | 
| 235 | 236 | sales_rules:1, //默认是线上销售 | 
| 237 | + | |
| 238 | + wait_for_user_store:null, | |
| 239 | + | |
| 236 | 240 | }, | 
| 237 | 241 | |
| 238 | 242 | //------初始化加载---------- | 
| 239 | 243 | onLoad: function(t) { | 
| 240 | - | |
| 241 | 244 | wx.setNavigationBarTitle({ | 
| 242 | 245 | title: "商品详情", | 
| 243 | 246 | }) | 
| ... | ... | @@ -297,7 +300,6 @@ Page({ | 
| 297 | 300 | //---如果后台又开等级卡的开关--- | 
| 298 | 301 | if(sw_arr.rank_switch && sw_arr.rank_switch=="2"){ | 
| 299 | 302 | th.setData({rank_switch:true}); | 
| 300 | - | |
| 301 | 303 | //---回调卡的列表--- | 
| 302 | 304 | th.getPlusCardType(function(ob){ | 
| 303 | 305 | th.setData({card_list:ob.card_list}); | 
| ... | ... | @@ -346,38 +348,38 @@ Page({ | 
| 346 | 348 | clearInterval(w_time); | 
| 347 | 349 | var distance = null; | 
| 348 | 350 | var e=JSON.parse(JSON.stringify(ee)); | 
| 349 | - | |
| 350 | 351 | |
| 351 | 352 | //如果有开启近距离的话,同时距离优不一样了 | 
| 352 | 353 | if (that.data.lat != null) { | 
| 353 | 354 | //如果经纬度有变化的话 | 
| 354 | 355 | if( appd.lat==that.data.lat && appd.lon==that.data.lon && e.distance>0 ){ | 
| 356 | + that.data.fir_def_store=e; | |
| 355 | 357 | that.setData({ | 
| 356 | 358 | def_pick_store: e, | 
| 357 | 359 | sto_sele_name: e.pickup_name, | 
| 358 | 360 | sto_sele_id: e.pickup_id, | 
| 359 | 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 | 385 | //e.distance = distance; | 
| ... | ... | @@ -387,18 +389,16 @@ Page({ | 
| 387 | 389 | }else{ | 
| 388 | 390 | if (e) { | 
| 389 | 391 | e.distance = null; | 
| 392 | + that.data.fir_def_store=e; | |
| 390 | 393 | that.setData({ | 
| 391 | 394 | def_pick_store: e, | 
| 392 | 395 | sto_sele_name: e.pickup_name, | 
| 393 | 396 | sto_sele_id: e.pickup_id, | 
| 394 | 397 | sto_sele_distr: e.distr_type | 
| 395 | 398 | }) | 
| 396 | - } | |
| 397 | - | |
| 398 | - | |
| 399 | + } | |
| 399 | 400 | } | 
| 400 | - | |
| 401 | - | |
| 401 | + | |
| 402 | 402 | }, 500) | 
| 403 | 403 | }); | 
| 404 | 404 | |
| ... | ... | @@ -549,7 +549,7 @@ Page({ | 
| 549 | 549 | |
| 550 | 550 | //---展示--- | 
| 551 | 551 | onShow: function() { | 
| 552 | - var goods_list = null,th = this; | |
| 552 | + var goods_list = null,th = this,that=this; | |
| 553 | 553 | var ui = setInterval(function () { | 
| 554 | 554 | goods_list = th.selectComponent("#goods_list"); | 
| 555 | 555 | if (goods_list) { | 
| ... | ... | @@ -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 | 672 | ee.get_sku(o.stoid, t.data.data.sku, gid); | 
| 634 | 673 | } | 
| 635 | 674 | else { | 
| ... | ... | @@ -1453,6 +1492,7 @@ Page({ | 
| 1453 | 1492 | |
| 1454 | 1493 | //-----------选择属性的按钮事件---------- | 
| 1455 | 1494 | sele_spec: function(e) { | 
| 1495 | + var that=this,ee=this,th=this; | |
| 1456 | 1496 | var gid = e.currentTarget.dataset.gid; | 
| 1457 | 1497 | var sku_g = this.data.sku_g; | 
| 1458 | 1498 | var item = null; | 
| ... | ... | @@ -1466,7 +1506,37 @@ Page({ | 
| 1466 | 1506 | sele_g: item, | 
| 1467 | 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 | 1541 | this.sele_spec_chech_activity(); | 
| 1472 | 1542 | }, | 
| ... | ... | @@ -1521,7 +1591,7 @@ Page({ | 
| 1521 | 1591 | |
| 1522 | 1592 | //---------拿出门店分类和门店------------ | 
| 1523 | 1593 | get_sto(e) { | 
| 1524 | - var th = this; | |
| 1594 | + var th = this,that=this; | |
| 1525 | 1595 | var timer_get = setInterval(function() { | 
| 1526 | 1596 | if (th.data.is_get_local_ok == 0) return false; | 
| 1527 | 1597 | var dd = null, | 
| ... | ... | @@ -1562,6 +1632,7 @@ Page({ | 
| 1562 | 1632 | sto_sele_id: e.data.data.pageData[0].pickup_id, | 
| 1563 | 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 | 1670 | var th=this; | 
| 1600 | 1671 | //单总量超出5个的时候 | 
| 1601 | 1672 | if (e.data.data.total > 5) { | 
| 1602 | - i.get("/api/weshop/storagecategory/page", { | |
| 1673 | + getApp().request.get("/api/weshop/storagecategory/page", { | |
| 1603 | 1674 | data: { | 
| 1604 | 1675 | store_id: o.stoid, | 
| 1605 | 1676 | is_show: 1, | 
| ... | ... | @@ -1780,10 +1851,11 @@ Page({ | 
| 1780 | 1851 | o_plist[kk].CanOutQty=n_item.CanOutQty-lock_num; | 
| 1781 | 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 | 1861 | break; | 
| ... | ... | @@ -1794,14 +1866,21 @@ Page({ | 
| 1794 | 1866 | //数据组装下 | 
| 1795 | 1867 | var em={};em.data={};em.data.data={}; | 
| 1796 | 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 | 1884 | }else{ | 
| 1806 | 1885 | th.setData({def_pick_store:null,all_sto:null,only_pk:null}) | 
| 1807 | 1886 | } | 
| ... | ... | @@ -2172,7 +2251,7 @@ Page({ | 
| 2172 | 2251 | t.data.data.ct_rylist = JSON.parse(t.data.data.ct_rylist); | 
| 2173 | 2252 | var max_num = 0; | 
| 2174 | 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 | 2256 | t.data.data.max_ct_num = max_num; | 
| 2178 | 2257 | } | 
| ... | ... | @@ -3405,7 +3484,7 @@ Page({ | 
| 3405 | 3484 | // 选择门店 | 
| 3406 | 3485 | choice_store: function(ee) { | 
| 3407 | 3486 | var th = this; | 
| 3408 | - //var ind=ee.currentTarget.dataset.ind; | |
| 3487 | + var ind=ee.currentTarget.dataset.ind; | |
| 3409 | 3488 | var bconfig = th.data.bconfig; | 
| 3410 | 3489 | |
| 3411 | 3490 | if(!th.data.only_pk && !th.data.def_pickpu_list){ | 
| ... | ... | @@ -3461,25 +3540,63 @@ Page({ | 
| 3461 | 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 | 3559 | close_popup: function(e) { | 
| 3476 | - | |
| 3560 | + var th=this; | |
| 3477 | 3561 | this.setData({ | 
| 3478 | 3562 | store: 0, | 
| 3479 | 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 | 3601 | more_store: function() { | 
| 3485 | 3602 | this.setData({ | 
| ... | ... | @@ -3509,19 +3626,18 @@ Page({ | 
| 3509 | 3626 | sec_pick_index: 0 | 
| 3510 | 3627 | }); | 
| 3511 | 3628 | }, | 
| 3629 | + | |
| 3512 | 3630 | choose_for_store_fir: function(e) { | 
| 3513 | 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 | 3641 | var th=this; | 
| 3526 | 3642 | var goodsinfo=th.data.sele_g; | 
| 3527 | 3643 | var erpwareid=goodsinfo.erpwareid; | 
| ... | ... | @@ -3535,18 +3651,8 @@ Page({ | 
| 3535 | 3651 | |
| 3536 | 3652 | if(this.data.sales_rules!=2 && this.data.is_newsales_rules!=1){ | 
| 3537 | 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 | 3656 | //先读取门店的lock | 
| 3551 | 3657 | await getApp().request.promiseGet("/api/weshop/order/ware/lock/page",{ | 
| 3552 | 3658 | data:{store_id:os.stoid,wareId:goodsinfo.goods_id,storageId:item.pickup_id} | 
| ... | ... | @@ -3555,8 +3661,7 @@ Page({ | 
| 3555 | 3661 | for(var i in res.data.data.pageData ) | 
| 3556 | 3662 | lock+=res.data.data.pageData[i].outQty; | 
| 3557 | 3663 | } | 
| 3558 | - }) | |
| 3559 | - | |
| 3664 | + }) | |
| 3560 | 3665 | //读取线下的门店库存 | 
| 3561 | 3666 | await getApp().request.promiseGet("/api/weshop/goods/getWareStorages",{ | 
| 3562 | 3667 | data:{storageNos:item.pickup_no,wareIds:encodeURIComponent(erpwareid),storeId:os.stoid} | 
| ... | ... | @@ -3567,6 +3672,7 @@ Page({ | 
| 3567 | 3672 | }) | 
| 3568 | 3673 | |
| 3569 | 3674 | if(plist && plist.CanOutQty-lock>0){ | 
| 3675 | + item.CanOutQty=plist.CanOutQty-lock; | |
| 3570 | 3676 | func(); | 
| 3571 | 3677 | return false; | 
| 3572 | 3678 | } | 
| ... | ... | @@ -3594,144 +3700,142 @@ Page({ | 
| 3594 | 3700 | var index = th.data.sec_pick_index; | 
| 3595 | 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 | 3745 | choose_for_store: function(e) { | 
| 3638 | 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 | 3749 | sec_pick_index: index_c, | 
| 3643 | 3750 | fir_pick_index: index_c | 
| 3644 | - }) | |
| 3645 | - }) | |
| 3751 | + }) | |
| 3752 | + | |
| 3646 | 3753 | }, | 
| 3647 | 3754 | //把选择的门店设置成默认的门店def_pick | 
| 3648 | 3755 | set_def_pick: function(e) { | 
| 3649 | 3756 | var th = this; | 
| 3650 | 3757 | var item = null; | 
| 3651 | - | |
| 3652 | 3758 | if (th.data.choice_sort_store == 0) { | 
| 3653 | - | |
| 3654 | 3759 | var index = th.data.fir_pick_index; | 
| 3655 | - | |
| 3656 | 3760 | if (th.data.is_show_sto_cat == 1) { | 
| 3657 | 3761 | item = th.data.def_pickpu_list[index]; | 
| 3658 | 3762 | } else { | 
| 3659 | 3763 | item = th.data.only_pk[index]; //当没有门店分类的时候 | 
| 3660 | - | |
| 3661 | 3764 | } | 
| 3662 | 3765 | } else { | 
| 3663 | 3766 | var index = th.data.sec_pick_index; | 
| 3664 | 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 | 3841 | wait_for_store_config: function() { | ... | ... | 
pages/goods/goodsInfo/goodsInfo.wxml
| ... | ... | @@ -404,7 +404,15 @@ | 
| 404 | 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 | 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 | 416 | <view class="fs24 xc-ash-9f">地址:{{def_pick_store.fulladdress}}</view> | 
| 409 | 417 | </view> | 
| 410 | 418 | </view> | 
| ... | ... | @@ -910,11 +918,11 @@ | 
| 910 | 918 | <text class="right-arrow"></text> | 
| 911 | 919 | </view> | 
| 912 | 920 | </view> | 
| 913 | - <view wx:if="{{only_pk && !only_pk.length}}">门店库存不足</view> | |
| 921 | + <view wx:if="{{only_pk && !only_pk.length}}">(库存不足)</view> | |
| 914 | 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 | 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 | 926 | </block> | 
| 919 | 927 | </block> | 
| 920 | 928 | |
| ... | ... | @@ -960,11 +968,10 @@ | 
| 960 | 968 | <block wx:if="{{!def_pick_store}}"> | 
| 961 | 969 | <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999">请先选择门店</view> | 
| 962 | 970 | </block> | 
| 963 | - <block wx:else> | |
| 964 | - | |
| 971 | + <block wx:else> | |
| 965 | 972 | <!-- 如果是线下库存购买的时候,且是普通商品购买的时候 --> | 
| 966 | 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 | 975 | <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999">库存不足</view> | 
| 969 | 976 | </block> | 
| 970 | 977 | <block wx:else> | ... | ... | 
pages/goods/goodsInfo/goodsInfo.wxss
| ... | ... | @@ -2254,7 +2254,7 @@ right:17rpx; top:55rpx; | 
| 2254 | 2254 | height: 90rpx; | 
| 2255 | 2255 | } | 
| 2256 | 2256 | .sn_height{ | 
| 2257 | - height: 170rpx; | |
| 2257 | + min-height: 170rpx; height: auto;padding: 10rpx 0; | |
| 2258 | 2258 | } | 
| 2259 | 2259 | .xc-address_frame .address_frame{ | 
| 2260 | 2260 | width: 92%; | 
| ... | ... | @@ -2566,4 +2566,5 @@ border-radius: 55rpx; | 
| 2566 | 2566 | button.custom-service { line-height: normal; border: 0;} | 
| 2567 | 2567 | button.custom-service::after{ | 
| 2568 | 2568 | border: 0; | 
| 2569 | -} | |
| 2570 | 2569 | \ No newline at end of file | 
| 2570 | +} | |
| 2571 | +.no_store{color:#d60021; font-size: 26rpx;} | |
| 2571 | 2572 | \ No newline at end of file | ... | ... | 
pages/user/order_detail/order_detail.js
| 1 | 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 | 2 | var regeneratorRuntime = require('../../../utils/runtime.js'); | 
| 3 | +var ut= require('../../../utils/util.js'); | |
| 4 | + | |
| 3 | 5 | |
| 4 | 6 | Page({ | 
| 5 | 7 | data: { | 
| ... | ... | @@ -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 | 475 | order_sn: this.data.order.order_sn, | 
| 278 | 476 | order_amount: this.data.order.order_amount | 
| 279 | 477 | }, 1); | 
| ... | ... | @@ -393,7 +591,48 @@ Page({ | 
| 393 | 591 | if(item.order_amount==0 || item.user_money==0) return true; | 
| 394 | 592 | } | 
| 395 | 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 | 422 | return false; | 
| 423 | 423 | } | 
| 424 | 424 | |
| 425 | + | |
| 426 | + console.log("-----------------111-------------------"); | |
| 427 | + | |
| 425 | 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 | 437 | }else{ | 
| 433 | 438 | |
| 434 | 439 | if(gg.prom_type==1 || gg.prom_type==6){ | 
| ... | ... | @@ -507,6 +512,8 @@ Page({ | 
| 507 | 512 | |
| 508 | 513 | } | 
| 509 | 514 | } | 
| 515 | + | |
| 516 | + console.log("------------------------------------"); | |
| 510 | 517 | |
| 511 | 518 | var prom=null; | 
| 512 | 519 | //---如果是活动的时候--- | 
| ... | ... | @@ -604,7 +611,8 @@ Page({ | 
| 604 | 611 | data:{store_id:os.stoid,wareId:gg.goods_id,storageId:pick_id} | 
| 605 | 612 | }).then(res=>{ | 
| 606 | 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 | //先获取门店的编号 | ... | ... | 
