add operator create page (#38)

* feat: Update site name to DataMate and refine text for AI data processing

* feat: Refactor settings page and implement model access functionality

- Created a new ModelAccess component for managing model configurations.
- Removed the old Settings component and replaced it with a new SettingsPage component that integrates ModelAccess, SystemConfig, and WebhookConfig.
- Added SystemConfig component for managing system settings.
- Implemented WebhookConfig component for managing webhook configurations.
- Updated API functions for model management in settings.apis.ts.
- Adjusted routing to point to the new SettingsPage component.

* feat: Implement Data Collection Page with Task Management and Execution Log

- Created DataCollectionPage component to manage data collection tasks.
- Added TaskManagement and ExecutionLog components for task handling and logging.
- Integrated task operations including start, stop, edit, and delete functionalities.
- Implemented filtering and searching capabilities in task management.
- Introduced SimpleCronScheduler for scheduling tasks with cron expressions.
- Updated CreateTask component to utilize new scheduling and template features.
- Enhanced BasicInformation component to conditionally render fields based on visibility settings.
- Refactored ImportConfiguration component to remove NAS import section.

* feat: Update task creation API endpoint and enhance task creation form with new fields and validation

* Refactor file upload and operator management components

- Removed unnecessary console logs from file download and export functions.
- Added size property to TaskItem interface for better task management.
- Simplified TaskUpload component by utilizing useFileSliceUpload hook for file upload logic.
- Enhanced OperatorPluginCreate component to handle file uploads and parsing more efficiently.
- Updated ConfigureStep component to use Ant Design Form for better data handling and validation.
- Improved PreviewStep component to navigate back to the operator market.
- Added support for additional file types in UploadStep component.
- Implemented delete operator functionality in OperatorMarketPage with confirmation prompts.
- Cleaned up unused API functions in operator.api.ts to streamline the codebase.
- Fixed number formatting utility to handle zero values correctly.
This commit is contained in:
chenghh-9609
2025-10-30 16:30:01 +08:00
committed by GitHub
parent e0884ab048
commit 5612c7cd91
22 changed files with 640 additions and 979 deletions

View File

@@ -21,7 +21,10 @@ export function createOperatorUsingPost(data: any) {
}
// 更新算子
export function updateOperatorByIdUsingPut(operatorId: string | number, data: any) {
export function updateOperatorByIdUsingPut(
operatorId: string | number,
data: any
) {
return put(`/api/operators/${operatorId}`, data);
}
@@ -35,6 +38,16 @@ export function uploadOperatorUsingPost(data: any) {
return post("/api/operators/upload", data);
}
export function preUploadOperatorUsingPost(_, data: any) {
return post("/api/operators/upload/pre-upload", data);
}
export function uploadOperatorChunkUsingPost(_, data: FormData, config?: any) {
return post("/api/operators/upload/chunk", data, {
showLoading: false,
...config,
});
}
// 发布算子
export function publishOperatorUsingPost(operatorId: string | number) {
return post(`/api/operators/${operatorId}/publish`);
@@ -75,169 +88,3 @@ export function deleteCategoryUsingDelete(data: { id: string | number }) {
return del("/api/category", data);
}
// 扩展功能接口(基于常见需求)
// 收藏/取消收藏算子
export function starOperatorUsingPost(operatorId: string | number) {
return post(`/api/operators/${operatorId}/star`);
}
// 下载算子
export function downloadOperatorUsingGet(operatorId: string | number, filename?: string) {
return download(`/api/operators/${operatorId}/download`, null, filename);
}
// 算子评分
export function rateOperatorUsingPost(operatorId: string | number, data: { rating: number; comment?: string }) {
return post(`/api/operators/${operatorId}/rating`, data);
}
// 获取算子统计信息
export function getOperatorStatisticsUsingGet(params?: any) {
return get("/api/operators/statistics", params);
}
// 获取我的算子列表
export function queryMyOperatorsUsingPost(data: any) {
return post("/api/operators/my-operators", data);
}
// 获取收藏的算子列表
export function queryFavoriteOperatorsUsingPost(data: any) {
return post("/api/operators/favorites", data);
}
// 算子使用统计
export function getOperatorUsageStatsUsingGet(operatorId: string | number) {
return get(`/api/operators/${operatorId}/usage-stats`);
}
// 算子依赖检查
export function checkOperatorDependenciesUsingPost(operatorId: string | number) {
return post(`/api/operators/${operatorId}/check-dependencies`);
}
// 算子兼容性检查
export function checkOperatorCompatibilityUsingPost(operatorId: string | number, data: any) {
return post(`/api/operators/${operatorId}/check-compatibility`, data);
}
// 克隆算子
export function cloneOperatorUsingPost(operatorId: string | number, data: any) {
return post(`/api/operators/${operatorId}/clone`, data);
}
// 获取算子版本列表
export function queryOperatorVersionsUsingGet(operatorId: string | number, params?: any) {
return get(`/api/operators/${operatorId}/versions`, params);
}
// 创建算子版本
export function createOperatorVersionUsingPost(operatorId: string | number, data: any) {
return post(`/api/operators/${operatorId}/versions`, data);
}
// 切换算子版本
export function switchOperatorVersionUsingPut(operatorId: string | number, versionId: string | number) {
return put(`/api/operators/${operatorId}/versions/${versionId}/switch`);
}
// 删除算子版本
export function deleteOperatorVersionUsingDelete(operatorId: string | number, versionId: string | number) {
return del(`/api/operators/${operatorId}/versions/${versionId}`);
}
// 算子测试
export function testOperatorUsingPost(operatorId: string | number, data: any) {
return post(`/api/operators/${operatorId}/test`, data);
}
// 获取算子测试结果
export function getOperatorTestResultUsingGet(operatorId: string | number, testId: string | number) {
return get(`/api/operators/${operatorId}/test/${testId}/result`);
}
// 算子审核相关
export function submitOperatorForReviewUsingPost(operatorId: string | number) {
return post(`/api/operators/${operatorId}/submit-review`);
}
export function approveOperatorUsingPost(operatorId: string | number, data?: any) {
return post(`/api/operators/${operatorId}/approve`, data);
}
export function rejectOperatorUsingPost(operatorId: string | number, data: { reason: string }) {
return post(`/api/operators/${operatorId}/reject`, data);
}
// 获取算子评论列表
export function queryOperatorCommentsUsingGet(operatorId: string | number, params?: any) {
return get(`/api/operators/${operatorId}/comments`, params);
}
// 添加算子评论
export function addOperatorCommentUsingPost(operatorId: string | number, data: any) {
return post(`/api/operators/${operatorId}/comments`, data);
}
// 删除算子评论
export function deleteOperatorCommentUsingDelete(operatorId: string | number, commentId: string | number) {
return del(`/api/operators/${operatorId}/comments/${commentId}`);
}
// 搜索算子
export function searchOperatorsUsingPost(data: any) {
return post("/api/operators/search", data);
}
// 获取热门算子
export function queryPopularOperatorsUsingGet(params?: any) {
return get("/api/operators/popular", params);
}
// 获取推荐算子
export function queryRecommendedOperatorsUsingGet(params?: any) {
return get("/api/operators/recommended", params);
}
// 获取最新算子
export function queryLatestOperatorsUsingGet(params?: any) {
return get("/api/operators/latest", params);
}
// 算子使用示例
export function getOperatorExamplesUsingGet(operatorId: string | number) {
return get(`/api/operators/${operatorId}/examples`);
}
// 创建算子使用示例
export function createOperatorExampleUsingPost(operatorId: string | number, data: any) {
return post(`/api/operators/${operatorId}/examples`, data);
}
// 算子文档
export function getOperatorDocumentationUsingGet(operatorId: string | number) {
return get(`/api/operators/${operatorId}/documentation`);
}
// 更新算子文档
export function updateOperatorDocumentationUsingPut(operatorId: string | number, data: any) {
return put(`/api/operators/${operatorId}/documentation`, data);
}
// 批量操作
export function batchDeleteOperatorsUsingPost(data: { operatorIds: string[] }) {
return post("/api/operators/batch-delete", data);
}
export function batchUpdateOperatorsUsingPost(data: any) {
return post("/api/operators/batch-update", data);
}
export function batchPublishOperatorsUsingPost(data: { operatorIds: string[] }) {
return post("/api/operators/batch-publish", data);
}
export function batchUnpublishOperatorsUsingPost(data: { operatorIds: string[] }) {
return post("/api/operators/batch-unpublish", data);
}