Commit 29185fe899ab3807eca81f851e42a9e7f9ed4c47

Authored by yvan.ni
1 parent 5969ea79

商品详情的门店选择的配送方式优化

pages/goods/goodsInfo/goodsInfo.js
... ... @@ -365,10 +365,19 @@ Page({
365 365  
366 366 //获取用户的默认门店
367 367 getApp().get_user_store(function(ee) {
  368 +
368 369 if(!ee) {
369 370 th.data.fir_def_store={}; //赋值空对象
370 371 return false;
371 372 }
  373 + var g_distr_type=th.data.data.distr_type;
  374 +
  375 + //--如果默认门店的配送方式不对,就不能被选择--
  376 + if(ee.distr_type!=0 && g_distr_type!=0 && ee.distr_type!=g_distr_type ){
  377 + th.data.fir_def_store={}; //赋值空对象
  378 + return false;
  379 + }
  380 +
372 381 var appd=getApp().globalData;
373 382 var w_time = setInterval(function() {
374 383 if (that.data.is_get_local_ok == 0) return false;
... ... @@ -1708,7 +1717,7 @@ Page({
1708 1717 if (th.data.is_get_local_ok == 0) return false;
1709 1718 var dd = null,
1710 1719 i = getApp().request;
1711   - var g_distr_type = th.data.data.distr_type;
  1720 + var g_distr_type = th.data.sele_g.distr_type;
1712 1721 if (g_distr_type != 0) {
1713 1722 dd = {
1714 1723 store_id: o.stoid,
... ... @@ -1729,6 +1738,12 @@ Page({
1729 1738 dd.lon = th.data.lon;
1730 1739 }
1731 1740 clearInterval(timer_get);
  1741 +
  1742 + if(th.data.def_pick_store && g_distr_type!=0 && th.data.def_pick_store.distr_type!=0 && th.data.def_pick_store.distr_type!=g_distr_type ){
  1743 + th.setData({def_pick_store:null});
  1744 + }
  1745 +
  1746 +
1732 1747 //----------获取门店----------------
1733 1748 getApp().request.promiseGet("/api/weshop/pickup/list", {
1734 1749 data: dd,
... ... @@ -1748,7 +1763,7 @@ Page({
1748 1763 }
1749 1764  
1750 1765 //-- 如果有默认选择门店的时候,要把默认门店放在第一位 --
1751   - if (th.data.def_pick_store) {
  1766 + if (th.data.def_pick_store && (th.data.def_pick_store.distr_type==0 || th.data.def_pick_store.distr_type==g_distr_type )){
1752 1767 for (var k = 0; k < e.data.data.pageData.length; k++) {
1753 1768 if (e.data.data.pageData[k].pickup_id == th.data.def_pick_store.pickup_id) {
1754 1769 e.data.data.pageData.splice(k, 1); //删除
... ... @@ -1780,6 +1795,9 @@ Page({
1780 1795 //------------处理门店---------------
1781 1796 deal_pickup(e){
1782 1797 var th=this;
  1798 +
  1799 + var g_distr_type=th.data.sele_g.distr_type;
  1800 +
1783 1801 //单总量超出5个的时候
1784 1802 if (e.data.data.total > 5) {
1785 1803 getApp().request.get("/api/weshop/storagecategory/page", {
... ... @@ -1883,8 +1901,8 @@ Page({
1883 1901 });
1884 1902 //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------
1885 1903 if (!th.data.def_pick_store) {
1886   - th.setData({def_pick_store:e.data.data.pageData[0]})
1887   - }
  1904 + th.setData({def_pick_store:e.data.data.pageData[0]})
  1905 + }
1888 1906 }
1889 1907 } else {
1890 1908 th.setData({
... ... @@ -1914,7 +1932,6 @@ Page({
1914 1932 })
1915 1933 }
1916 1934 }
1917   -
1918 1935 },
1919 1936 //------------处理线下门店库存--------
1920 1937 deal_pickup_dline(e){
... ... @@ -1931,7 +1948,9 @@ Page({
1931 1948 var o_plist=e.data.data.pageData;
1932 1949 var new_list=[];
1933 1950 var is_find_def_store=0;
1934   -
  1951 +
  1952 +
  1953 + var g_distr_type=th.data.sele_g.distr_type;
1935 1954 var lock=[];
1936 1955 //先读取门店的lock,采用链式写法,少用await
1937 1956 getApp().request.promiseGet("/api/weshop/order/ware/lock/page",{
... ... @@ -1962,8 +1981,8 @@ Page({
1962 1981 if(n_item.CanOutQty>lock_num){
1963 1982 o_plist[kk].CanOutQty=n_item.CanOutQty-lock_num;
1964 1983 new_list.push(o_plist[kk]);
1965   - //如果找到默认门店
1966   - if(th.data.fir_def_store && n_item.StorageNo==th.data.fir_def_store.pickup_no){
  1984 + //--如果找到默认门店,同时也应该判断配送方式对不对--
  1985 + if(th.data.fir_def_store && n_item.StorageNo==th.data.fir_def_store.pickup_no && (g_distr_type==0 || th.data.fir_def_store.distr_type==0 || th.data.def_pick_store.distr_type==g_distr_type ) ){
1967 1986 th.data.fir_def_store.CanOutQty=n_item.CanOutQty-lock_num;
1968 1987 if(def_pick_store.pickup_id==th.data.fir_def_store.pickup_id)
1969 1988 th.setData({def_pick_store:th.data.fir_def_store})
... ... @@ -1978,9 +1997,10 @@ Page({
1978 1997 //数据组装下
1979 1998 var em={};em.data={};em.data.data={};
1980 1999 em.data.data.total=new_list.length;
1981   - em.data.data.pageData=new_list;
1982   -
1983   - if(th.data.fir_def_store && !is_find_def_store && th.data.fir_def_store.pickup_id){
  2000 + em.data.data.pageData=new_list;
  2001 +
  2002 + //--如果找到默认门店,同时也应该判断配送方式对不对--
  2003 + if(th.data.fir_def_store && !is_find_def_store && th.data.fir_def_store.pickup_id && (g_distr_type==0 || th.data.fir_def_store.distr_type==0 || th.data.def_pick_store.distr_type==g_distr_type ) ){
1984 2004 th.data.fir_def_store.CanOutQty=0;
1985 2005 //--当选择的门店是客户默认的门店的时候--
1986 2006 if(th.data.def_pick_store && th.data.fir_def_store.pickup_id==th.data.def_pick_store.pickup_id) {
... ...