installment.order.page.js 1.73 KB
var $ = require('yoho-jquery');
var debounce = require('lodash/debounce');

var search = {
    pageIndex: 1,
    type: null
};


/**
 * 加载订单明细
 *
 * @param type
 */
var loadOrderList = function(pageIndex, type) {
    if (type && type !== search.type) {
        $.get('/home/installment/order.html', {
            page: pageIndex,
            type: type
        }).then(function(result) {
            if (type !== search.type) {
                // 切换TAB时清空列表
                $('#order-list').empty();
                search.type = type;
            }

            $('#order-list').append(result);


            // 订单状态样式
            $('.status').each(function() {
                var text = $(this).text();

                if (text.indexOf(/已还清|已取消|已退款|已结清|订单取消/)) {
                    $(this).addClass('faded');
                }
            });

            if ($('#order-list li').length === 0) {
                $('#no-result').show();
                $('#order-list').hide();
            } else {
                $('#order-list').show();
                $('#no-result').hide();
            }
        });
    }
};


var scrollFn = debounce(function() {
    if ($(window).scrollTop() >= $(document).height() - $(window).height() - 10) {
        // alert('end of page');

        loadOrderList(search.type, ++search.pageIndex);
    }
}, 500);

/**
 * 顶部TAB
 */
$('.header-tab a').click(function() {
    $(this).parent().addClass('active');
    $(this).parent().siblings().removeClass('active');

    loadOrderList(1, $(this).data('type'));
    return false;
});

// 默认加载第一页
loadOrderList(search.pageIndex, 1);


// 滚屏分页
$(window).scroll(function() {
    scrollFn();
});