Commit df453f1bfa87d8d4ad3253208f2b570190b521fb

Authored by 泉州测试
1 parent cf3cea80

OA搭配促销添加使用优惠卷开关

packageA/pages/prom_list/prom_list.js
... ... @@ -164,163 +164,187 @@ Page({
164 164 var ee=this,th=ee,that=ee;
165 165 var gid = this.data.gid,i = getApp().request;
166 166 ee.data.g_buy_num = new Map();
167   - this.wait_for_store_config();
168   - setTimeout(function(){
169   - i.get("/api/weshop/goods/get/" + o.stoid + "/" + ee.data.gid, {
170   - failRollback: !0,
171   - success: function(t) {
172   - if (t.data.code == 0) {
173   - if (t.data.data.is_on_sale != 1) {
174   - wx.showModal({
175   - title: '商品已经下架',
176   - showCancel: !1,
177   - complete: function() {
178   - wx.navigateBack();
179   - }
180   - });
181   - }
182   -
183   - var timestamp = Date.parse(new Date());
184   - timestamp = timestamp / 1000;
185   - if (t.data.data.on_time > timestamp) {
186   - wx.showModal({
187   - title: '商品还未上架',
188   - showCancel: !1,
189   - complete: function() {
190   - wx.navigateBack();
191   - }
192   - });
193   - }
194   -
195   - if (t.data.data.down_time > 0) {
196   - if (t.data.data.down_time < timestamp) {
197   - wx.showModal({
198   - title: '商品已经到期下架',
199   - showCancel: !1,
200   - complete: function() {
201   - wx.navigateBack();
202   - }
203   - });
204   - }
205   - }
206   -
207   - t.data.data.on_time = ut.formatTime(t.data.data.on_time, 'yyyy-MM-dd hh:mm:ss');
208   - var txt = (t.data.data.shop_price / t.data.data.market_price * 10).toFixed(2);
209   - t.data.data['disc'] = txt;
210   -
211   - if (t.data.data.original_img.indexOf(o.imghost) == -1)
212   - t.data.data.original_img = o.imghost + t.data.data.original_img;
213   - if (t.data.data.goods_content == null) t.data.data.goods_content = "";
214   -
215   - //计算商品的规格
216   - var gg = "";
217   - if(t.data.data.goods_spec=="null" || t.data.data.goods_spec==null) t.data.data.goods_spec="";
218   - if(t.data.data.goods_color=="null" || t.data.data.goods_color==null) t.data.data.goods_color="";
219   -
220   - if (t.data.data.goods_spec != "" && t.data.data.goods_color != "") {
221   - gg = t.data.data.goods_spec + "/" + t.data.data.goods_color;
222   - } else if (t.data.data.goods_spec != "" || t.data.data.goods_color != "") {
223   - gg = t.data.data.goods_spec + t.data.data.goods_color;
224   - } else {
225   - gg = "规格1";
226   - }
227   - t.data.data.gg = gg;
228   -
229   -
230   - //--看一下有没有开启等级卡---
231   - if(ee.data.rank_switch){
232   - //---回调卡的列表---
233   - th.getPlusCardType(function(ob){
234   - var user = getApp().globalData.userInfo;
235   - if(user){
236   - if(user.card_field && user['card_expiredate']){
237   - var str = user['card_expiredate'].replace(/-/g, '/');
238   - var end = new Date(str);
239   - end = Date.parse(end) / 1000;
240   - var now = ut.gettimestamp();
241   - //--- 判断是等级会员,且在有效期范围内 ---
242   - if(user.card_field && now<end){
243   - var card_name=ob.name_map.get(user.card_field);
244   - if(card_name && card_name.length>5) card_name=card_name.substring(0,5);
245   - th.setData({card_field:user.card_field,card_name:card_name});
246   - if(t.data.data[user.card_field]>0) t.data.data.shop_price=t.data.data[user.card_field];
247   - }
248   - }
249   - }
250   - ee.setData({ data: t.data.data, });
251   - })
252   - }else{
253   - ee.setData({ data: t.data.data, });
254   - }
255   -
256   - if(!ee.data.collocationList){
257   - /*---获取活动的重表---*/
258   - //调用接口判断订单优惠,
259   - getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid+"/"+ee.data.gid+"/2", {}).then(res => {
260   - if(res.data.code==0){
261   - var r_data=res.data.data;
262   - th.loop_promise(0,r_data.collocationList,function(){
263   - ee.setData({
264   - collocationGoods:r_data.collocationPromList,
265   - collocationList:r_data.collocationList,
266   - })
267   - })
268   - }
269   - })
270   - }
271   -
272   - //获取统一条形码,普通商品和优惠促销的商品
273   - if ( t.data.data.prom_type == 5){
274   - //默认门店要拿下门店库存
275   - if(that.data.sales_rules==2 && that.data.is_newsales_rules){
276   - //--等待某个值只运行---,这里有可能因为导航的时间太久,而不能计算门店库存
277   - getApp().waitfor2(that,"wait_for_user_store","fir_def_store",function(){
278   - if(th.data.fir_def_store && th.data.fir_def_store.pickup_id ){
279   - var lock=0,plist=null;
280   - //先读取门店的lock,采用链式写法,少用await
281   - getApp().request.promiseGet("/api/weshop/order/ware/lock/page",{
282   - data:{store_id:os.stoid,wareId:ee.data.data.goods_id,storageId:that.data.fir_def_store.pickup_id,pageSize:1000}
283   - }).then(res=>{
284   - if(res.data.code==0 && res.data.data.total>0){
285   - for(var i in res.data.data.pageData)
286   - lock+=res.data.data.pageData[i].outQty
287   - }
288   - //---通过接口获取门店的线下库存信息--
289   - return getApp().request.promiseGet("/api/weshop/goods/getWareStorages",{
290   - data:{storageNos:that.data.fir_def_store.pickup_no,wareIds:encodeURIComponent(th.data.data.erpwareid),storeId:os.stoid,pageSize:2000}
291   - })
292   - }).then(res=>{
293   - if(res.data.code==0 && res.data.data.total>0){
294   - plist=res.data.data.pageData[0];
295   - }
296   - if(plist && plist.CanOutQty-lock>0){
297   - that.data.fir_def_store.CanOutQty=plist.CanOutQty-lock;
298   - }else{
299   - that.data.fir_def_store.CanOutQty=0;
300   - }
301   - //--给门店赋值线下库存--
302   - th.setData({def_pick_store:that.data.fir_def_store});
303   - //获取门店
304   - ee.get_sto();
305   - })
306   - }else{
307   - //--获取门店--
308   - ee.get_sto();
309   - }
310   - })
311   - }else{
312   - //获取门店
313   - ee.get_sto();
314   - }
315   -
316   - }
317   - else {
318   - return getApp().my_warnning("商品没有搭配购的活动",0,th)
319   - }
320   - }
321   - }
322   - });
323   - },1000)
  167 + this.wait_for_store_config();
  168 + clearTimeout(ot);
  169 + var ot = setTimeout(function () {
  170 + i.get("/api/weshop/goods/get/" + o.stoid + "/" + ee.data.gid, {
  171 + failRollback: !0,
  172 + success: function (t) {
  173 + if (t.data.code == 0) {
  174 + if (t.data.data.is_on_sale != 1) {
  175 + wx.showModal({
  176 + title: '商品已经下架',
  177 + showCancel: !1,
  178 + complete: function () {
  179 + wx.navigateBack();
  180 + }
  181 + });
  182 + }
  183 +
  184 + var timestamp = Date.parse(new Date());
  185 + timestamp = timestamp / 1000;
  186 + if (t.data.data.on_time > timestamp) {
  187 + wx.showModal({
  188 + title: '商品还未上架',
  189 + showCancel: !1,
  190 + complete: function () {
  191 + wx.navigateBack();
  192 + }
  193 + });
  194 + }
  195 +
  196 + if (t.data.data.down_time > 0) {
  197 + if (t.data.data.down_time < timestamp) {
  198 + wx.showModal({
  199 + title: '商品已经到期下架',
  200 + showCancel: !1,
  201 + complete: function () {
  202 + wx.navigateBack();
  203 + }
  204 + });
  205 + }
  206 + }
  207 +
  208 + t.data.data.on_time = ut.formatTime(t.data.data.on_time, 'yyyy-MM-dd hh:mm:ss');
  209 + var txt = (t.data.data.shop_price / t.data.data.market_price * 10).toFixed(2);
  210 + t.data.data['disc'] = txt;
  211 +
  212 + if (t.data.data.original_img.indexOf(o.imghost) == -1)
  213 + t.data.data.original_img = o.imghost + t.data.data.original_img;
  214 + if (t.data.data.goods_content == null) t.data.data.goods_content = "";
  215 +
  216 + //计算商品的规格
  217 + var gg = "";
  218 + if (t.data.data.goods_spec == "null" || t.data.data.goods_spec == null) t.data.data.goods_spec = "";
  219 + if (t.data.data.goods_color == "null" || t.data.data.goods_color == null) t.data.data.goods_color = "";
  220 +
  221 + if (t.data.data.goods_spec != "" && t.data.data.goods_color != "") {
  222 + gg = t.data.data.goods_spec + "/" + t.data.data.goods_color;
  223 + } else if (t.data.data.goods_spec != "" || t.data.data.goods_color != "") {
  224 + gg = t.data.data.goods_spec + t.data.data.goods_color;
  225 + } else {
  226 + gg = "规格1";
  227 + }
  228 + t.data.data.gg = gg;
  229 +
  230 +
  231 + //--看一下有没有开启等级卡---
  232 + if (ee.data.rank_switch) {
  233 + //---回调卡的列表---
  234 + th.getPlusCardType(function (ob) {
  235 + var user = getApp().globalData.userInfo;
  236 + if (user) {
  237 + if (user.card_field && user['card_expiredate']) {
  238 + var str = user['card_expiredate'].replace(/-/g, '/');
  239 + var end = new Date(str);
  240 + end = Date.parse(end) / 1000;
  241 + var now = ut.gettimestamp();
  242 + //--- 判断是等级会员,且在有效期范围内 ---
  243 + if (user.card_field && now < end) {
  244 + var card_name = ob.name_map.get(user.card_field);
  245 + if (card_name && card_name.length > 5) card_name = card_name.substring(0, 5);
  246 + th.setData({
  247 + card_field: user.card_field,
  248 + card_name: card_name
  249 + });
  250 + if (t.data.data[user.card_field] > 0) t.data.data.shop_price = t.data.data[user.card_field];
  251 + }
  252 + }
  253 + }
  254 + ee.setData({
  255 + data: t.data.data,
  256 + });
  257 + })
  258 + } else {
  259 + ee.setData({
  260 + data: t.data.data,
  261 + });
  262 + }
  263 +
  264 + if (!ee.data.collocationList) {
  265 + wx.setStorageSync('is_coupon', 1);
  266 + /*---获取活动的重表---*/
  267 + //调用接口判断订单优惠,
  268 + getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + ee.data.gid + "/2", {}).then(res => {
  269 + if (res.data.code == 0) {
  270 + var r_data = res.data.data;
  271 + th.loop_promise(0, r_data.collocationList, function () {
  272 + // 设置搭配购是否使用优惠卷
  273 + wx.setStorageSync('is_coupon', r_data.collocationPromList.is_coupon);
  274 + ee.setData({
  275 + collocationGoods: r_data.collocationPromList,
  276 + collocationList: r_data.collocationList,
  277 + })
  278 + })
  279 + }
  280 + })
  281 + }
  282 +
  283 + //获取统一条形码,普通商品和优惠促销的商品
  284 + if (t.data.data.prom_type == 5) {
  285 + //默认门店要拿下门店库存
  286 + if (that.data.sales_rules == 2 && that.data.is_newsales_rules) {
  287 + //--等待某个值只运行---,这里有可能因为导航的时间太久,而不能计算门店库存
  288 + getApp().waitfor2(that, "wait_for_user_store", "fir_def_store", function () {
  289 + if (th.data.fir_def_store && th.data.fir_def_store.pickup_id) {
  290 + var lock = 0,
  291 + plist = null;
  292 + //先读取门店的lock,采用链式写法,少用await
  293 + getApp().request.promiseGet("/api/weshop/order/ware/lock/page", {
  294 + data: {
  295 + store_id: os.stoid,
  296 + wareId: ee.data.data.goods_id,
  297 + storageId: that.data.fir_def_store.pickup_id,
  298 + pageSize: 1000
  299 + }
  300 + }).then(res => {
  301 + if (res.data.code == 0 && res.data.data.total > 0) {
  302 + for (var i in res.data.data.pageData)
  303 + lock += res.data.data.pageData[i].outQty
  304 + }
  305 + //---通过接口获取门店的线下库存信息--
  306 + return getApp().request.promiseGet("/api/weshop/goods/getWareStorages", {
  307 + data: {
  308 + storageNos: that.data.fir_def_store.pickup_no,
  309 + wareIds: encodeURIComponent(th.data.data.erpwareid),
  310 + storeId: os.stoid,
  311 + pageSize: 2000
  312 + }
  313 + })
  314 + }).then(res => {
  315 + if (res.data.code == 0 && res.data.data.total > 0) {
  316 + plist = res.data.data.pageData[0];
  317 + }
  318 + if (plist && plist.CanOutQty - lock > 0) {
  319 + that.data.fir_def_store.CanOutQty = plist.CanOutQty - lock;
  320 + } else {
  321 + that.data.fir_def_store.CanOutQty = 0;
  322 + }
  323 + //--给门店赋值线下库存--
  324 + th.setData({
  325 + def_pick_store: that.data.fir_def_store
  326 + });
  327 + //获取门店
  328 + ee.get_sto();
  329 + })
  330 + } else {
  331 + //--获取门店--
  332 + ee.get_sto();
  333 + }
  334 + })
  335 + } else {
  336 + //获取门店
  337 + ee.get_sto();
  338 + }
  339 +
  340 + } else {
  341 + return getApp().my_warnning("商品没有搭配购的活动", 0, th)
  342 + }
  343 + }
  344 + }
  345 + });
  346 + clearTimeout(ot);
  347 + }, 1000)
324 348 },
325 349  
326 350 onUnload: function() {},
... ...
pages/cart/cart2/cart2.js
... ... @@ -166,7 +166,12 @@ Page({
166 166 //----------子页返回父页触发----------
167 167 onShow: function () {
168 168 var th = this;
169   - th.setData({show_submit: 0}); //让提交先掩藏
  169 + // 搭配购是否使用优惠卷
  170 + var isCoupon = wx.getStorageSync('is_coupon');
  171 + th.setData({
  172 + show_submit: 0,
  173 + is_coupon: isCoupon,
  174 + }); //让提交先掩藏
170 175 th.data.g_cart_q_time = null;
171 176  
172 177 if (th.data.isclose == 0) {
... ... @@ -319,6 +324,7 @@ Page({
319 324 typeof func == "function" && func();
320 325 })
321 326 },
  327 +
322 328 //------获取会员信息-----先获取用户信息,在进行下一步---
323 329 get_info: function (func) {
324 330 var user_id = t.globalData.user_id;
... ... @@ -961,6 +967,7 @@ Page({
961 967 } else {
962 968 //--看是不是搭配促销--
963 969 if (gg.prom_type == 5) {
  970 +
964 971 t.data.data.prom_id = gg.prom_id;
965 972 t.data.data.prom_type = 5;
966 973 if (gg.room_id) {
... ... @@ -3517,6 +3524,7 @@ Page({
3517 3524 if (th.data.is_b_now == 1) {
3518 3525 th.setData({index: m_wind, is_express: m_wind});
3519 3526 } else {
  3527 + clearInterval(ui);
3520 3528 var ui = setInterval(function () {
3521 3529 if (th.data.cartlist) {
3522 3530 var c_arr = th.data.cartlist;
... ...
pages/cart/cart2/cart2.wxml
... ... @@ -343,14 +343,15 @@
343 343  
344 344  
345 345 <view class="set-mes bdr_b-14">
  346 +
346 347 <view wx:if="{{order.store_prom}}">
347 348 <icon color="#f23030" size="16" type="info"></icon>{{order.store_prom}}
348 349 </view>
349 350  
350   - <view class="xc-coupon-frame flex-center" data-bn="1" bindtap="open_coupon_list" data-pickid="{{bn_pick}}" wx:if="{{(selected_quan_list && selected_quan_list.length>0) || get_by_quan_list!=null}}">
  351 + <view class="xc-coupon-frame flex-center" data-bn="1" bindtap="open_coupon_list" data-pickid="{{bn_pick}}" wx:if="{{is_coupon > 0 && ((selected_quan_list && selected_quan_list.length>0) || get_by_quan_list!=null)}}">
351 352 <view class="work-frame flex-space-between">
352 353 <view class="work">
353   - 优惠券 <text class="quan_num_show">{{(selected_quan_list?selected_quan_list.length:0)+ (get_by_quan_list?get_by_quan_list.length:0)}}张可用</text>
  354 + 优惠券2222 <text class="quan_num_show">{{(selected_quan_list?selected_quan_list.length:0)+ (get_by_quan_list?get_by_quan_list.length:0)}}张可用</text>
354 355 </view>
355 356 <view class="xc-right-frame">
356 357 <text wx:if="{{using_quan[bn_pick].is_nouse}}">不使用</text>
... ...