currency.js 2.69 KB
/**
 * [个人中心]有货币
 * @author: jiangmin
 * @date: 2016/07/11
 */

'use strict';

const api = global.yoho.API;

/**
 * 有货币列表数据
 * @param uid
 * @param page
 * @param queryType
 * @param beginTime
 * @returns {*}
 */
const yohoCoinList = (uid, page, queryType, beginTime) => {
    var pageSize = 15;

    return api.get('', {
        method: 'app.yohocoin.lists',
        uid: uid,
        page: page,
        limit: pageSize,
        queryType: queryType,
        beginTime: beginTime
    }).then(result => {
        let coinList = [];
        let total = false;
        let curPage = 1;

        if (result && result.data) {
            coinList = result.data.coinlist;// camelCase(result.data.coinlist);
            total = result.data.total;
            curPage = result.data.page;
        }
        const paginationOpts = total > 15 ? {
            paginationOpts: {
                total: total,
                page: curPage,
                limit: pageSize,
                queryParams: {}
            }

        } : false;
        const tabs = [
            {
                text: '全部明细',
                type: 'all'
            },
            {
                text: '全部收入',
                type: 'paying'
            },
            {
                text: '全部支出',
                type: 'delivering'
            }
        ];
        const selects = [
            {
                text: '近三个月的明细',
                value: 3
            },
            {
                text: '近半年的明细',
                value: 6
            },
            {
                text: '近一年的明细',
                value: 12
            }
        ];

        return {
            coinList: coinList,
            total: total,
            curPage: curPage,
            paginationOpts: paginationOpts.paginationOpts,
            tabs: tabs,
            selects: selects
        };
    });
};

/**
 * 有货币总数
 * @returns {*}
 */
const yohoCoinTotal = (uid)=> {

    return api.get('', {
        method: 'app.yoho.yohocoin',
        uid: uid
    }).then(result => {

        if (!result.data.yohocoin_num || result.data.yohocoin_num === '') {
            result.data.yohocoin_num = 0;
        }
        return result;
    });
};

/**
 * 获取有货币相关数据
 * @param uid
 * @param page
 * @param queryType
 * @param beginTime
 * @returns {*}
 */
const getIndexData = (uid, page, queryType, beginTime) => {
    let getData = [yohoCoinList(uid, page, queryType, beginTime), yohoCoinTotal(uid)];

    return Promise.all(getData).then(result => {
        return {
            list: result[0],
            num: result[1]
        };
    });
};

module.exports = {
    getIndexData
};