/* * @Author: donghao donghao@supervision.ltd * @Date: 2024-04-11 14:13:34 * @LastEditors: donghao donghao@supervision.ltd * @LastEditTime: 2024-04-24 17:58:27 * @FilePath: \general-ai-manage\mock\model.ts * @Description: mock 模型 api */ /**模型管理模块 mock */ import { mockGetModelListData, mockGetModelRuntimeLibFilesListData, mockGetModelRuntimeLibListData, mockGetModelVersionListData, } from './pools/modelData'; import { successMockApiProps } from './typing'; import { fetchCurrPageByList, fetchMockSuccessFullByOther } from './utils/apiMock'; export default { // 模型列表分页 'GET /api/model/list/': async (req: Request, res: Response) => { // get 使用 query 读取参数 const { page, pageSize } = req.query; const resData: successMockApiProps = { ...fetchCurrPageByList({ ...mockGetModelListData, data: { ...mockGetModelListData.data, page, pageSize: pageSize || 10 }, }), }; res.json(resData); }, // 模型列表分页 'GET /api/model/detail/': async (req: Request, res: Response) => { // get 使用 query 读取参数 const { id } = req.query; let finalData = {}; mockGetModelListData.data.results.forEach((item) => { if (item.id === Number(id)) { finalData = item; // break; } }); const resData: successMockApiProps = fetchMockSuccessFullByOther({ data: finalData, }); res.json(resData); }, // 模型版本列表 'GET /api/model/versions/list/': async (req: Request, res: Response) => { // get 使用 query 读取参数 const { page, pageSize } = req.query; const resData: successMockApiProps = { ...fetchCurrPageByList({ ...mockGetModelVersionListData, data: { ...mockGetModelVersionListData.data, page, pageSize: pageSize || 10 }, }), }; res.json(resData); }, // 模型运行库列表分页 'GET /api/model/runtimeLib/list/': async (req: Request, res: Response) => { // get 使用 query 读取参数 const { page, pageSize } = req.query; const resData: successMockApiProps = { ...fetchCurrPageByList({ ...mockGetModelRuntimeLibListData, data: { ...mockGetModelRuntimeLibListData.data, page, pageSize: pageSize || 10 }, }), }; res.json(resData); }, // 模型运行库列表分页 'GET /api/model/runtimeLib/filesList/': async (req: Request, res: Response) => { const resData: successMockApiProps = fetchMockSuccessFullByOther( mockGetModelRuntimeLibFilesListData, ); res.json(resData); }, };