## 主要修复 - 修复Creo软件运行状态检测失败问题 - 添加完整的软件停止功能支持 - 改进多进程软件的进程管理逻辑 ## 技术改进 - 更新软件配置支持多进程名称检测 - 优化进程停止逻辑,增加超时配置 - 新增 stop_software WebSocket消息类型 - 完善错误处理和日志记录 ## 配置更新 - configs/software_config.yaml: 支持进程名称列表和停止超时 - 添加Revit 2017配置支持 ## 文档更新 - README.md: 更新软件配置说明和API列表 - frontend-api-docs.md: 添加停止软件API文档 - CHECKPOINT.md: 记录修复进展和解决方案 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
25 lines
606 B
Python
25 lines
606 B
Python
from typing import Optional
|
|
from datetime import datetime
|
|
from pydantic import BaseModel
|
|
from models.task import TaskStatus, TaskType
|
|
|
|
|
|
class TaskResponse(BaseModel):
|
|
"""任务响应模型"""
|
|
id: str
|
|
task_type: TaskType
|
|
software_id: str
|
|
status: TaskStatus
|
|
created_at: datetime
|
|
started_at: Optional[datetime] = None
|
|
completed_at: Optional[datetime] = None
|
|
error_message: Optional[str] = None
|
|
progress: int
|
|
|
|
|
|
class SSEEvent(BaseModel):
|
|
"""SSE事件模型"""
|
|
event_type: str
|
|
task_id: Optional[str] = None
|
|
software_id: Optional[str] = None
|
|
data: dict |