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 | 144 | * 页面上拉触底事件的处理函数 |
| 145 | 145 | */ |
| 146 | 146 | onReachBottom: function () { |
| 147 | + var th=this; | |
| 147 | 148 | this.scrollToLower('/api/weshop/users/distribut/teamlist', { |
| 148 | 149 | store_id: app.globalData.setting.stoid, |
| 149 | 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 | 974 | }) |
| 975 | 975 | |
| 976 | 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 | 1014 | var req_data={ |
| 1008 | 1015 | store_id: os.stoid, |
| 1009 | 1016 | user_id: getApp().globalData.user_id, |
| 1010 | 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 | 1027 | await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", { |
| 1016 | 1028 | data: req_data, |
| ... | ... | @@ -1018,6 +1030,9 @@ Page({ |
| 1018 | 1030 | if(res.data.code==0){ |
| 1019 | 1031 | var buy_num_data = res.data.data; |
| 1020 | 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 | 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 | 1085 | back_goods_arr.push(b_item); //返回商品元素 |
| 1037 | 1086 | ... | ... |
pages/user/order_list/order_list.js
| ... | ... | @@ -1083,43 +1083,56 @@ Page({ |
| 1083 | 1083 | }) |
| 1084 | 1084 | |
| 1085 | 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 | 1122 | var req_data={ |
| 1117 | 1123 | store_id: os.stoid, |
| 1118 | 1124 | user_id: getApp().globalData.user_id, |
| 1119 | 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 | 1134 | var buynum=0; |
| 1135 | + var promnum=0; | |
| 1123 | 1136 | //---要获得商品,该用户买了多少件,同步应用--- |
| 1124 | 1137 | await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", { |
| 1125 | 1138 | data: req_data, |
| ... | ... | @@ -1127,6 +1140,9 @@ Page({ |
| 1127 | 1140 | if(res.data.code==0){ |
| 1128 | 1141 | var buy_num_data = res.data.data; |
| 1129 | 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 | 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 | 1194 | back_goods_arr.push(b_item); //返回商品元素 |
| 1146 | 1195 | |
| 1147 | 1196 | }else{ | ... | ... |