Commit 85254bb9b6c4b2b4ef75bfb649e3bdd3770f88ec
1 parent
51686d67
我的订单, 订单详情再来一单的,因为有组合购计算线下库存的bug优化
Showing
3 changed files
with
159 additions
and
60 deletions
packageA/pages/distribution/myteam/myteam.js
| @@ -144,10 +144,11 @@ Page({ | @@ -144,10 +144,11 @@ Page({ | ||
| 144 | * 页面上拉触底事件的处理函数 | 144 | * 页面上拉触底事件的处理函数 |
| 145 | */ | 145 | */ |
| 146 | onReachBottom: function () { | 146 | onReachBottom: function () { |
| 147 | + var th=this; | ||
| 147 | this.scrollToLower('/api/weshop/users/distribut/teamlist', { | 148 | this.scrollToLower('/api/weshop/users/distribut/teamlist', { |
| 148 | store_id: app.globalData.setting.stoid, | 149 | store_id: app.globalData.setting.stoid, |
| 149 | user_id: app.globalData.user_id, | 150 | user_id: app.globalData.user_id, |
| 150 | - level: currentIndex + 1, | 151 | + level: th.data.currentTabIndex + 1, |
| 151 | }); | 152 | }); |
| 152 | }, | 153 | }, |
| 153 | 154 |
pages/user/order_detail/order_detail.js
| @@ -974,43 +974,55 @@ Page({ | @@ -974,43 +974,55 @@ Page({ | ||
| 974 | }) | 974 | }) |
| 975 | 975 | ||
| 976 | var lock=0,plist=null; | 976 | var lock=0,plist=null; |
| 977 | - //先读取门店的lock, | ||
| 978 | - await getApp().request.promiseGet("/api/weshop/order/ware/lock/page",{ | ||
| 979 | - data:{store_id:os.stoid,wareId:good.goods_id,storageId:b_item.pickup_id,pageSize:1000} | ||
| 980 | - }).then(res=>{ | ||
| 981 | - if(res.data.code==0 && res.data.data.total>0){ | ||
| 982 | - for(var i in res.data.data.pageData) | ||
| 983 | - lock+=res.data.data.pageData[i].outQty | ||
| 984 | - } | ||
| 985 | - }) | ||
| 986 | - | ||
| 987 | - //---通过接口获取门店的线下库存信息-- | ||
| 988 | - await getApp().request.promiseGet("/api/weshop/goods/getWareStorages",{ | ||
| 989 | - data:{storageNos:pickup.pickup_no,wareIds:encodeURIComponent(good.erpwareid),storeId:os.stoid} | ||
| 990 | - }).then(res=>{ | ||
| 991 | - if(res.data.code==0 && res.data.data.total>0){ | ||
| 992 | - plist=res.data.data.pageData[0]; | ||
| 993 | - } | ||
| 994 | - }) | ||
| 995 | - | ||
| 996 | - if(!plist){ | ||
| 997 | - err_text+= good['goods_name']+"库存不足\n"; | ||
| 998 | - continue; | ||
| 999 | - } | ||
| 1000 | - if(plist.CanOutQty-lock<=0){ | ||
| 1001 | - err_text+= good['goods_name']+"库存不足\n"; | ||
| 1002 | - continue; | ||
| 1003 | - } | ||
| 1004 | - if(b_item.goods_num>(plist.CanOutQty-lock)){ | ||
| 1005 | - b_item.goods_num=plist.CanOutQty-lock; | ||
| 1006 | - } | 977 | + |
| 978 | + if(b_item.prom_type!=7) { | ||
| 979 | + //先读取门店的lock, | ||
| 980 | + await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", { | ||
| 981 | + data: {store_id: os.stoid, wareId: good.goods_id, storageId: b_item.pickup_id, pageSize: 1000} | ||
| 982 | + }).then(res => { | ||
| 983 | + if (res.data.code == 0 && res.data.data.total > 0) { | ||
| 984 | + for (var i in res.data.data.pageData) | ||
| 985 | + lock += res.data.data.pageData[i].outQty | ||
| 986 | + } | ||
| 987 | + }) | ||
| 988 | + | ||
| 989 | + //---通过接口获取门店的线下库存信息-- | ||
| 990 | + await getApp().request.promiseGet("/api/weshop/goods/getWareStorages", { | ||
| 991 | + data: { | ||
| 992 | + storageNos: pickup.pickup_no, | ||
| 993 | + wareIds: encodeURIComponent(good.erpwareid), | ||
| 994 | + storeId: os.stoid | ||
| 995 | + } | ||
| 996 | + }).then(res => { | ||
| 997 | + if (res.data.code == 0 && res.data.data.total > 0) { | ||
| 998 | + plist = res.data.data.pageData[0]; | ||
| 999 | + } | ||
| 1000 | + }) | ||
| 1001 | + | ||
| 1002 | + if (!plist) { | ||
| 1003 | + err_text += good['goods_name'] + "库存不足\n"; | ||
| 1004 | + continue; | ||
| 1005 | + } | ||
| 1006 | + if (plist.CanOutQty - lock <= 0) { | ||
| 1007 | + err_text += good['goods_name'] + "库存不足\n"; | ||
| 1008 | + continue; | ||
| 1009 | + } | ||
| 1010 | + if (b_item.goods_num > (plist.CanOutQty - lock)) { | ||
| 1011 | + b_item.goods_num = plist.CanOutQty - lock; | ||
| 1012 | + } | ||
| 1013 | + } | ||
| 1007 | var req_data={ | 1014 | var req_data={ |
| 1008 | store_id: os.stoid, | 1015 | store_id: os.stoid, |
| 1009 | user_id: getApp().globalData.user_id, | 1016 | user_id: getApp().globalData.user_id, |
| 1010 | goods_id: good.goods_id, | 1017 | goods_id: good.goods_id, |
| 1011 | }; | 1018 | }; |
| 1019 | + if(b_item.prom_type==7){ | ||
| 1020 | + req_data.prom_type=7; | ||
| 1021 | + req_data.prom_id=b_item.prom_id; | ||
| 1022 | + } | ||
| 1012 | 1023 | ||
| 1013 | - var buynum=0; | 1024 | + var buynum=0; |
| 1025 | + var promnum=0; | ||
| 1014 | //---要获得商品,该用户买了多少件,同步应用--- | 1026 | //---要获得商品,该用户买了多少件,同步应用--- |
| 1015 | await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", { | 1027 | await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", { |
| 1016 | data: req_data, | 1028 | data: req_data, |
| @@ -1018,6 +1030,9 @@ Page({ | @@ -1018,6 +1030,9 @@ Page({ | ||
| 1018 | if(res.data.code==0){ | 1030 | if(res.data.code==0){ |
| 1019 | var buy_num_data = res.data.data; | 1031 | var buy_num_data = res.data.data; |
| 1020 | buynum = buy_num_data.goodsbuynum; | 1032 | buynum = buy_num_data.goodsbuynum; |
| 1033 | + if(buy_num_data.promgoodsbuynum){ | ||
| 1034 | + promnum=buy_num_data.promgoodsbuynum; | ||
| 1035 | + } | ||
| 1021 | } | 1036 | } |
| 1022 | }) | 1037 | }) |
| 1023 | 1038 | ||
| @@ -1032,6 +1047,40 @@ Page({ | @@ -1032,6 +1047,40 @@ Page({ | ||
| 1032 | b_item.goods_num=good['viplimited']; | 1047 | b_item.goods_num=good['viplimited']; |
| 1033 | } | 1048 | } |
| 1034 | } | 1049 | } |
| 1050 | + | ||
| 1051 | + //--要计算一下限购 -- | ||
| 1052 | + if(b_item.prom_type==7){ | ||
| 1053 | + var url1 = "/api/weshop/prom/zhbuyGoods/page"; | ||
| 1054 | + var req_data = { | ||
| 1055 | + page: 1, | ||
| 1056 | + pageSize: 2000, | ||
| 1057 | + store_id: os.stoid, | ||
| 1058 | + zh_id: b_item.prom_id, | ||
| 1059 | + goods_id:b_item.goods_id | ||
| 1060 | + } | ||
| 1061 | + await getApp().request.promiseGet(url1, { | ||
| 1062 | + data: req_data | ||
| 1063 | + }).then(res => { | ||
| 1064 | + if (ut.ajax_ok(res)) { | ||
| 1065 | + var gdlist = res.data.data.pageData[0]; | ||
| 1066 | + b_item.buyqty=gdlist.buyqty; | ||
| 1067 | + } | ||
| 1068 | + }) | ||
| 1069 | + | ||
| 1070 | + | ||
| 1071 | + //---- 要计算商品的限购 ----- | ||
| 1072 | + if(b_item['buyqty']>0){ | ||
| 1073 | + if(cart_num+buynum>b_item['buyqty']){ | ||
| 1074 | + err_text+= good['goods_name']+"超出限购\n"; | ||
| 1075 | + continue; | ||
| 1076 | + } | ||
| 1077 | + b_item['buyqty']-=(cart_num+buynum); | ||
| 1078 | + if(b_item.goods_num>b_item['buyqty']){ | ||
| 1079 | + b_item.goods_num=b_item['buyqty']; | ||
| 1080 | + } | ||
| 1081 | + } | ||
| 1082 | + } | ||
| 1083 | + | ||
| 1035 | 1084 | ||
| 1036 | back_goods_arr.push(b_item); //返回商品元素 | 1085 | back_goods_arr.push(b_item); //返回商品元素 |
| 1037 | 1086 |
pages/user/order_list/order_list.js
| @@ -1083,43 +1083,56 @@ Page({ | @@ -1083,43 +1083,56 @@ Page({ | ||
| 1083 | }) | 1083 | }) |
| 1084 | 1084 | ||
| 1085 | var lock=0,plist=null; | 1085 | var lock=0,plist=null; |
| 1086 | - //先读取门店的lock, | ||
| 1087 | - await getApp().request.promiseGet("/api/weshop/order/ware/lock/page",{ | ||
| 1088 | - data:{store_id:os.stoid,wareId:good.goods_id,storageId:b_item.pickup_id,pageSize:1000} | ||
| 1089 | - }).then(res=>{ | ||
| 1090 | - if(res.data.code==0 && res.data.data.total>0){ | ||
| 1091 | - for(var i in res.data.data.pageData) | ||
| 1092 | - lock+=res.data.data.pageData[i].outQty | ||
| 1093 | - } | ||
| 1094 | - }) | ||
| 1095 | 1086 | ||
| 1096 | - //---通过接口获取门店的线下库存信息-- | ||
| 1097 | - await getApp().request.promiseGet("/api/weshop/goods/getWareStorages",{ | ||
| 1098 | - data:{storageNos:pickup.pickup_no,wareIds:encodeURIComponent(good.erpwareid),storeId:os.stoid} | ||
| 1099 | - }).then(res=>{ | ||
| 1100 | - if(res.data.code==0 && res.data.data.total>0){ | ||
| 1101 | - plist=res.data.data.pageData[0]; | ||
| 1102 | - } | ||
| 1103 | - }) | 1087 | + if(b_item.prom_type!=7) { |
| 1088 | + //先读取门店的lock, | ||
| 1089 | + await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", { | ||
| 1090 | + data: {store_id: os.stoid, wareId: good.goods_id, storageId: b_item.pickup_id, pageSize: 1000} | ||
| 1091 | + }).then(res => { | ||
| 1092 | + if (res.data.code == 0 && res.data.data.total > 0) { | ||
| 1093 | + for (var i in res.data.data.pageData) | ||
| 1094 | + lock += res.data.data.pageData[i].outQty | ||
| 1095 | + } | ||
| 1096 | + }) | ||
| 1097 | + //---通过接口获取门店的线下库存信息-- | ||
| 1098 | + await getApp().request.promiseGet("/api/weshop/goods/getWareStorages", { | ||
| 1099 | + data: { | ||
| 1100 | + storageNos: pickup.pickup_no, | ||
| 1101 | + wareIds: encodeURIComponent(good.erpwareid), | ||
| 1102 | + storeId: os.stoid | ||
| 1103 | + } | ||
| 1104 | + }).then(res => { | ||
| 1105 | + if (res.data.code == 0 && res.data.data.total > 0) { | ||
| 1106 | + plist = res.data.data.pageData[0]; | ||
| 1107 | + } | ||
| 1108 | + }) | ||
| 1104 | 1109 | ||
| 1105 | - if(!plist){ | ||
| 1106 | - err_text+= good['goods_name']+"库存不足\n"; | ||
| 1107 | - continue; | ||
| 1108 | - } | ||
| 1109 | - if(plist.CanOutQty-lock<=0){ | ||
| 1110 | - err_text+= good['goods_name']+"库存不足\n"; | ||
| 1111 | - continue; | ||
| 1112 | - } | ||
| 1113 | - if(b_item.goods_num>(plist.CanOutQty-lock)){ | ||
| 1114 | - b_item.goods_num=plist.CanOutQty-lock; | ||
| 1115 | - } | 1110 | + if (!plist) { |
| 1111 | + err_text += good['goods_name'] + "库存不足\n"; | ||
| 1112 | + continue; | ||
| 1113 | + } | ||
| 1114 | + if (plist.CanOutQty - lock <= 0) { | ||
| 1115 | + err_text += good['goods_name'] + "库存不足\n"; | ||
| 1116 | + continue; | ||
| 1117 | + } | ||
| 1118 | + if (b_item.goods_num > (plist.CanOutQty - lock)) { | ||
| 1119 | + b_item.goods_num = plist.CanOutQty - lock; | ||
| 1120 | + } | ||
| 1121 | + } | ||
| 1116 | var req_data={ | 1122 | var req_data={ |
| 1117 | store_id: os.stoid, | 1123 | store_id: os.stoid, |
| 1118 | user_id: getApp().globalData.user_id, | 1124 | user_id: getApp().globalData.user_id, |
| 1119 | goods_id: good.goods_id, | 1125 | goods_id: good.goods_id, |
| 1120 | }; | 1126 | }; |
| 1121 | 1127 | ||
| 1128 | + if(b_item.prom_type==7){ | ||
| 1129 | + req_data.prom_type=7; | ||
| 1130 | + req_data.prom_id=b_item.prom_id; | ||
| 1131 | + } | ||
| 1132 | + | ||
| 1133 | + | ||
| 1122 | var buynum=0; | 1134 | var buynum=0; |
| 1135 | + var promnum=0; | ||
| 1123 | //---要获得商品,该用户买了多少件,同步应用--- | 1136 | //---要获得商品,该用户买了多少件,同步应用--- |
| 1124 | await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", { | 1137 | await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", { |
| 1125 | data: req_data, | 1138 | data: req_data, |
| @@ -1127,6 +1140,9 @@ Page({ | @@ -1127,6 +1140,9 @@ Page({ | ||
| 1127 | if(res.data.code==0){ | 1140 | if(res.data.code==0){ |
| 1128 | var buy_num_data = res.data.data; | 1141 | var buy_num_data = res.data.data; |
| 1129 | buynum = buy_num_data.goodsbuynum; | 1142 | buynum = buy_num_data.goodsbuynum; |
| 1143 | + if(buy_num_data.promgoodsbuynum){ | ||
| 1144 | + promnum=buy_num_data.promgoodsbuynum; | ||
| 1145 | + } | ||
| 1130 | } | 1146 | } |
| 1131 | }) | 1147 | }) |
| 1132 | 1148 | ||
| @@ -1142,6 +1158,39 @@ Page({ | @@ -1142,6 +1158,39 @@ Page({ | ||
| 1142 | } | 1158 | } |
| 1143 | } | 1159 | } |
| 1144 | 1160 | ||
| 1161 | + //--要计算一下限购 -- | ||
| 1162 | + if(b_item.prom_type==7){ | ||
| 1163 | + var url1 = "/api/weshop/prom/zhbuyGoods/page"; | ||
| 1164 | + var req_data = { | ||
| 1165 | + page: 1, | ||
| 1166 | + pageSize: 2000, | ||
| 1167 | + store_id: os.stoid, | ||
| 1168 | + zh_id: b_item.prom_id, | ||
| 1169 | + goods_id:b_item.goods_id | ||
| 1170 | + } | ||
| 1171 | + await getApp().request.promiseGet(url1, { | ||
| 1172 | + data: req_data | ||
| 1173 | + }).then(res => { | ||
| 1174 | + if (ut.ajax_ok(res)) { | ||
| 1175 | + var gdlist = res.data.data.pageData[0]; | ||
| 1176 | + b_item.buyqty=gdlist.buyqty; | ||
| 1177 | + } | ||
| 1178 | + }) | ||
| 1179 | + | ||
| 1180 | + | ||
| 1181 | + //---- 要计算商品的限购 ----- | ||
| 1182 | + if(b_item['buyqty']>0){ | ||
| 1183 | + if(cart_num+buynum>b_item['buyqty']){ | ||
| 1184 | + err_text+= good['goods_name']+"超出限购\n"; | ||
| 1185 | + continue; | ||
| 1186 | + } | ||
| 1187 | + b_item['buyqty']-=(cart_num+buynum); | ||
| 1188 | + if(b_item.goods_num>b_item['buyqty']){ | ||
| 1189 | + b_item.goods_num=b_item['buyqty']; | ||
| 1190 | + } | ||
| 1191 | + } | ||
| 1192 | + } | ||
| 1193 | + | ||
| 1145 | back_goods_arr.push(b_item); //返回商品元素 | 1194 | back_goods_arr.push(b_item); //返回商品元素 |
| 1146 | 1195 | ||
| 1147 | }else{ | 1196 | }else{ |