import { asyncTimeout } from "@/utils"; import { PagingRequest, PagingResult } from "."; import { MATERIAL_GROUP_LIST, MATERIAL_PAG } from "./constant"; import axios from "./instance"; export type MaterialGroup = { id: number; name: string; }; export type Material = { id: number; name: string; format: string; url: string; size: number; groupId: number; group: string; modelId?: number }; export type MaterialPageProps = PagingRequest & {groupIds: number[]}>; export const fetchMaterialPage = async (params: MaterialPageProps) => { await asyncTimeout(160) let materials: PagingResult = { ...params, total: 100, list: [ { id: params.pageNum, name: "test", format: params.format || "png", url: "icon/h_default_64.png", groupId: 1, group: "分组1", size: 1024, }, { id: params.pageNum + 100, name: "test", format: params.format || "mp3", url: "icon/h_default_64.png", groupId: 1, group: "分组1", size: 1024, }, { id: params.pageNum + 200, name: "test", format: params.format || "mp4", url: "icon/h_default_64.png", groupId: 1, group: "分组1", size: 1024, }, { id: params.pageNum + 200, name: "mesh", format: "obj", url: "icon/h_default_64.png", groupId: 2, group: "分组2", size: 254.58 * 1024 * 1024, }, ], }; if (params.groupIds) { materials.list = materials.list.filter(i => params.groupIds.includes(i.groupId)) } return materials // const material = await axios.get>(MATERIAL_PAG, { params }) // return material }; export const fetchMaterialGroups = async () => { await asyncTimeout(160) const groups: MaterialGroup[] = [ {id: 1, name: '分组1'}, {id: 2, name: '分组2'}, ] return groups // return axios.get(MATERIAL_GROUP_LIST); };