import request from '@/utils/request.js' import API from './config.js' import { getUA } from '@/utils/util.js' /** * 按业务模块聚合的接口方法。 * 组件中:import api from '@/api/index.js' -> api.user.getInfo() */ // 登录类接口统一补充 invite_open_id(邀请码)与 user_agent(沿用旧项目 comApi 逻辑) function withLoginExtra(params = {}) { const inviteCode = uni.getStorageSync('invite_code') if (inviteCode) params.invite_open_id = inviteCode params.user_agent = getUA() return params } export const userApi = { // 微信登录(code 换取登录态) loginByCode: (params) => request({ url: API.INTERFACE_LOGIN_BY_CODE, method: 'POST', params: withLoginExtra(params) }), // 小程序手机号一键登录 loginByPhoneMp: (params) => request({ url: API.INTERFACE_COMMON_PHONE_LOGIN_MP, method: 'POST', params: withLoginExtra(params) }), // 手机号+密码登录 loginByPhone: (params) => request({ url: API.INTERFACE_LOGIN_BY_PHONE, method: 'POST', params }), // 手机号+验证码登录(App / H5) loginPhone: (params) => request({ url: API.INTERFACE_PHONE_LOGIN, method: 'POST', params: withLoginExtra(params) }), // 苹果 / 游客登录 signWithApple: (params) => request({ url: API.INTERFACE_SIGN_WITH_APPLE, method: 'POST', params: withLoginExtra(params) }), // H5 唤起小程序登录的深度链接 getMiniScheme: (params) => request({ url: API.INTERFACE_USER_GET_MINI_SCHEME, method: 'POST', params }), sendCode: (params) => request({ url: API.INTERFACE_SEND_CODE, method: 'POST', params }), getInfo: (params) => request({ url: API.INTERFACE_USER_GET_INFO, method: 'POST', params }), updateInfo: (params) => request({ url: API.INTERFACE_USER_UPDATE_INFO, method: 'POST', params }), getBalance: (params) => request({ url: API.INTERFACE_USER_GET_BALANCE, method: 'POST', params }), getInviteList: (params) => request({ url: API.INTERFACE_USER_GET_INVITE_LIST, method: 'POST', params }) } export const inviteApi = { getConfig: (params) => request({ url: API.INTERFACE_INVITE_GET_CONFIG, method: 'POST', params }), getMy: (params) => request({ url: API.INTERFACE_INVITE_GET_MY, method: 'POST', params }), getList: (params) => request({ url: API.INTERFACE_INVITE_GET_LIST, method: 'POST', params }), getQrcode: (params) => request({ url: API.INTERFACE_INVITE_GET_QRCODE, method: 'POST', params }) } export const commonApi = { getConfig: (params) => request({ url: API.INTERFACE_COMMON_GET_CONFIG, method: 'POST', params }), getHomeConfig: (params) => request({ url: API.INTERFACE_HOME_GET_CONFIG, method: 'POST', params }), getHtml: (params) => request({ url: API.INTERFACE_COMMON_GET_HTML, method: 'POST', params }), feedback: (params) => request({ url: API.INTERFACE_COMMON_POST_FEEDBACK, method: 'POST', params }) } export const vipApi = { getProductList: (params) => request({ url: API.INTERFACE_VIP_GET_PRODUCT_LIST, method: 'POST', params }), createOrder: (params) => request({ url: API.INTERFACE_VIP_POST_CREATE_ORDER, method: 'POST', params }), paySuccess: (params) => request({ url: API.INTERFACE_VIP_POST_PAY_SUCCESS, method: 'POST', params }), getMyList: (params) => request({ url: API.INTERFACE_VIP_GET_MY_LIST, method: 'POST', params }) } export const pointApi = { // 点数套餐列表 getPackageList: (params) => request({ url: API.INTERFACE_POINT_GET_PACKAGE_LIST, method: 'POST', params }), // 点数余额 getBalance: (params) => request({ url: API.INTERFACE_POINT_GET_BALANCE, method: 'POST', params }), // 点数账单流水 getLogList: (params) => request({ url: API.INTERFACE_POINT_GET_LOG_LIST, method: 'POST', params }), // 创建充值订单(小程序返回虚拟支付参数) createOrder: (params) => request({ url: API.INTERFACE_POINT_POST_CREATE_ORDER, method: 'POST', params }), // 订单状态轮询 getOrderStatus: (params) => request({ url: API.INTERFACE_POINT_GET_ORDER_STATUS, method: 'POST', params }) } export const billingApi = { getConfig: (params) => request({ url: API.INTERFACE_BILLING_GET_CONFIG, method: 'POST', params }), quote: (params) => request({ url: API.INTERFACE_BILLING_POST_QUOTE, method: 'POST', params }) } export const toolApi = { getMyWorkList: (params) => request({ url: API.INTERFACE_WORK_GET_LIST, method: 'POST', params }), getAppList: (params) => request({ url: API.INTERFACE_APP_GET_LIST, method: 'POST', params }), getAppDetail: (params) => request({ url: API.INTERFACE_APP_GET_DETAIL, method: 'POST', params }), getWorkList: (params) => request({ url: API.INTERFACE_ART_GET_LIST, method: 'POST', params }), getWorkDetail: (params) => request({ url: API.INTERFACE_ART_GET_DETAIL, method: 'POST', params }), likeWork: (params) => request({ url: API.INTERFACE_ART_POST_LIKE, method: 'POST', params }), submitTask: (params) => request({ url: API.INTERFACE_MJ_POST_SEND, method: 'POST', params }), getTaskList: (params) => request({ url: API.INTERFACE_MJ_GET_LIST, method: 'POST', params }), getStyleList: (params) => request({ url: API.INTERFACE_WXYG_GET_STYLE_LIST, method: 'POST', params }), submitAnime: (params) => request({ url: API.INTERFACE_ANIME_POST_SEND, method: 'POST', params }), getAnimeList: (params) => request({ url: API.INTERFACE_ANIME_GET_LIST, method: 'POST', params }), getAnimeDetail: (params) => request({ url: API.INTERFACE_ANIME_GET_DETAIL, method: 'POST', params }), deleteAnime: (params) => request({ url: API.INTERFACE_ANIME_POST_DEL, method: 'POST', params }), getAnimeStyleList: (params) => request({ url: API.INTERFACE_ANIME_GET_STYLE_LIST, method: 'POST', params }), getRobotDetailByType: (params) => request({ url: API.INTERFACE_BOT_GET_DETAIL_BY_TYPE, method: 'POST', params }), editRobot: (params) => request({ url: API.INTERFACE_BOT_POST_EDIT, method: 'POST', params }), sendChat: (params) => request({ url: API.INTERFACE_CHAT_POST_SEND, method: 'POST', params }), submitWriting: async (params) => { await request({ url: API.INTERFACE_BOT_POST_EDIT, method: 'POST', params }) return request({ url: API.INTERFACE_CHAT_POST_SEND, method: 'POST', params }) }, checkName: (params) => request({ url: API.INTERFACE_AINAME_POST_CHECK, method: 'POST', params }), submitName: (params) => request({ url: API.INTERFACE_AINAME_POST_SEND, method: 'POST', params }), getNameRobot: (params) => request({ url: API.INTERFACE_AINAME_GET_ROBOT, method: 'POST', params }), getNameList: (params) => request({ url: API.INTERFACE_AINAME_GET_LIST, method: 'POST', params }), getNameDetail: (params) => request({ url: API.INTERFACE_AINAME_GET_DETAIL, method: 'POST', params }), deleteName: (params) => request({ url: API.INTERFACE_AINAME_POST_DEL, method: 'POST', params }), getChatList: (params) => request({ url: API.INTERFACE_CHAT_GET_MSG_LIST, method: 'POST', params }), getChatDetail: (params) => request({ url: API.INTERFACE_CHAT_GET_MSG_DETAIL, method: 'POST', params }), deleteChat: (params) => request({ url: API.INTERFACE_CHAT_POST_DEL, method: 'POST', params }) } export default { user: userApi, invite: inviteApi, common: commonApi, vip: vipApi, point: pointApi, billing: billingApi, tool: toolApi }