Commit 29185fe899ab3807eca81f851e42a9e7f9ed4c47

Authored by yvan.ni
1 parent 5969ea79

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

pages/goods/goodsInfo/goodsInfo.js
@@ -365,10 +365,19 @@ Page({ @@ -365,10 +365,19 @@ Page({
365 365
366 //获取用户的默认门店 366 //获取用户的默认门店
367 getApp().get_user_store(function(ee) { 367 getApp().get_user_store(function(ee) {
  368 +
368 if(!ee) { 369 if(!ee) {
369 th.data.fir_def_store={}; //赋值空对象 370 th.data.fir_def_store={}; //赋值空对象
370 return false; 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 var appd=getApp().globalData; 381 var appd=getApp().globalData;
373 var w_time = setInterval(function() { 382 var w_time = setInterval(function() {
374 if (that.data.is_get_local_ok == 0) return false; 383 if (that.data.is_get_local_ok == 0) return false;
@@ -1708,7 +1717,7 @@ Page({ @@ -1708,7 +1717,7 @@ Page({
1708 if (th.data.is_get_local_ok == 0) return false; 1717 if (th.data.is_get_local_ok == 0) return false;
1709 var dd = null, 1718 var dd = null,
1710 i = getApp().request; 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 if (g_distr_type != 0) { 1721 if (g_distr_type != 0) {
1713 dd = { 1722 dd = {
1714 store_id: o.stoid, 1723 store_id: o.stoid,
@@ -1729,6 +1738,12 @@ Page({ @@ -1729,6 +1738,12 @@ Page({
1729 dd.lon = th.data.lon; 1738 dd.lon = th.data.lon;
1730 } 1739 }
1731 clearInterval(timer_get); 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 getApp().request.promiseGet("/api/weshop/pickup/list", { 1748 getApp().request.promiseGet("/api/weshop/pickup/list", {
1734 data: dd, 1749 data: dd,
@@ -1748,7 +1763,7 @@ Page({ @@ -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 for (var k = 0; k < e.data.data.pageData.length; k++) { 1767 for (var k = 0; k < e.data.data.pageData.length; k++) {
1753 if (e.data.data.pageData[k].pickup_id == th.data.def_pick_store.pickup_id) { 1768 if (e.data.data.pageData[k].pickup_id == th.data.def_pick_store.pickup_id) {
1754 e.data.data.pageData.splice(k, 1); //删除 1769 e.data.data.pageData.splice(k, 1); //删除
@@ -1780,6 +1795,9 @@ Page({ @@ -1780,6 +1795,9 @@ Page({
1780 //------------处理门店--------------- 1795 //------------处理门店---------------
1781 deal_pickup(e){ 1796 deal_pickup(e){
1782 var th=this; 1797 var th=this;
  1798 +
  1799 + var g_distr_type=th.data.sele_g.distr_type;
  1800 +
1783 //单总量超出5个的时候 1801 //单总量超出5个的时候
1784 if (e.data.data.total > 5) { 1802 if (e.data.data.total > 5) {
1785 getApp().request.get("/api/weshop/storagecategory/page", { 1803 getApp().request.get("/api/weshop/storagecategory/page", {
@@ -1883,8 +1901,8 @@ Page({ @@ -1883,8 +1901,8 @@ Page({
1883 }); 1901 });
1884 //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------ 1902 //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------
1885 if (!th.data.def_pick_store) { 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 } else { 1907 } else {
1890 th.setData({ 1908 th.setData({
@@ -1914,7 +1932,6 @@ Page({ @@ -1914,7 +1932,6 @@ Page({
1914 }) 1932 })
1915 } 1933 }
1916 } 1934 }
1917 -  
1918 }, 1935 },
1919 //------------处理线下门店库存-------- 1936 //------------处理线下门店库存--------
1920 deal_pickup_dline(e){ 1937 deal_pickup_dline(e){
@@ -1931,7 +1948,9 @@ Page({ @@ -1931,7 +1948,9 @@ Page({
1931 var o_plist=e.data.data.pageData; 1948 var o_plist=e.data.data.pageData;
1932 var new_list=[]; 1949 var new_list=[];
1933 var is_find_def_store=0; 1950 var is_find_def_store=0;
1934 - 1951 +
  1952 +
  1953 + var g_distr_type=th.data.sele_g.distr_type;
1935 var lock=[]; 1954 var lock=[];
1936 //先读取门店的lock,采用链式写法,少用await 1955 //先读取门店的lock,采用链式写法,少用await
1937 getApp().request.promiseGet("/api/weshop/order/ware/lock/page",{ 1956 getApp().request.promiseGet("/api/weshop/order/ware/lock/page",{
@@ -1962,8 +1981,8 @@ Page({ @@ -1962,8 +1981,8 @@ Page({
1962 if(n_item.CanOutQty>lock_num){ 1981 if(n_item.CanOutQty>lock_num){
1963 o_plist[kk].CanOutQty=n_item.CanOutQty-lock_num; 1982 o_plist[kk].CanOutQty=n_item.CanOutQty-lock_num;
1964 new_list.push(o_plist[kk]); 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 th.data.fir_def_store.CanOutQty=n_item.CanOutQty-lock_num; 1986 th.data.fir_def_store.CanOutQty=n_item.CanOutQty-lock_num;
1968 if(def_pick_store.pickup_id==th.data.fir_def_store.pickup_id) 1987 if(def_pick_store.pickup_id==th.data.fir_def_store.pickup_id)
1969 th.setData({def_pick_store:th.data.fir_def_store}) 1988 th.setData({def_pick_store:th.data.fir_def_store})
@@ -1978,9 +1997,10 @@ Page({ @@ -1978,9 +1997,10 @@ Page({
1978 //数据组装下 1997 //数据组装下
1979 var em={};em.data={};em.data.data={}; 1998 var em={};em.data={};em.data.data={};
1980 em.data.data.total=new_list.length; 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 th.data.fir_def_store.CanOutQty=0; 2004 th.data.fir_def_store.CanOutQty=0;
1985 //--当选择的门店是客户默认的门店的时候-- 2005 //--当选择的门店是客户默认的门店的时候--
1986 if(th.data.def_pick_store && th.data.fir_def_store.pickup_id==th.data.def_pick_store.pickup_id) { 2006 if(th.data.def_pick_store && th.data.fir_def_store.pickup_id==th.data.def_pick_store.pickup_id) {