HaniBlindBox/honey_box/common/server/user.js

165 lines
4.2 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/**
* 用户模块 - 用户信息、VIP、资金流水相关接口
*/
import RequestManager from '../request';
import common from '../common';
/**
* 获取用户信息
* @returns {Promise}
*/
export const getUserInfo = async () => {
const res = await RequestManager.get('/userInfo');
if (res.status == 1) {
res.data.money = common.removeTrailingZeros(res.data.money);
res.data.integral = common.removeTrailingZeros(res.data.integral);
res.data.money2 = common.removeTrailingZeros(res.data.money2);
return res.data;
} else {
return null;
}
};
/**
* 获取用户完整信息包含userinfo对象
* @returns {Promise} 用户完整信息
*/
export const getUser = async () => {
return await RequestManager.post('/user', {});
};
/**
* 更新用户信息
* @param {Object} data 用户信息
* @param {String} data.nickname 昵称
* @param {String} data.headimg 头像
* @returns {Promise} 更新结果
*/
export const updateUserInfo = async (data) => {
return await RequestManager.post('/updateUserInfo', data);
};
/**
* 获取VIP等级列表
* @returns {Promise} VIP列表
*/
export const getVipList = async () => {
return await RequestManager.get('/vip_list', {}, true);
};
/**
* 获取余额流水记录
* @param {Number} page 页码
* @param {Number} pageSize 每页数量
* @param {Number} type 类型 0-全部 1-收入 2-支出
* @returns {Promise} 流水记录
*/
export const getProfitMoney = async (page = 1, pageSize = 10, type = 0) => {
return await RequestManager.get('/profitMoney', {
page,
pageSize,
type
}, true);
};
/**
* 获取积分流水记录
* @param {Number} page 页码
* @param {Number} pageSize 每页数量
* @param {Number} type 类型 0-全部 1-收入 2-支出
* @returns {Promise} 流水记录
*/
export const getProfitIntegral = async (page = 1, pageSize = 10, type = 0) => {
return await RequestManager.get('/profitIntegral', {
page,
pageSize,
type
}, true);
};
/**
* 获取欧气值流水记录
* @param {Number} page 页码
* @param {Number} pageSize 每页数量
* @param {Number} type 类型 0-全部 1-收入 2-支出
* @returns {Promise} 流水记录
*/
export const getProfitScore = async (page = 1, pageSize = 10, type = 0) => {
return await RequestManager.get('/profitScore', {
page,
pageSize,
type
}, true);
};
/**
* 获取消费记录
* @param {Number} page 页码
* @param {Number} pageSize 每页数量
* @returns {Promise} 消费记录
*/
export const getProfitPay = async (page = 1, pageSize = 10) => {
return await RequestManager.get('/profitPay', {
page,
pageSize
}, true);
};
/**
* 获取权益信息
* @returns {Promise} 权益信息
*/
export const getEquity = async () => {
return await RequestManager.get('/quan_yi', {});
};
/**
* 领取权益奖励
* @param {Number} id 权益ID
* @returns {Promise} 领取结果
*/
export const receiveEquity = async (id) => {
return await RequestManager.post('/quan_yi_ling', { id });
};
/**
* 获取任务列表
* @param {Number} type 任务类型 1-每日任务 2-每周任务
* @returns {Promise} 任务列表
*/
export const getTaskList = async (type) => {
return await RequestManager.post('/task_list', { type });
};
/**
* 领取任务奖励
* @param {Number} taskId 任务ID
* @returns {Promise} 领取结果
*/
export const receiveTaskReward = async (taskId) => {
return await RequestManager.post('/ling_task', { task_list_id: taskId });
};
/**
* 获取提现记录
* @param {Object} params 查询参数
* @param {Number} params.page 页码
* @returns {Promise} 提现记录
*/
export const getWithdrawLog = async (params = {}) => {
return await RequestManager.post('/withdraw_log', params);
};
/**
* 提交提现申请
* @param {Object} params 提现参数
* @param {Number} params.money 提现金额
* @param {Number} params.type 提现方式 2-支付宝 3-银行卡
* @param {String} params.name 姓名
* @param {String} params.number 账号
* @param {String} params.bank 开户行(银行卡时必填)
* @returns {Promise} 提现结果
*/
export const submitWithdraw = async (params = {}) => {
return await RequestManager.post('/withdraw', params);
};