refund.js 2.07 KB
/**
 * 退换货 Model
 * @type {Object}
 */
const api = global.yoho.API;

const refund = {
    getOrderData(uid, orderId) {
        return api.get('', {
            method: 'app.refund.goodsList',
            uid: uid,
            order_code: orderId
        }, {
            cache: true,
            code: 200
        });
    },
    submitRefundData(uid, params) {
        return api.post('', Object.assign({
            method: 'app.refund.submit',
            uid: uid,
        }, params));
    },
    getExpressCompany() {
        return api.get('', {
            method: 'app.express.getExpressCompany'
        }, {
            code: 200
        });
    },
    setexpress(applyid, uid, data) {
        const method = data.type === 'refund' ? 'app.refund.setexpress' : 'app.change.setexpress';

        return api.get('', {
            method: method,
            id: applyid,
            uid: uid,
            express_company: data.expressCompany,
            express_number: data.expressNumber,
            express_id: data.expressId
        });
    },
    getChangeDetail(id, uid) {
        return api.get('', {
            method: 'app.change.detail',
            id: id,
            uid: uid,
        }, {
            code: 200
        });
    },
    getRefundDetail(id, uid) {
        return api.get('', {
            method: 'app.refund.detail',
            id: id,
            uid: uid,
        }, {
            code: 200
        });
    },

    /**
     * 获取退换货列表
     * @param param
     *          method
     *          uid
     *          page
     *          limit
     *          app_type
     * @returns {Promise.<T>|*}
     */
    getRefundOrders(param) {
        param = Object.assign({
            method: 'app.refund.getList'
        }, param);

        return api.get('', param);
    },

    /**
     * 取消退货申请
     *
     * @param uid 用户id
     * @param id 退货id
     */
    cancelRefundApply(uid, id) {
        return api.post('', {
            uid: uid,
            id: id,
            method: 'app.refund.cancel'
        });
    }
};

module.exports = refund;