user.js 1.55 KB
import { fn, fetch } from '@/api/fn';

const Api = {
  GetProfile: '/srv/?a=user&t=get_profile',
  Login: '/srv/?a=user&t=login',
  Logout: '/srv/?a=user&t=logout',
  UpdateProfile: '/srv/?a=user&t=update_profile',
}

/**
 * @description 获取个人信息
 * @remark 
 * @param {Object} params 请求参数
 * @returns {Promise<{
 *   code: number; // 状态码
 *   msg: string; // 消息
 *   data: {
 *     user: {
 *       id: integer; // 用户ID
 *       avatar_url: string; // 头像
 *       name: string; // 姓名
 *     };
 *   };
 * }>}
 */
export const getProfileAPI = (params) => fn(fetch.get(Api.GetProfile, params));

/**
 * @description 登录并绑定openid
 * @remark 
 * @param {Object} params 请求参数
 * @param {string} params.uuid 
 * @param {string} params.password 
 * @returns {Promise<{
 *   code: number; // 状态码
 *   msg: string; // 消息
 *   data: any;
 * }>}
 */
export const loginAPI = (params) => fn(fetch.post(Api.Login, params));

/**
 * @description 退出登录并解绑openid
 * @remark 
 * @param {Object} params 请求参数
 * @returns {Promise<{
 *   code: number; // 状态码
 *   msg: string; // 消息
 *   data: any;
 * }>}
 */
export const logoutAPI = (params) => fn(fetch.post(Api.Logout, params));

/**
 * @description 更新个人资料
 * @remark 
 * @param {Object} params 请求参数
 * @param {string} params.avatar_url 
 * @returns {Promise<{
 *   code: number; // 状态码
 *   msg: string; // 消息
 *   data: any;
 * }>}
 */
export const updateProfileAPI = (params) => fn(fetch.post(Api.UpdateProfile, params));