map.js 3.15 KB
/*
 * @Date: 2025-09-04 17:23:17
 * @LastEditors: hookehuyr hookehuyr@gmail.com
 * @LastEditTime: 2025-09-28 15:12:11
 * @FilePath: /lls_program/src/api/map.js
 * @Description: 文件描述
 */
import { fn, fetch } from './fn';

const Api = {
    GET_MAP_URL: '/srv/?a=map&t=get_map_url',
    GET_POSTER_DETAIL: '/srv/?a=map&t=poster',
    GET_ACTIVITY_STATUS: '/srv/?a=map&t=get_map_url',
    SAVE_POSTER_BACKGROUND: '/srv/?a=map&t=save_poster_background',
}

/**
 * @description: 获取地图URL
 * @param {Object} params - 请求参数
 * @returns {number} response.code - 响应状态码
 * @returns {string} response.msg - 响应消息
 * @returns {Object} response.data - 响应数据
 * @returns {string} response.data.url - 地图URL
 */
export const getMapUrlAPI = (params) => fn(fetch.get(Api.GET_MAP_URL, params));

/**
 * @description: 获取海报详情
 * @param {Object} params - 请求参数
 * @returns {number} response.code - 响应状态码
 * @returns {string} response.msg - 响应消息
 * @returns {Object} response.data - 响应数据
 * @returns {string} response.data.title - 海报标题
 * @returns {string} response.data.end_date - 活动截止时间
 * @returns {Array} response.data.details - 关卡列表
 * @returns {Object} response.data.details[].id - 关卡ID
 * @returns {string} response.data.details[].name - 关卡名称
 * @returns {string} response.data.details[].is_checked - 关卡是否已完成, 1 已完成, 0 未完成
 * @returns {string} response.data.details[].background_url - 关卡背景图URL
 * @returns {string} response.data.details[].main_slogan - 关卡主 slogan
 * @returns {string} response.data.details[].sub_slogan - 关卡子 slogan
 * @returns {integer} response.data.show_detail_index - 当前应该显示第几个关卡,从 0 开始计数
 * @returns {object} response.data.family - 用户的当前家庭
 * @returns {string} response.data.family.id - 家庭ID
 * @returns {string} response.data.family.name - 家庭名称
 * @returns {string} response.data.family.avatar_url - 家庭头像URL
 * @returns {string} response.data.qrcode_url - 小程序码
 */
export const getPosterDetailAPI = (params) => fn(fetch.get(Api.GET_POSTER_DETAIL, params));

/**
 * @description: 获取活动状态
 * @param {Object} params - 请求参数
 * @returns {number} response.code - 响应状态码
 * @returns {string} response.msg - 响应消息
 * @returns {Object} response.data - 响应数据
 * @returns {boolean} response.data.is_begin - 活动是否已经开始, true 已开始, false 未开始
 * @returns {boolean} response.data.is_ended - 活动是否已经结束, true 已结束, false 未结束
 */
export const getActivityStatusAPI = (params) => fn(fetch.get(Api.GET_ACTIVITY_STATUS, params));

/**
 * @description: 保存海报背景
 * @param {Object} params - 请求参数
 * @param {string} params.detail_id - 海报详情ID
 * @param {string} params.poster_background_url - 海报背景图URL
 * @returns {number} response.code - 响应状态码
 * @returns {string} response.msg - 响应消息
 * @returns {Object} response.data - 响应数据
 */
export const savePosterBackgroundAPI = (params) => fn(fetch.post(Api.SAVE_POSTER_BACKGROUND, params));