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{ |