审查视图

pages/cart-affirm-order/cart-affirm-order.js 8.3 KB
倪静楠 authored
1
// pages/affirm-order/affirm-order.js
倪静楠 authored
2 3
let method = require("../../utils/reuqest.js");
const util = require("../../utils/util.js");
倪静楠 authored
4 5
Page({
  data: {
倪静楠 authored
6
    userData: "",
倪静楠 authored
7 8 9 10 11
    addressId: '',
    startTime: '',
    cartList: [], //商品列表
    goodsData: '',
    goodsList: '',
倪静楠 authored
12 13 14 15 16
    showTime: false, //配送时间弹框
    // storePickupTime: '',
    deliveryTime: '', //配送时间年月
    timers: '',   //  配送时间
    timerId: '',
倪静楠 authored
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
    show: false,
    currentDate: '12:00',
    currentDateTwo: '13:00',
    minHour: 1,
    maxHour: 23,
    length: 0,
    maxlength: 50,
    leavaWord: '',
    discountText: '',
    id: '',
    date: '',
    skuId: '',
    orderId: '',
    count: '',
    stockNum: '',
    totalPrice: '',
    cartIds: '', //购物车id
    cartsId: [], //列表商品id
    couponId: '', //优惠券id
    payment: '',
倪静楠 authored
37
    amount: '' //优惠券金额
倪静楠 authored
38 39 40 41 42 43 44 45 46 47 48 49 50
  },
  //商品
  getList() {
    let pitchList = wx.getStorageSync('pitchList')
    method.getRequest("/order/buyNow/" + pitchList, data => {
      this.setData({
        goodsList: data.data,
      })
      wx.setStorageSync('couponVos', data.data.couponVos)
      if (wx.getStorageSync('couponVos')) {
        this.setData({
          discountText: wx.getStorageSync('cardAmount'), //选择使用优惠券金额
        })
倪静楠 authored
51
        wx.setStorageSync('cardAmount', '')
倪静楠 authored
52
      }
倪静楠 authored
53 54 55 56 57 58
      let payment = Number(this.data.goodsList.payment) - Number(this.data.discountText)
      let goodsList = this.data.goodsList;
      goodsList.payment = payment;
      this.setData({
        goodsList: goodsList
      })
倪静楠 authored
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
    })
  },
  //地址信息
  getAddress() {
    let index = wx.getStorageSync('addIndex')
    method.getRequest("/address", data => {
      if (data.statusCode == 0) {
        this.setData({
          userData: data.data[index],
          addressId: data.data[index].id
        })
      }
    })
  },
  //地址页面跳转
  emit() {
    wx.navigateTo({
      url: '/pages/select-address/select-address',
    })
  },
  //选择时间
倪静楠 authored
80 81 82 83 84 85 86 87 88 89 90 91 92
  //配送时间
  selectTime(e) {
    if (e.detail.time && e.detail.time !== this.data.timers) {
      this.setData({
        timers: e.detail.time,
        // showTime: e.detail.flag,
        deliveryTime:e.detail.deliveryTime,
        showTime: false,
        timerId: e.detail.timerId
      })
    }
  },
  onClose() {
倪静楠 authored
93
    this.setData({
倪静楠 authored
94
      showTime: false
倪静楠 authored
95 96 97 98 99 100 101 102
    });
  },
  onReady() {
    this.timepicker = this.selectComponent('#aaa')
  },
  chooseTime() {
    this.setData({
      showTime: true
倪静楠 authored
103
    })
倪静楠 authored
104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120
    // this.timepicker.getDliveryTime();
  },
  onClickButton() {
    this.setData({
      showModal: true
    })
  },
  getDayTime() {
    var myDate = new Date();
    var year = myDate.getFullYear();
    var month = myDate.getMonth();
    var day = myDate.getDate();
    var dayNow = year + '-' + (month + 1) + "-" + day;
    this.setData({
      startTime: dayNow
    })
  },
倪静楠 authored
121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194
  //点击减少
  dec() {
    let that = this
    let count = that.data.count
    if (that.data.count > 1) {
      count--
    } else {
      wx.showToast({
        title: '已经是最少了哦~',
        icon: 'none'
      })
    }
    that.setData({
      count
    })
  },
  //点击增加
  add() {
    let that = this
    let count = that.data.count
    let stock = that.data.stockNum
    if (count < stock) {
      count++
      this.setData({

      })
    } else {
      wx.showToast({
        title: '不能超过库存哦~',
        icon: 'none'
      })
    }
    that.setData({
      count
    })
  },
  //留言
  userInput(e) {
    let value = e.detail.value
    let len = parseInt(value.length);
    if (value.length <= this.data.maxlength) {
      this.setData({
        content: value,
        length: len
      })
    } else {
      this.setData({
        content: value,
        length: this.data.maxlength
      })
    }
  },
  //优惠券
  goCardList() {
    wx.navigateTo({
      url: '/pages/my-discount-card/my-discount-card',
    })
  },
  //计算总价
  getTotalPrice() {
    let carts = this.data.cartList;
    let total = 0;
    for (let i = 0; i < carts.length; i++) {
      total += carts[i].num * carts[i].goodsPrice
    }
    this.setData({
      //carts: carts,
      totalPrice: total.toFixed(2)
    });
  },
  //立即购买
  buy() {
    //生成订单
    this.getAddress();
倪静楠 authored
195 196 197 198
    if(this.data.userData == undefined){
      wx.showToast({
        title: '请选择收货地址',
        icon: "none"
倪静楠 authored
199
      })
倪静楠 authored
200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234
    }else if(this.data.timers == ""){
      wx.showToast({
        title: '请选择配送时间',
        icon: "none"
      })
    }else{
      setTimeout(() => {
        let postData = {
          addressId: this.data.addressId,
          carts: this.data.cartsId,
          couponId: this.data.couponId,
          deliveryTime: this.data.deliveryTime+this.data.timers,
          note: this.data.leavaWord,
        }
        method.postRequest("/order/buyNow", postData, data => {
          if (data.statusCode == 0) {
            this.setData({
              cartIds: data.data.id
            })
            // this.buys()
            this.payment();
          } else {
            wx.showToast({
              title: data.msg,
              icon: 'none'
            })
            // setTimeout(() => {
            //   util.getUser()
            // }, 2000)
          }
        })
      }, 500)
  
    }
  
倪静楠 authored
235 236 237 238 239 240
  },
  //购物车-立即购买
  buys() {
    method.getRequest("/order/buyNow/" + this.data.cartIds, data => {
      if (data.statusCode == 0) {
        this.payment();
倪静楠 authored
241
        wx.setStorageSync('cardAmount', "")
倪静楠 authored
242
      } else {}
倪静楠 authored
243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261
    })
  },
  //支付
  payment() {
    let obj = {};
    let resposeData = {};
    method.postRequest("/payment/payment/" + this.data.cartIds, obj, data => {
      if (data.statusCode == 0) {
        resposeData = data.data;
        wx.requestPayment({
          'timeStamp': resposeData.timeStamp,
          'nonceStr': resposeData.nonceStr,
          'package': resposeData.packages,
          'signType': 'MD5',
          'paySign': resposeData.paySign,
          'success': function (res) {
            wx.showToast({
              title: '支付成功',
            })
倪静楠 authored
262 263 264 265 266 267 268 269
            wx.switchTab({
              url: '/pages/shopping-cart/shopping-cart',
            })
          },
          'fail': function (res) {
            wx.switchTab({
              url: '/pages/shopping-cart/shopping-cart',
            })
倪静楠 authored
270 271 272 273 274 275 276 277
          },
          'complete': function (res) {}
        })
      }
    })
  },
  onLoad: function (options) {
    this.getList();
倪静楠 authored
278
    if (this.data.cardId) {
倪静楠 authored
279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311
      this.setData({
        couponId: cardId,
        id: options.id,
        count: options.count,
        stockNum: options.stockNum,
        skuId: options.skuId,
      })
      wx.removeStorageSync('couponId')
    } else {
      this.setData({
        id: options.id,
        count: options.count,
        stockNum: options.stockNum,
        skuId: options.skuId,
      })
    }
    this.getTotalPrice();
    this.getAddress()
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  onShow: function () {
    let that = this;
    let cartsId = wx.getStorageSync('pitchList');
    let goodsCarts = wx.getStorageSync('pitchCart');
    // let date = wx.getStorageSync('date');
    let type = wx.getStorageSync('type') //优惠券类型
倪静楠 authored
312
    let amount = wx.getStorageSync('amount') //优惠券类型
倪静楠 authored
313 314 315 316 317
    let cardId = wx.getStorageSync('cardId')

    that.setData({
      cartsId: cartsId,
      cartList: goodsCarts,
倪静楠 authored
318
      couponId: cardId,
倪静楠 authored
319
      // date: date,
倪静楠 authored
320
      type: type,
倪静楠 authored
321
      amount: amount
倪静楠 authored
322 323 324 325
    })
    that.getTotalPrice();
    that.getAddress();
    that.getDayTime(); //获取当天时间
倪静楠 authored
326
    // that.buy();
倪静楠 authored
327 328 329 330
    that.getList(); //
    //   wx.removeStorageSync('pitchCart')
    // wx.removeStorageSync('pitchList')
    wx.removeStorageSync('cardId')
倪静楠 authored
331
    wx.setStorageSync('amount', "")
倪静楠 authored
332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {
    wx.setStorageSync('pitchList', "")
    wx.setStorageSync('pitchCart', "")
  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})