You need to sign in or sign up before continuing.
get_product.js 2.69 KB
import { fn, fetch } from '@/api/fn';

const Api = {
  Detail: '/srv/?a=get_product&t=detail',
  List: '/srv/?a=get_product&t=list',
}

/**
 * @description 产品详情
 * @remark 
 * @param {Object} params 请求参数
 * @param {string} params.client_id (可选) 主体id
 * @param {string} params.i 产品id
 * @returns {Promise<{
 *   code: number; // 状态码
 *   msg: string; // 消息
 *   data: {
    id: integer; // 产品id
    product_name: string; // 产品名
    recommend: string; // 推荐位: normal-普通, hot-热卖
    status: string; // 
    created_by: integer; // 
    created_time: string; // 
    updated_by: integer; // 
    updated_time: string; // 
    form_sn: string; // 关联表单sn
    product_description: string; // 产品描述
    categories: Array<{
      id: string; // 分类id
      name: string; // 分类名称
    }>;
    tags: Array<{
      id: string; // 标签id
      name: string; // 标签名
      bg_color: string; // 标签背景色
      text_color: string; // 标签文字色
    }>;
    documents: Array<{
      file_url: string; // 附件地址
      file_name: string; // 附件名
      file_size: string; // 附件大小
      file_size_formatted: string; // 附件大小(转换过显示)
      extension?: string; // 文件扩展名(优先使用)
    }>;
    cover_image: string; // 产品封面图
 *   };
 * }>}
 */
export const detailAPI = (params) => fn(fetch.get(Api.Detail, params));

/**
 * @description 产品列表
 * @remark 
 * @param {Object} params 请求参数
 * @param {string} params.client_id (可选) 主体id
 * @param {string} params.limit (可选) 
 * @param {string} params.page (可选) 
 * @param {string} params.cid (可选) 分类id
 * @param {string} params.recommend (可选) 推荐位: normal-普通, hot-热卖
 * @param {string} params.keyword (可选) 搜索
 * @returns {Promise<{
 *   code: number; // 状态码
 *   msg: string; // 消息
 *   data: {
    categories: Array<{
      id: integer; // 分类id
      name: string; // 分类名
    }>;
    list: Array<{
      id: integer; // 产品id
      product_name: string; // 产品名
      recommend: string; // 推荐位: normal-普通, hot-热卖
      form_sn: string; // 
      created_time: string; // 创建时间
      categories: Array<{
        id: string; // 分类id
        name: string; // 分类名
      }>;
      tags: Array<{
        id: string; // 标签id
        name: string; // 标签名
        bg_color: string; // 标签背景色
        text_color: string; // 标签文字色
      }>;
      cover_image: string; // 产品封面图
    }>;
    total: integer; // 产品总数
 *   };
 * }>}
 */
export const listAPI = (params) => fn(fetch.get(Api.List, params));