const getReq = require('../../config.js').getReq
import recordSource from '../../utils/recordSource'
let app = getApp()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    order_info: {},
    defaultAddress: null,
    firstLoad: true,
    user_bonus: 0,
    fromSource: '',
    totalPrice: '',
    
    available_pred: 0,
    room_bonus: 0,
    full_discount: 0,
    opgoods_discount: 0
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    let pay_sn = options.pay_sn;
    this.getDatas(pay_sn);
  },
  getDatas(pay_sn) {
    let self = this;
    let fromSource = recordSource(app, `act=member_order&op=pay_info&pay_sn=${pay_sn}&client_type=mini`)
    this.setData({
      fromSource: app.globalData.fromSource
    })
    wx.showLoading({
      title: '加载中',
    })
    getReq(app,{
      act: 'member_order',
      op: 'pay_info',
      pay_sn: pay_sn,
      from: fromSource
    }, function (res) {
      wx.hideLoading();
      if (res.code == 200) {
        let { order_info } = res.datas.order     
        let { goods_amount, shipping_fee, available_pred = 0, user_bonus = 0, room_bonus = 0, full_discount = 0, opgoods_discount = 0 } = order_info   
        let totalPrice = parseFloat((goods_amount + shipping_fee - user_bonus - room_bonus - full_discount - opgoods_discount).toFixed(2))
        self.setData({
          defaultAddress: {
            mob_phone: res.datas.order.reciver_info.mob_phone,
            true_name: res.datas.order.reciver_info.reciver_name,
            area_info: res.datas.order.reciver_info.area,
            address: res.datas.order.reciver_info.street
          },
          order_info: res.datas.order.order_info,
          firstLoad: false,
          totalPrice,
          user_bonus,

          available_pred,
          room_bonus,
          full_discount,
          opgoods_discount

        });
      }
      else {
        wx.showToast({
          icon: 'none',
          title: res.message,
          duration: 2000
        })
      }
    })
  },
  getGoodsList(summary, goods_list) {
    let newGoodsList = []
    goods_list.map((item, index) => {
      summary.find((list, key) => {
        if (item.goods_id == list.goods_id) {
          let goods_item = list
          goods_item.goods_num = item.goods_num
          newGoodsList.push(goods_item)
          return true
        }
      })
    })
    return newGoodsList

  },
  toPay() {
    let params = {
      act: 'member_order',
      op: 'pay',
      pay_sn: this.data['order_info']['pay_sn'],
      payment: 'minipay'
    }
    getReq(app,params, function (res) {
      if (res.code == 200) {
        let param = res.datas.param.data;
        wx.requestPayment({
          timeStamp: param.timeStamp, //时间戳，自1970年以来的秒数
          nonceStr: param.nonceStr,   //随机串
          package: param.package,
          signType: param.signType,   //微信签名方式：
          paySign: param.paySign,     //微信签名
          success: function (res) {
            wx.redirectTo({
              url: "/pages/order_tabs/orderTabs?state_type=state_pay"
            })

            console.log("成功：", res);
            console.log('支付成功')
          },
          fail: function (res) {
            setTimeout(() => {
              wx.showToast({
                icon: 'none',
                title: res.errMsg,
                duration: 2000
              })
            }, 200);
            console.log("失败：",  res);
          }
        });
      }
    })
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    if (!this.data.firstLoad) {
      let defaultAddress = app.globalData.defaultAddress
      app.setFromSource(this.data.fromSource)
      if (defaultAddress) {
        this.setData({
          defaultAddress
        })
      }
    }
  },

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

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

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

  },

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

  }
})