Page({

    /**
     * 页面的初始数据
     */
    data: {
        listsArr    : [],               // 订单列表
        page        : { current: 1 },   // 分页信息
        lodingStats : false,            // 加载状态
    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow() {
        this.setData({
            listsArr: [],
            page    : { current: 1 }
        })
        this.getList()
    },
    /**
     * 获取列表
     */
    getList(){
        wx.showLoading({
            title: '加载中...',
            mask : true
        })
        wx.$api.refund.list({
            page : this.data.page.current
        }).then(res => {
            let { data, page } = res.data
            this.setData({
                listsArr       : page.current == 1 ? data : this.data.listsArr.concat(data),
                page           : res.data.page,
                lodingStats    : !page.has_more
            })
            wx.stopPullDownRefresh()
            wx.hideLoading()
        })
    },
    /**
     * 寄回商品
     */
    onDeliver(e){
        let { no } = e.currentTarget.dataset
        wx.navigateTo({
            url: "./deliver/deliver?no=" + no,
        })
    },
    /**
     * 取消售后
     */
    onCancel(e){
        let { no } = e.currentTarget.dataset
        let index = this.data.listsArr.findIndex(val => val.refund_no == no )
        let atArr = this.data.listsArr
        wx.showLoading({
            title: '加载中...',
            mask : true
        })
        wx.$api.refund.refundsCancel(no).then(res => {
            wx.showToast({
                title: res.data,
                icon : 'none'
            })
            atArr.splice(index, 1)
            this.setData({
                listsArr: atArr
            })
        }).catch(err => { })
    },
    /**
     * 售后信息
     */
    onInfo(e){
        let { no } = e.currentTarget.dataset
        wx.navigateTo({
            url: "./info/info?no=" + no,
        })
    },
    /**
     * 上拉加载
     */
    onReachBottom(){
        this.setData({
            lodingStats: true
        })
        let page = this.data.page
        if(page.has_more){
            page.current += 1
            this.setData({ page })
            this.getList()
        }
    }
})