Commit d01195f1adcf32f0fe591187f4591685bf16802f
1 parent
4376a930
虚拟商品的优化
Showing
12 changed files
with
352 additions
and
616 deletions
app.js
@@ -1308,7 +1308,6 @@ App({ | @@ -1308,7 +1308,6 @@ App({ | ||
1308 | var stoid=this.globalData.setting.stoid; | 1308 | var stoid=this.globalData.setting.stoid; |
1309 | var user_id=this.globalData.user_id; | 1309 | var user_id=this.globalData.user_id; |
1310 | 1310 | ||
1311 | - | ||
1312 | this.getConfig2(async function (e){ | 1311 | this.getConfig2(async function (e){ |
1313 | if(e && e.switch_list) conf=JSON.parse(e.switch_list); | 1312 | if(e && e.switch_list) conf=JSON.parse(e.switch_list); |
1314 | if(conf && conf.express_searchtype==1){ | 1313 | if(conf && conf.express_searchtype==1){ |
@@ -1319,6 +1318,43 @@ App({ | @@ -1319,6 +1318,43 @@ App({ | ||
1319 | th.goto(url); | 1318 | th.goto(url); |
1320 | 1319 | ||
1321 | }) | 1320 | }) |
1321 | + }, | ||
1322 | + | ||
1323 | + //---- 判断是不是虚拟商品狗阿米 ----- | ||
1324 | + is_virtual(gd){ | ||
1325 | + if(gd.is_virtual==2) return true; | ||
1326 | + return false; | ||
1327 | + }, | ||
1328 | + | ||
1329 | + /** | ||
1330 | + * | ||
1331 | + * @param gd 商品 | ||
1332 | + * @param act 活动 | ||
1333 | + * @param get_type 0默认 1是加和减的时候 | ||
1334 | + */ | ||
1335 | + get_limit_qty(gd,act,get_type){ | ||
1336 | + var islimit=gd.erp_islimit; //是不是限购 | ||
1337 | + var limittype=gd.erp_limittype; //不低于0、倍数1 | ||
1338 | + var limitqty=gd.erp_limitqty; //起购量 | ||
1339 | + | ||
1340 | + //-- 如果有活动的时候 -- | ||
1341 | + if(act){ | ||
1342 | + islimit=act.islimit; | ||
1343 | + limittype=act.limittype; | ||
1344 | + limitqty=act.limitqty; | ||
1345 | + } | ||
1346 | + | ||
1347 | + //-- 不是限购的时候,返回1-- | ||
1348 | + if(!islimit) return 1; | ||
1349 | + //-- 默认的时候 -- | ||
1350 | + if(!get_type) return limitqty; | ||
1351 | + //不低于的时候,加减的时候 | ||
1352 | + if(!limittype) return 1; | ||
1353 | + //倍数,加减的时候 | ||
1354 | + return limitqty; | ||
1322 | } | 1355 | } |
1323 | 1356 | ||
1357 | + | ||
1358 | + | ||
1359 | + | ||
1324 | }); | 1360 | }); |
packageA/pages/goodsInfo/goodsInfo.js
@@ -3894,507 +3894,7 @@ Page({ | @@ -3894,507 +3894,7 @@ Page({ | ||
3894 | }); | 3894 | }); |
3895 | }, | 3895 | }, |
3896 | 3896 | ||
3897 | - | ||
3898 | - | ||
3899 | - | ||
3900 | - | ||
3901 | - | ||
3902 | - | ||
3903 | - //-- 加入购物的函数 -- | ||
3904 | - add_cart_func: function (t) { | ||
3905 | - var i = getApp().request; | ||
3906 | - if (oo.user_id == null) { | ||
3907 | - return s.my_warnning("还未登录!", 0, this); | ||
3908 | - } | ||
3909 | - | ||
3910 | - if (!getApp().globalData.userInfo) { | ||
3911 | - return s.my_warnning("还未登录!", 0, this); | ||
3912 | - } | ||
3913 | - | ||
3914 | - var e = this, | ||
3915 | - th = e, | ||
3916 | - a = 0, | ||
3917 | - o = this.data.sele_g; | ||
3918 | - a = o.goods_id; | ||
3919 | - | ||
3920 | - //----------添加到购物车时,要判断限购数量,-------- | ||
3921 | - e.get_buy_num(o, function (ee) { | ||
3922 | - //---判断商品是否超出限购--- | ||
3923 | - if (th.data.g_buy_num != null && th.data.sele_g.viplimited > 0) { | ||
3924 | - if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id) > th.data.sele_g.viplimited) { | ||
3925 | - // wx.showModal({ | ||
3926 | - // title: '提示', | ||
3927 | - // content: '超出活动限购数量' | ||
3928 | - // }); | ||
3929 | - getApp().my_warnning('超出活动限购数量', 0, self); | ||
3930 | - return false; | ||
3931 | - } | ||
3932 | - } | ||
3933 | - //---判断商品是否超出活动限购--- | ||
3934 | - if ((th.data.prom_buy_num != -1 && th.data.prom_buy_limit > 0) && !th.data.is_normal) { | ||
3935 | - if (th.data.goodsInputNum + th.data.prom_buy_num > th.data.prom_buy_limit) { | ||
3936 | - // wx.showModal({ | ||
3937 | - // title: '提示', | ||
3938 | - // content: '超出活动限购数量' | ||
3939 | - // }); | ||
3940 | - getApp().my_warnning('超出活动限购数量', 0, self); | ||
3941 | - return false; | ||
3942 | - } | ||
3943 | - } | ||
3944 | - | ||
3945 | - if (th.data.goodsInputNum <= 0) return s.my_warnning("商品数量不能为0", 0, th); | ||
3946 | - if (th.data.sto_sele_name == null || th.data.sto_sele_name == undefined) | ||
3947 | - th.setData({ | ||
3948 | - sto_sele_name: "" | ||
3949 | - }); | ||
3950 | - if (th.data.sto_sele_name == "") return s.my_warnning("请选择门店", 0, th); | ||
3951 | - | ||
3952 | - //--------------此时操作的数据------------ | ||
3953 | - var newd = { | ||
3954 | - goods_id: o.goods_id, | ||
3955 | - goods_num: th.data.goodsInputNum, | ||
3956 | - pick_id: th.data.sto_sele_id, | ||
3957 | - user_id: oo.user_id, | ||
3958 | - store_id: th.data.stoid, | ||
3959 | - goods_price: o.shop_price, | ||
3960 | - member_goods_price: o.shop_price, | ||
3961 | - goods_name: o.goods_name, | ||
3962 | - goods_sn: o.goods_sn, | ||
3963 | - sku: o.sku, | ||
3964 | - prom_id: th.data.sele_g.prom_id, | ||
3965 | - prom_type: th.data.sele_g.prom_type, | ||
3966 | - }; | ||
3967 | - | ||
3968 | - //---是不是从收藏夹出来的--- | ||
3969 | - if (th.data.c_guide_id) { | ||
3970 | - newd['guide_id'] = th.data.c_guide_id; | ||
3971 | - newd['guide_type'] = 2; | ||
3972 | - if ("add" == t.currentTarget.dataset.action) newd['guide_type'] = 3; | ||
3973 | - } else { | ||
3974 | - if (getApp().globalData.guide_id) { | ||
3975 | - newd['guide_id'] = getApp().globalData.guide_id; | ||
3976 | - newd['guide_type'] = 0; | ||
3977 | - if ("add" == t.currentTarget.dataset.action) newd['guide_type'] = 1; | ||
3978 | - } | ||
3979 | - } | ||
3980 | - if(getApp().globalData.groupchat_id){ | ||
3981 | - newd['groupchat_id'] = getApp().globalData.groupchat_id; | ||
3982 | - } | ||
3983 | - //让商品带上房间号 | ||
3984 | - //让商品带上房间号 | ||
3985 | - if (th.data.sys_switch.is_skuroom_id == 1) { | ||
3986 | - if (th.data.data.goods_id == getApp().globalData.room_goods_id) { | ||
3987 | - newd.room_id = getApp().globalData.room_id; | ||
3988 | - } | ||
3989 | - } else { | ||
3990 | - if (newd.goods_id == getApp().globalData.room_goods_id) newd.room_id = getApp().globalData.room_id; | ||
3991 | - } | ||
3992 | - | ||
3993 | - //如果是积分够,is_integral_normal就要有积分购普通购买字段 | ||
3994 | - if (o.prom_type == 4) { | ||
3995 | - newd.is_integral_normal = 1; | ||
3996 | - } | ||
3997 | - | ||
3998 | - //如果有线下取价 | ||
3999 | - if (o.offline_price) { | ||
4000 | - newd.offline_price = o.offline_price; | ||
4001 | - newd.pricing_type = o.pricing_type; | ||
4002 | - } | ||
4003 | - | ||
4004 | - //-----如果是秒杀,团购,积分购,拼团----- | ||
4005 | - if (th.data.prom_type == 1 || th.data.prom_type == 2) { | ||
4006 | - | ||
4007 | - if (th.data.openSpecModal_flash_normal) { | ||
4008 | - | ||
4009 | - newd.prom_type = 0; | ||
4010 | - newd.prom_id = 0; | ||
4011 | - | ||
4012 | - //---如果是线下门店销售的时候--- | ||
4013 | - if (th.data.sales_rules == 2) { | ||
4014 | - var pick = th.get_pick_from_list(th.data.sto_sele_id) | ||
4015 | - //---通过接口获取门店的线下库存信息-- | ||
4016 | - getApp().request.get("/api/weshop/goods/getWareStorages", { | ||
4017 | - data: { | ||
4018 | - storageNos: pick.pickup_no, | ||
4019 | - wareIds: encodeURIComponent(th.data.sele_g.erpwareid), | ||
4020 | - storeId: os.stoid | ||
4021 | - }, | ||
4022 | - success: function (res) { | ||
4023 | - if (res.data.code == 0) { | ||
4024 | - if (res.data.data.pageData.length > 0) { | ||
4025 | - var CanOutQty = res.data.data.pageData[0].CanOutQty; | ||
4026 | - if (CanOutQty < e.data.goodsInputNum) { | ||
4027 | - return s.my_warnning("库存不足!", 0, th); | ||
4028 | - } | ||
4029 | - //在调一次接口,读取商品的预出库的数量,lock | ||
4030 | - getApp().request.get("/api/weshop/order/ware/lock/page", { | ||
4031 | - data: { | ||
4032 | - store_id: os.stoid, | ||
4033 | - wareId: th.data.sele_g.goods_id, | ||
4034 | - storageId: pick.pickup_id, | ||
4035 | - pageSize: 1000 | ||
4036 | - }, | ||
4037 | - success: function (res_data) { | ||
4038 | - if (res_data.data.code == 0 && res_data.data.data.total > 0) { | ||
4039 | - | ||
4040 | - var lock = 0; | ||
4041 | - for (var i in res_data.data.data.pageData) { | ||
4042 | - lock += res_data.data.data.pageData[i].outQty; | ||
4043 | - } | ||
4044 | - | ||
4045 | - if (CanOutQty <= lock) { | ||
4046 | - return s.my_warnning("库存不足!", 0, th); | ||
4047 | - } | ||
4048 | - th.add_cart_next(e, t, a, o, newd, CanOutQty - lock); | ||
4049 | - } else { | ||
4050 | - th.add_cart_next(e, t, a, o, newd, CanOutQty); | ||
4051 | - } | ||
4052 | - } | ||
4053 | - }) | ||
4054 | - } else { | ||
4055 | - return s.my_warnning("库存不足!", 0, th); | ||
4056 | - } | ||
4057 | - | ||
4058 | - } | ||
4059 | - } | ||
4060 | - }) | ||
4061 | - } else { | ||
4062 | - if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th); | ||
4063 | - if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th); | ||
4064 | - th.add_cart_next(e, t, a, o, newd); //加入购物车下一步 | ||
4065 | - } | ||
4066 | - | ||
4067 | - return false; | ||
4068 | - } | ||
4069 | - | ||
4070 | - | ||
4071 | - newd.goods_price = th.data.prom_price; | ||
4072 | - newd.member_goods_price = th.data.prom_price, | ||
4073 | - newd.prom_type = th.data.prom_type; | ||
4074 | - newd.prom_id = th.data.prom_id; | ||
4075 | - | ||
4076 | - if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th); | ||
4077 | - if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th); | ||
4078 | - | ||
4079 | - th.add_cart_next(e, t, a, o, newd); //加入购物车下一步 | ||
4080 | - | ||
4081 | - } else if (o.prom_type == 7) { | ||
4082 | - | ||
4083 | - //判断进行中的活动,是不是要判断线下库存 | ||
4084 | - th.check_zh_acting(function (ee) { | ||
4085 | - newd.prom_id = 0; | ||
4086 | - newd.prom_type = 0; | ||
4087 | - if (ee && th.data.sele_g.act) { | ||
4088 | - newd.prom_id = th.data.sele_g.act.id; | ||
4089 | - newd.prom_type = 7; | ||
4090 | - if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th); | ||
4091 | - if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th); | ||
4092 | - th.add_cart_next(e, t, a, o, newd); //加入购物车下一步 | ||
4093 | - return false; | ||
4094 | - } else { | ||
4095 | - //---如果是线下门店销售的时候--- | ||
4096 | - if (th.data.sales_rules == 2) { | ||
4097 | - var pick = th.get_pick_from_list(th.data.sto_sele_id) | ||
4098 | - //---通过接口获取门店的线下库存信息-- | ||
4099 | - getApp().request.get("/api/weshop/goods/getWareStorages", { | ||
4100 | - data: { | ||
4101 | - storageNos: pick.pickup_no, | ||
4102 | - wareIds: encodeURIComponent(th.data.sele_g.erpwareid), | ||
4103 | - storeId: os.stoid | ||
4104 | - }, | ||
4105 | - success: function (res) { | ||
4106 | - if (res.data.code == 0) { | ||
4107 | - if (res.data.data.pageData.length > 0) { | ||
4108 | - var CanOutQty = res.data.data.pageData[0].CanOutQty; | ||
4109 | - if (CanOutQty < e.data.goodsInputNum) { | ||
4110 | - return s.my_warnning("库存不足!", 0, th); | ||
4111 | - } | ||
4112 | - //在调一次接口,读取商品的预出库的数量,lock | ||
4113 | - getApp().request.get("/api/weshop/order/ware/lock/page", { | ||
4114 | - data: { | ||
4115 | - store_id: os.stoid, | ||
4116 | - wareId: th.data.sele_g.goods_id, | ||
4117 | - storageId: pick.pickup_id, | ||
4118 | - pageSize: 1000 | ||
4119 | - }, | ||
4120 | - success: function (res_data) { | ||
4121 | - if (res_data.data.code == 0 && res_data.data.data.total > 0) { | ||
4122 | - | ||
4123 | - var lock = 0; | ||
4124 | - for (var i in res_data.data.data.pageData) { | ||
4125 | - lock += res_data.data.data.pageData[i].outQty; | ||
4126 | - } | ||
4127 | - | ||
4128 | - if (CanOutQty <= lock) { | ||
4129 | - return s.my_warnning("库存不足!", 0, th); | ||
4130 | - } | ||
4131 | - th.add_cart_next(e, t, a, o, newd, CanOutQty - lock); | ||
4132 | - } else { | ||
4133 | - th.add_cart_next(e, t, a, o, newd, CanOutQty); | ||
4134 | - } | ||
4135 | - } | ||
4136 | - }) | ||
4137 | - } else { | ||
4138 | - return s.my_warnning("库存不足!", 0, th); | ||
4139 | - } | ||
4140 | - | ||
4141 | - } | ||
4142 | - } | ||
4143 | - }) | ||
4144 | - } else { | ||
4145 | - if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th); | ||
4146 | - if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th); | ||
4147 | - th.add_cart_next(e, t, a, o, newd); //加入购物车下一步 | ||
4148 | - } | ||
4149 | - } | ||
4150 | - }) | ||
4151 | - | ||
4152 | - } | ||
4153 | - else if (th.data.prom_type == 0 || th.data.prom_type == 3 || th.data.prom_type == 4 || th.data.prom_type == 5 || th.data.prom_type == 10) { | ||
4154 | - newd.prom_type = 0; | ||
4155 | - newd.prom_id = 0; | ||
4156 | - | ||
4157 | - if (th.data.prom_type == 10) { | ||
4158 | - newd.prom_type = th.data.prom_type; | ||
4159 | - newd.prom_id = th.data.prom_id; | ||
4160 | - } | ||
4161 | - | ||
4162 | - //---如果是线下门店销售的时候--- | ||
4163 | - if (th.data.sales_rules == 2) { | ||
4164 | - var pick = th.get_pick_from_list(th.data.sto_sele_id) | ||
4165 | - //---通过接口获取门店的线下库存信息-- | ||
4166 | - getApp().request.get("/api/weshop/goods/getWareStorages", { | ||
4167 | - data: { | ||
4168 | - storageNos: pick.pickup_no, | ||
4169 | - wareIds: encodeURIComponent(th.data.sele_g.erpwareid), | ||
4170 | - storeId: os.stoid | ||
4171 | - }, | ||
4172 | - success: function (res) { | ||
4173 | - if (res.data.code == 0) { | ||
4174 | - if (res.data.data.pageData.length > 0) { | ||
4175 | - var CanOutQty = res.data.data.pageData[0].CanOutQty; | ||
4176 | - if (CanOutQty < e.data.goodsInputNum) { | ||
4177 | - return s.my_warnning("库存不足!", 0, th); | ||
4178 | - } | ||
4179 | - //在调一次接口,读取商品的预出库的数量,lock | ||
4180 | - getApp().request.get("/api/weshop/order/ware/lock/page", { | ||
4181 | - data: { | ||
4182 | - store_id: os.stoid, | ||
4183 | - wareId: th.data.sele_g.goods_id, | ||
4184 | - storageId: pick.pickup_id, | ||
4185 | - pageSize: 1000 | ||
4186 | - }, | ||
4187 | - success: function (res_data) { | ||
4188 | - if (res_data.data.code == 0 && res_data.data.data.total > 0) { | ||
4189 | - | ||
4190 | - var lock = 0; | ||
4191 | - for (var i in res_data.data.data.pageData) { | ||
4192 | - lock += res_data.data.data.pageData[i].outQty; | ||
4193 | - } | ||
4194 | - | ||
4195 | - if (CanOutQty <= lock) { | ||
4196 | - return s.my_warnning("库存不足!", 0, th); | ||
4197 | - } | ||
4198 | - th.add_cart_next(e, t, a, o, newd, CanOutQty - lock); | ||
4199 | - } else { | ||
4200 | - th.add_cart_next(e, t, a, o, newd, CanOutQty); | ||
4201 | - } | ||
4202 | - } | ||
4203 | - }) | ||
4204 | - } else { | ||
4205 | - return s.my_warnning("库存不足!", 0, th); | ||
4206 | - } | ||
4207 | - | ||
4208 | - } | ||
4209 | - } | ||
4210 | - }) | ||
4211 | - } else { | ||
4212 | - if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th); | ||
4213 | - if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th); | ||
4214 | - th.add_cart_next(e, t, a, o, newd); //加入购物车下一步 | ||
4215 | - } | ||
4216 | - } | ||
4217 | - }) | ||
4218 | - }, | ||
4219 | - | ||
4220 | - //---加入购物车的最后一步--- | ||
4221 | - add_cart_next(e, t, a, o, newd, CanOutQty) { | ||
4222 | - var th = this, i = getApp().request; | ||
4223 | - //---如果商品不是积分购和拼团,要判断一个是否要进行等级价的判断------ | ||
4224 | - if ((o.prom_type != 1 || o.prom_id <= 0) && ((o.prom_type != 6 && o.prom_type != 4 && o.prom_type != 2 ) || th.data.is_normal)) { | ||
4225 | - var conf = th.data.bconfig; | ||
4226 | - if (conf.switch_list && getApp().globalData.userInfo['card_field'] && getApp().globalData.userInfo['card_expiredate']) { | ||
4227 | - var s_list = JSON.parse(conf.switch_list); | ||
4228 | - var now = ut.gettimestamp(); | ||
4229 | - | ||
4230 | - | ||
4231 | - var str = getApp().globalData.userInfo['card_expiredate'].replace(/-/g, '/'); | ||
4232 | - var end = new Date(str); | ||
4233 | - end = Date.parse(end) / 1000; | ||
4234 | - | ||
4235 | - //--如果后台有开启等级价的功能,而且会员的等级没有过期的情况下-- | ||
4236 | - if (parseInt(s_list.rank_switch) == 2 && end > now) { | ||
4237 | - var card_price = o[getApp().globalData.userInfo['card_field']]; | ||
4238 | - //如果会员有等级价 | ||
4239 | - if (getApp().globalData.userInfo['card_field'] != undefined && getApp().globalData.userInfo['card_field'] != null | ||
4240 | - && getApp().globalData.userInfo['card_field'] != "" && card_price > 0) { | ||
4241 | - newd.goods_price = card_price; | ||
4242 | - newd.member_goods_price = card_price; | ||
4243 | - } | ||
4244 | - } | ||
4245 | - } | ||
4246 | - } | ||
4247 | - | ||
4248 | - //if (this.data.data.goods.is_virtual) return this.buyVirtualGoods(d); | ||
4249 | - if ("add" == t.currentTarget.dataset.action) { | ||
4250 | - | ||
4251 | - if (th.data.prom_goods) { | ||
4252 | - newd.prom_type = 3; | ||
4253 | - newd.prom_id = th.data.prom_goods[0].prom_id; | ||
4254 | - } | ||
4255 | - | ||
4256 | - //----先看会员在购物车中是否加入了该商品----- | ||
4257 | - i.get("/api/weshop/cart/page", { | ||
4258 | - data: { | ||
4259 | - store_id: e.data.stoid, | ||
4260 | - user_id: oo.user_id, | ||
4261 | - goods_id: a, | ||
4262 | - pick_id: e.data.sto_sele_id, | ||
4263 | - prom_type:(newd.prom_type?newd.prom_type:0), | ||
4264 | - state: 0 | ||
4265 | - }, | ||
4266 | - success: function (re) { | ||
4267 | - | ||
4268 | - //-------如果购物车中有相关的数据--------- | ||
4269 | - if (re.data.data.total > 0) { | ||
4270 | - | ||
4271 | - var item = re.data.data.pageData[0]; | ||
4272 | - | ||
4273 | - //判断数量,要看下购物车中有没有该商品 | ||
4274 | - if (CanOutQty) { | ||
4275 | - if (item.goods_num + th.data.goodsInputNum > CanOutQty) { | ||
4276 | - return s.my_warnning("库存不足!", 0, th); | ||
4277 | - } | ||
4278 | - } else { | ||
4279 | - if (item.goods_num + th.data.goodsInputNum > o.store_count) { | ||
4280 | - return s.my_warnning("库存不足!", 0, th); | ||
4281 | - } | ||
4282 | - } | ||
4283 | - | ||
4284 | - var updata = { | ||
4285 | - id: item.id, | ||
4286 | - goods_num: e.data.goodsInputNum + item.goods_num, | ||
4287 | - goods_price: newd.goods_price, | ||
4288 | - member_goods_price: newd.goods_price, | ||
4289 | - store_id: th.data.stoid, | ||
4290 | - }; | ||
4291 | - | ||
4292 | - //---是不是从收藏夹出来的--- | ||
4293 | - if (th.data.c_guide_id) { | ||
4294 | - updata['guide_id'] = th.data.c_guide_id; | ||
4295 | - updata['guide_type'] = 3; //加入购物车之后就变成了3 | ||
4296 | - } else { | ||
4297 | - if (getApp().globalData.guide_id) { | ||
4298 | - updata['guide_id'] = getApp().globalData.guide_id; | ||
4299 | - updata['guide_type'] = 0; | ||
4300 | - } | ||
4301 | - } | ||
4302 | - if(getApp().globalData.groupchat_id){ | ||
4303 | - updata['groupchat_id'] = getApp().globalData.groupchat_id; | ||
4304 | - } | ||
4305 | - i.put("/api/weshop/cart/update", { | ||
4306 | - data: updata, | ||
4307 | - success: function (t) { | ||
4308 | - getApp().my_warnning('加入购物车成功', 1, th, 450); | ||
4309 | - var c_num = th.data.cartGoodsNum + th.data.goodsInputNum; | ||
4310 | - th.setData({ | ||
4311 | - cartGoodsNum: c_num | ||
4312 | - }); | ||
4313 | - th.closeSpecModal(); | ||
4314 | - } | ||
4315 | - }); | ||
4316 | - } else { | ||
4317 | - | ||
4318 | - | ||
4319 | - i.post("/api/weshop/cart/save", { | ||
4320 | - data: newd, | ||
4321 | - success: function (t) { | ||
4322 | - getApp().my_warnning('加入购物车成功', 1, th, 450); | ||
4323 | - var c_num = th.data.cartGoodsNum + e.data.goodsInputNum; | ||
4324 | - th.setData({ | ||
4325 | - cartGoodsNum: c_num | ||
4326 | - }); | ||
4327 | - th.closeSpecModal(); | ||
4328 | - } | ||
4329 | - }); | ||
4330 | - } | ||
4331 | - } | ||
4332 | - }); | ||
4333 | - | ||
4334 | - } | ||
4335 | - else { | ||
4336 | - | ||
4337 | - //这一步主要是要让立即购买 走 购物车的逻辑 参与活动 | ||
4338 | - if (newd.prom_type == 10 || newd.prom_type == 7) { | ||
4339 | - //----先看会员在购物车中是否加入了该商品,立即购买的----- | ||
4340 | - getApp().request.get("/api/weshop/cart/page", { | ||
4341 | - data: { | ||
4342 | - store_id: e.data.stoid, | ||
4343 | - user_id: oo.user_id, | ||
4344 | - state: 1 | ||
4345 | - }, | ||
4346 | - success: function (res) { | ||
4347 | - //-------如果购物车中有相关的数据--------- | ||
4348 | - if (res.data.code == 0 && res.data.data.total > 0) { | ||
4349 | - for (let j in res.data.data.pageData) { | ||
4350 | - let item_j = res.data.data.pageData[j]; | ||
4351 | - var url = '/api/weshop/cart/del/' + e.data.stoid + '/' + item_j.id; | ||
4352 | - getApp().request.delete(url, {}); | ||
4353 | - } | ||
4354 | - } | ||
4355 | - newd.state = 1; | ||
4356 | - getApp().request.post("/api/weshop/cart/save", { | ||
4357 | - data: newd, | ||
4358 | - success: function (t) { | ||
4359 | - th.closeSpecModal(); | ||
4360 | - getApp().goto("/packageE/pages/cart/cart2/cart2?state=1"); | ||
4361 | - } | ||
4362 | - }); | ||
4363 | - }, | ||
4364 | - }) | ||
4365 | - return false; | ||
4366 | - } | ||
4367 | - | ||
4368 | - if (th.data.prom_goods) { | ||
4369 | - var prom_d = th.data.prom_goods; | ||
4370 | - for (var i in prom_d) { | ||
4371 | - //判断活动有俩种条件,0元 1件 | ||
4372 | - var condition_t = prom_d[i].prom_type; | ||
4373 | - switch (condition_t) { | ||
4374 | - case 0: //按钱 | ||
4375 | - if (newd.goods_price >= condition_t) { | ||
4376 | - newd.prom_type = 3; | ||
4377 | - newd.prom_id = prom_d[i].prom_id; | ||
4378 | - } | ||
4379 | - break | ||
4380 | - case 1://按购买数量 | ||
4381 | - if (newd.goods_num >= condition_t) { | ||
4382 | - newd.prom_type = 3; | ||
4383 | - newd.prom_id = prom_d[i].prom_id; | ||
4384 | - } | ||
4385 | - break; | ||
4386 | - } | ||
4387 | - } | ||
4388 | - | ||
4389 | - } | ||
4390 | - | ||
4391 | - newd['pick_name'] = th.data.sto_sele_name; | ||
4392 | - newd['pick_dis'] = th.data.sto_sele_distr; | ||
4393 | - th.buyNow(newd); | ||
4394 | - } | ||
4395 | - }, | ||
4396 | - | ||
4397 | - | 3897 | + |
4398 | click_contact:function () { | 3898 | click_contact:function () { |
4399 | getApp().globalData.no_clear=1; | 3899 | getApp().globalData.no_clear=1; |
4400 | }, | 3900 | }, |
packageA/pages/prom_list/prom_list.js
@@ -351,7 +351,7 @@ Page({ | @@ -351,7 +351,7 @@ Page({ | ||
351 | 351 | ||
352 | //获取统一条形码,普通商品和优惠促销的商品 | 352 | //获取统一条形码,普通商品和优惠促销的商品 |
353 | //默认门店要拿下门店库存 | 353 | //默认门店要拿下门店库存 |
354 | - if (that.data.sales_rules >= 2) { | 354 | + if (!getApp().is_virtual(t.data.data) && !t.data.data.whsle_id && that.data.sales_rules >= 2) { |
355 | //--等待某个值只运行---,这里有可能因为导航的时间太久,而不能计算门店库存 | 355 | //--等待某个值只运行---,这里有可能因为导航的时间太久,而不能计算门店库存 |
356 | getApp().waitfor2(that, "wait_for_user_store", "fir_def_store", function () { | 356 | getApp().waitfor2(that, "wait_for_user_store", "fir_def_store", function () { |
357 | 357 |
packageC/pages/luckyGo/luckyGo_goodsInfo/luckyGo_goodsInfo.js
@@ -575,7 +575,9 @@ Page({ | @@ -575,7 +575,9 @@ Page({ | ||
575 | var that = this, th = this; | 575 | var that = this, th = this; |
576 | getApp().getConfig2(function (e) { | 576 | getApp().getConfig2(function (e) { |
577 | var sales_rules = e.sales_rules; | 577 | var sales_rules = e.sales_rules; |
578 | - if (sales_rules >= 2) { | 578 | + |
579 | + //虚拟商品, 代发商品不计算 | ||
580 | + if (!getApp().is_virtual(that.data.fir_goods) && !that.data.fir_goods.whsle_id && sales_rules >= 2) { | ||
579 | getApp().waitfor2(that, "wait_for_user_store", "fir_goods", function () { | 581 | getApp().waitfor2(that, "wait_for_user_store", "fir_goods", function () { |
580 | var lock = 0, plist = null; | 582 | var lock = 0, plist = null; |
581 | var gd = that.data.fir_goods; | 583 | var gd = that.data.fir_goods; |
@@ -1672,7 +1674,7 @@ Page({ | @@ -1672,7 +1674,7 @@ Page({ | ||
1672 | return false; | 1674 | return false; |
1673 | } else { | 1675 | } else { |
1674 | //---如果是线下门店销售的时候--- | 1676 | //---如果是线下门店销售的时候--- |
1675 | - if (th.data.sales_rules >= 2) { | 1677 | + if(!getApp().is_virtual(th.data.sele_g) && !th.data.sele_g.whsle_id && th.data.sales_rules >= 2) { |
1676 | var pick = th.get_pick_from_list(th.data.sto_sele_id) | 1678 | var pick = th.get_pick_from_list(th.data.sto_sele_id) |
1677 | //---通过接口获取门店的线下库存信息-- | 1679 | //---通过接口获取门店的线下库存信息-- |
1678 | // getApp().request.get("/api/weshop/goods/getWareStorages", { | 1680 | // getApp().request.get("/api/weshop/goods/getWareStorages", { |
@@ -1748,7 +1750,7 @@ Page({ | @@ -1748,7 +1750,7 @@ Page({ | ||
1748 | newd.prom_id = 0; | 1750 | newd.prom_id = 0; |
1749 | 1751 | ||
1750 | //---如果是线下门店销售的时候--- | 1752 | //---如果是线下门店销售的时候--- |
1751 | - if (th.data.sales_rules >= 2) { | 1753 | + if(!getApp().is_virtual(th.data.sele_g) && !th.data.sele_g.whsle_id && th.data.sales_rules >= 2) { |
1752 | var pick = th.get_pick_from_list(th.data.sto_sele_id) | 1754 | var pick = th.get_pick_from_list(th.data.sto_sele_id) |
1753 | //---通过接口获取门店的线下库存信息-- | 1755 | //---通过接口获取门店的线下库存信息-- |
1754 | // getApp().request.get("/api/weshop/goods/getWareStorages", { | 1756 | // getApp().request.get("/api/weshop/goods/getWareStorages", { |
@@ -2269,8 +2271,9 @@ Page({ | @@ -2269,8 +2271,9 @@ Page({ | ||
2269 | } | 2271 | } |
2270 | } | 2272 | } |
2271 | var e = th.data.sele_g.store_count; | 2273 | var e = th.data.sele_g.store_count; |
2272 | - var p_type = th.data.prom_type; //&& p_type!=1 && p_type!=4 | ||
2273 | - if (th.data.sales_rules >= 2 && (p_type != 1 && p_type != 4 && p_type != 6 || th.data.openSpecModal_inte_normal == 1 || th.data.is_normal == 1)) { | 2274 | + var p_type = parseInt(th.data.prom_type); //&& p_type!=1 && p_type!=4 |
2275 | + if (!getApp().is_virtual(th.data.sele_g) && !th.data.sele_g.whsle_id && | ||
2276 | + th.data.sales_rules >= 2 && ( [1,2,4,6,8,9].indexOf(p_type)==-1 || th.data.openSpecModal_inte_normal == 1 || th.data.is_normal == 1)) { | ||
2274 | if (!th.data.def_pick_store) { | 2277 | if (!th.data.def_pick_store) { |
2275 | wx.showModal({ title: '请选择门店', }); | 2278 | wx.showModal({ title: '请选择门店', }); |
2276 | return false; | 2279 | return false; |
@@ -2350,8 +2353,9 @@ Page({ | @@ -2350,8 +2353,9 @@ Page({ | ||
2350 | } | 2353 | } |
2351 | 2354 | ||
2352 | var e = th.data.sele_g.store_count; | 2355 | var e = th.data.sele_g.store_count; |
2353 | - var p_type = th.data.prom_type; //&& p_type!=1 && p_type!=4 | ||
2354 | - if (th.data.sales_rules >= 2 && (p_type != 1 && p_type != 4 && p_type != 6 || th.data.openSpecModal_inte_normal == 1 || th.data.is_normal == 1)) { | 2356 | + var p_type = parseInt(th.data.prom_type); //&& p_type!=1 && p_type!=4 |
2357 | + if (!getApp().is_virtual(th.data.sele_g) && !th.data.sele_g.whsle_id && | ||
2358 | + th.data.sales_rules >= 2 && ([1,2,4,6,8,9].indexOf(p_type)== -1 || th.data.openSpecModal_inte_normal == 1 || th.data.is_normal == 1)) { | ||
2355 | if (!th.data.def_pick_store) { | 2359 | if (!th.data.def_pick_store) { |
2356 | wx.showModal({ title: '请选择门店', }); | 2360 | wx.showModal({ title: '请选择门店', }); |
2357 | return false; | 2361 | return false; |
@@ -2983,7 +2987,7 @@ Page({ | @@ -2983,7 +2987,7 @@ Page({ | ||
2983 | 2987 | ||
2984 | 2988 | ||
2985 | //默认门店要拿下门店库存 | 2989 | //默认门店要拿下门店库存 |
2986 | - if (that.data.sales_rules >= 2 && that.data.def_pick_store) { | 2990 | + if (!getApp().is_virtual(item) && !item.whsle_id && that.data.sales_rules >= 2 && that.data.def_pick_store) { |
2987 | var lock = 0, plist = null; | 2991 | var lock = 0, plist = null; |
2988 | // //先读取门店的lock,采用链式写法,少用await | 2992 | // //先读取门店的lock,采用链式写法,少用await |
2989 | // getApp().request.promiseGet("/api/weshop/order/ware/lock/page", { | 2993 | // getApp().request.promiseGet("/api/weshop/order/ware/lock/page", { |
@@ -3213,7 +3217,8 @@ Page({ | @@ -3213,7 +3217,8 @@ Page({ | ||
3213 | th.setData({ all_pick_list: e.data.data.pageData }); | 3217 | th.setData({ all_pick_list: e.data.data.pageData }); |
3214 | 3218 | ||
3215 | //--获取线下库存,而且不是新的门店规则, 同时是普通购买的时候,或者同时不能是活动,秒杀,拼团,积分购-- | 3219 | //--获取线下库存,而且不是新的门店规则, 同时是普通购买的时候,或者同时不能是活动,秒杀,拼团,积分购-- |
3216 | - if (th.data.sales_rules >= 2 && !th.data.is_newsales_rules && ((th.data.prom_type != 9 && th.data.prom_type != 1 && th.data.prom_type != 6 && th.data.prom_type != 4) || is_normal == 1)) { | 3220 | + if (!getApp().is_virtual(th.data.sele_g) && !th.data.sele_g.whsle_id && |
3221 | + th.data.sales_rules >= 2 && !th.data.is_newsales_rules && ([1,2,4,6,8,9].indexOf(th.data.prom_type)== -1 || is_normal == 1) { | ||
3217 | setTimeout(function () { | 3222 | setTimeout(function () { |
3218 | th.deal_pickup_dline(e); | 3223 | th.deal_pickup_dline(e); |
3219 | }, 800) | 3224 | }, 800) |
packageC/pages/presell/cart/cart2.js
@@ -129,7 +129,8 @@ Page({ | @@ -129,7 +129,8 @@ Page({ | ||
129 | dis_config:null, | 129 | dis_config:null, |
130 | bn_use_commission:0, //是不是使用佣金 | 130 | bn_use_commission:0, //是不是使用佣金 |
131 | 131 | ||
132 | - same_ok:1 | 132 | + same_ok:1, |
133 | + appoint_pick_keyid: '', | ||
133 | 134 | ||
134 | }, | 135 | }, |
135 | onLoad: function (t) { | 136 | onLoad: function (t) { |
@@ -248,7 +249,8 @@ Page({ | @@ -248,7 +249,8 @@ Page({ | ||
248 | sales_rules: ee.sales_rules, | 249 | sales_rules: ee.sales_rules, |
249 | rank_switch: json_d.rank_switch, | 250 | rank_switch: json_d.rank_switch, |
250 | is_default_logistics: is_default_logistics, | 251 | is_default_logistics: is_default_logistics, |
251 | - is_same_city: is_same_city | 252 | + is_same_city: is_same_city, |
253 | + appoint_pick_keyid: json_d.appoint_pick_keyid | ||
252 | }); | 254 | }); |
253 | 255 | ||
254 | var rank_switch = json_d.rank_switch; | 256 | var rank_switch = json_d.rank_switch; |
@@ -1276,7 +1278,7 @@ Page({ | @@ -1276,7 +1278,7 @@ Page({ | ||
1276 | if (gg.is_pd_normal) goods.is_pd_normal = 1; | 1278 | if (gg.is_pd_normal) goods.is_pd_normal = 1; |
1277 | 1279 | ||
1278 | //如果不立即购买或者秒杀,如果是线下库存购买的时候 | 1280 | //如果不立即购买或者秒杀,如果是线下库存购买的时候 |
1279 | - if (goods.prom_type != 1 && goods.prom_type != 6 && goods.prom_type != 8 && th.data.sales_rules == 2) { | 1281 | + if ([1,2,4,6,8,9].indexOf(goods.prom_type)== -1 && th.data.sales_rules >= 2 && !th.data.bn_goods.whsle_id && !getApp().is_virtual(th.data.bn_goods)) { |
1280 | var isok = 1; | 1282 | var isok = 1; |
1281 | await th.check_store_num(goods.goods_id, th.data.bn_pick, gg.goods_num, function (res) { | 1283 | await th.check_store_num(goods.goods_id, th.data.bn_pick, gg.goods_num, function (res) { |
1282 | isok = res; | 1284 | isok = res; |
@@ -1544,7 +1546,7 @@ Page({ | @@ -1544,7 +1546,7 @@ Page({ | ||
1544 | } | 1546 | } |
1545 | 1547 | ||
1546 | //如果不立即购买或者秒杀,如果是线下库存购买的时候 | 1548 | //如果不立即购买或者秒杀,如果是线下库存购买的时候 |
1547 | - if (goods.prom_type == 0 && th.data.sales_rules == 2) { | 1549 | + if (goods.prom_type == 0 && th.data.sales_rules >= 2 && !g_item.whsle_id && !getApp().is_virtual(g_item)) { |
1548 | var isok = 1; | 1550 | var isok = 1; |
1549 | await th.check_store_num(goods.goods_id, t_item.pickup_id, goods.goods_num, function (res) { | 1551 | await th.check_store_num(goods.goods_id, t_item.pickup_id, goods.goods_num, function (res) { |
1550 | isok = res; | 1552 | isok = res; |
@@ -1721,26 +1723,38 @@ Page({ | @@ -1721,26 +1723,38 @@ Page({ | ||
1721 | }) | 1723 | }) |
1722 | 1724 | ||
1723 | }, | 1725 | }, |
1726 | + | ||
1727 | + | ||
1728 | + | ||
1724 | //---确认线下门店的数量足不足--- | 1729 | //---确认线下门店的数量足不足--- |
1725 | async check_store_num(goods_id, pick, goods_num, func) { | 1730 | async check_store_num(goods_id, pick, goods_num, func) { |
1726 | var lock = 0, pick_no, plist, erpwareid; | 1731 | var lock = 0, pick_no, plist, erpwareid; |
1732 | + | ||
1733 | + var lock_rq = { store_id: os.stoid, wareId: goods_id, storageId: pick, pageSize: 1000 }; | ||
1734 | + if (this.data.sales_rules == 3) { | ||
1735 | + lock_rq.appoint_pick_keyid = this.data.appoint_pick_keyid; | ||
1736 | + delete lock_rq.storageId | ||
1737 | + } | ||
1727 | //先读取门店的lock | 1738 | //先读取门店的lock |
1728 | await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", { | 1739 | await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", { |
1729 | - data: { store_id: os.stoid, wareId: goods_id, storageId: pick, pageSize: 1000 } | 1740 | + data:lock_rq |
1730 | }).then(res => { | 1741 | }).then(res => { |
1731 | if (res.data.code == 0 && res.data.data.total > 0) { | 1742 | if (res.data.code == 0 && res.data.data.total > 0) { |
1732 | for (var i in res.data.data.pageData) | 1743 | for (var i in res.data.data.pageData) |
1733 | lock += res.data.data.pageData[i].outQty; | 1744 | lock += res.data.data.pageData[i].outQty; |
1734 | } | 1745 | } |
1735 | }) | 1746 | }) |
1736 | - //先获取门店的编号 | ||
1737 | - await getApp().request.promiseGet("/api/weshop/pickup/get/" + os.stoid + "/" + pick, { | ||
1738 | - data: { storeId: os.stoid, goodsId: t.goods_id, pickupId: pick } | ||
1739 | - }).then(res => { | ||
1740 | - if (res.data.code == 0) { | ||
1741 | - pick_no = res.data.data.pickup_no; | ||
1742 | - } | ||
1743 | - }) | 1747 | + |
1748 | + if (this.data.sales_rules == 2) { | ||
1749 | + //先获取门店的编号 | ||
1750 | + await getApp().request.promiseGet("/api/weshop/pickup/get/" + os.stoid + "/" + pick, { | ||
1751 | + data: {storeId: os.stoid, goodsId: t.goods_id, pickupId: pick} | ||
1752 | + }).then(res => { | ||
1753 | + if (res.data.code == 0) { | ||
1754 | + pick_no = res.data.data.pickup_no; | ||
1755 | + } | ||
1756 | + }) | ||
1757 | + } | ||
1744 | //先获取商品的线下库存 | 1758 | //先获取商品的线下库存 |
1745 | await getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + goods_id, { | 1759 | await getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + goods_id, { |
1746 | data: { storeId: os.stoid, goodsId: t.goods_id, pickupId: pick } | 1760 | data: { storeId: os.stoid, goodsId: t.goods_id, pickupId: pick } |
@@ -1749,9 +1763,16 @@ Page({ | @@ -1749,9 +1763,16 @@ Page({ | ||
1749 | erpwareid = res.data.data.erpwareid; | 1763 | erpwareid = res.data.data.erpwareid; |
1750 | } | 1764 | } |
1751 | }) | 1765 | }) |
1766 | + | ||
1767 | + var sto_rq = { storageNos: pick_no, wareIds: encodeURIComponent(erpwareid), storeId: os.stoid, pageSize: 2000 }; | ||
1768 | + if (this.data.sales_rules == 3) { | ||
1769 | + sto_rq.storageIds = this.data.appoint_pick_keyid; | ||
1770 | + delete sto_rq.storageNos | ||
1771 | + } | ||
1772 | + | ||
1752 | //读取线下的门店库存 | 1773 | //读取线下的门店库存 |
1753 | await getApp().request.promiseGet("/api/weshop/goods/getWareStorages", { | 1774 | await getApp().request.promiseGet("/api/weshop/goods/getWareStorages", { |
1754 | - data: { storageNos: pick_no, wareIds: encodeURIComponent(erpwareid), storeId: os.stoid, pageSize: 2000 } | 1775 | + data: sto_rq |
1755 | }).then(res => { | 1776 | }).then(res => { |
1756 | if (res.data.code == 0) { | 1777 | if (res.data.code == 0) { |
1757 | plist = res.data.data.pageData[0]; | 1778 | plist = res.data.data.pageData[0]; |
packageC/pages/presell/goodsInfo/goodsInfo.js
@@ -395,6 +395,8 @@ Page({ | @@ -395,6 +395,8 @@ Page({ | ||
395 | is_closecoupon: json_d.is_closecoupon, | 395 | is_closecoupon: json_d.is_closecoupon, |
396 | is_newsales_rules: json_d.is_newsales_rules, | 396 | is_newsales_rules: json_d.is_newsales_rules, |
397 | is_retail_price: json_d.is_retail_price || 0, | 397 | is_retail_price: json_d.is_retail_price || 0, |
398 | + appoint_pick_keyid: json_d.appoint_pick_keyid | ||
399 | + | ||
398 | }); | 400 | }); |
399 | // ee.init(gid); | 401 | // ee.init(gid); |
400 | //------几人评价------- | 402 | //------几人评价------- |
@@ -1992,7 +1994,8 @@ Page({ | @@ -1992,7 +1994,8 @@ Page({ | ||
1992 | th.setData({ all_pick_list: e.data.data.pageData }); | 1994 | th.setData({ all_pick_list: e.data.data.pageData }); |
1993 | 1995 | ||
1994 | //--获取线下库存,而且不是新的门店规则, 同时是普通购买的时候,或者同时不能是活动,秒杀,拼团,积分购 预售-- | 1996 | //--获取线下库存,而且不是新的门店规则, 同时是普通购买的时候,或者同时不能是活动,秒杀,拼团,积分购 预售-- |
1995 | - if (th.data.sales_rules == 2 && !th.data.is_newsales_rules && ((th.data.prom_type != 1 && th.data.prom_type != 6 && th.data.prom_type != 4 && th.data.prom_type != 8) || is_normal == 1)) { | 1997 | + if(!getApp().is_virtual(th.data.sele_g) && !th.data.sele_g.whsle_id |
1998 | + && th.data.sales_rules >= 2 && !th.data.is_newsales_rules && ([1,2,4,6,8,9].indexOf(th.data.prom_type)==-1 || is_normal == 1)) { | ||
1996 | setTimeout(function () { | 1999 | setTimeout(function () { |
1997 | th.deal_pickup_dline(e); | 2000 | th.deal_pickup_dline(e); |
1998 | }, 800) | 2001 | }, 800) |
@@ -2199,7 +2202,8 @@ Page({ | @@ -2199,7 +2202,8 @@ Page({ | ||
2199 | 2202 | ||
2200 | //------------处理线下门店库存-------- | 2203 | //------------处理线下门店库存-------- |
2201 | deal_pickup_dline(e) { | 2204 | deal_pickup_dline(e) { |
2202 | - var pkno = [], th = this; | 2205 | + var pkno = [], |
2206 | + th = this; | ||
2203 | if (!th.data.sele_g) return false; | 2207 | if (!th.data.sele_g) return false; |
2204 | 2208 | ||
2205 | if (this.data.def_pick_store) { | 2209 | if (this.data.def_pick_store) { |
@@ -2219,78 +2223,165 @@ Page({ | @@ -2219,78 +2223,165 @@ Page({ | ||
2219 | 2223 | ||
2220 | var g_distr_type = th.data.sele_g.distr_type; | 2224 | var g_distr_type = th.data.sele_g.distr_type; |
2221 | var lock = []; | 2225 | var lock = []; |
2226 | + | ||
2227 | + var lock_rq = { | ||
2228 | + store_id: os.stoid, | ||
2229 | + wareId: th.data.sele_g.goods_id, | ||
2230 | + pageSize: 1000 | ||
2231 | + }; | ||
2232 | + | ||
2233 | + if (th.data.sales_rules == 3) { | ||
2234 | + lock_rq.appoint_pick_keyid = th.data.appoint_pick_keyid; | ||
2235 | + } | ||
2236 | + | ||
2222 | //先读取门店的lock,采用链式写法,少用await | 2237 | //先读取门店的lock,采用链式写法,少用await |
2223 | getApp().request.promiseGet("/api/weshop/order/ware/lock/page", { | 2238 | getApp().request.promiseGet("/api/weshop/order/ware/lock/page", { |
2224 | - data: { store_id: os.stoid, wareId: th.data.sele_g.goods_id, pageSize: 1000 } | 2239 | + data: lock_rq |
2225 | }).then(res => { | 2240 | }).then(res => { |
2226 | if (res.data.code == 0 && res.data.data.total > 0) { | 2241 | if (res.data.code == 0 && res.data.data.total > 0) { |
2227 | lock = res.data.data.pageData | 2242 | lock = res.data.data.pageData |
2228 | } | 2243 | } |
2244 | + var sto_rq = { | ||
2245 | + wareIds: encodeURIComponent(th.data.sele_g.erpwareid), | ||
2246 | + storeId: os.stoid, | ||
2247 | + pageSize: 2000 | ||
2248 | + } | ||
2249 | + | ||
2250 | + if (th.data.sales_rules == 3) { | ||
2251 | + sto_rq.storageIds = th.data.appoint_pick_keyid; | ||
2252 | + } else { | ||
2253 | + sto_rq.storageNos = pkno_str; | ||
2254 | + } | ||
2255 | + | ||
2256 | + | ||
2229 | //---通过接口获取门店的线下库存信息-- | 2257 | //---通过接口获取门店的线下库存信息-- |
2230 | return getApp().request.promiseGet("/api/weshop/goods/getWareStorages", { | 2258 | return getApp().request.promiseGet("/api/weshop/goods/getWareStorages", { |
2231 | - data: { storageNos: pkno_str, wareIds: encodeURIComponent(th.data.sele_g.erpwareid), storeId: os.stoid, pageSize: 2000 } | 2259 | + data: sto_rq |
2232 | }) | 2260 | }) |
2233 | }).then(res => { | 2261 | }).then(res => { |
2234 | 2262 | ||
2235 | wx.hideLoading(); | 2263 | wx.hideLoading(); |
2236 | if (res.data.code == 0) { | 2264 | if (res.data.code == 0) { |
2265 | + | ||
2237 | if (res.data.data.pageData && res.data.data.pageData.length > 0) { | 2266 | if (res.data.data.pageData && res.data.data.pageData.length > 0) { |
2238 | - var plist = res.data.data.pageData; | 2267 | + |
2239 | var def_pick_store = th.data.def_pick_store; | 2268 | var def_pick_store = th.data.def_pick_store; |
2240 | - //以原来的数组为外循环,保证距离的顺序 | ||
2241 | - for (var kk in o_plist) { | ||
2242 | - for (var ii in plist) { | ||
2243 | - //线下的门店小心 | ||
2244 | - var n_item = plist[ii]; | ||
2245 | - if (n_item.StorageNo == o_plist[kk].pickup_no) { | ||
2246 | - | ||
2247 | - //拿到锁库的数量 | ||
2248 | - var lock_num = th.find_lock_num(o_plist[kk].pickup_id, lock); | ||
2249 | - //可出库数大于预出库库存的数量,可以判断为有库存 | ||
2250 | - if (n_item.CanOutQty > lock_num) { | ||
2251 | - o_plist[kk].CanOutQty = n_item.CanOutQty - lock_num; | ||
2252 | - new_list.push(o_plist[kk]); | ||
2253 | - //--如果找到默认门店,同时也应该判断配送方式对不对-- | ||
2254 | - 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)) { | ||
2255 | - th.data.fir_def_store.CanOutQty = n_item.CanOutQty - lock_num; | ||
2256 | - if (def_pick_store.pickup_id == th.data.fir_def_store.pickup_id) | ||
2257 | - th.setData({ def_pick_store: th.data.fir_def_store }) | ||
2258 | - is_find_def_store = 1; | 2269 | + var plist = res.data.data.pageData; |
2270 | + if (th.data.sales_rules == 3) { | ||
2271 | + var lock_num = 0; | ||
2272 | + var Qty = 0; | ||
2273 | + //-- 计算锁住的库存 -- | ||
2274 | + for (var i in lock) lock_num += lock[i].outQty; | ||
2275 | + Qty = plist[0].CanOutQty - lock_num; | ||
2276 | + | ||
2277 | + if (Qty > 0) { | ||
2278 | + for (var kk in o_plist) { | ||
2279 | + o_plist[kk].CanOutQty = Qty; | ||
2280 | + new_list.push(o_plist[kk]); | ||
2281 | + } | ||
2282 | + if (th.data.fir_def_store && | ||
2283 | + (g_distr_type == 0 || th.data.fir_def_store.distr_type == 0 || (th.data.def_pick_store && th.data.def_pick_store.distr_type == g_distr_type))) { | ||
2284 | + th.data.fir_def_store.Qty=Qty; | ||
2285 | + if (def_pick_store && def_pick_store.pickup_id == th.data.fir_def_store.pickup_id) | ||
2286 | + th.setData({ | ||
2287 | + def_pick_store: th.data.fir_def_store | ||
2288 | + }) | ||
2289 | + is_find_def_store = 1; | ||
2290 | + } | ||
2291 | + | ||
2292 | + } else { | ||
2293 | + th.setData({ | ||
2294 | + all_sto: null, | ||
2295 | + only_pk: null, | ||
2296 | + def_pickpu_list: null | ||
2297 | + }); | ||
2298 | + return false; | ||
2299 | + } | ||
2300 | + | ||
2301 | + } else { | ||
2302 | + | ||
2303 | + | ||
2304 | + //以原来的数组为外循环,保证距离的顺序 | ||
2305 | + for (var kk in o_plist) { | ||
2306 | + for (var ii in plist) { | ||
2307 | + //线下的门店小心 | ||
2308 | + var n_item = plist[ii]; | ||
2309 | + if (n_item.StorageNo == o_plist[kk].pickup_no) { | ||
2310 | + | ||
2311 | + //拿到锁库的数量 | ||
2312 | + var lock_num = th.find_lock_num(o_plist[kk].pickup_id, lock); | ||
2313 | + //可出库数大于预出库库存的数量,可以判断为有库存 | ||
2314 | + if (n_item.CanOutQty > lock_num) { | ||
2315 | + o_plist[kk].CanOutQty = n_item.CanOutQty - lock_num; | ||
2316 | + new_list.push(o_plist[kk]); | ||
2317 | + //--如果找到默认门店,同时也应该判断配送方式对不对-- | ||
2318 | + 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)) { | ||
2319 | + th.data.fir_def_store.CanOutQty = n_item.CanOutQty - lock_num; | ||
2320 | + if (def_pick_store && def_pick_store.pickup_id == th.data.fir_def_store.pickup_id) | ||
2321 | + th.setData({ | ||
2322 | + def_pick_store: th.data.fir_def_store | ||
2323 | + }) | ||
2324 | + is_find_def_store = 1; | ||
2325 | + } | ||
2259 | } | 2326 | } |
2327 | + break; | ||
2260 | } | 2328 | } |
2261 | - break; | ||
2262 | } | 2329 | } |
2263 | } | 2330 | } |
2331 | + | ||
2264 | } | 2332 | } |
2265 | 2333 | ||
2266 | //数据组装下 | 2334 | //数据组装下 |
2267 | - var em = {}; em.data = {}; em.data.data = {}; | 2335 | + var em = {}; |
2336 | + em.data = {}; | ||
2337 | + em.data.data = {}; | ||
2268 | em.data.data.total = new_list.length; | 2338 | em.data.data.total = new_list.length; |
2269 | em.data.data.pageData = new_list; | 2339 | em.data.data.pageData = new_list; |
2270 | 2340 | ||
2341 | + | ||
2271 | //--如果找到默认门店,同时也应该判断配送方式对不对-- | 2342 | //--如果找到默认门店,同时也应该判断配送方式对不对-- |
2272 | - 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)) { | 2343 | + if (th.data.fir_def_store && !is_find_def_store && th.data.fir_def_store.pickup_id && |
2344 | + (g_distr_type == 0 || th.data.fir_def_store.distr_type == 0 || th.data.def_pick_store.distr_type == g_distr_type)) { | ||
2273 | th.data.fir_def_store.CanOutQty = 0; | 2345 | th.data.fir_def_store.CanOutQty = 0; |
2274 | //--当选择的门店是客户默认的门店的时候-- | 2346 | //--当选择的门店是客户默认的门店的时候-- |
2275 | if (th.data.def_pick_store && th.data.fir_def_store.pickup_id == th.data.def_pick_store.pickup_id) { | 2347 | if (th.data.def_pick_store && th.data.fir_def_store.pickup_id == th.data.def_pick_store.pickup_id) { |
2276 | - th.setData({ def_pick_store: th.data.fir_def_store }); | 2348 | + th.setData({ |
2349 | + def_pick_store: th.data.fir_def_store | ||
2350 | + }); | ||
2277 | em.data.data.pageData.unshift(th.data.def_pick_store); | 2351 | em.data.data.pageData.unshift(th.data.def_pick_store); |
2278 | } else { | 2352 | } else { |
2279 | em.data.data.pageData.splice(1, 0, th.data.fir_def_store); | 2353 | em.data.data.pageData.splice(1, 0, th.data.fir_def_store); |
2280 | } | 2354 | } |
2281 | } | 2355 | } |
2282 | 2356 | ||
2357 | + for (let j = 0; j < em.data.data.pageData.length; j++) { | ||
2358 | + var iu = em.data.data.pageData[j]; | ||
2359 | + if (iu.CanOutQty <= 0) iu.is_no_qyt = 1; | ||
2360 | + | ||
2361 | + } | ||
2362 | + | ||
2283 | //---把数组组装进去--- | 2363 | //---把数组组装进去--- |
2284 | th.deal_pickup(em); | 2364 | th.deal_pickup(em); |
2365 | + | ||
2285 | } else { | 2366 | } else { |
2286 | - th.setData({ def_pick_store: null, all_sto: null, only_pk: null, def_pickpu_list: null }) | 2367 | + th.setData({ |
2368 | + all_sto: null, | ||
2369 | + only_pk: null, | ||
2370 | + def_pickpu_list: null | ||
2371 | + }) | ||
2287 | } | 2372 | } |
2373 | + | ||
2288 | } else { | 2374 | } else { |
2289 | - th.setData({ def_pick_store: null, all_sto: null, only_pk: null, def_pickpu_list: null }) | 2375 | + th.setData({ |
2376 | + all_sto: null, | ||
2377 | + only_pk: null, | ||
2378 | + def_pickpu_list: null | ||
2379 | + }) | ||
2290 | } | 2380 | } |
2291 | }) | 2381 | }) |
2292 | }, | 2382 | }, |
2293 | 2383 | ||
2384 | + | ||
2294 | find_lock_num(pick_id, lock) { | 2385 | find_lock_num(pick_id, lock) { |
2295 | var lock_num = 0; | 2386 | var lock_num = 0; |
2296 | if (!lock) return 0; | 2387 | if (!lock) return 0; |
packageC/pages/presell/list/list.wxml
@@ -33,7 +33,7 @@ | @@ -33,7 +33,7 @@ | ||
33 | </navigator> | 33 | </navigator> |
34 | <view class="kill-cont"> | 34 | <view class="kill-cont"> |
35 | <navigator class="goods-name ellipsis-2" | 35 | <navigator class="goods-name ellipsis-2" |
36 | - url="/packageC/pages/presell/pregoodsInfo/goodsInfo?goods_id={{item.goods_id}}&pre_id={{item.id}}">{{item.goods_name}}</navigator> | 36 | + url="/packageC/pages/presell/goodsInfo/goodsInfo?goods_id={{item.goods_id}}&pre_id={{item.id}}">{{item.goods_name}}</navigator> |
37 | <view class="flex-vertical xc-strip-frame"> | 37 | <view class="flex-vertical xc-strip-frame"> |
38 | <view class="xc-strip-blank rel"> | 38 | <view class="xc-strip-blank rel"> |
39 | 39 |
packageC/pages/presell/pregoodsInfo/goodsInfo.js
@@ -1916,7 +1916,7 @@ Page({ | @@ -1916,7 +1916,7 @@ Page({ | ||
1916 | th.setData({ all_pick_list: e.data.data.pageData }); | 1916 | th.setData({ all_pick_list: e.data.data.pageData }); |
1917 | 1917 | ||
1918 | //--获取线下库存,而且不是新的门店规则, 同时是普通购买的时候,或者同时不能是活动,秒杀,拼团,积分购-- | 1918 | //--获取线下库存,而且不是新的门店规则, 同时是普通购买的时候,或者同时不能是活动,秒杀,拼团,积分购-- |
1919 | - if (th.data.sales_rules == 2 && !th.data.is_newsales_rules && ((th.data.prom_type != 1 && th.data.prom_type != 6 && th.data.prom_type != 4) || is_normal == 1)) { | 1919 | + if (th.data.sales_rules >= 2 && !th.data.is_newsales_rules && ((th.data.prom_type != 1 && th.data.prom_type != 6 && th.data.prom_type != 4) || is_normal == 1)) { |
1920 | setTimeout(function () { | 1920 | setTimeout(function () { |
1921 | th.deal_pickup_dline(e); | 1921 | th.deal_pickup_dline(e); |
1922 | }, 800) | 1922 | }, 800) |
@@ -2121,9 +2121,10 @@ Page({ | @@ -2121,9 +2121,10 @@ Page({ | ||
2121 | } | 2121 | } |
2122 | }, | 2122 | }, |
2123 | 2123 | ||
2124 | - //------------处理线下门店库存-------- | 2124 | + //------------处理线下门店库存-------- |
2125 | deal_pickup_dline(e) { | 2125 | deal_pickup_dline(e) { |
2126 | - var pkno = [], th = this; | 2126 | + var pkno = [], |
2127 | + th = this; | ||
2127 | if (!th.data.sele_g) return false; | 2128 | if (!th.data.sele_g) return false; |
2128 | 2129 | ||
2129 | if (this.data.def_pick_store) { | 2130 | if (this.data.def_pick_store) { |
@@ -2143,78 +2144,166 @@ Page({ | @@ -2143,78 +2144,166 @@ Page({ | ||
2143 | 2144 | ||
2144 | var g_distr_type = th.data.sele_g.distr_type; | 2145 | var g_distr_type = th.data.sele_g.distr_type; |
2145 | var lock = []; | 2146 | var lock = []; |
2147 | + | ||
2148 | + var lock_rq = { | ||
2149 | + store_id: os.stoid, | ||
2150 | + wareId: th.data.sele_g.goods_id, | ||
2151 | + pageSize: 1000 | ||
2152 | + }; | ||
2153 | + | ||
2154 | + if (th.data.sales_rules == 3) { | ||
2155 | + lock_rq.appoint_pick_keyid = th.data.appoint_pick_keyid; | ||
2156 | + } | ||
2157 | + | ||
2146 | //先读取门店的lock,采用链式写法,少用await | 2158 | //先读取门店的lock,采用链式写法,少用await |
2147 | getApp().request.promiseGet("/api/weshop/order/ware/lock/page", { | 2159 | getApp().request.promiseGet("/api/weshop/order/ware/lock/page", { |
2148 | - data: { store_id: os.stoid, wareId: th.data.sele_g.goods_id, pageSize: 1000 } | 2160 | + data: lock_rq |
2149 | }).then(res => { | 2161 | }).then(res => { |
2150 | if (res.data.code == 0 && res.data.data.total > 0) { | 2162 | if (res.data.code == 0 && res.data.data.total > 0) { |
2151 | lock = res.data.data.pageData | 2163 | lock = res.data.data.pageData |
2152 | } | 2164 | } |
2165 | + var sto_rq = { | ||
2166 | + wareIds: encodeURIComponent(th.data.sele_g.erpwareid), | ||
2167 | + storeId: os.stoid, | ||
2168 | + pageSize: 2000 | ||
2169 | + } | ||
2170 | + | ||
2171 | + if (th.data.sales_rules == 3) { | ||
2172 | + sto_rq.storageIds = th.data.appoint_pick_keyid; | ||
2173 | + } else { | ||
2174 | + sto_rq.storageNos = pkno_str; | ||
2175 | + } | ||
2176 | + | ||
2177 | + | ||
2153 | //---通过接口获取门店的线下库存信息-- | 2178 | //---通过接口获取门店的线下库存信息-- |
2154 | return getApp().request.promiseGet("/api/weshop/goods/getWareStorages", { | 2179 | return getApp().request.promiseGet("/api/weshop/goods/getWareStorages", { |
2155 | - data: { storageNos: pkno_str, wareIds: encodeURIComponent(th.data.sele_g.erpwareid), storeId: os.stoid, pageSize: 2000 } | 2180 | + data: sto_rq |
2156 | }) | 2181 | }) |
2157 | }).then(res => { | 2182 | }).then(res => { |
2158 | 2183 | ||
2159 | wx.hideLoading(); | 2184 | wx.hideLoading(); |
2160 | if (res.data.code == 0) { | 2185 | if (res.data.code == 0) { |
2186 | + | ||
2161 | if (res.data.data.pageData && res.data.data.pageData.length > 0) { | 2187 | if (res.data.data.pageData && res.data.data.pageData.length > 0) { |
2162 | - var plist = res.data.data.pageData; | 2188 | + |
2163 | var def_pick_store = th.data.def_pick_store; | 2189 | var def_pick_store = th.data.def_pick_store; |
2164 | - //以原来的数组为外循环,保证距离的顺序 | ||
2165 | - for (var kk in o_plist) { | ||
2166 | - for (var ii in plist) { | ||
2167 | - //线下的门店小心 | ||
2168 | - var n_item = plist[ii]; | ||
2169 | - if (n_item.StorageNo == o_plist[kk].pickup_no) { | ||
2170 | - | ||
2171 | - //拿到锁库的数量 | ||
2172 | - var lock_num = th.find_lock_num(o_plist[kk].pickup_id, lock); | ||
2173 | - //可出库数大于预出库库存的数量,可以判断为有库存 | ||
2174 | - if (n_item.CanOutQty > lock_num) { | ||
2175 | - o_plist[kk].CanOutQty = n_item.CanOutQty - lock_num; | ||
2176 | - new_list.push(o_plist[kk]); | ||
2177 | - //--如果找到默认门店,同时也应该判断配送方式对不对-- | ||
2178 | - 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)) { | ||
2179 | - th.data.fir_def_store.CanOutQty = n_item.CanOutQty - lock_num; | ||
2180 | - if (def_pick_store.pickup_id == th.data.fir_def_store.pickup_id) | ||
2181 | - th.setData({ def_pick_store: th.data.fir_def_store }) | ||
2182 | - is_find_def_store = 1; | 2190 | + var plist = res.data.data.pageData; |
2191 | + if (th.data.sales_rules == 3) { | ||
2192 | + var lock_num = 0; | ||
2193 | + var Qty = 0; | ||
2194 | + //-- 计算锁住的库存 -- | ||
2195 | + for (var i in lock) lock_num += lock[i].outQty; | ||
2196 | + Qty = plist[0].CanOutQty - lock_num; | ||
2197 | + | ||
2198 | + if (Qty > 0) { | ||
2199 | + for (var kk in o_plist) { | ||
2200 | + o_plist[kk].CanOutQty = Qty; | ||
2201 | + new_list.push(o_plist[kk]); | ||
2202 | + } | ||
2203 | + if (th.data.fir_def_store && | ||
2204 | + (g_distr_type == 0 || th.data.fir_def_store.distr_type == 0 || (th.data.def_pick_store && th.data.def_pick_store.distr_type == g_distr_type))) { | ||
2205 | + th.data.fir_def_store.Qty=Qty; | ||
2206 | + if (def_pick_store && def_pick_store.pickup_id == th.data.fir_def_store.pickup_id) | ||
2207 | + th.setData({ | ||
2208 | + def_pick_store: th.data.fir_def_store | ||
2209 | + }) | ||
2210 | + is_find_def_store = 1; | ||
2211 | + } | ||
2212 | + | ||
2213 | + } else { | ||
2214 | + th.setData({ | ||
2215 | + all_sto: null, | ||
2216 | + only_pk: null, | ||
2217 | + def_pickpu_list: null | ||
2218 | + }); | ||
2219 | + return false; | ||
2220 | + } | ||
2221 | + | ||
2222 | + } else { | ||
2223 | + | ||
2224 | + | ||
2225 | + //以原来的数组为外循环,保证距离的顺序 | ||
2226 | + for (var kk in o_plist) { | ||
2227 | + for (var ii in plist) { | ||
2228 | + //线下的门店小心 | ||
2229 | + var n_item = plist[ii]; | ||
2230 | + if (n_item.StorageNo == o_plist[kk].pickup_no) { | ||
2231 | + | ||
2232 | + //拿到锁库的数量 | ||
2233 | + var lock_num = th.find_lock_num(o_plist[kk].pickup_id, lock); | ||
2234 | + //可出库数大于预出库库存的数量,可以判断为有库存 | ||
2235 | + if (n_item.CanOutQty > lock_num) { | ||
2236 | + o_plist[kk].CanOutQty = n_item.CanOutQty - lock_num; | ||
2237 | + new_list.push(o_plist[kk]); | ||
2238 | + //--如果找到默认门店,同时也应该判断配送方式对不对-- | ||
2239 | + 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)) { | ||
2240 | + th.data.fir_def_store.CanOutQty = n_item.CanOutQty - lock_num; | ||
2241 | + if (def_pick_store && def_pick_store.pickup_id == th.data.fir_def_store.pickup_id) | ||
2242 | + th.setData({ | ||
2243 | + def_pick_store: th.data.fir_def_store | ||
2244 | + }) | ||
2245 | + is_find_def_store = 1; | ||
2246 | + } | ||
2183 | } | 2247 | } |
2248 | + break; | ||
2184 | } | 2249 | } |
2185 | - break; | ||
2186 | } | 2250 | } |
2187 | } | 2251 | } |
2252 | + | ||
2188 | } | 2253 | } |
2189 | 2254 | ||
2190 | //数据组装下 | 2255 | //数据组装下 |
2191 | - var em = {}; em.data = {}; em.data.data = {}; | 2256 | + var em = {}; |
2257 | + em.data = {}; | ||
2258 | + em.data.data = {}; | ||
2192 | em.data.data.total = new_list.length; | 2259 | em.data.data.total = new_list.length; |
2193 | em.data.data.pageData = new_list; | 2260 | em.data.data.pageData = new_list; |
2194 | 2261 | ||
2262 | + | ||
2195 | //--如果找到默认门店,同时也应该判断配送方式对不对-- | 2263 | //--如果找到默认门店,同时也应该判断配送方式对不对-- |
2196 | - 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)) { | 2264 | + if (th.data.fir_def_store && !is_find_def_store && th.data.fir_def_store.pickup_id && |
2265 | + (g_distr_type == 0 || th.data.fir_def_store.distr_type == 0 || th.data.def_pick_store.distr_type == g_distr_type)) { | ||
2197 | th.data.fir_def_store.CanOutQty = 0; | 2266 | th.data.fir_def_store.CanOutQty = 0; |
2198 | //--当选择的门店是客户默认的门店的时候-- | 2267 | //--当选择的门店是客户默认的门店的时候-- |
2199 | if (th.data.def_pick_store && th.data.fir_def_store.pickup_id == th.data.def_pick_store.pickup_id) { | 2268 | if (th.data.def_pick_store && th.data.fir_def_store.pickup_id == th.data.def_pick_store.pickup_id) { |
2200 | - th.setData({ def_pick_store: th.data.fir_def_store }); | 2269 | + th.setData({ |
2270 | + def_pick_store: th.data.fir_def_store | ||
2271 | + }); | ||
2201 | em.data.data.pageData.unshift(th.data.def_pick_store); | 2272 | em.data.data.pageData.unshift(th.data.def_pick_store); |
2202 | } else { | 2273 | } else { |
2203 | em.data.data.pageData.splice(1, 0, th.data.fir_def_store); | 2274 | em.data.data.pageData.splice(1, 0, th.data.fir_def_store); |
2204 | } | 2275 | } |
2205 | } | 2276 | } |
2206 | 2277 | ||
2278 | + for (let j = 0; j < em.data.data.pageData.length; j++) { | ||
2279 | + var iu = em.data.data.pageData[j]; | ||
2280 | + if (iu.CanOutQty <= 0) iu.is_no_qyt = 1; | ||
2281 | + | ||
2282 | + } | ||
2283 | + | ||
2207 | //---把数组组装进去--- | 2284 | //---把数组组装进去--- |
2208 | th.deal_pickup(em); | 2285 | th.deal_pickup(em); |
2286 | + | ||
2209 | } else { | 2287 | } else { |
2210 | - th.setData({ def_pick_store: null, all_sto: null, only_pk: null, def_pickpu_list: null }) | 2288 | + th.setData({ |
2289 | + all_sto: null, | ||
2290 | + only_pk: null, | ||
2291 | + def_pickpu_list: null | ||
2292 | + }) | ||
2211 | } | 2293 | } |
2294 | + | ||
2212 | } else { | 2295 | } else { |
2213 | - th.setData({ def_pick_store: null, all_sto: null, only_pk: null, def_pickpu_list: null }) | 2296 | + th.setData({ |
2297 | + all_sto: null, | ||
2298 | + only_pk: null, | ||
2299 | + def_pickpu_list: null | ||
2300 | + }) | ||
2214 | } | 2301 | } |
2215 | }) | 2302 | }) |
2216 | }, | 2303 | }, |
2217 | 2304 | ||
2305 | + | ||
2306 | + | ||
2218 | find_lock_num(pick_id, lock) { | 2307 | find_lock_num(pick_id, lock) { |
2219 | var lock_num = 0; | 2308 | var lock_num = 0; |
2220 | if (!lock) return 0; | 2309 | if (!lock) return 0; |
packageE/pages/cart/cart2/cart2.js
@@ -3990,7 +3990,8 @@ Page({ | @@ -3990,7 +3990,8 @@ Page({ | ||
3990 | 3990 | ||
3991 | 3991 | ||
3992 | //如果不立即购买或者秒杀,如果是线下库存购买的时候 | 3992 | //如果不立即购买或者秒杀,如果是线下库存购买的时候 |
3993 | - if (goods.prom_type != 1 && goods.prom_type != 6 && goods.prom_type != 2 && th.data.sales_rules >= 2 && !th.data.bn_goods.whsle_id) { | 3993 | + if (goods.prom_type != 1 && goods.prom_type != 6 && goods.prom_type != 2 |
3994 | + && th.data.sales_rules >= 2 && !th.data.bn_goods.whsle_id && !getApp().is_virtual(th.data.bn_goods)) { | ||
3994 | var isok = 1; | 3995 | var isok = 1; |
3995 | await th.check_store_num(goods.goods_id, th.data.bn_pick, gg.goods_num, function (res) { | 3996 | await th.check_store_num(goods.goods_id, th.data.bn_pick, gg.goods_num, function (res) { |
3996 | isok = res; | 3997 | isok = res; |
@@ -4336,7 +4337,7 @@ Page({ | @@ -4336,7 +4337,7 @@ Page({ | ||
4336 | } | 4337 | } |
4337 | 4338 | ||
4338 | //如果不立即购买或者秒杀,如果是线下库存购买的时候 | 4339 | //如果不立即购买或者秒杀,如果是线下库存购买的时候 |
4339 | - if (goods.prom_type == 0 && th.data.sales_rules >= 2) { | 4340 | + if (goods.prom_type == 0 && th.data.sales_rules >= 2 && !g_item.whsle_id && !getApp().is_virtual(g_item) ) { |
4340 | var isok = 1; | 4341 | var isok = 1; |
4341 | await th.check_store_num(goods.goods_id, t_item.pickup_id, goods.goods_num, function (res) { | 4342 | await th.check_store_num(goods.goods_id, t_item.pickup_id, goods.goods_num, function (res) { |
4342 | isok = res; | 4343 | isok = res; |
pages/cart/cart/cart.js
@@ -2043,7 +2043,7 @@ Page({ | @@ -2043,7 +2043,7 @@ Page({ | ||
2043 | var txt = "requestData[" + pitems + "].goods[" + i + "].selected"; | 2043 | var txt = "requestData[" + pitems + "].goods[" + i + "].selected"; |
2044 | 2044 | ||
2045 | var gd_info = item[i]; | 2045 | var gd_info = item[i]; |
2046 | - if (th.data.sales_rules >= 2 && !gd_info.whsle_id && [1, 2, 4, 6, 8, 9].indexOf(gd_info.prom_type) == -1 && !gd_info.selected) { | 2046 | + if (!getApp().is_virtual(gd_info) && th.data.sales_rules >= 2 && !gd_info.whsle_id && [1, 2, 4, 6, 8, 9].indexOf(gd_info.prom_type) == -1 && !gd_info.selected) { |
2047 | var ob = {}; | 2047 | var ob = {}; |
2048 | await th.check_down_line_next(gd_info, pitems, i, gd_info.erpwareid, function (res) { | 2048 | await th.check_down_line_next(gd_info, pitems, i, gd_info.erpwareid, function (res) { |
2049 | ob = res; | 2049 | ob = res; |
@@ -2227,7 +2227,7 @@ Page({ | @@ -2227,7 +2227,7 @@ Page({ | ||
2227 | var gd_info = a; | 2227 | var gd_info = a; |
2228 | 2228 | ||
2229 | var erpwareid = gd_info.erpwareid; | 2229 | var erpwareid = gd_info.erpwareid; |
2230 | - if (th.data.sales_rules >= 2 && !gd_info.whsle_id && [1, 2, 4, 6, 8, 9].indexOf(gd_info.prom_type) == -1 && !a.selected) { | 2230 | + if (!getApp().is_virtual(gd_info) && th.data.sales_rules >= 2 && !gd_info.whsle_id && [1, 2, 4, 6, 8, 9].indexOf(gd_info.prom_type) == -1 && !a.selected) { |
2231 | var ob = {}; | 2231 | var ob = {}; |
2232 | await th.check_down_line_next(gd_info, pitems, item, erpwareid, function (res) { | 2232 | await th.check_down_line_next(gd_info, pitems, item, erpwareid, function (res) { |
2233 | ob = res; | 2233 | ob = res; |
@@ -2537,7 +2537,7 @@ Page({ | @@ -2537,7 +2537,7 @@ Page({ | ||
2537 | 2537 | ||
2538 | function normal_check(store_count, goodsinfo, wareIds) { | 2538 | function normal_check(store_count, goodsinfo, wareIds) { |
2539 | //--- 看一下是不是线下库存 --- | 2539 | //--- 看一下是不是线下库存 --- |
2540 | - if (th.data.sales_rules >= 2 && !goodsinfo.whsle_id) { | 2540 | + if (!getApp().is_virtual(goodsinfo) && th.data.sales_rules >= 2 && !goodsinfo.whsle_id) { |
2541 | th.check_down_line(t, pitem, item, wareIds); | 2541 | th.check_down_line(t, pitem, item, wareIds); |
2542 | } else { | 2542 | } else { |
2543 | if (t.goods_num > store_count) { | 2543 | if (t.goods_num > store_count) { |
@@ -3372,8 +3372,8 @@ Page({ | @@ -3372,8 +3372,8 @@ Page({ | ||
3372 | ab = 1; | 3372 | ab = 1; |
3373 | 3373 | ||
3374 | //--普通商品,如果有开启线下库存的功能,要调用线下库存进行计算,赠品不要进行调用线下库存--- | 3374 | //--普通商品,如果有开启线下库存的功能,要调用线下库存进行计算,赠品不要进行调用线下库存--- |
3375 | - if ((i_arr[j].prom_type == 0 || i_arr[j].prom_type == 3 || i_arr[j].prom_type == 5 || i_arr[j].prom_type == 7 || | ||
3376 | - i_arr[j].need_downlow_num) && th.data.sales_rules >= 2 && i_arr[j].is_gift != 1 && !i_arr[j].whsle_id) { | 3375 | + if ((i_arr[j].prom_type == 0 || i_arr[j].prom_type == 3 || i_arr[j].prom_type == 5 || i_arr[j].prom_type == 7 || i_arr[j].prom_type == 10 || |
3376 | + i_arr[j].need_downlow_num) && !getApp().is_virtual(i_arr[j]) && th.data.sales_rules >= 2 && i_arr[j].is_gift != 1 && !i_arr[j].whsle_id) { | ||
3377 | //--获取商品的线下商品ID-- | 3377 | //--获取商品的线下商品ID-- |
3378 | 3378 | ||
3379 | var gd = null; | 3379 | var gd = null; |
pages/goods/goodsInfo/goodsInfo.js
@@ -558,7 +558,7 @@ Page({ | @@ -558,7 +558,7 @@ Page({ | ||
558 | th = this; | 558 | th = this; |
559 | getApp().getConfig2(function (e) { | 559 | getApp().getConfig2(function (e) { |
560 | var sales_rules = e.sales_rules; | 560 | var sales_rules = e.sales_rules; |
561 | - if (sales_rules >= 2 && [1, 2, 4, 6, 8, 9].indexOf(th.data.prom_type) == -1 && !th.data.sele_g.whsle_id) { | 561 | + if (!getApp().is_virtual(th.data.sele_g) && sales_rules >= 2 && [1, 2, 4, 6, 8, 9].indexOf(th.data.prom_type) == -1 && !th.data.sele_g.whsle_id) { |
562 | getApp().waitfor2(that, "wait_for_user_store", "fir_goods", function () { | 562 | getApp().waitfor2(that, "wait_for_user_store", "fir_goods", function () { |
563 | var lock = 0, | 563 | var lock = 0, |
564 | plist = null; | 564 | plist = null; |
@@ -1104,16 +1104,8 @@ Page({ | @@ -1104,16 +1104,8 @@ Page({ | ||
1104 | 1104 | ||
1105 | //获取统一条形码,普通商品和优惠促销的商品 | 1105 | //获取统一条形码,普通商品和优惠促销的商品 |
1106 | if (ee.data.data.prom_type == 0 || ee.data.data.prom_type == 3 || ee.data.data.prom_type == 5 || ee.data.data.prom_type == 7 || ee.data.data.prom_type == 9 || ee.data.data.prom_type == 10) { | 1106 | if (ee.data.data.prom_type == 0 || ee.data.data.prom_type == 3 || ee.data.data.prom_type == 5 || ee.data.data.prom_type == 7 || ee.data.data.prom_type == 9 || ee.data.data.prom_type == 10) { |
1107 | - //默认门店要拿下门店库存 | ||
1108 | - if (that.data.sales_rules == 2 && that.data.is_newsales_rules) { | ||
1109 | - //获取门店 | ||
1110 | - ee.get_sto(); | ||
1111 | - | ||
1112 | - } else { | ||
1113 | - //获取门店 | ||
1114 | - ee.get_sto(); | ||
1115 | - } | ||
1116 | 1107 | ||
1108 | + ee.get_sto(); | ||
1117 | ee.get_sku(o.stoid, t.data.data, gid); | 1109 | ee.get_sku(o.stoid, t.data.data, gid); |
1118 | ee.check_has_flash(); | 1110 | ee.check_has_flash(); |
1119 | 1111 | ||
@@ -1680,7 +1672,7 @@ Page({ | @@ -1680,7 +1672,7 @@ Page({ | ||
1680 | newd.is_pd_normal = 1; | 1672 | newd.is_pd_normal = 1; |
1681 | 1673 | ||
1682 | //---如果是线下门店销售的时候--- | 1674 | //---如果是线下门店销售的时候--- |
1683 | - if (th.data.sales_rules >= 2) { | 1675 | + if (!getApp().is_virtual(th.data.sele_g) && th.data.sales_rules >= 2) { |
1684 | var pick = th.get_pick_from_list(th.data.sto_sele_id) | 1676 | var pick = th.get_pick_from_list(th.data.sto_sele_id) |
1685 | //---通过接口获取门店的线下库存信息-- | 1677 | //---通过接口获取门店的线下库存信息-- |
1686 | th.check_CanOutQty(th.data.sele_g, pick, function (CanOutQty) { | 1678 | th.check_CanOutQty(th.data.sele_g, pick, function (CanOutQty) { |
@@ -1778,7 +1770,7 @@ Page({ | @@ -1778,7 +1770,7 @@ Page({ | ||
1778 | return false; | 1770 | return false; |
1779 | } else { | 1771 | } else { |
1780 | //---如果是线下门店销售的时候--- | 1772 | //---如果是线下门店销售的时候--- |
1781 | - if (th.data.sales_rules >= 2) { | 1773 | + if (!getApp().is_virtual(th.data.sele_g) && !th.data.sele_g.whsle_id && th.data.sales_rules >= 2) { |
1782 | var pick = th.get_pick_from_list(th.data.sto_sele_id) | 1774 | var pick = th.get_pick_from_list(th.data.sto_sele_id) |
1783 | 1775 | ||
1784 | th.check_CanOutQty(th.data.sele_g, pick, function (CanOutQty) { | 1776 | th.check_CanOutQty(th.data.sele_g, pick, function (CanOutQty) { |
@@ -1837,7 +1829,7 @@ Page({ | @@ -1837,7 +1829,7 @@ Page({ | ||
1837 | } | 1829 | } |
1838 | 1830 | ||
1839 | //---如果是线下门店销售的时候--- | 1831 | //---如果是线下门店销售的时候--- |
1840 | - if (th.data.sales_rules >= 2 && !th.data.sele_g.whsle_id) { | 1832 | + if ( !getApp().is_virtual(th.data.sele_g) && th.data.sales_rules >= 2 && !th.data.sele_g.whsle_id) { |
1841 | var pick = th.get_pick_from_list(th.data.sto_sele_id) | 1833 | var pick = th.get_pick_from_list(th.data.sto_sele_id) |
1842 | //---通过接口获取门店的线下库存信息-- | 1834 | //---通过接口获取门店的线下库存信息-- |
1843 | // getApp().request.get("/api/weshop/goods/getWareStorages", { | 1835 | // getApp().request.get("/api/weshop/goods/getWareStorages", { |
@@ -2496,7 +2488,8 @@ Page({ | @@ -2496,7 +2488,8 @@ Page({ | ||
2496 | } | 2488 | } |
2497 | var e = th.data.sele_g.store_count; | 2489 | var e = th.data.sele_g.store_count; |
2498 | var p_type = th.data.prom_type; //&& p_type!=1 && p_type!=4 | 2490 | var p_type = th.data.prom_type; //&& p_type!=1 && p_type!=4 |
2499 | - if (th.data.sales_rules >= 2 && (p_type != 1 && p_type != 4 && p_type != 6 && p_type != 2 || th.data.openSpecModal_inte_normal == 1 || th.data.is_normal == 1)) { | 2491 | + if (!getApp().is_virtual(th.data.sele_g) && !th.data.sele_g.whsle_id && th.data.sales_rules >= 2 && |
2492 | + ([1,2,4,6,8,9].indexOf(p_type)==-1 || th.data.openSpecModal_inte_normal == 1 || th.data.is_normal == 1)) { | ||
2500 | if (!th.data.def_pick_store) { | 2493 | if (!th.data.def_pick_store) { |
2501 | wx.showToast({ | 2494 | wx.showToast({ |
2502 | title: '请选择门店', | 2495 | title: '请选择门店', |
@@ -2612,7 +2605,8 @@ Page({ | @@ -2612,7 +2605,8 @@ Page({ | ||
2612 | 2605 | ||
2613 | var e = th.data.sele_g.store_count; | 2606 | var e = th.data.sele_g.store_count; |
2614 | var p_type = th.data.prom_type; //&& p_type!=1 && p_type!=4 | 2607 | var p_type = th.data.prom_type; //&& p_type!=1 && p_type!=4 |
2615 | - if (th.data.sales_rules >= 2 && (p_type != 1 && p_type != 4 && p_type != 6 || th.data.openSpecModal_inte_normal == 1 || th.data.is_normal == 1)) { | 2608 | + if (!getApp().is_virtual(th.data.sele_g) && !th.data.sele_g.whsle_id && th.data.sales_rules >= 2 && |
2609 | + ([1,2,4,6,8,9].indexOf(p_type)==-1 || th.data.openSpecModal_inte_normal == 1 || th.data.is_normal == 1)) { | ||
2616 | if (!th.data.def_pick_store) { | 2610 | if (!th.data.def_pick_store) { |
2617 | wx.showModal({ | 2611 | wx.showModal({ |
2618 | title: '请选择门店', | 2612 | title: '请选择门店', |
@@ -3342,7 +3336,7 @@ Page({ | @@ -3342,7 +3336,7 @@ Page({ | ||
3342 | if (!item.whsle_id && [1,2,4,6].indexOf(item.prom_type)==-1) that.check_is_youhui(gid, that.data.is_normal); | 3336 | if (!item.whsle_id && [1,2,4,6].indexOf(item.prom_type)==-1) that.check_is_youhui(gid, that.data.is_normal); |
3343 | 3337 | ||
3344 | //默认门店要拿下门店库存 | 3338 | //默认门店要拿下门店库存 |
3345 | - if (that.data.sales_rules >= 2 && that.data.def_pick_store && !that.data.sele_g.whsle_id && [1,2,4,6].indexOf(item.prom_type)==-1) { | 3339 | + if (!getApp().is_virtual(th.data.sele_g) && that.data.sales_rules >= 2 && that.data.def_pick_store && !that.data.sele_g.whsle_id && [1,2,4,6].indexOf(item.prom_type)==-1) { |
3346 | var lock = 0, | 3340 | var lock = 0, |
3347 | plist = null; | 3341 | plist = null; |
3348 | 3342 | ||
@@ -3643,7 +3637,7 @@ Page({ | @@ -3643,7 +3637,7 @@ Page({ | ||
3643 | }); | 3637 | }); |
3644 | 3638 | ||
3645 | //--获取线下库存,而且不是新的门店规则, 同时是普通购买的时候,或者同时不能是活动,秒杀,拼团,积分购-- | 3639 | //--获取线下库存,而且不是新的门店规则, 同时是普通购买的时候,或者同时不能是活动,秒杀,拼团,积分购-- |
3646 | - if (th.data.sales_rules >= 2 && !th.data.is_newsales_rules && !th.data.sele_g.whsle_id && ([1,2,4,6,8,9].indexOf(th.data.prom_type)==-1 || is_normal == 1)) { | 3640 | + if (!getApp().is_virtual(th.data.sele_g) && th.data.sales_rules >= 2 && !th.data.is_newsales_rules && !th.data.sele_g.whsle_id && ([1,2,4,6,8,9].indexOf(th.data.prom_type)==-1 || is_normal == 1)) { |
3647 | setTimeout(function () { | 3641 | setTimeout(function () { |
3648 | th.deal_pickup_dline(e); | 3642 | th.deal_pickup_dline(e); |
3649 | }, 800) | 3643 | }, 800) |
@@ -3939,7 +3933,7 @@ Page({ | @@ -3939,7 +3933,7 @@ Page({ | ||
3939 | } | 3933 | } |
3940 | if (th.data.fir_def_store && | 3934 | if (th.data.fir_def_store && |
3941 | (g_distr_type == 0 || th.data.fir_def_store.distr_type == 0 || (th.data.def_pick_store && th.data.def_pick_store.distr_type == g_distr_type))) { | 3935 | (g_distr_type == 0 || th.data.fir_def_store.distr_type == 0 || (th.data.def_pick_store && th.data.def_pick_store.distr_type == g_distr_type))) { |
3942 | - th.data.fir_def_store.Qty; | 3936 | + th.data.fir_def_store.Qty=Qty; |
3943 | if (def_pick_store && def_pick_store.pickup_id == th.data.fir_def_store.pickup_id) | 3937 | if (def_pick_store && def_pick_store.pickup_id == th.data.fir_def_store.pickup_id) |
3944 | th.setData({ | 3938 | th.setData({ |
3945 | def_pick_store: th.data.fir_def_store | 3939 | def_pick_store: th.data.fir_def_store |
@@ -5026,7 +5020,6 @@ Page({ | @@ -5026,7 +5020,6 @@ Page({ | ||
5026 | getApp().confirmBox("拼团商品至少要买" + qnum + "件!"); | 5020 | getApp().confirmBox("拼团商品至少要买" + qnum + "件!"); |
5027 | return false; | 5021 | return false; |
5028 | } | 5022 | } |
5029 | - | ||
5030 | } | 5023 | } |
5031 | 5024 | ||
5032 | th.addcart_pt_func(); | 5025 | th.addcart_pt_func(); |
pages/user/order_list/order_list.js
@@ -1041,7 +1041,7 @@ Page({ | @@ -1041,7 +1041,7 @@ Page({ | ||
1041 | } | 1041 | } |
1042 | 1042 | ||
1043 | //--如果是线下库存的时候-- | 1043 | //--如果是线下库存的时候-- |
1044 | - if (th.data.conf.sales_rules >= 2 && !gg.whsle_id) { | 1044 | + if (!getApp().is_virtual(gg) && th.data.conf.sales_rules >= 2 && !gg.whsle_id) { |
1045 | var ob = {}; | 1045 | var ob = {}; |
1046 | await th.check_down_line_next(gg, good.goods_num, order.pickup_id, function (obj) { | 1046 | await th.check_down_line_next(gg, good.goods_num, order.pickup_id, function (obj) { |
1047 | ob = obj; | 1047 | ob = obj; |
@@ -1667,7 +1667,7 @@ Page({ | @@ -1667,7 +1667,7 @@ Page({ | ||
1667 | 1667 | ||
1668 | 1668 | ||
1669 | //判断是不是线下库存的购买, 是不是秒杀活动 | 1669 | //判断是不是线下库存的购买, 是不是秒杀活动 |
1670 | - if (th.data.sales_rules >= 2 && !prom && !good.whsle_id) { | 1670 | + if (!getApp().is_virtual(good) && th.data.sales_rules >= 2 && !prom && !good.whsle_id) { |
1671 | 1671 | ||
1672 | //-- 看一下购物车上有多少商品 -- | 1672 | //-- 看一下购物车上有多少商品 -- |
1673 | var cart_num = 0; | 1673 | var cart_num = 0; |