Commit 660d0b171147ef017d8710ee93065fae35e4a711
合并dev_oa_fu6
Showing
23 changed files
with
1028 additions
and
946 deletions
app.js
... | ... | @@ -1314,7 +1314,6 @@ App({ |
1314 | 1314 | var stoid=this.globalData.setting.stoid; |
1315 | 1315 | var user_id=this.globalData.user_id; |
1316 | 1316 | |
1317 | - | |
1318 | 1317 | this.getConfig2(async function (e){ |
1319 | 1318 | if(e && e.switch_list) conf=JSON.parse(e.switch_list); |
1320 | 1319 | if(conf && conf.express_searchtype==1){ |
... | ... | @@ -1335,7 +1334,43 @@ App({ |
1335 | 1334 | return true; |
1336 | 1335 | } |
1337 | 1336 | return false; |
1337 | + }, | |
1338 | + //---- 判断是不是虚拟商品狗阿米 ----- | |
1339 | + is_virtual(gd){ | |
1340 | + if(gd.is_virtual==2) return true; | |
1341 | + return false; | |
1342 | + }, | |
1343 | + | |
1344 | + /** | |
1345 | + * | |
1346 | + * @param gd 商品 | |
1347 | + * @param act 活动 | |
1348 | + * @param get_type 0默认 1是加和减的时候 | |
1349 | + */ | |
1350 | + get_limit_qty(gd,act,get_type){ | |
1351 | + var islimit=gd.erp_islimit; //是不是限购 | |
1352 | + var limittype=gd.erp_limittype; //不低于0、倍数1 | |
1353 | + var limitqty=gd.erp_limitqty; //起购量 | |
1354 | + | |
1355 | + //-- 如果有活动的时候 -- | |
1356 | + if(act){ | |
1357 | + islimit=act.islimit; | |
1358 | + limittype=act.limittype; | |
1359 | + limitqty=act.limitqty; | |
1360 | + } | |
1361 | + | |
1362 | + //-- 不是限购的时候,返回1-- | |
1363 | + if(!islimit) return 1; | |
1364 | + //-- 默认的时候 -- | |
1365 | + if(!get_type) return limitqty; | |
1366 | + //不低于的时候,加减的时候 | |
1367 | + if(!limittype) return 1; | |
1368 | + //倍数,加减的时候 | |
1369 | + return limitqty; | |
1338 | 1370 | |
1339 | 1371 | } |
1340 | 1372 | |
1373 | + | |
1374 | + | |
1375 | + | |
1341 | 1376 | }); | ... | ... |
components/diy_seckill/diy_seckill.wxml
... | ... | @@ -481,52 +481,12 @@ |
481 | 481 | </view> |
482 | 482 | </block> |
483 | 483 | |
484 | -<<<<<<< HEAD | |
485 | - <view class="o1_right"> | |
486 | - <view class="sp_wzi ellipsis-2">{{aitem.goods_name}}</view> | |
487 | - <view class="o1_sj_kill"> | |
488 | - <text>{{aitem.djs.day}}</text> 天 | |
489 | - <text>{{aitem.djs.hou}}</text> : | |
490 | - <text>{{aitem.djs.min}}</text> : | |
491 | - <text>{{aitem.djs.sec}}</text> | |
492 | - | |
493 | - </view> | |
494 | - <view class="money"> | |
495 | - <view class='sp_jg'>¥{{aitem.price}}</view> | |
496 | -<!-- <view class='sp_jgx'>¥{{aitem.market_price}}</view>--> | |
497 | - </view> | |
498 | - <block wx:if="{{aitem.status == 0}}"> | |
499 | - <view class="rob"> | |
500 | - <view class="wo" style="background-color: #adadad">正在预热</view> | |
501 | - </view> | |
502 | - </block> | |
503 | - | |
504 | - <block wx:if="{{aitem.status == 3}}"> | |
505 | - <view class="rob"> | |
506 | - <view class="wo" style="background-color: #adadad">已结束</view> | |
507 | - </view> | |
508 | - </block> | |
509 | - <block wx:else> | |
510 | - <block wx:if="{{aitem.status == 1}}"> | |
511 | - <view class="rob"> | |
512 | - <view class="wo">我要抢</view> | |
513 | - </view> | |
514 | - </block> | |
515 | - | |
516 | - <block wx:if="{{aitem.status == 2}}"> | |
517 | - <view class="rob"> | |
518 | - <view class="wo" style="background-color: #adadad">已抢光</view> | |
519 | - </view> | |
520 | - </block> | |
521 | - </block> | |
522 | -======= | |
523 | 484 | <block wx:if="{{aitem.status == 2}}"> |
524 | 485 | <view class="rob"> |
525 | 486 | <view class="wo" style="background-color: #adadad">已抢光</view> |
526 | 487 | </view> |
527 | 488 | </block> |
528 | 489 | </block> |
529 | ->>>>>>> dev_component | |
530 | 490 | |
531 | 491 | |
532 | 492 | </view> | ... | ... |
packageA/pages/goodsInfo/goodsInfo.js
... | ... | @@ -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 | 3898 | click_contact:function () { |
4399 | 3899 | getApp().globalData.no_clear=1; |
4400 | 3900 | }, | ... | ... |
packageA/pages/prom_list/prom_list.js
... | ... | @@ -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 | 356 | getApp().waitfor2(that, "wait_for_user_store", "fir_def_store", function () { |
357 | 357 | |
... | ... | @@ -1622,12 +1622,12 @@ Page({ |
1622 | 1622 | var plist=null; |
1623 | 1623 | var lock=0; |
1624 | 1624 | |
1625 | - //---如果是活动的时候--- | |
1626 | - if(th.data.prom_type==1 || th.data.prom_type==6){ | |
1625 | + //---如果是活动的时候,或者是虚拟商品的时候--- | |
1626 | + if(th.data.prom_type==1 || th.data.prom_type==6 || getApp().is_virtual(goodsinfo)){ | |
1627 | 1627 | func(); return false; |
1628 | 1628 | } |
1629 | 1629 | |
1630 | - if(this.data.sales_rules!=2){ | |
1630 | + if(this.data.sales_rules<2){ | |
1631 | 1631 | func(); |
1632 | 1632 | }else{ |
1633 | 1633 | ... | ... |
packageC/pages/luckyGo/luckyGo_goodsInfo/luckyGo_goodsInfo.js
... | ... | @@ -575,7 +575,9 @@ Page({ |
575 | 575 | var that = this, th = this; |
576 | 576 | getApp().getConfig2(function (e) { |
577 | 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 | 581 | getApp().waitfor2(that, "wait_for_user_store", "fir_goods", function () { |
580 | 582 | var lock = 0, plist = null; |
581 | 583 | var gd = that.data.fir_goods; |
... | ... | @@ -1570,7 +1572,7 @@ Page({ |
1570 | 1572 | // title: '提示', |
1571 | 1573 | // content: '超出商品限购' |
1572 | 1574 | // }); |
1573 | - getApp().my_warnning('超出商品限购', 0, th); | |
1575 | + getApp().my_warnning('超出商品限购', 0, th); | |
1574 | 1576 | return false; |
1575 | 1577 | } |
1576 | 1578 | } |
... | ... | @@ -1581,7 +1583,7 @@ Page({ |
1581 | 1583 | // title: '提示', |
1582 | 1584 | // content: '超出商品活动限购' |
1583 | 1585 | // }); |
1584 | - getApp().my_warnning('超出商品活动限购', 0, th); | |
1586 | + getApp().my_warnning('超出商品活动限购', 0, th); | |
1585 | 1587 | return false; |
1586 | 1588 | } |
1587 | 1589 | } |
... | ... | @@ -1672,7 +1674,7 @@ Page({ |
1672 | 1674 | return false; |
1673 | 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 | 1678 | var pick = th.get_pick_from_list(th.data.sto_sele_id) |
1677 | 1679 | //---通过接口获取门店的线下库存信息-- |
1678 | 1680 | // getApp().request.get("/api/weshop/goods/getWareStorages", { |
... | ... | @@ -1748,45 +1750,9 @@ Page({ |
1748 | 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 | 1754 | var pick = th.get_pick_from_list(th.data.sto_sele_id) |
1753 | - //---通过接口获取门店的线下库存信息-- | |
1754 | - // getApp().request.get("/api/weshop/goods/getWareStorages", { | |
1755 | - // data: { storageNos: pick.pickup_no, wareIds: encodeURIComponent(th.data.sele_g.erpwareid), storeId: os.stoid }, | |
1756 | - // success: function (res) { | |
1757 | - // if (res.data.code == 0) { | |
1758 | - // if (res.data.data.pageData.length > 0) { | |
1759 | - // var CanOutQty = res.data.data.pageData[0].CanOutQty; | |
1760 | - // if (CanOutQty < e.data.goodsInputNum) { | |
1761 | - // return s.my_warnning("库存不足!", 0, th); | |
1762 | - // } | |
1763 | - // //在调一次接口,读取商品的预出库的数量,lock | |
1764 | - // getApp().request.get("/api/weshop/order/ware/lock/page", { | |
1765 | - // data: { store_id: os.stoid, wareId: th.data.sele_g.goods_id, storageId: pick.pickup_id, pageSize: 1000 }, | |
1766 | - // success: function (res_data) { | |
1767 | - // if (res_data.data.code == 0 && res_data.data.data.total > 0) { | |
1768 | - // | |
1769 | - // var lock = 0; | |
1770 | - // for (var i in res_data.data.data.pageData) { | |
1771 | - // lock += res_data.data.data.pageData[i].outQty; | |
1772 | - // } | |
1773 | - // | |
1774 | - // if (CanOutQty <= lock) { | |
1775 | - // return s.my_warnning("库存不足!", 0, th); | |
1776 | - // } | |
1777 | - // th.add_cart_next(e, t, a, o, newd, CanOutQty - lock); | |
1778 | - // } else { | |
1779 | - // th.add_cart_next(e, t, a, o, newd, CanOutQty); | |
1780 | - // } | |
1781 | - // } | |
1782 | - // }) | |
1783 | - // } else { | |
1784 | - // return s.my_warnning("库存不足!", 0, th); | |
1785 | - // } | |
1786 | - // | |
1787 | - // } | |
1788 | - // } | |
1789 | - // }) | |
1755 | + | |
1790 | 1756 | |
1791 | 1757 | |
1792 | 1758 | th.check_CanOutQty(th.data.sele_g, pick, function (CanOutQty) { |
... | ... | @@ -2188,11 +2154,20 @@ Page({ |
2188 | 2154 | |
2189 | 2155 | //----------增加购买数量----------- |
2190 | 2156 | addCartNum: function (t) { |
2191 | - this.checkCartNum(this.data.goodsInputNum + 1); | |
2157 | + | |
2158 | + var add_num=1; | |
2159 | + if(this.data.is_normal == 1){ | |
2160 | + add_num=getApp().get_limit_qty(this.data.sele_g,0,1); | |
2161 | + } | |
2162 | + this.checkCartNum(this.data.goodsInputNum + add_num); | |
2192 | 2163 | }, |
2193 | 2164 | //----------减少购买数量----------- |
2194 | 2165 | subCartNum: function (t) { |
2195 | - this.checkCartNum(this.data.goodsInputNum - 1); | |
2166 | + var add_num=1; | |
2167 | + if(this.data.is_normal == 1){ | |
2168 | + add_num=getApp().get_limit_qty(this.data.sele_g,0,1); | |
2169 | + } | |
2170 | + this.checkCartNum(this.data.goodsInputNum - add_num); | |
2196 | 2171 | }, |
2197 | 2172 | //----------输入框输入购买数量----------- |
2198 | 2173 | inputCartNum: function (t) { |
... | ... | @@ -2216,6 +2191,7 @@ Page({ |
2216 | 2191 | //------检查数量是不是超出限购------ |
2217 | 2192 | checkCartNum: function (t) { |
2218 | 2193 | var th = this; |
2194 | + var mo_num=getApp().get_limit_qty(th.data.sele_g); | |
2219 | 2195 | this.get_buy_num(this.data.sele_g, async function () { |
2220 | 2196 | |
2221 | 2197 | //--判断商品是否超出限购-- |
... | ... | @@ -2269,8 +2245,9 @@ Page({ |
2269 | 2245 | } |
2270 | 2246 | } |
2271 | 2247 | 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)) { | |
2248 | + var p_type = parseInt(th.data.prom_type); //&& p_type!=1 && p_type!=4 | |
2249 | + if (!getApp().is_virtual(th.data.sele_g) && !th.data.sele_g.whsle_id && | |
2250 | + 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 | 2251 | if (!th.data.def_pick_store) { |
2275 | 2252 | wx.showModal({ title: '请选择门店', }); |
2276 | 2253 | return false; |
... | ... | @@ -2283,9 +2260,20 @@ Page({ |
2283 | 2260 | if (e < t) { |
2284 | 2261 | wx.showModal({ title: '库存不足', }); |
2285 | 2262 | if (e < 0) e = 0; |
2263 | + | |
2264 | + if(th.data.is_normal == 1){ | |
2265 | + if(e<mo_num) e=mo_num; | |
2266 | + } | |
2267 | + | |
2286 | 2268 | th.setData({ goodsInputNum: e }); return false; |
2287 | 2269 | } |
2288 | 2270 | t > e || 0 == e ? t = e : t < 1 && (t = 1); |
2271 | + | |
2272 | + //只有普通商品才有起购数 | |
2273 | + if(th.data.is_normal == 1){ | |
2274 | + if(t<mo_num) t=mo_num; | |
2275 | + } | |
2276 | + | |
2289 | 2277 | th.setData({ goodsInputNum: t }); |
2290 | 2278 | th.is_show_more_buy(); |
2291 | 2279 | |
... | ... | @@ -2350,8 +2338,9 @@ Page({ |
2350 | 2338 | } |
2351 | 2339 | |
2352 | 2340 | 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)) { | |
2341 | + var p_type = parseInt(th.data.prom_type); //&& p_type!=1 && p_type!=4 | |
2342 | + if (!getApp().is_virtual(th.data.sele_g) && !th.data.sele_g.whsle_id && | |
2343 | + 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 | 2344 | if (!th.data.def_pick_store) { |
2356 | 2345 | wx.showModal({ title: '请选择门店', }); |
2357 | 2346 | return false; |
... | ... | @@ -2983,7 +2972,7 @@ Page({ |
2983 | 2972 | |
2984 | 2973 | |
2985 | 2974 | //默认门店要拿下门店库存 |
2986 | - if (that.data.sales_rules >= 2 && that.data.def_pick_store) { | |
2975 | + if (!getApp().is_virtual(item) && !item.whsle_id && that.data.sales_rules >= 2 && that.data.def_pick_store) { | |
2987 | 2976 | var lock = 0, plist = null; |
2988 | 2977 | // //先读取门店的lock,采用链式写法,少用await |
2989 | 2978 | // getApp().request.promiseGet("/api/weshop/order/ware/lock/page", { |
... | ... | @@ -3213,7 +3202,8 @@ Page({ |
3213 | 3202 | th.setData({ all_pick_list: e.data.data.pageData }); |
3214 | 3203 | |
3215 | 3204 | //--获取线下库存,而且不是新的门店规则, 同时是普通购买的时候,或者同时不能是活动,秒杀,拼团,积分购-- |
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)) { | |
3205 | + if (!getApp().is_virtual(th.data.sele_g) && !th.data.sele_g.whsle_id && | |
3206 | + 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 | 3207 | setTimeout(function () { |
3218 | 3208 | th.deal_pickup_dline(e); |
3219 | 3209 | }, 800) |
... | ... | @@ -4298,7 +4288,10 @@ Page({ |
4298 | 4288 | // ind == 1 为普通购买 |
4299 | 4289 | openSpecModel_pt: function (e) { |
4300 | 4290 | |
4301 | - this.setData({ open_ind_store: 9, goodsInputNum: 1 }); | |
4291 | + | |
4292 | + var mo_num=getApp().get_limit_qty(this.data.sele_g); | |
4293 | + | |
4294 | + this.setData({ open_ind_store: 9, goodsInputNum: mo_num }); | |
4302 | 4295 | // 判断是否有待支付订单 |
4303 | 4296 | var aid = this.data.group_id; |
4304 | 4297 | var switOn = true; |
... | ... | @@ -4472,172 +4465,252 @@ Page({ |
4472 | 4465 | //----------添加到购物车时,要判断限购数量,-------- |
4473 | 4466 | e.get_buy_num(o, async function (ee) { |
4474 | 4467 | |
4475 | - //---判断商品是否超出限购--- | |
4476 | - // if (th.data.g_buy_num != null && th.data.sele_g.viplimited > 0) { | |
4477 | - // if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id) > th.data.sele_g.viplimited) { | |
4478 | - // wx.showModal({ | |
4479 | - // title: '提示', | |
4480 | - // content: '超出商品限购' | |
4481 | - // }); | |
4482 | - | |
4483 | - // var num = th.data.prom_buy_limit - th.data.prom_buy_num; | |
4484 | - // if (num < 0) num = 0; | |
4485 | - // th.setData({ goodsInputNum: num }) | |
4486 | - // return false; | |
4487 | - // } | |
4488 | - // } | |
4468 | + //---判断商品是否超出限购--- | |
4469 | + if (th.data.g_buy_num != null && th.data.sele_g.viplimited > 0) { | |
4470 | + if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id) > th.data.sele_g.viplimited) { | |
4471 | + wx.showModal({ | |
4472 | + title: '提示', | |
4473 | + content: '超出商品限购' | |
4474 | + }); | |
4489 | 4475 | |
4490 | - //---判断商品是否超出活动限购,拼团的普通购买不计算活动的限购--- | |
4491 | - // if (th.data.prom_buy_num != -1 && th.data.prom_buy_limit > 0 && th.data.is_normal != 1) { | |
4492 | - // if (th.data.goodsInputNum + th.data.prom_buy_num > th.data.prom_buy_limit) { | |
4493 | - // wx.showModal({ | |
4494 | - // title: '提示', | |
4495 | - // content: '超出商品活动限购' | |
4496 | - // }); | |
4497 | - | |
4498 | - // var num = th.data.prom_buy_limit - th.data.prom_buy_num; | |
4499 | - // if (num < 0) num = 0; | |
4500 | - // th.setData({ goodsInputNum: num }) | |
4501 | - // return false; | |
4502 | - // } | |
4503 | - // } | |
4476 | + var num = th.data.prom_buy_limit - th.data.prom_buy_num; | |
4477 | + if (num < 0) num = 0; | |
4478 | + th.setData({goodsInputNum: num}) | |
4479 | + return false; | |
4480 | + } | |
4481 | + } | |
4504 | 4482 | |
4505 | - var redis_num = 0 | |
4506 | - //不是普通购买的时候 | |
4507 | - // if (th.data.is_normal != 1) { | |
4508 | - // //-------判断活动是否抢光--------- | |
4509 | - // await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/6/" + th.data.sele_g.prom_id, { | |
4510 | - // 1: 1 | |
4511 | - // }).then(res => { | |
4512 | - // redis_num = res.data.data; | |
4513 | - // }) | |
4514 | 4483 | |
4515 | - // if (th.data.goodsInputNum > redis_num) { | |
4516 | - // wx.showModal({ | |
4517 | - // title: '提示', | |
4518 | - // content: '超出商品活动库存' | |
4519 | - // }); | |
4484 | + var redis_num = 0 | |
4520 | 4485 | |
4521 | - // th.setData({ goodsInputNum: redis_num }) | |
4486 | + if (th.data.sto_sele_name == null || th.data.sto_sele_name == undefined) | |
4487 | + th.setData({ | |
4488 | + sto_sele_name: "" | |
4489 | + }); | |
4522 | 4490 | |
4523 | - // return false; | |
4524 | - // } | |
4525 | - // } | |
4491 | + if (th.data.sto_sele_name == "") return s.my_warnning("请选择门店", 0, th); | |
4492 | + | |
4493 | + //--------------此时操作的数据------------ | |
4494 | + var newd = { | |
4495 | + goods_id: o.goods_id, | |
4496 | + goods_num: th.data.goodsInputNum, | |
4497 | + pick_id: th.data.sto_sele_id, | |
4498 | + user_id: oo.user_id, | |
4499 | + store_id: th.data.stoid, | |
4500 | + goods_price: o.shop_price, | |
4501 | + goods_name: o.goods_name, | |
4502 | + goods_sn: o.goods_sn, | |
4503 | + sku: o.sku, | |
4504 | + }; | |
4526 | 4505 | |
4527 | - // if (th.data.goodsInputNum <= 0) return s.my_warnning("商品数量不能为0", 0, th); | |
4528 | - // if (th.data.goodsInputNum > o.store_count) { | |
4529 | - // th.setData({ goodsInputNum: o.store_count }) | |
4530 | - // return s.my_warnning("超出商品库存", 0, th); | |
4531 | - // } | |
4506 | + //---是不是从收藏夹出来的--- | |
4507 | + if (th.data.c_guide_id) { | |
4508 | + newd['guide_id'] = th.data.c_guide_id; | |
4509 | + newd['guide_type'] = 2; | |
4532 | 4510 | |
4533 | - if (th.data.sto_sele_name == null || th.data.sto_sele_name == undefined) | |
4534 | - th.setData({ | |
4535 | - sto_sele_name: "" | |
4536 | - }); | |
4537 | - if (th.data.sto_sele_name == "") return s.my_warnning("请选择门店", 0, th); | |
4511 | + } else { | |
4512 | + if (getApp().globalData.guide_id) { | |
4513 | + newd['guide_id'] = getApp().globalData.guide_id; | |
4514 | + newd['guide_type'] = 0; | |
4538 | 4515 | |
4539 | - //--------------此时操作的数据------------ | |
4540 | - var newd = { | |
4541 | - goods_id: o.goods_id, | |
4542 | - goods_num: th.data.goodsInputNum, | |
4543 | - pick_id: th.data.sto_sele_id, | |
4544 | - user_id: oo.user_id, | |
4545 | - store_id: th.data.stoid, | |
4546 | - goods_price: o.shop_price, | |
4547 | - goods_name: o.goods_name, | |
4548 | - goods_sn: o.goods_sn, | |
4549 | - sku: o.sku, | |
4550 | - }; | |
4516 | + } | |
4517 | + } | |
4518 | + if (getApp().globalData.groupchat_id) { | |
4519 | + newd['groupchat_id'] = getApp().globalData.groupchat_id; | |
4520 | + } | |
4521 | + //让商品带上房间号 | |
4522 | + if (th.data.sys_switch.is_skuroom_id == 1) { | |
4523 | + if (th.data.data.goods_id == getApp().globalData.room_goods_id) { | |
4524 | + newd.room_id = getApp().globalData.room_id; | |
4525 | + } | |
4526 | + } else { | |
4527 | + if (newd.goods_id == getApp().globalData.room_goods_id) { | |
4528 | + newd.room_id = getApp().globalData.room_id; | |
4529 | + } | |
4530 | + } | |
4551 | 4531 | |
4552 | - //---是不是从收藏夹出来的--- | |
4553 | - if (th.data.c_guide_id) { | |
4554 | - newd['guide_id'] = th.data.c_guide_id; | |
4555 | - newd['guide_type'] = 2; | |
4532 | + //---如果商品不是积分购和拼团,要判断一个是否要进行等级价的判断------ | |
4556 | 4533 | |
4557 | - } else { | |
4558 | - if (getApp().globalData.guide_id) { | |
4559 | - newd['guide_id'] = getApp().globalData.guide_id; | |
4560 | - newd['guide_type'] = 0; | |
4534 | + if (th.data.is_normal == 1) { | |
4535 | + var conf = th.data.bconfig; | |
4536 | + if (conf.switch_list && getApp().globalData.userInfo['card_field'] && getApp().globalData.userInfo['card_expiredate']) { | |
4537 | + var s_list = JSON.parse(conf.switch_list); | |
4561 | 4538 | |
4562 | - } | |
4563 | - } | |
4564 | - if(getApp().globalData.groupchat_id){ | |
4565 | - newd['groupchat_id'] = getApp().globalData.groupchat_id; | |
4566 | - } | |
4567 | - //让商品带上房间号 | |
4568 | - if (th.data.sys_switch.is_skuroom_id == 1) { | |
4569 | - if (th.data.data.goods_id == getApp().globalData.room_goods_id) { | |
4570 | - newd.room_id = getApp().globalData.room_id; | |
4571 | - } | |
4572 | - } else { | |
4573 | - if (newd.goods_id == getApp().globalData.room_goods_id) { | |
4574 | - newd.room_id = getApp().globalData.room_id; | |
4575 | - } | |
4576 | - } | |
4539 | + var now = ut.gettimestamp(); | |
4540 | + | |
4541 | + var str = getApp().globalData.userInfo['card_expiredate'].replace(/-/g, '/'); | |
4542 | + var end = new Date(str); | |
4543 | + end = Date.parse(end) / 1000; | |
4544 | + | |
4545 | + //如果后台有开启等级价的功能 | |
4546 | + if (parseInt(s_list.rank_switch) == 2 && end > now) { | |
4547 | + var card_price = o[getApp().globalData.userInfo['card_field']]; | |
4548 | + //如果会员有等级价 | |
4549 | + if (getApp().globalData.userInfo['card_field'] != undefined && getApp().globalData.userInfo['card_field'] != null | |
4550 | + && getApp().globalData.userInfo['card_field'] != "" && card_price > 0) { | |
4551 | + newd.goods_price = card_price; | |
4552 | + } | |
4553 | + } | |
4554 | + } | |
4577 | 4555 | |
4578 | - //---如果商品不是积分购和拼团,要判断一个是否要进行等级价的判断------ | |
4556 | + //---如果是线下门店销售的时候--- | |
4557 | + if (!getApp().is_virtual(th.data.sele_g) && th.data.sales_rules >= 2 && !th.data.sele_g.whsle_id) { | |
4558 | + var pick = th.get_pick_from_list(th.data.sto_sele_id) | |
4579 | 4559 | |
4580 | - if (th.data.is_normal == 1) { | |
4581 | - var conf = th.data.bconfig; | |
4582 | - if (conf.switch_list && getApp().globalData.userInfo['card_field'] && getApp().globalData.userInfo['card_expiredate']) { | |
4583 | - var s_list = JSON.parse(conf.switch_list); | |
4560 | + th.check_CanOutQty(th.data.sele_g, pick, function (CanOutQty) { | |
4561 | + if (CanOutQty) { | |
4584 | 4562 | |
4585 | - var now = ut.gettimestamp(); | |
4563 | + if (CanOutQty < e.data.goodsInputNum) { | |
4564 | + wx.showToast({ | |
4565 | + title: '库存不足!', | |
4566 | + icon: 'none', | |
4567 | + }); | |
4568 | + return false; | |
4569 | + } | |
4586 | 4570 | |
4587 | - var str = getApp().globalData.userInfo['card_expiredate'].replace(/-/g, '/'); | |
4588 | - var end = new Date(str); | |
4589 | - end = Date.parse(end) / 1000; | |
4571 | + th.by_next_func(newd); | |
4572 | + } else { | |
4573 | + wx.showToast({ | |
4574 | + title: '库存不足!', | |
4575 | + icon: 'none', | |
4576 | + }); | |
4577 | + return false; | |
4578 | + } | |
4579 | + }) | |
4590 | 4580 | |
4591 | - //如果后台有开启等级价的功能 | |
4592 | - if (parseInt(s_list.rank_switch) == 2 && end > now) { | |
4593 | - var card_price = o[getApp().globalData.userInfo['card_field']]; | |
4594 | - //如果会员有等级价 | |
4595 | - if (getApp().globalData.userInfo['card_field'] != undefined && getApp().globalData.userInfo['card_field'] != null | |
4596 | - && getApp().globalData.userInfo['card_field'] != "" && card_price > 0) { | |
4597 | - newd.goods_price = card_price; | |
4581 | + } else { | |
4582 | + if (o.store_count <= 0) { | |
4583 | + wx.showToast({ | |
4584 | + title: '库存已为空!', | |
4585 | + icon: 'none', | |
4586 | + }); | |
4587 | + return false; | |
4588 | + //return s.my_warnning("库存已为空!", 0, th); | |
4589 | + } | |
4590 | + | |
4591 | + if (o.store_count < e.data.goodsInputNum) { | |
4592 | + wx.showToast({ | |
4593 | + title: '库存不足!', | |
4594 | + icon: 'none', | |
4595 | + }); | |
4596 | + return false; | |
4597 | + //return s.my_warnning("库存不足!", 0, th); | |
4598 | + } | |
4599 | + | |
4600 | + | |
4601 | + th.by_next_func(newd); | |
4598 | 4602 | } |
4603 | + return false; | |
4604 | + | |
4605 | + | |
4599 | 4606 | } |
4600 | - } | |
4601 | - } | |
4602 | 4607 | |
4603 | 4608 | |
4604 | - //-----如果是秒杀,团购,积分购,拼团,且不是普通购买----- | |
4605 | - if (th.data.prom_type == 9 && th.data.is_normal != 1) { | |
4606 | - newd.goods_price = th.data.prom_price; | |
4607 | - newd.prom_type = th.data.prom_type; | |
4608 | - newd.prom_id = th.data.prom_id; | |
4609 | - //newd.kt_type = th.data.prom_act.kttype; //开团类型 | |
4610 | - newd.is_pt_tz = 0; | |
4611 | - //th.data.sto_sele_distr=1; //直接用自提的方式提交 | |
4612 | - if (newd.kt_type > 1) { | |
4613 | - newd.is_pt_tz = 1; //开团类型 | |
4609 | + //-----如果是秒杀,团购,积分购,拼团,且不是普通购买----- | |
4610 | + if (th.data.prom_type == 9 && th.data.is_normal != 1) { | |
4611 | + newd.goods_price = th.data.prom_price; | |
4612 | + newd.prom_type = th.data.prom_type; | |
4613 | + newd.prom_id = th.data.prom_id; | |
4614 | + //newd.kt_type = th.data.prom_act.kttype; //开团类型 | |
4615 | + newd.is_pt_tz = 0; | |
4616 | + //th.data.sto_sele_distr=1; //直接用自提的方式提交 | |
4617 | + if (newd.kt_type > 1) { | |
4618 | + newd.is_pt_tz = 1; //开团类型 | |
4619 | + } | |
4620 | + if (newd.kt_type == 3) { | |
4621 | + th.data.sto_sele_distr = 1; | |
4622 | + } | |
4623 | + | |
4624 | + } | |
4625 | + | |
4626 | + // else if (th.data.prom_type == 3) { | |
4627 | + // newd.prom_type = 0; | |
4628 | + // newd.prom_id = 0; | |
4629 | + // } | |
4630 | + | |
4631 | + th.by_next_func(newd); | |
4614 | 4632 | } |
4615 | - if (newd.kt_type == 3) { | |
4616 | - th.data.sto_sele_distr = 1; | |
4633 | + | |
4634 | + | |
4635 | + ) | |
4636 | + }, | |
4637 | + by_next_func(newd){ | |
4638 | + var th=this; | |
4639 | + newd['pick_name'] = th.data.sto_sele_name; | |
4640 | + newd['pick_dis'] = th.data.sto_sele_distr; | |
4641 | + newd['is_normal'] = th.data.is_normal; | |
4642 | + | |
4643 | + if (newd['is_normal']) { | |
4644 | + newd['is_pd_normal'] = 1; | |
4645 | + //判断一下有没有全局优惠活动 | |
4646 | + th.buyNow(newd); | |
4647 | + } | |
4648 | + else { | |
4649 | + // 点击立即参团 | |
4650 | + th.buyNow_pt(newd); | |
4651 | + } | |
4652 | + }, | |
4653 | + | |
4654 | + //统一一下获取线下库存的函数 | |
4655 | + async check_CanOutQty(goodsinfo, item, func) { | |
4656 | + | |
4657 | + var sales_rules = this.data.sales_rules; | |
4658 | + | |
4659 | + var lock_rq = { | |
4660 | + store_id: os.stoid, | |
4661 | + wareId: goodsinfo.goods_id, | |
4662 | + pageSize: 1000 | |
4663 | + }; | |
4664 | + | |
4665 | + if (sales_rules == 2) { | |
4666 | + lock_rq.storageId = item.pickup_id | |
4667 | + } else { | |
4668 | + lock_rq.appoint_pick_keyid = encodeURIComponent(this.data.appoint_pick_keyid) | |
4669 | + } | |
4670 | + | |
4671 | + var lock = 0; | |
4672 | + var CanOutQty = 0; | |
4673 | + var plist = null; | |
4674 | + //先读取门店的lock | |
4675 | + await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", { | |
4676 | + data: lock_rq | |
4677 | + }).then(res => { | |
4678 | + if (res.data.code == 0 && res.data.data.total > 0) { | |
4679 | + for (var i in res.data.data.pageData) | |
4680 | + lock += res.data.data.pageData[i].outQty; | |
4617 | 4681 | } |
4682 | + }) | |
4618 | 4683 | |
4684 | + var sto_req = { | |
4685 | + wareIds: encodeURIComponent(goodsinfo.erpwareid), | |
4686 | + storeId: os.stoid | |
4687 | + } | |
4688 | + if (sales_rules == 2) { | |
4689 | + sto_req.storageNos = item.pickup_no | |
4690 | + } else { | |
4691 | + sto_req.storageIds = encodeURIComponent(this.data.appoint_pick_keyid) | |
4619 | 4692 | } |
4620 | 4693 | |
4621 | - // else if (th.data.prom_type == 3) { | |
4622 | - // newd.prom_type = 0; | |
4623 | - // newd.prom_id = 0; | |
4624 | - // } | |
4625 | 4694 | |
4626 | - newd['pick_name'] = th.data.sto_sele_name; | |
4627 | - newd['pick_dis'] = th.data.sto_sele_distr; | |
4628 | - newd['is_normal'] = th.data.is_normal; | |
4629 | 4695 | |
4630 | - if (newd['is_normal']) { | |
4631 | - newd['is_pd_normal'] = 1; | |
4632 | - //判断一下有没有全局优惠活动 | |
4633 | - th.buyNow(newd); | |
4696 | + //读取线下的门店库存 | |
4697 | + await getApp().request.promiseGet("/api/weshop/goods/getWareStorages", { | |
4698 | + data: sto_req | |
4699 | + }).then(res => { | |
4700 | + if (res.data.code == 0 && res.data.data.total > 0) { | |
4701 | + plist = res.data.data.pageData[0]; | |
4702 | + } | |
4703 | + }) | |
4704 | + | |
4705 | + if (plist && plist.CanOutQty - lock > 0) { | |
4706 | + CanOutQty = plist.CanOutQty - lock; | |
4634 | 4707 | } |
4635 | - else { | |
4636 | - // 点击立即参团 | |
4637 | - th.buyNow_pt(newd); | |
4638 | - }; | |
4639 | - }) | |
4640 | - }, | |
4708 | + | |
4709 | + if (func) func(CanOutQty); | |
4710 | + | |
4711 | + }, | |
4712 | + | |
4713 | + | |
4641 | 4714 | //----------立即购买_pt----------- |
4642 | 4715 | buyNow_pt: function (e) { |
4643 | 4716 | s.set_b_now(e); | ... | ... |
packageC/pages/luckyGo/luckyGo_goodsInfo/luckyGo_goodsInfo.wxml
... | ... | @@ -436,7 +436,7 @@ |
436 | 436 | <view class="no_store" wx:if="{{def_pick_store && def_pick_store.is_no_dis}}"> |
437 | 437 | (配送不匹配) |
438 | 438 | </view> |
439 | - <view class="no_store" wx:elif="{{def_pick_store && !def_pick_store.CanOutQty && sales_rules>=2 && prom_type==0}}"> | |
439 | + <view class="no_store" wx:elif="{{def_pick_store && !def_pick_store.CanOutQty && !filters.is_virtual_gd(sele_g.is_virtual) && sales_rules>=2 && prom_type==0}}"> | |
440 | 440 | (库存不足) |
441 | 441 | </view> |
442 | 442 | </block> |
... | ... | @@ -1064,12 +1064,17 @@ |
1064 | 1064 | <block wx:if="{{prom_type == 0}}"> |
1065 | 1065 | <view class="flex"> |
1066 | 1066 | <view class="spec-goods-stock">已售:{{sele_g.sales_sum}}</view> |
1067 | + <!-- 线下门店销售的时候 --> | |
1067 | 1068 | <block wx:if="{{sales_rules>=2}}"> |
1068 | - <view class="spec-goods-stock" wx:if="{{def_pick_store && def_pick_store.CanOutQty}}"> | |
1069 | - 可售:{{def_pick_store.CanOutQty}} | |
1070 | - </view> | |
1071 | - <view class="spec-goods-stock" wx:else>可售:0</view> | |
1069 | + | |
1070 | + <block wx:if="{{!filters.is_virtual_gd(sele_g.is_virtual)}}"> | |
1071 | + <view class="spec-goods-stock" wx:if="{{def_pick_store && def_pick_store.CanOutQty}}"> | |
1072 | + 可售:{{def_pick_store.CanOutQty}} | |
1073 | + </view> | |
1074 | + <view class="spec-goods-stock" wx:else>可售:0</view> | |
1075 | + </block> | |
1072 | 1076 | </block> |
1077 | + | |
1073 | 1078 | <block wx:else> |
1074 | 1079 | <view class="spec-goods-stock">可售:{{sele_g.store_count}}</view> |
1075 | 1080 | </block> |
... | ... | @@ -1105,7 +1110,7 @@ |
1105 | 1110 | <view wx:if="{{def_pickpu_list && !def_pickpu_list.length}}">(库存不足)</view> |
1106 | 1111 | <block wx:else> |
1107 | 1112 | <view class="no_store" wx:if="{{def_pick_store.is_no_dis}}">(配送不匹配)</view> |
1108 | - <view wx:elif="{{def_pick_store && !def_pick_store.CanOutQty && sales_rules>=2 && prom_type==0}}"> | |
1113 | + <view wx:elif="{{def_pick_store && !def_pick_store.CanOutQty && !filters.is_virtual_gd(sele_g.is_virtual) && sales_rules>=2 && prom_type==0}}"> | |
1109 | 1114 | (库存不足) |
1110 | 1115 | </view> |
1111 | 1116 | </block> |
... | ... | @@ -1177,7 +1182,7 @@ |
1177 | 1182 | </block> |
1178 | 1183 | <block wx:else> |
1179 | 1184 | <!-- 如果是线下库存购买的时候,且是普通商品购买的时候 --> |
1180 | - <block wx:if="{{sales_rules>=2 && prom_type==0}}"> | |
1185 | + <block wx:if="{{!filters.is_virtual_gd(sele_g.is_virtual) && sales_rules>=2 && prom_type==0}}"> | |
1181 | 1186 | <block wx:if="{{!def_pick_store.CanOutQty}}"> |
1182 | 1187 | <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999"> |
1183 | 1188 | 库存不足 | ... | ... |
packageC/pages/presell/cart/cart2.js
... | ... | @@ -128,8 +128,8 @@ Page({ |
128 | 128 | |
129 | 129 | dis_config:null, |
130 | 130 | bn_use_commission:0, //是不是使用佣金 |
131 | - | |
132 | - same_ok:1 //同城配送按钮控制 | |
131 | + same_ok:1, | |
132 | + appoint_pick_keyid: '', | |
133 | 133 | |
134 | 134 | }, |
135 | 135 | onLoad: function (t) { |
... | ... | @@ -248,7 +248,8 @@ Page({ |
248 | 248 | sales_rules: ee.sales_rules, |
249 | 249 | rank_switch: json_d.rank_switch, |
250 | 250 | is_default_logistics: is_default_logistics, |
251 | - is_same_city: is_same_city | |
251 | + is_same_city: is_same_city, | |
252 | + appoint_pick_keyid: json_d.appoint_pick_keyid | |
252 | 253 | }); |
253 | 254 | |
254 | 255 | var rank_switch = json_d.rank_switch; |
... | ... | @@ -1284,7 +1285,7 @@ Page({ |
1284 | 1285 | if (gg.is_pd_normal) goods.is_pd_normal = 1; |
1285 | 1286 | |
1286 | 1287 | //如果不立即购买或者秒杀,如果是线下库存购买的时候 |
1287 | - if (goods.prom_type != 1 && goods.prom_type != 6 && goods.prom_type != 8 && th.data.sales_rules == 2) { | |
1288 | + 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)) { | |
1288 | 1289 | var isok = 1; |
1289 | 1290 | await th.check_store_num(goods.goods_id, th.data.bn_pick, gg.goods_num, function (res) { |
1290 | 1291 | isok = res; |
... | ... | @@ -1552,7 +1553,7 @@ Page({ |
1552 | 1553 | } |
1553 | 1554 | |
1554 | 1555 | //如果不立即购买或者秒杀,如果是线下库存购买的时候 |
1555 | - if (goods.prom_type == 0 && th.data.sales_rules == 2) { | |
1556 | + if (goods.prom_type == 0 && th.data.sales_rules >= 2 && !g_item.whsle_id && !getApp().is_virtual(g_item)) { | |
1556 | 1557 | var isok = 1; |
1557 | 1558 | await th.check_store_num(goods.goods_id, t_item.pickup_id, goods.goods_num, function (res) { |
1558 | 1559 | isok = res; |
... | ... | @@ -1729,26 +1730,38 @@ Page({ |
1729 | 1730 | }) |
1730 | 1731 | |
1731 | 1732 | }, |
1733 | + | |
1734 | + | |
1735 | + | |
1732 | 1736 | //---确认线下门店的数量足不足--- |
1733 | 1737 | async check_store_num(goods_id, pick, goods_num, func) { |
1734 | 1738 | var lock = 0, pick_no, plist, erpwareid; |
1739 | + | |
1740 | + var lock_rq = { store_id: os.stoid, wareId: goods_id, storageId: pick, pageSize: 1000 }; | |
1741 | + if (this.data.sales_rules == 3) { | |
1742 | + lock_rq.appoint_pick_keyid = this.data.appoint_pick_keyid; | |
1743 | + delete lock_rq.storageId | |
1744 | + } | |
1735 | 1745 | //先读取门店的lock |
1736 | 1746 | await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", { |
1737 | - data: { store_id: os.stoid, wareId: goods_id, storageId: pick, pageSize: 1000 } | |
1747 | + data:lock_rq | |
1738 | 1748 | }).then(res => { |
1739 | 1749 | if (res.data.code == 0 && res.data.data.total > 0) { |
1740 | 1750 | for (var i in res.data.data.pageData) |
1741 | 1751 | lock += res.data.data.pageData[i].outQty; |
1742 | 1752 | } |
1743 | 1753 | }) |
1744 | - //先获取门店的编号 | |
1745 | - await getApp().request.promiseGet("/api/weshop/pickup/get/" + os.stoid + "/" + pick, { | |
1746 | - data: { storeId: os.stoid, goodsId: t.goods_id, pickupId: pick } | |
1747 | - }).then(res => { | |
1748 | - if (res.data.code == 0) { | |
1749 | - pick_no = res.data.data.pickup_no; | |
1750 | - } | |
1751 | - }) | |
1754 | + | |
1755 | + if (this.data.sales_rules == 2) { | |
1756 | + //先获取门店的编号 | |
1757 | + await getApp().request.promiseGet("/api/weshop/pickup/get/" + os.stoid + "/" + pick, { | |
1758 | + data: {storeId: os.stoid, goodsId: t.goods_id, pickupId: pick} | |
1759 | + }).then(res => { | |
1760 | + if (res.data.code == 0) { | |
1761 | + pick_no = res.data.data.pickup_no; | |
1762 | + } | |
1763 | + }) | |
1764 | + } | |
1752 | 1765 | //先获取商品的线下库存 |
1753 | 1766 | await getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + goods_id, { |
1754 | 1767 | data: { storeId: os.stoid, goodsId: t.goods_id, pickupId: pick } |
... | ... | @@ -1757,9 +1770,16 @@ Page({ |
1757 | 1770 | erpwareid = res.data.data.erpwareid; |
1758 | 1771 | } |
1759 | 1772 | }) |
1773 | + | |
1774 | + var sto_rq = { storageNos: pick_no, wareIds: encodeURIComponent(erpwareid), storeId: os.stoid, pageSize: 2000 }; | |
1775 | + if (this.data.sales_rules == 3) { | |
1776 | + sto_rq.storageIds = this.data.appoint_pick_keyid; | |
1777 | + delete sto_rq.storageNos | |
1778 | + } | |
1779 | + | |
1760 | 1780 | //读取线下的门店库存 |
1761 | 1781 | await getApp().request.promiseGet("/api/weshop/goods/getWareStorages", { |
1762 | - data: { storageNos: pick_no, wareIds: encodeURIComponent(erpwareid), storeId: os.stoid, pageSize: 2000 } | |
1782 | + data: sto_rq | |
1763 | 1783 | }).then(res => { |
1764 | 1784 | if (res.data.code == 0) { |
1765 | 1785 | plist = res.data.data.pageData[0]; | ... | ... |
packageC/pages/presell/goodsInfo/goodsInfo.js
... | ... | @@ -395,6 +395,8 @@ Page({ |
395 | 395 | is_closecoupon: json_d.is_closecoupon, |
396 | 396 | is_newsales_rules: json_d.is_newsales_rules, |
397 | 397 | is_retail_price: json_d.is_retail_price || 0, |
398 | + appoint_pick_keyid: json_d.appoint_pick_keyid | |
399 | + | |
398 | 400 | }); |
399 | 401 | // ee.init(gid); |
400 | 402 | //------几人评价------- |
... | ... | @@ -1992,7 +1994,8 @@ Page({ |
1992 | 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 | 1999 | setTimeout(function () { |
1997 | 2000 | th.deal_pickup_dline(e); |
1998 | 2001 | }, 800) |
... | ... | @@ -2199,7 +2202,8 @@ Page({ |
2199 | 2202 | |
2200 | 2203 | //------------处理线下门店库存-------- |
2201 | 2204 | deal_pickup_dline(e) { |
2202 | - var pkno = [], th = this; | |
2205 | + var pkno = [], | |
2206 | + th = this; | |
2203 | 2207 | if (!th.data.sele_g) return false; |
2204 | 2208 | |
2205 | 2209 | if (this.data.def_pick_store) { |
... | ... | @@ -2219,78 +2223,165 @@ Page({ |
2219 | 2223 | |
2220 | 2224 | var g_distr_type = th.data.sele_g.distr_type; |
2221 | 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 | 2237 | //先读取门店的lock,采用链式写法,少用await |
2223 | 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 | 2240 | }).then(res => { |
2226 | 2241 | if (res.data.code == 0 && res.data.data.total > 0) { |
2227 | 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 | 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 | 2261 | }).then(res => { |
2234 | 2262 | |
2235 | 2263 | wx.hideLoading(); |
2236 | 2264 | if (res.data.code == 0) { |
2265 | + | |
2237 | 2266 | if (res.data.data.pageData && res.data.data.pageData.length > 0) { |
2238 | - var plist = res.data.data.pageData; | |
2267 | + | |
2239 | 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 | 2338 | em.data.data.total = new_list.length; |
2269 | 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 | 2345 | th.data.fir_def_store.CanOutQty = 0; |
2274 | 2346 | //--当选择的门店是客户默认的门店的时候-- |
2275 | 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 | 2351 | em.data.data.pageData.unshift(th.data.def_pick_store); |
2278 | 2352 | } else { |
2279 | 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 | 2364 | th.deal_pickup(em); |
2365 | + | |
2285 | 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 | 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 | 2385 | find_lock_num(pick_id, lock) { |
2295 | 2386 | var lock_num = 0; |
2296 | 2387 | if (!lock) return 0; | ... | ... |
packageC/pages/presell/goodsInfo/goodsInfo.wxml
... | ... | @@ -194,7 +194,7 @@ |
194 | 194 | <view class="no_store" wx:if="{{def_pick_store && def_pick_store.is_no_dis}}"> |
195 | 195 | (配送不匹配2) |
196 | 196 | </view> |
197 | - <view class="no_store" wx:elif="{{def_pick_store && !def_pick_store.CanOutQty && sales_rules==2 && prom_type==0}}"> | |
197 | + <view class="no_store" wx:elif="{{def_pick_store && !def_pick_store.CanOutQty && !filters.is_virtual_gd(sele_g.is_virtual) && sales_rules>=2 && prom_type==0}}"> | |
198 | 198 | (库存不足) |
199 | 199 | </view> |
200 | 200 | </block> |
... | ... | @@ -630,7 +630,7 @@ |
630 | 630 | <view wx:if="{{def_pickpu_list && !def_pickpu_list.length}}">(库存不足)</view> |
631 | 631 | <block wx:else> |
632 | 632 | <view class="no_store" wx:if="{{def_pick_store.is_no_dis}}">(配送不匹配1)</view> |
633 | - <view wx:elif="{{def_pick_store && !def_pick_store.CanOutQty && sales_rules==2 && prom_type==0}}"> | |
633 | + <view wx:elif="{{def_pick_store && !def_pick_store.CanOutQty && !filters.is_virtual_gd(sele_g.is_virtual) && sales_rules>=2 && prom_type==0}}"> | |
634 | 634 | (库存不足) |
635 | 635 | </view> |
636 | 636 | </block> | ... | ... |
packageC/pages/presell/list/list.wxml
... | ... | @@ -33,7 +33,7 @@ |
33 | 33 | </navigator> |
34 | 34 | <view class="kill-cont"> |
35 | 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 | 37 | <view class="flex-vertical xc-strip-frame"> |
38 | 38 | <view class="xc-strip-blank rel"> |
39 | 39 | ... | ... |
packageC/pages/presell/pregoodsInfo/goodsInfo.js
... | ... | @@ -1916,7 +1916,7 @@ Page({ |
1916 | 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 | 1920 | setTimeout(function () { |
1921 | 1921 | th.deal_pickup_dline(e); |
1922 | 1922 | }, 800) |
... | ... | @@ -2121,9 +2121,10 @@ Page({ |
2121 | 2121 | } |
2122 | 2122 | }, |
2123 | 2123 | |
2124 | - //------------处理线下门店库存-------- | |
2124 | + //------------处理线下门店库存-------- | |
2125 | 2125 | deal_pickup_dline(e) { |
2126 | - var pkno = [], th = this; | |
2126 | + var pkno = [], | |
2127 | + th = this; | |
2127 | 2128 | if (!th.data.sele_g) return false; |
2128 | 2129 | |
2129 | 2130 | if (this.data.def_pick_store) { |
... | ... | @@ -2143,78 +2144,166 @@ Page({ |
2143 | 2144 | |
2144 | 2145 | var g_distr_type = th.data.sele_g.distr_type; |
2145 | 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 | 2158 | //先读取门店的lock,采用链式写法,少用await |
2147 | 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 | 2161 | }).then(res => { |
2150 | 2162 | if (res.data.code == 0 && res.data.data.total > 0) { |
2151 | 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 | 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 | 2182 | }).then(res => { |
2158 | 2183 | |
2159 | 2184 | wx.hideLoading(); |
2160 | 2185 | if (res.data.code == 0) { |
2186 | + | |
2161 | 2187 | if (res.data.data.pageData && res.data.data.pageData.length > 0) { |
2162 | - var plist = res.data.data.pageData; | |
2188 | + | |
2163 | 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 | 2259 | em.data.data.total = new_list.length; |
2193 | 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 | 2266 | th.data.fir_def_store.CanOutQty = 0; |
2198 | 2267 | //--当选择的门店是客户默认的门店的时候-- |
2199 | 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 | 2272 | em.data.data.pageData.unshift(th.data.def_pick_store); |
2202 | 2273 | } else { |
2203 | 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 | 2285 | th.deal_pickup(em); |
2286 | + | |
2209 | 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 | 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 | 2307 | find_lock_num(pick_id, lock) { |
2219 | 2308 | var lock_num = 0; |
2220 | 2309 | if (!lock) return 0; | ... | ... |
packageE/pages/cart/cart2/cart2.js
... | ... | @@ -4000,8 +4000,25 @@ Page({ |
4000 | 4000 | } |
4001 | 4001 | |
4002 | 4002 | |
4003 | + var mo_num=getApp().get_limit_qty(th.data.bn_goods); | |
4004 | + var steep=getApp().get_limit_qty(th.data.bn_goods,0,1); | |
4005 | + | |
4006 | + if ([0,3,5,7,10].indexOf(goods.prom_type)>=-1){ | |
4007 | + if(mo_num>goods.goods_num){ | |
4008 | + getApp().confirmBox(goods.goods_name + "的未到达起订数量"); | |
4009 | + th.data.is_summit_ing = 0; | |
4010 | + return false; | |
4011 | + } | |
4012 | + if(steep>1 && (goods.goods_num-mo_num)%steep!=0 ){ | |
4013 | + getApp().confirmBox(goods.goods_name + "的购买的数量不是起订量的倍数"); | |
4014 | + th.data.is_summit_ing = 0; | |
4015 | + return false; | |
4016 | + } | |
4017 | + } | |
4018 | + | |
4003 | 4019 | //如果不立即购买或者秒杀,如果是线下库存购买的时候 |
4004 | - if (goods.prom_type != 1 && goods.prom_type != 6 && goods.prom_type != 2 && th.data.sales_rules >= 2 && !th.data.bn_goods.whsle_id) { | |
4020 | + if (goods.prom_type != 1 && goods.prom_type != 6 && goods.prom_type != 2 | |
4021 | + && th.data.sales_rules >= 2 && !th.data.bn_goods.whsle_id && !getApp().is_virtual(th.data.bn_goods)) { | |
4005 | 4022 | var isok = 1; |
4006 | 4023 | await th.check_store_num(goods.goods_id, th.data.bn_pick, gg.goods_num, function (res) { |
4007 | 4024 | isok = res; |
... | ... | @@ -4124,7 +4141,6 @@ Page({ |
4124 | 4141 | |
4125 | 4142 | var order_prom_list_cart = th.data.order_prom_list_cart; |
4126 | 4143 | |
4127 | - | |
4128 | 4144 | //--组装推送数据-- |
4129 | 4145 | for (var i = 0; i < order_prom_list_cart.length; i++) { |
4130 | 4146 | var t_item = order_prom_list_cart[i]; |
... | ... | @@ -4347,8 +4363,26 @@ Page({ |
4347 | 4363 | check_map[txt] = 1; |
4348 | 4364 | } |
4349 | 4365 | |
4350 | - //如果不立即购买或者秒杀,如果是线下库存购买的时候 | |
4351 | - if (goods.prom_type == 0 && th.data.sales_rules >= 2) { | |
4366 | + goods.prom_type=parseInt(goods.prom_type+''); | |
4367 | + var mo_num=getApp().get_limit_qty(g_item); | |
4368 | + var steep=getApp().get_limit_qty(g_item,0,1); | |
4369 | + | |
4370 | + if ([0,3,5,7,10].indexOf(goods.prom_type)>=-1){ | |
4371 | + if(mo_num>goods.goods_num){ | |
4372 | + getApp().confirmBox(goods.goods_name + "的未到达起订数量"); | |
4373 | + th.data.is_summit_ing = 0; | |
4374 | + return false; | |
4375 | + } | |
4376 | + if(steep>1 && (goods.goods_num-mo_num)%steep!=0 ){ | |
4377 | + getApp().confirmBox(goods.goods_name + "的购买的数量不是起订量的倍数"); | |
4378 | + th.data.is_summit_ing = 0; | |
4379 | + return false; | |
4380 | + } | |
4381 | + | |
4382 | + } | |
4383 | + | |
4384 | + //如果不立即购买或者秒杀,如果是线下库存购买的时候 | |
4385 | + if ([0,3,5,7,10].indexOf(goods.prom_type)>=-1 && th.data.sales_rules >= 2 && !g_item.whsle_id && !getApp().is_virtual(g_item) ) { | |
4352 | 4386 | var isok = 1; |
4353 | 4387 | await th.check_store_num(goods.goods_id, t_item.pickup_id, goods.goods_num, function (res) { |
4354 | 4388 | isok = res; | ... | ... |
pages/activity/pind_list/pind_list.js
... | ... | @@ -163,6 +163,39 @@ Page({ |
163 | 163 | if (plist.length <= 0) { |
164 | 164 | getApp().showWarning("没有更多数据"); |
165 | 165 | th.data.ismore = 0; |
166 | + | |
167 | + | |
168 | + | |
169 | + //没有数据切换 | |
170 | + if (e.data.currentPage == 1 && this.data.type == 1) { | |
171 | + | |
172 | + | |
173 | + e.data.currentPage=1; | |
174 | + i = "/api/weshop/teamlist/pageteam/0?page=" + e.data.currentPage; | |
175 | + await getApp().request.promiseGet(i, { | |
176 | + isShowLoading: 0, | |
177 | + data: { | |
178 | + store_id: os.stoid, | |
179 | + is_end: 0, | |
180 | + is_show: 1, | |
181 | + user_id:getApp().globalData.user_id, | |
182 | + } | |
183 | + }).then(res => { | |
184 | + plist = res.data.data.pageData; | |
185 | + }); | |
186 | + | |
187 | + if(plist){ | |
188 | + setTimeout(function () { | |
189 | + th.data.ismore = 1; | |
190 | + th.setData({ | |
191 | + type: 0 | |
192 | + }); | |
193 | + th.requestSalelist(); | |
194 | + }, 1000); | |
195 | + } | |
196 | + | |
197 | + } | |
198 | + | |
166 | 199 | } |
167 | 200 | //--循环读取接口--- |
168 | 201 | for (var i = 0; i < plist.length; i++) { | ... | ... |
pages/cart/cart/cart.js
... | ... | @@ -1612,9 +1612,16 @@ Page({ |
1612 | 1612 | } |
1613 | 1613 | } |
1614 | 1614 | |
1615 | + var add_num=1; | |
1616 | + var mo_num=getApp().get_limit_qty(a); | |
1617 | + var steep=getApp().get_limit_qty(a,0,1); | |
1618 | + if(steep>1){ | |
1619 | + add_num=steep; | |
1620 | + } | |
1621 | + | |
1615 | 1622 | |
1616 | 1623 | var e = { |
1617 | - goods_num: a.goods_num + 1, | |
1624 | + goods_num: a.goods_num + add_num, | |
1618 | 1625 | id: a.id, |
1619 | 1626 | goods_id: a.goods_id, |
1620 | 1627 | store_id: oo.stoid |
... | ... | @@ -1640,16 +1647,26 @@ Page({ |
1640 | 1647 | } |
1641 | 1648 | |
1642 | 1649 | |
1650 | + var add_num=1; | |
1651 | + var mo_num=getApp().get_limit_qty(a); | |
1652 | + var steep=getApp().get_limit_qty(a,0,1); | |
1653 | + if(steep>1){ | |
1654 | + add_num=steep; | |
1655 | + } | |
1643 | 1656 | |
1644 | - if (1 != a.goods_num) { | |
1645 | - var e = { | |
1646 | - goods_num: a.goods_num - 1, | |
1647 | - id: a.id, | |
1648 | - goods_id: a.goods_id, | |
1649 | - store_id: oo.stoid | |
1650 | - }; | |
1651 | - this.postCardList(e, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems); | |
1657 | + var e = { | |
1658 | + goods_num: a.goods_num - add_num, | |
1659 | + id: a.id, | |
1660 | + goods_id: a.goods_id, | |
1661 | + store_id: oo.stoid | |
1662 | + }; | |
1663 | + | |
1664 | + if(e.goods_num<=0){ | |
1665 | + this.data.up_dating = 0; | |
1666 | + return false; | |
1652 | 1667 | } |
1668 | + this.postCardList(e, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems); | |
1669 | + | |
1653 | 1670 | }, |
1654 | 1671 | |
1655 | 1672 | |
... | ... | @@ -1668,7 +1685,10 @@ Page({ |
1668 | 1685 | var e = a; |
1669 | 1686 | var th = this; |
1670 | 1687 | |
1671 | - if (a = isNaN(t.detail.value) || t.detail.value < 1 ? 1 : parseInt(t.detail.value)) { | |
1688 | + | |
1689 | + var mo_num=getApp().get_limit_qty(e); | |
1690 | + | |
1691 | + if (a = isNaN(t.detail.value) || t.detail.value < mo_num ? mo_num : parseInt(t.detail.value)) { | |
1672 | 1692 | var s = { |
1673 | 1693 | goods_num: a, |
1674 | 1694 | goods_id: e.service_id, |
... | ... | @@ -1754,6 +1774,33 @@ Page({ |
1754 | 1774 | }, |
1755 | 1775 | |
1756 | 1776 | |
1777 | + click_set_limit(gd_info,pitems,item){ | |
1778 | + var th=this; | |
1779 | + var mo_num=getApp().get_limit_qty(gd_info); | |
1780 | + var steep=getApp().get_limit_qty(gd_info,0,1); | |
1781 | + if(gd_info.is_integral_normal || gd_info.is_pd_normal || [0,3,5,7,10].indexOf(gd_info.prom_type) > -1){ | |
1782 | + | |
1783 | + var ue = { | |
1784 | + goods_num: gd_info.goods_num,store_id: oo.stoid, | |
1785 | + id: gd_info.id,goods_id: gd_info.goods_id | |
1786 | + }; | |
1787 | + var up_num=0; | |
1788 | + if(mo_num>gd_info.goods_num){ | |
1789 | + up_num=mo_num; | |
1790 | + } | |
1791 | + if(gd_info.goods_num>mo_num && (gd_info.goods_num-mo_num)%steep!=0 && steep>1){ | |
1792 | + up_num=mo_num+ parseInt((gd_info.goods_num-mo_num)/steep)*steep+steep; | |
1793 | + } | |
1794 | + if(up_num){ | |
1795 | + ue.goods_num=up_num; | |
1796 | + th.update_cart(ue, pitems, item); | |
1797 | + var txt1 = "requestData[" + pitems + "].goods[" + item + "].goods_num"; | |
1798 | + th.setData({[txt1]:up_num }) | |
1799 | + } | |
1800 | + } | |
1801 | + }, | |
1802 | + | |
1803 | + | |
1757 | 1804 | //---------------全选,全选的时候要判断是否门店的匹配方式一致-------------- |
1758 | 1805 | checkAll: async function () { |
1759 | 1806 | var e = this, |
... | ... | @@ -1792,11 +1839,16 @@ Page({ |
1792 | 1839 | [txt]: 0, |
1793 | 1840 | }); |
1794 | 1841 | } |
1842 | + | |
1795 | 1843 | var fir = 0; |
1796 | 1844 | for (var j = 0; j < item.length; j++) { |
1797 | 1845 | if (item[j].is_gift) continue; |
1798 | - | |
1799 | 1846 | var obj = JSON.parse(JSON.stringify(item[j])); |
1847 | + //-- 判断起购数量 -- | |
1848 | + if(!e.data.checkAllToggle){ | |
1849 | + th.click_set_limit(obj,i,j); | |
1850 | + } | |
1851 | + | |
1800 | 1852 | //计算之前先移除组合购的计算 |
1801 | 1853 | if (obj.prom_type == 7) |
1802 | 1854 | zh_calc.remove_zhprom(dda, i, obj); |
... | ... | @@ -1884,7 +1936,7 @@ Page({ |
1884 | 1936 | |
1885 | 1937 | // if (!e.data.checkAllToggle) { |
1886 | 1938 | //多门店优惠促销次数控制 |
1887 | - if(dda[i].pro_off){ | |
1939 | + if(dda[i].pro_off || e.data.checkAllToggle){ | |
1888 | 1940 | var txt = "requestData[" + i + "].selected"; |
1889 | 1941 | e.setData({ |
1890 | 1942 | [txt]: 0, |
... | ... | @@ -2041,9 +2093,11 @@ Page({ |
2041 | 2093 | for (var i = 0; i < item.length; i++) { |
2042 | 2094 | let pro_off1=false |
2043 | 2095 | var txt = "requestData[" + pitems + "].goods[" + i + "].selected"; |
2044 | - | |
2045 | 2096 | 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) { | |
2097 | + | |
2098 | + if(!sele) th.click_set_limit(gd_info,pitems,i) | |
2099 | + | |
2100 | + 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 | 2101 | var ob = {}; |
2048 | 2102 | await th.check_down_line_next(gd_info, pitems, i, gd_info.erpwareid, function (res) { |
2049 | 2103 | ob = res; |
... | ... | @@ -2227,45 +2281,56 @@ Page({ |
2227 | 2281 | var gd_info = a; |
2228 | 2282 | |
2229 | 2283 | 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) { | |
2231 | - var ob = {}; | |
2232 | - await th.check_down_line_next(gd_info, pitems, item, erpwareid, function (res) { | |
2233 | - ob = res; | |
2234 | - }); | |
2235 | 2284 | |
2236 | - if (ob.code == -1) { | |
2237 | - | |
2238 | - wx.showToast({ | |
2239 | - title: '购买数量超出商品库存', | |
2240 | - icon: 'none', | |
2241 | - }); | |
2285 | + //-- 如果是选中的时候 -- | |
2286 | + if(!a.selected){ | |
2242 | 2287 | |
2243 | - return false; | |
2244 | - } else { | |
2245 | - if (th.data.sales_rules == 3) { | |
2246 | - var goods_id = gd_info.goods_id; | |
2247 | - var num = 0; | |
2288 | + //-- 专门来设置商品订购数量 -- | |
2289 | + th.click_set_limit(gd_info,pitems,item) | |
2290 | + if (!getApp().is_virtual(gd_info) && th.data.sales_rules >= 2 | |
2291 | + && !gd_info.whsle_id && [1, 2, 4, 6, 8, 9].indexOf(gd_info.prom_type) == -1 ) { | |
2248 | 2292 | |
2249 | - for (let i = 0; i < th.data.requestData.length; i++) { | |
2250 | - if (pitems == i) continue; | |
2251 | - var it = th.data.requestData[i].goods.find((e) => { | |
2252 | - return e.goods_id == goods_id; | |
2253 | - }) | |
2254 | - if (it && it.selected) num += it.goods_num | |
2255 | - } | |
2293 | + var ob = {}; | |
2294 | + await th.check_down_line_next(gd_info, pitems, item, erpwareid, function (res) { | |
2295 | + ob = res; | |
2296 | + }); | |
2297 | + if (ob.code == -1) { | |
2256 | 2298 | |
2257 | - if (num > ob.CanOutQty) { | |
2258 | 2299 | wx.showToast({ |
2259 | 2300 | title: '购买数量超出商品库存', |
2260 | 2301 | icon: 'none', |
2261 | 2302 | }); |
2262 | 2303 | |
2263 | 2304 | return false; |
2305 | + } else { | |
2306 | + if (th.data.sales_rules == 3) { | |
2307 | + var goods_id = gd_info.goods_id; | |
2308 | + var num = 0; | |
2309 | + | |
2310 | + for (let i = 0; i < th.data.requestData.length; i++) { | |
2311 | + if (pitems == i) continue; | |
2312 | + var it = th.data.requestData[i].goods.find((e) => { | |
2313 | + return e.goods_id == goods_id; | |
2314 | + }) | |
2315 | + if (it && it.selected) num += it.goods_num | |
2316 | + } | |
2317 | + | |
2318 | + if (num > ob.CanOutQty) { | |
2319 | + wx.showToast({ | |
2320 | + title: '购买数量超出商品库存', | |
2321 | + icon: 'none', | |
2322 | + }); | |
2323 | + | |
2324 | + return false; | |
2325 | + } | |
2326 | + } | |
2264 | 2327 | } |
2265 | - } | |
2328 | + | |
2266 | 2329 | } |
2267 | 2330 | |
2268 | 2331 | } |
2332 | + | |
2333 | + | |
2269 | 2334 | let pro_off=false |
2270 | 2335 | //判断多店优惠促销次数控制 |
2271 | 2336 | if (th.data.requestData.length>1) { |
... | ... | @@ -2536,8 +2601,34 @@ Page({ |
2536 | 2601 | user_id = getApp().globalData.user_id; |
2537 | 2602 | |
2538 | 2603 | function normal_check(store_count, goodsinfo, wareIds) { |
2604 | + | |
2605 | + | |
2606 | + // getApp().my_warnning('购买数量超出商品库存', 0, th); | |
2607 | + var txt = "requestData[" + pitem + "].goods[" + item + "].goods_num"; | |
2608 | + //-- 要判断是不是起订量不购 -- | |
2609 | + if([0,3,5,7,10].indexOf(goodsinfo.prom_type)>-1){ | |
2610 | + var mo_num=getApp().get_limit_qty(goodsinfo); | |
2611 | + var steep=getApp().get_limit_qty(goodsinfo,0,1); | |
2612 | + if(mo_num>1 && t.goods_num<mo_num){ | |
2613 | + wx.showToast({ | |
2614 | + title: '购买数量小于商品的起订量', | |
2615 | + icon: 'none', | |
2616 | + }); | |
2617 | + t.goods_num =0; | |
2618 | + } | |
2619 | + if(steep>1 && t.goods_num>mo_num && (t.goods_num-mo_num)%steep!=0 ){ | |
2620 | + | |
2621 | + wx.showToast({ | |
2622 | + title: '购买数量必须是起订量的倍数', | |
2623 | + icon: 'none', | |
2624 | + }); | |
2625 | + t.goods_num =mo_num+parseInt((t.goods_num-mo_num)/steep+'')*steep+steep; | |
2626 | + } | |
2627 | + } | |
2628 | + | |
2629 | + | |
2539 | 2630 | //--- 看一下是不是线下库存 --- |
2540 | - if (th.data.sales_rules >= 2 && !goodsinfo.whsle_id) { | |
2631 | + if (!getApp().is_virtual(goodsinfo) && th.data.sales_rules >= 2 && !goodsinfo.whsle_id) { | |
2541 | 2632 | th.check_down_line(t, pitem, item, wareIds); |
2542 | 2633 | } else { |
2543 | 2634 | if (t.goods_num > store_count) { |
... | ... | @@ -2545,8 +2636,6 @@ Page({ |
2545 | 2636 | title: '购买数量超出商品库存', |
2546 | 2637 | icon: 'none', |
2547 | 2638 | }); |
2548 | - // getApp().my_warnning('购买数量超出商品库存', 0, th); | |
2549 | - var txt = "requestData[" + pitem + "].goods[" + item + "].goods_num"; | |
2550 | 2639 | e.setData({ |
2551 | 2640 | [txt]: store_count |
2552 | 2641 | }); |
... | ... | @@ -2620,7 +2709,29 @@ Page({ |
2620 | 2709 | }); |
2621 | 2710 | e.doCheckAll(); |
2622 | 2711 | |
2623 | - t.goods_num = cbuy > 0 ? cbuy : limit, | |
2712 | + t.goods_num = cbuy > 0 ? cbuy : limit; | |
2713 | + | |
2714 | + if([0,3,5,7,10].indexOf(goodsinfo.prom_type)>-1){ | |
2715 | + var mo_num=getApp().get_limit_qty(goodsinfo); | |
2716 | + var steep=getApp().get_limit_qty(goodsinfo,0,1); | |
2717 | + if(mo_num>1 && t.goods_num<mo_num){ | |
2718 | + wx.showToast({ | |
2719 | + title: '购买数量小于商品的起订量', | |
2720 | + icon: 'none', | |
2721 | + }); | |
2722 | + t.goods_num=0; | |
2723 | + | |
2724 | + } | |
2725 | + if(steep>1 && t.goods_num>mo_num && (t.goods_num-mo_num)%steep!=0 ){ | |
2726 | + | |
2727 | + wx.showToast({ | |
2728 | + title: '购买数量必须是起订量的倍数', | |
2729 | + icon: 'none', | |
2730 | + }); | |
2731 | + | |
2732 | + t.goods_num=mo_num+parseInt((t.goods_num-mo_num)/steep+'')*steep | |
2733 | + } | |
2734 | + } | |
2624 | 2735 | // t.goods_num = cbuy > 0 ? cbuy : 0, |
2625 | 2736 | e.update_cart(t, pitem, item); |
2626 | 2737 | return false; |
... | ... | @@ -3370,10 +3481,42 @@ Page({ |
3370 | 3481 | } |
3371 | 3482 | glist += i_arr[j].goods_id + ","; |
3372 | 3483 | ab = 1; |
3484 | + | |
3485 | + //判断商品的起订数量 | |
3486 | + var mo_num=getApp().get_limit_qty(i_arr[j]); | |
3487 | + var steep=getApp().get_limit_qty(i_arr[j],0,1); | |
3488 | + var py_type= parseInt(i_arr[j].prom_type+''); | |
3489 | + | |
3490 | + if([0,3,5,7,10].indexOf(py_type)>-1){ | |
3491 | + | |
3492 | + if(mo_num>i_arr[j].goods_num){ | |
3493 | + getApp().confirmBox(i_arr[j].goods_name + "的未到达起订数量"); | |
3494 | + wx.hideLoading(); | |
3495 | + return false; | |
3496 | + } | |
3497 | + if(steep>1 && (i_arr[j].goods_num-mo_num)%steep!=0 ){ | |
3498 | + getApp().confirmBox(i_arr[j].goods_name + "的购买的数量不是起订量的倍数"); | |
3499 | + var num=mo_num+ parseInt((i_arr[j].goods_num-mo_num)/steep)*steep+steep; | |
3500 | + var e = { | |
3501 | + goods_num: num, | |
3502 | + id: i_arr[j].id, | |
3503 | + goods_id: i_arr[j].goods_id, | |
3504 | + store_id: oo.stoid | |
3505 | + }; | |
3506 | + | |
3507 | + th.postCardList(e, j, i); | |
3508 | + | |
3509 | + wx.hideLoading(); | |
3510 | + return false; | |
3511 | + } | |
3512 | + | |
3513 | + } | |
3514 | + | |
3515 | + | |
3373 | 3516 | |
3374 | 3517 | //--普通商品,如果有开启线下库存的功能,要调用线下库存进行计算,赠品不要进行调用线下库存--- |
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) { | |
3518 | + 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 || | |
3519 | + 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 | 3520 | //--获取商品的线下商品ID-- |
3378 | 3521 | |
3379 | 3522 | var gd = null; | ... | ... |
pages/cart/cart/cart.wxml
... | ... | @@ -42,6 +42,7 @@ |
42 | 42 | <!-- 门店底下的商品 --> |
43 | 43 | <view class="store"> |
44 | 44 | <view class="shmd_m"> |
45 | + | |
45 | 46 | <!-- 门店 --> |
46 | 47 | <icon wx:if="{{checkAllToggle||item.selected}}" class="order-raido flex-center" bindtap="check_th_all_item" data-pitems="{{pidx}}" |
47 | 48 | color="red" size="20" type="success"></icon> | ... | ... |
pages/goods/goodsInfo/buy_com_pop.wxml
... | ... | @@ -13,10 +13,14 @@ |
13 | 13 | <view class="flex"> |
14 | 14 | <view class="spec-goods-stock">已售:{{sele_g.sales_sum}}</view> |
15 | 15 | <block wx:if="{{sales_rules>=2}}"> |
16 | - <view class="spec-goods-stock" wx:if="{{def_pick_store && def_pick_store.CanOutQty}}"> | |
17 | - 可售:{{def_pick_store.CanOutQty}} | |
18 | - </view> | |
19 | - <view class="spec-goods-stock" wx:else>可售:0</view> | |
16 | + | |
17 | + <block wx:if="{{!filters.is_virtual_gd(sele_g.is_virtual)}}"> | |
18 | + <view class="spec-goods-stock" wx:if="{{def_pick_store && def_pick_store.CanOutQty}}"> | |
19 | + 可售:{{def_pick_store.CanOutQty}} | |
20 | + </view> | |
21 | + <view class="spec-goods-stock" wx:else>可售:0</view> | |
22 | + </block> | |
23 | + | |
20 | 24 | </block> |
21 | 25 | <block wx:else> |
22 | 26 | <view class="spec-goods-stock">可售:{{sele_g.store_count}}</view> |
... | ... | @@ -29,8 +33,8 @@ |
29 | 33 | <!-- 选择门店模块 --> |
30 | 34 | <view class="flex-space-between address ai_end xc-width "> |
31 | 35 | |
32 | - <view class="flex ai_end" wx:if="{{def_pick_store && def_pick_store.pickup_name}}"> | |
33 | - <text class="fs30 xc-black3 shop_name">{{def_pick_store.pickup_name}}</text> | |
36 | + <view class="flex" wx:if="{{def_pick_store && def_pick_store.pickup_name}}"> | |
37 | + <text class="fs30 xc-black3 shop_name {{def_pick_store.distance!=null?'max':''}} ">{{def_pick_store.pickup_name}}</text> | |
34 | 38 | <view class="distance fs24 xc-ash" wx:if="{{def_pick_store.distance!=null}}"> |
35 | 39 | 距离:{{def_pick_store.distance > 1000 ? filters.toFix(def_pick_store.distance / 1000, 2) + "km" : filters.toFix(def_pick_store.distance, 0) + "m"}} |
36 | 40 | |
... | ... | @@ -53,7 +57,7 @@ |
53 | 57 | <view wx:if="{{def_pickpu_list && !def_pickpu_list.length}}">(库存不足)</view> |
54 | 58 | <block wx:else> |
55 | 59 | <view class="no_store" wx:if="{{def_pick_store.is_no_dis}}">(配送不匹配)</view> |
56 | - <view wx:elif="{{def_pick_store && !def_pick_store.CanOutQty && sales_rules==2}}"> | |
60 | + <view wx:elif="{{def_pick_store && !def_pick_store.CanOutQty && sales_rules>=2 && !filters.is_virtual_gd(sele_g.is_virtual) }}"> | |
57 | 61 | (库存不足) |
58 | 62 | </view> |
59 | 63 | </block> |
... | ... | @@ -136,7 +140,7 @@ |
136 | 140 | </view> |
137 | 141 | </block> |
138 | 142 | <block wx:else> |
139 | - <block wx:if="{{sales_rules>=2 && !sele_g.whsle_id}}"> | |
143 | + <block wx:if="{{sales_rules>=2 && !sele_g.whsle_id && !filters.is_virtual_gd(sele_g.is_virtual) }}"> | |
140 | 144 | <view wx:if="{{!def_pick_store.CanOutQty}}" class="spec-cart-btn fs32" data-action="add" |
141 | 145 | style="background-color: #dcdcdc;color: #999">库存不足 |
142 | 146 | </view> |
... | ... | @@ -154,7 +158,7 @@ |
154 | 158 | |
155 | 159 | |
156 | 160 | |
157 | - <block wx:elif="{{data.store_count<=0}}"> | |
161 | + <block wx:elif="{{data.store_count<(mo_num?mo_num:1)}}"> | |
158 | 162 | <view class="spec-cart-btn fs32" data-action="add" |
159 | 163 | style="background-color: #dcdcdc;color: #999">库存不足 |
160 | 164 | </view> | ... | ... |
pages/goods/goodsInfo/buy_integral.wxml
... | ... | @@ -26,9 +26,9 @@ |
26 | 26 | <!-- 选择门店模块 --> |
27 | 27 | <view class="flex-space-between address ai_end xc-width "> |
28 | 28 | |
29 | - <view class="flex ai_end" wx:if="{{def_pick_store && def_pick_store.pickup_name}}"> | |
30 | - <text class="fs30 xc-black3 shop_name">{{def_pick_store.pickup_name}}</text> | |
31 | - <view class="distance fs24 xc-ash"wx:if="{{def_pick_store.distance!=null}}"> | |
29 | + <view class="flex" wx:if="{{def_pick_store && def_pick_store.pickup_name}}"> | |
30 | + <text class="fs30 xc-black3 shop_name bold {{def_pick_store.distance!=null?'max':''}} ">{{def_pick_store.pickup_name}}</text> | |
31 | + <view class="distance fs24 xc-ash" wx:if="{{def_pick_store.distance!=null}}"> | |
32 | 32 | 距离:{{def_pick_store.distance>1000?filters.toFix(def_pick_store.distance/1000,2)+"km":filters.toFix(def_pick_store.distance,0)+"m"}} |
33 | 33 | |
34 | 34 | </view> |
... | ... | @@ -47,11 +47,11 @@ |
47 | 47 | <view wx:if="{{def_pickpu_list && !def_pickpu_list.length}}">(库存不足)</view> |
48 | 48 | <block wx:else> |
49 | 49 | <view class="no_store" wx:if="{{def_pick_store.is_no_dis}}">(配送不匹配)</view> |
50 | - <view wx:elif="{{def_pick_store && !def_pick_store.CanOutQty && sales_rules==2 && prom_type==0}}">(库存不足)</view> | |
50 | + <view wx:elif="{{def_pick_store && !def_pick_store.CanOutQty && !filters.is_virtual_gd(sele_g.is_virtual) && sales_rules>=2 && prom_type==0}}">(库存不足)</view> | |
51 | 51 | </block> |
52 | 52 | </block> |
53 | 53 | |
54 | - <view class="fs24 xc-ash-9f xc-distance-top "wx:if="{{def_pick_store && def_pick_store.fulladdress}}">地址:{{def_pick_store.fulladdress}}</view> | |
54 | + <view class="fs24 xc-ash-9f xc-distance-top " wx:if="{{def_pick_store && def_pick_store.fulladdress}}">地址:{{def_pick_store.fulladdress}}</view> | |
55 | 55 | |
56 | 56 | |
57 | 57 | <!--商品的属性项目--> | ... | ... |
pages/goods/goodsInfo/buy_pt.wxml
... | ... | @@ -25,8 +25,10 @@ |
25 | 25 | <view class="flex"> |
26 | 26 | <view class="spec-goods-stock">已售:{{sele_g.sales_sum}}</view> |
27 | 27 | <block wx:if="{{sales_rules>=2}}"> |
28 | - <view class="spec-goods-stock" wx:if="{{def_pick_store && def_pick_store.CanOutQty}}">可售:{{def_pick_store.CanOutQty}}</view> | |
29 | - <view class="spec-goods-stock" wx:else>可售:0</view> | |
28 | + <block wx:if="{{!filters.is_virtual_gd(sele_g.is_virtual)}}"> | |
29 | + <view class="spec-goods-stock" wx:if="{{def_pick_store && def_pick_store.CanOutQty}}">可售:{{def_pick_store.CanOutQty}}</view> | |
30 | + <view class="spec-goods-stock" wx:else>可售:0</view> | |
31 | + </block> | |
30 | 32 | </block> |
31 | 33 | <block wx:else><view class="spec-goods-stock">可售:{{sele_g.store_count}}</view></block> |
32 | 34 | </view> |
... | ... | @@ -47,11 +49,11 @@ |
47 | 49 | <view style="margin-top: 20rpx"> |
48 | 50 | <view class="flex-space-between address ai_end xc-width "> |
49 | 51 | |
50 | - <view class="flex ai_end" wx:if="{{def_pick_store && def_pick_store.pickup_name}}"> | |
51 | - <text class="fs30 xc-black3 shop_name">{{def_pick_store.pickup_name}}</text> | |
52 | + <view class="flex" wx:if="{{def_pick_store && def_pick_store.pickup_name}}"> | |
53 | + <text class="fs30 xc-black3 shop_name {{def_pick_store.distance!=null?'max':''}} ">{{def_pick_store.pickup_name}}</text> | |
52 | 54 | |
53 | 55 | |
54 | - <view class="distance fs24 xc-ash"wx:if="{{def_pick_store.distance!=null}}"> | |
56 | + <view class="distance fs24 xc-ash" wx:if="{{def_pick_store.distance!=null}}"> | |
55 | 57 | 距离:{{def_pick_store.distance>1000?filters.toFix(def_pick_store.distance/1000,2)+"km":filters.toFix(def_pick_store.distance,0)+"m"}} |
56 | 58 | |
57 | 59 | </view> |
... | ... | @@ -71,7 +73,7 @@ |
71 | 73 | <view wx:if="{{def_pickpu_list && !def_pickpu_list.length}}">(库存不足)</view> |
72 | 74 | <block wx:else> |
73 | 75 | <view class="no_store" wx:if="{{def_pick_store.is_no_dis}}">(配送不匹配)</view> |
74 | - <view wx:elif="{{def_pick_store && !def_pick_store.CanOutQty && sales_rules==2 && is_normal}}">(库存不足)</view> | |
76 | + <view wx:elif="{{def_pick_store && !def_pick_store.CanOutQty && !filters.is_virtual_gd(sele_g.is_virtual) && sales_rules>=2 && is_normal}}">(库存不足)</view> | |
75 | 77 | </block> |
76 | 78 | </block> |
77 | 79 | |
... | ... | @@ -176,16 +178,32 @@ |
176 | 178 | <block wx:else> |
177 | 179 | <block wx:if="{{!def_pick_store}}"> |
178 | 180 | <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999">请先选择门店</view> |
179 | - </block> | |
180 | - <block wx:else> | |
181 | - <block wx:if="{{data.store_count<=0}}"> | |
182 | - <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999">库存不足</view> | |
183 | - </block> | |
184 | - <block wx:else> | |
185 | - <view bindtap="addCart_pt" class="spec-cart-btn spec-buy" data-action="buy">立即购买</view> | |
186 | - </block> | |
187 | - | |
188 | - </block> | |
181 | + </block> | |
182 | + | |
183 | + <block wx:else> | |
184 | + <!-- 如果是线下库存购买的时候,且是普通商品购买的时候 --> | |
185 | + <block wx:if="{{sales_rules>=2 && !sele_g.whsle_id && !filters.is_virtual_gd(sele_g.is_virtual) }}"> | |
186 | + <block wx:if="{{!def_pick_store.CanOutQty}}"> | |
187 | + <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999"> | |
188 | + 库存不足 | |
189 | + </view> | |
190 | + </block> | |
191 | + <block wx:else> | |
192 | + <view bindtap="addCart_pt" class="spec-cart-btn spec-buy" data-action="buy">立即购买</view> | |
193 | + </block> | |
194 | + </block> | |
195 | + <!-- 线上销售 --> | |
196 | + <block wx:else> | |
197 | + <block wx:if="{{sele_g.store_count<=0 && is_no_new}}"> | |
198 | + <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999"> | |
199 | + 库存不足 | |
200 | + </view> | |
201 | + </block> | |
202 | + <block wx:else> | |
203 | + <view bindtap="addCart_pt" class="spec-cart-btn spec-buy" data-action="buy">立即购买</view> | |
204 | + </block> | |
205 | + </block> | |
206 | + </block> | |
189 | 207 | </block> |
190 | 208 | </block> |
191 | 209 | </block> | ... | ... |
pages/goods/goodsInfo/goodsInfo.js
... | ... | @@ -558,7 +558,7 @@ Page({ |
558 | 558 | th = this; |
559 | 559 | getApp().getConfig2(function (e) { |
560 | 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 | 562 | getApp().waitfor2(that, "wait_for_user_store", "fir_goods", function () { |
563 | 563 | var lock = 0, |
564 | 564 | plist = null; |
... | ... | @@ -1102,18 +1102,18 @@ Page({ |
1102 | 1102 | }); |
1103 | 1103 | |
1104 | 1104 | |
1105 | + | |
1106 | + | |
1105 | 1107 | //获取统一条形码,普通商品和优惠促销的商品 |
1106 | 1108 | 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 | 1109 | |
1112 | - } else { | |
1113 | - //获取门店 | |
1114 | - ee.get_sto(); | |
1115 | - } | |
1116 | 1110 | |
1111 | + //-- 更新默认购买的数量 --- | |
1112 | + var mo_num=getApp().get_limit_qty(t.data.data); | |
1113 | + ee.setData({goodsInputNum:mo_num}) | |
1114 | + ee.setData({mo_num:mo_num}) | |
1115 | + | |
1116 | + ee.get_sto(); | |
1117 | 1117 | ee.get_sku(o.stoid, t.data.data, gid); |
1118 | 1118 | ee.check_has_flash(); |
1119 | 1119 | |
... | ... | @@ -1197,6 +1197,7 @@ Page({ |
1197 | 1197 | setTimeout(()=> { |
1198 | 1198 | console.log('cccc'); |
1199 | 1199 | console.log(th.data.prom_type); |
1200 | + | |
1200 | 1201 | },500) |
1201 | 1202 | |
1202 | 1203 | |
... | ... | @@ -1208,11 +1209,8 @@ Page({ |
1208 | 1209 | console.log('aaaaaaaaaa'); |
1209 | 1210 | console.log(this.data.prom_type); |
1210 | 1211 | |
1211 | - this.data.enterAddressPage && (this.data.enterAddressPage = !1); | |
1212 | - | |
1213 | - | |
1214 | - | |
1215 | 1212 | |
1213 | + this.data.enterAddressPage && (this.data.enterAddressPage = !1); | |
1216 | 1214 | |
1217 | 1215 | |
1218 | 1216 | }, |
... | ... | @@ -1680,7 +1678,7 @@ Page({ |
1680 | 1678 | newd.is_pd_normal = 1; |
1681 | 1679 | |
1682 | 1680 | //---如果是线下门店销售的时候--- |
1683 | - if (th.data.sales_rules >= 2) { | |
1681 | + if (!getApp().is_virtual(th.data.sele_g) && th.data.sales_rules >= 2) { | |
1684 | 1682 | var pick = th.get_pick_from_list(th.data.sto_sele_id) |
1685 | 1683 | //---通过接口获取门店的线下库存信息-- |
1686 | 1684 | th.check_CanOutQty(th.data.sele_g, pick, function (CanOutQty) { |
... | ... | @@ -1778,7 +1776,7 @@ Page({ |
1778 | 1776 | return false; |
1779 | 1777 | } else { |
1780 | 1778 | //---如果是线下门店销售的时候--- |
1781 | - if (th.data.sales_rules >= 2) { | |
1779 | + if (!getApp().is_virtual(th.data.sele_g) && !th.data.sele_g.whsle_id && th.data.sales_rules >= 2) { | |
1782 | 1780 | var pick = th.get_pick_from_list(th.data.sto_sele_id) |
1783 | 1781 | |
1784 | 1782 | th.check_CanOutQty(th.data.sele_g, pick, function (CanOutQty) { |
... | ... | @@ -1837,7 +1835,7 @@ Page({ |
1837 | 1835 | } |
1838 | 1836 | |
1839 | 1837 | //---如果是线下门店销售的时候--- |
1840 | - if (th.data.sales_rules >= 2 && !th.data.sele_g.whsle_id) { | |
1838 | + if ( !getApp().is_virtual(th.data.sele_g) && th.data.sales_rules >= 2 && !th.data.sele_g.whsle_id) { | |
1841 | 1839 | var pick = th.get_pick_from_list(th.data.sto_sele_id) |
1842 | 1840 | //---通过接口获取门店的线下库存信息-- |
1843 | 1841 | // getApp().request.get("/api/weshop/goods/getWareStorages", { |
... | ... | @@ -1942,6 +1940,9 @@ Page({ |
1942 | 1940 | th.add_cart_next(e, t, a, o, newd); //加入购物车下一步 |
1943 | 1941 | } |
1944 | 1942 | } |
1943 | + | |
1944 | + | |
1945 | + | |
1945 | 1946 | }) |
1946 | 1947 | }, |
1947 | 1948 | |
... | ... | @@ -2402,11 +2403,24 @@ Page({ |
2402 | 2403 | |
2403 | 2404 | //----------增加购买数量----------- |
2404 | 2405 | addCartNum: function (t) { |
2405 | - this.checkCartNum(this.data.goodsInputNum + 1); | |
2406 | + | |
2407 | + var add_num=1; | |
2408 | + var p_type=parseInt(this.data.prom_type) | |
2409 | + if([1,2,4,6,8,9].indexOf(p_type)==-1 || this.data.openSpecModal_inte_normal == 1 || this.data.is_normal == 1){ | |
2410 | + add_num=getApp().get_limit_qty(this.data.sele_g,0,1); | |
2411 | + } | |
2412 | + | |
2413 | + this.checkCartNum(this.data.goodsInputNum + add_num); | |
2406 | 2414 | }, |
2407 | 2415 | //----------减少购买数量----------- |
2408 | 2416 | subCartNum: function (t) { |
2409 | - this.checkCartNum(this.data.goodsInputNum - 1); | |
2417 | + | |
2418 | + var add_num=1; | |
2419 | + var p_type=parseInt(this.data.prom_type) | |
2420 | + if([1,2,4,6,8,9].indexOf(p_type)==-1 || this.data.openSpecModal_inte_normal == 1 || this.data.is_normal == 1){ | |
2421 | + add_num=getApp().get_limit_qty(this.data.sele_g,0,1); | |
2422 | + } | |
2423 | + this.checkCartNum(this.data.goodsInputNum - add_num); | |
2410 | 2424 | }, |
2411 | 2425 | //----------输入框输入购买数量----------- |
2412 | 2426 | inputCartNum: function (t) { |
... | ... | @@ -2430,6 +2444,8 @@ Page({ |
2430 | 2444 | //------检查数量是不是超出限购------ |
2431 | 2445 | checkCartNum: function (t) { |
2432 | 2446 | var th = this; |
2447 | + var mo_num=getApp().get_limit_qty(th.data.sele_g); | |
2448 | + var steep=getApp().get_limit_qty(th.data.sele_g,0,1); | |
2433 | 2449 | this.get_buy_num(this.data.sele_g, async function () { |
2434 | 2450 | |
2435 | 2451 | //--判断商品是否超出限购-- |
... | ... | @@ -2495,8 +2511,9 @@ Page({ |
2495 | 2511 | } |
2496 | 2512 | } |
2497 | 2513 | var e = th.data.sele_g.store_count; |
2498 | - 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)) { | |
2514 | + var p_type =parseInt(th.data.prom_type+'') ; //&& p_type!=1 && p_type!=4 | |
2515 | + if (!getApp().is_virtual(th.data.sele_g) && !th.data.sele_g.whsle_id && th.data.sales_rules >= 2 && | |
2516 | + ([1,2,4,6,8,9].indexOf(p_type)==-1 || th.data.openSpecModal_inte_normal == 1 || th.data.is_normal == 1)) { | |
2500 | 2517 | if (!th.data.def_pick_store) { |
2501 | 2518 | wx.showToast({ |
2502 | 2519 | title: '请选择门店', |
... | ... | @@ -2517,12 +2534,33 @@ Page({ |
2517 | 2534 | }); |
2518 | 2535 | // wx.showModal({title: '库存不足',}); |
2519 | 2536 | if (e < 0) e = 0; |
2537 | + | |
2538 | + //只有普通商品才有起购数 | |
2539 | + if([1,2,4,6,8,9].indexOf(p_type)==-1 || th.data.openSpecModal_inte_normal == 1 || th.data.is_normal == 1){ | |
2540 | + if(e<mo_num) e=mo_num; | |
2541 | + if(e>mo_num && (e-mo_num)%steep!=0){ | |
2542 | + e=mo_num+ parseInt((e-mo_num)/steep)*steep; | |
2543 | + } | |
2544 | + } | |
2520 | 2545 | th.setData({ |
2521 | 2546 | goodsInputNum: e |
2522 | 2547 | }); |
2523 | 2548 | return false; |
2524 | 2549 | } |
2550 | + | |
2551 | + | |
2552 | + //var steep=getApp().get_limit_qty(th.data.sele_g,0,1); | |
2553 | + | |
2554 | + | |
2525 | 2555 | t > e || 0 == e ? t = e : t < 1 && (t = 1); |
2556 | + | |
2557 | + | |
2558 | + //只有普通商品才有起购数 | |
2559 | + if([1,2,4,6,8,9].indexOf(p_type)==-1 || th.data.openSpecModal_inte_normal == 1 || th.data.is_normal == 1){ | |
2560 | + if(t<mo_num) t=mo_num; | |
2561 | + } | |
2562 | + | |
2563 | + | |
2526 | 2564 | th.setData({ |
2527 | 2565 | goodsInputNum: t |
2528 | 2566 | }); |
... | ... | @@ -2612,7 +2650,8 @@ Page({ |
2612 | 2650 | |
2613 | 2651 | var e = th.data.sele_g.store_count; |
2614 | 2652 | 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)) { | |
2653 | + if (!getApp().is_virtual(th.data.sele_g) && !th.data.sele_g.whsle_id && th.data.sales_rules >= 2 && | |
2654 | + ([1,2,4,6,8,9].indexOf(p_type)==-1 || th.data.openSpecModal_inte_normal == 1 || th.data.is_normal == 1)) { | |
2616 | 2655 | if (!th.data.def_pick_store) { |
2617 | 2656 | wx.showModal({ |
2618 | 2657 | title: '请选择门店', |
... | ... | @@ -3342,7 +3381,7 @@ Page({ |
3342 | 3381 | if (!item.whsle_id && [1,2,4,6].indexOf(item.prom_type)==-1) that.check_is_youhui(gid, that.data.is_normal); |
3343 | 3382 | |
3344 | 3383 | //默认门店要拿下门店库存 |
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) { | |
3384 | + 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 | 3385 | var lock = 0, |
3347 | 3386 | plist = null; |
3348 | 3387 | |
... | ... | @@ -3643,7 +3682,7 @@ Page({ |
3643 | 3682 | }); |
3644 | 3683 | |
3645 | 3684 | //--获取线下库存,而且不是新的门店规则, 同时是普通购买的时候,或者同时不能是活动,秒杀,拼团,积分购-- |
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)) { | |
3685 | + 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 | 3686 | setTimeout(function () { |
3648 | 3687 | th.deal_pickup_dline(e); |
3649 | 3688 | }, 800) |
... | ... | @@ -3939,7 +3978,7 @@ Page({ |
3939 | 3978 | } |
3940 | 3979 | if (th.data.fir_def_store && |
3941 | 3980 | (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; | |
3981 | + th.data.fir_def_store.Qty=Qty; | |
3943 | 3982 | if (def_pick_store && def_pick_store.pickup_id == th.data.fir_def_store.pickup_id) |
3944 | 3983 | th.setData({ |
3945 | 3984 | def_pick_store: th.data.fir_def_store |
... | ... | @@ -4946,6 +4985,7 @@ Page({ |
4946 | 4985 | |
4947 | 4986 | var th = this; |
4948 | 4987 | var ind = parseInt(e.currentTarget.dataset.it); |
4988 | + var mo_num=getApp().get_limit_qty(this.data.sele_g); | |
4949 | 4989 | |
4950 | 4990 | //如果是拼单活动的普通购买 |
4951 | 4991 | if (ind == 1) { |
... | ... | @@ -4959,14 +4999,19 @@ Page({ |
4959 | 4999 | th.get_sto(1); |
4960 | 5000 | th.setData({ |
4961 | 5001 | is_normal: ind, |
4962 | - openSpecModal_pt: 1 | |
5002 | + openSpecModal_pt: 1, | |
5003 | + goodsInputNum: mo_num, | |
5004 | + mo_num:mo_num | |
5005 | + | |
4963 | 5006 | }); |
4964 | 5007 | } else { |
4965 | 5008 | th.get_sto(1); |
4966 | 5009 | th.get_sku(o.stoid, th.data.data, th.data.gid, 1, function () { |
4967 | 5010 | th.setData({ |
4968 | 5011 | is_normal: ind, |
4969 | - openSpecModal_pt: 1 | |
5012 | + openSpecModal_pt: 1, | |
5013 | + goodsInputNum: mo_num, | |
5014 | + mo_num:mo_num | |
4970 | 5015 | }); |
4971 | 5016 | }); |
4972 | 5017 | } |
... | ... | @@ -4975,6 +5020,10 @@ Page({ |
4975 | 5020 | |
4976 | 5021 | if (th.data.is_normal) { |
4977 | 5022 | th.data.g_buy_num = new Map(); |
5023 | + th.setData({ | |
5024 | + goodsInputNum: mo_num, | |
5025 | + mo_num:mo_num | |
5026 | + }); | |
4978 | 5027 | } |
4979 | 5028 | |
4980 | 5029 | //拼单商品从这里进,先判断有没有买过商品, |
... | ... | @@ -5041,7 +5090,6 @@ Page({ |
5041 | 5090 | getApp().confirmBox("拼团商品至少要买" + qnum + "件!"); |
5042 | 5091 | return false; |
5043 | 5092 | } |
5044 | - | |
5045 | 5093 | } |
5046 | 5094 | |
5047 | 5095 | th.addcart_pt_func(); |
... | ... | @@ -6919,7 +6967,7 @@ Page({ |
6919 | 6967 | var lock = 0; |
6920 | 6968 | |
6921 | 6969 | //---如果是活动的时候,同时不是普通购买--- |
6922 | - if (th.data.sele_g.whsle_id || [1, 2, 4, 6, 8, 9].indexOf(th.data.prom_type) > -1 && !th.data.is_normal) { | |
6970 | + if (getApp().is_virtual(th.data.sele_g) || th.data.sele_g.whsle_id || ([1, 2, 4, 6, 8, 9].indexOf(th.data.prom_type) > -1 && !th.data.is_normal)) { | |
6923 | 6971 | func(); |
6924 | 6972 | return false; |
6925 | 6973 | } |
... | ... | @@ -8068,10 +8116,14 @@ Page({ |
8068 | 8116 | openSpecModel_Nor: function () { |
8069 | 8117 | this.data.g_buy_num = new Map(); |
8070 | 8118 | var th = this; |
8119 | + var mo_num=getApp().get_limit_qty(this.data.sele_g); | |
8120 | + | |
8071 | 8121 | this.setData({ |
8072 | 8122 | open_ind_store: 5, |
8073 | - goodsInputNum: 1 | |
8123 | + goodsInputNum: mo_num, | |
8124 | + mo_num:mo_num | |
8074 | 8125 | }); //拼团直接给4 |
8126 | + | |
8075 | 8127 | if (th.data.sku_g_pt) { |
8076 | 8128 | this.get_sto(1) |
8077 | 8129 | this.setData({ | ... | ... |
pages/goods/goodsInfo/goodsInfo.wxml
... | ... | @@ -684,7 +684,7 @@ |
684 | 684 | <view class="no_store" wx:if="{{def_pick_store && def_pick_store.is_no_dis}}"> |
685 | 685 | (配送不匹配) |
686 | 686 | </view> |
687 | - <view class="no_store" wx:elif="{{def_pick_store && !def_pick_store.CanOutQty && sales_rules==2 && prom_type==0 && !sele_g.whsle_id}}"> | |
687 | + <view class="no_store" wx:elif="{{def_pick_store && !def_pick_store.CanOutQty && !filters.is_virtual_gd(sele_g.is_virtual) && sales_rules>=2 && prom_type==0 && !sele_g.whsle_id}}"> | |
688 | 688 | (库存不足) |
689 | 689 | </view> |
690 | 690 | </block> |
... | ... | @@ -1264,12 +1264,19 @@ |
1264 | 1264 | <block wx:if="{{prom_type==0}}"> |
1265 | 1265 | <view class="flex"> |
1266 | 1266 | <view class="spec-goods-stock">已售:{{sele_g.sales_sum}}</view> |
1267 | + <!-- 线下门店销售的时候 --> | |
1267 | 1268 | <block wx:if="{{sales_rules>=2}}"> |
1268 | - <view class="spec-goods-stock" wx:if="{{def_pick_store && def_pick_store.CanOutQty}}"> | |
1269 | - 可售:{{def_pick_store.CanOutQty}} | |
1270 | - </view> | |
1271 | - <view class="spec-goods-stock" wx:else>可售:0</view> | |
1269 | + | |
1270 | + <!-- 如果不是虚拟商品的时候 --> | |
1271 | + <block wx:if="{{!filters.is_virtual_gd(sele_g.is_virtual)}}"> | |
1272 | + <view class="spec-goods-stock" wx:if="{{def_pick_store && def_pick_store.CanOutQty}}"> | |
1273 | + 可售:{{def_pick_store.CanOutQty}} | |
1274 | + </view> | |
1275 | + <view class="spec-goods-stock" wx:else>可售:0</view> | |
1276 | + </block> | |
1277 | + | |
1272 | 1278 | </block> |
1279 | + | |
1273 | 1280 | <block wx:else> |
1274 | 1281 | <view class="spec-goods-stock">可售:{{sele_g.store_count}}</view> |
1275 | 1282 | </block> |
... | ... | @@ -1314,7 +1321,7 @@ |
1314 | 1321 | <view wx:if="{{def_pickpu_list && !def_pickpu_list.length}}">(库存不足)</view> |
1315 | 1322 | <block wx:else> |
1316 | 1323 | <view class="no_store" wx:if="{{def_pick_store.is_no_dis}}">(配送不匹配)</view> |
1317 | - <view wx:elif="{{def_pick_store && !def_pick_store.CanOutQty && sales_rules==2 && prom_type==0 &&!sele_g.whsle_id}}"> | |
1324 | + <view wx:elif="{{def_pick_store && !def_pick_store.CanOutQty && !filters.is_virtual_gd(sele_g.is_virtual) && sales_rules>=2 && prom_type==0 &&!sele_g.whsle_id && !filters.is_virtual_gd(sele_g)}}"> | |
1318 | 1325 | (库存不足) |
1319 | 1326 | </view> |
1320 | 1327 | </block> |
... | ... | @@ -1394,8 +1401,8 @@ |
1394 | 1401 | </block> |
1395 | 1402 | <block wx:else> |
1396 | 1403 | <!-- 如果是线下库存购买的时候,且是普通商品购买的时候 --> |
1397 | - <block wx:if="{{sales_rules>=2 && prom_type==0 && !sele_g.whsle_id}}"> | |
1398 | - <block wx:if="{{!def_pick_store.CanOutQty}}"> | |
1404 | + <block wx:if="{{sales_rules>=2 && prom_type==0 && !sele_g.whsle_id && !filters.is_virtual_gd(sele_g.is_virtual) }}"> | |
1405 | + <block wx:if="{{!def_pick_store.CanOutQty || def_pick_store.CanOutQty<mo_num }}"> | |
1399 | 1406 | <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999"> |
1400 | 1407 | 库存不足 |
1401 | 1408 | </view> |
... | ... | @@ -1411,7 +1418,7 @@ |
1411 | 1418 | </block> |
1412 | 1419 | <!-- 线上销售 --> |
1413 | 1420 | <block wx:else> |
1414 | - <block wx:if="{{sele_g.store_count<=0 && is_no_new}}"> | |
1421 | + <block wx:if="{{(sele_g.store_count<=0 || sele_g.store_count<mo_num ) && is_no_new}}"> | |
1415 | 1422 | <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999"> |
1416 | 1423 | 库存不足 |
1417 | 1424 | </view> |
... | ... | @@ -1610,7 +1617,7 @@ |
1610 | 1617 | <view class="flex-vertical-between butttem5"> |
1611 | 1618 | <view class="flex xc-ash"> |
1612 | 1619 | <view class="fs30 xc-black3 address_name">{{item.pickup_name}} |
1613 | - <text class="c-red22" wx:if="{{item.is_no_qyt}}">(库存不足)</text> | |
1620 | + <text class="c-red22" wx:if="{{item.is_no_qyt && !filters.is_virtual_gd(sele_g.is_virtual)}}">(库存不足)</text> | |
1614 | 1621 | </view> |
1615 | 1622 | </view> |
1616 | 1623 | <view> |
... | ... | @@ -1638,7 +1645,7 @@ |
1638 | 1645 | <view class="flex-vertical-between "> |
1639 | 1646 | <view class="flex xc-ash"> |
1640 | 1647 | <view class="fs30 xc-black3 address_name">{{item.pickup_name}} |
1641 | - <text class="c-red22" wx:if="{{item.is_no_qyt}}">(库存不足)</text> | |
1648 | + <text class="c-red22" wx:if="{{item.is_no_qyt && !filters.is_virtual_gd(sele_g.is_virtual) }}">(库存不足)</text> | |
1642 | 1649 | </view> |
1643 | 1650 | </view> |
1644 | 1651 | <view> |
... | ... | @@ -1668,7 +1675,7 @@ |
1668 | 1675 | <view class="flex-vertical-between "> |
1669 | 1676 | <view class="flex xc-ash"> |
1670 | 1677 | <view class="fs28 xc-black3 address_name">{{item.pickup_name}} |
1671 | - <text class="c-red22" wx:if="{{item.is_no_qyt}}">(库存不足)</text> | |
1678 | + <text class="c-red22" wx:if="{{item.is_no_qyt && !filters.is_virtual_gd(sele_g.is_virtual)}}">(库存不足)</text> | |
1672 | 1679 | </view> |
1673 | 1680 | </view> |
1674 | 1681 | <view> | ... | ... |
pages/user/index/index.js
... | ... | @@ -991,10 +991,23 @@ Page({ |
991 | 991 | //过滤掉分销关闭的 |
992 | 992 | let distribut_end_time = await getApp().user_tools_endTime(2);//过滤掉分销到期的 |
993 | 993 | await getApp().promiseGet("/api/weshop/storeDistribut/get/" + os.stoid, {}).then(rs => { |
994 | - if (rs.data.code == 0) { | |
995 | - var dis = rs.data.data; | |
994 | + if (rs.data.code == 0 || !rs.data.data) { | |
995 | + var is_ok=1; | |
996 | + | |
997 | + if(!distribut_end_time){ | |
998 | + is_ok=0; | |
999 | + } | |
1000 | + else if(!rs.data.data){ | |
1001 | + is_ok=0; | |
1002 | + }else{ | |
1003 | + var dis=rs.data.data; | |
1004 | + if(!dis || dis.switch == 0){ | |
1005 | + is_ok=0; | |
1006 | + } | |
1007 | + } | |
1008 | + | |
996 | 1009 | for (var i in d_list) { |
997 | - if (d_list[i].name == '我的分销' && (!dis || dis.switch == 0) || (d_list[i].name == '我的分销' && !distribut_end_time)) { | |
1010 | + if (d_list[i].name == '我的分销' && !is_ok) { | |
998 | 1011 | d_list.splice(i, 1); |
999 | 1012 | } |
1000 | 1013 | } | ... | ... |
pages/user/order_list/order_list.js
... | ... | @@ -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 | 1045 | var ob = {}; |
1046 | 1046 | await th.check_down_line_next(gg, good.goods_num, order.pickup_id, function (obj) { |
1047 | 1047 | ob = obj; |
... | ... | @@ -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 | 1673 | var cart_num = 0; | ... | ... |
utils/filter.wxs
... | ... | @@ -289,4 +289,8 @@ module.exports = { |
289 | 289 | isExpired: filters.isExpired, |
290 | 290 | gettimestamp: filters.gettimestamp, |
291 | 291 | showStartAndEndDate: filters.showStartAndEndDate, |
292 | + is_virtual_gd:function (is_virtual){ | |
293 | + if(is_virtual==2) return true; | |
294 | + return false; | |
295 | + } | |
292 | 296 | } |
293 | 297 | \ No newline at end of file | ... | ... |