const app=getApp(); var util = require('../../utils/util.js'); var api = require('../../utils/service-api.js'); var comReq = require('../../utils/common-request.js'); Page({ data: { selectAllStatus: 1, carts: [], // 购物车列表 totalPrice: 0, // 总价,初始为0 totalNum: 0, // 总数,初始为0 couponGroupList: [{}], selectCount: "", }, onShow() { comReq.refreshUserCartCount(); this.loadCarList(); }, onLoad() {}, /** * 删除购物车当前商品 */ deleteList(e) { var _this = this; const id = e.currentTarget.dataset.id; util.request({ method: "POST", api: api.shoppingCart.deleteByCartId + id, callback: function(data) { _this.loadCarList(); comReq.refreshUserCartCount(); } }); }, /** * 当前商品选中事件 */ selectList(e) { let id = e.currentTarget.dataset.id; let isSelected = e.currentTarget.dataset.selected; isSelected = (isSelected == 1 ? 2 : 1); var _this = this; util.request({ method: "POST", api: api.shoppingCart.updateCartSelected, data: { "cartId": id, "isSelected": isSelected }, callback: function() { _this.loadCarList(); } }); }, /** * 购物车全选事件 */ selectAll(e) { var _this = this; let selectAllStatus = this.data.selectAllStatus; selectAllStatus = (selectAllStatus == 1 ? 2 : 1); this.setData({ "selectAllStatus": selectAllStatus, }); util.request({ method: "POST", api: api.shoppingCart.updateCartAllSelected + app.shopInfo.id +"/"+ selectAllStatus, callback: function() { _this.loadCarList(); } }); }, /** * 绑定加数量事件 */ updateCarNumber(e) { var _this = this; const type = e.currentTarget.dataset.type; var id = e.currentTarget.dataset.id; let increaseAndDecrease = "1"; if (type == "down") { increaseAndDecrease = "2"; } util.request({ method: "POST", api: api.shoppingCart.updateCarNumberByCartId, data: { "cartId": id, "increaseAndDecrease": increaseAndDecrease }, callback: function(data) { _this.loadCarList(); comReq.refreshUserCartCount(); } }); }, /** * 结算 */ castAccount() { var _this = this; var ids = ''; if (_this.data.selectCount == 0) { wx.showToast({ title: '请选择商品', icon: 'success', duration: 2000 }) } else { //判断是否绑定手机号 if (util.isBlank(getApp().userInfo.nickName)) { wx.navigateTo({ url: '/pages/welcome/welcome?url=/pages/yuyue/khyuyue', }) } else if (util.isBlank(getApp().userInfo.phoneNumber)) { wx.navigateTo({ url: '/pages/phone/phone?url=/pages/yuyue/khyuyue', }) } wx.navigateTo({ url: '/pages/service/shopOrder?model=2', }) } }, // 进入商品详情 goGoods(e) { var id = e.currentTarget.dataset.id; wx.navigateTo({ url: '../details/details?id=' + id, //把id传到product页面 }) }, // 上拉加载 onReachBottom: function() { }, //加载购物车列表 loadCarList() { var _this = this; util.request({ method: "POST", data:{shopId:app.shopInfo.id}, api: api.shoppingCart.findShoppingCart, callback: function(data) { if (data.mapInfo.cartCount == data.mapInfo.selectCount) { _this.setData({ "selectAllStatus": 1, }); } else { _this.setData({ "selectAllStatus": 2, }); } _this.setData({ "couponGroupList": data.rows, "billTotal": data.mapInfo.billTotal, "billCouponTotal": data.mapInfo.billCouponTotal, "selectCount": data.mapInfo.selectCount, "cartCount": data.mapInfo.cartCount, }); } }); }, /** * 凑单 */ coudan(e) { var coupon = e.currentTarget.dataset.coupon; console.log(coupon); if (coupon) { wx.navigateTo({ url: '../shopTypeSecond/shopTypeSecond?content=' + coupon, }) } else { console.log("没有优惠券"); wx.switchTab({ url: '../shopType/shopType', success: function() { console.log(1); }, fail: function(e) { console.log(e); } }) } }, //一键回到顶部 goTap() { util.goTap(); }, //获取滚动条当前位置 onPageScroll: function(e) { if (e.scrollTop > 400) { this.setData({ floorstatus: true }); } else { this.setData({ floorstatus: false }); } }, })