myCurrency.js 2.54 KB
'use strict';

const serviceAPI = global.yoho.ServiceAPI;
const api = global.yoho.API;
const _ = require('lodash');
const camelCase = global.yoho.camelCase;
const logger = global.yoho.logger;

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

        if (result && result.code === 200) {
            return camelCase(result.data);
        } else {
            logger.error('youho币总数 cood 不是 200');
        }
    });
};

const bannerData = (contentCode) => {

    return serviceAPI.get('operations/api/v5/resource/get', {
        content_code: contentCode
    }).then((result) => {
        // console.log(result)

        if (result && result.code === 200) {

            return result.data;

        } else {
            logger.error('banner is not 200');
            return {};
        }
    });
};

const myCurrency = (uid, contentCode) => {
    return Promise.all([yohoCoin(uid), bannerData(contentCode)])
        .then((result) => {

            return {
                yohoCoin: result[0],
                banner: result[1]
            };
        });
};

const currencyDetail = (uid, page, limit) => {
    return api.get('', {
        method: 'app.yohocoin.lists',
        uid: uid,
        page: page,
        limit: limit
    }).then((result) => {

        if (result && result.code === 200) {
            let total = parseInt(result.data.page_total, 10) + 1;

            if (page && page < total) {
                return myCurrency(uid).then(list => {

                    if (list.yohocoinNum && list.yohocoinNum === 0) {
                        result.data = _.assign(result.data, {
                            money: false
                        });
                    } else {
                        result.data = _.assign(result.data, {
                            money: true
                        });
                    }

                    return result.data;
                });
            } else {
                return;
            }

        } else {
            logger.error('youho币列表 cood 不是 200');
        }

    });
};

const mayLike = (uid, page, limit, udid, gender, recPos, channel) => {
    return api.get('', {
        method: 'app.search.newLast7day',
        uid: uid,
        page: page,
        limit: limit,
        udid: udid,
        rec_pos: recPos,
        yh_channel: channel
    }).then((result) => {
        console.log(result);
    });
};

module.exports = {
    myCurrency,
    currencyDetail,
    bannerData,
    yohoCoin,
    mayLike
};