| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120 |
- // 会话状态枚举
- export enum SessionStatus {
- RequirementDocument = 'requirement_document',
- TechnicalDocument = 'technical_document',
- Code = 'code',
- Test = 'test',
- Release = 'release'
- }
-
- // 智能体枚举
- export enum Agent {
- Replenish = 'replenish',
- Transfer = 'transfer',
- Allocation = 'allocation',
- Report = 'report'
- }
-
- // 智能体显示名称映射
- export const AgentDisplayName: Record<Agent, string> = {
- [Agent.Replenish]: '补货',
- [Agent.Transfer]: '调拨',
- [Agent.Allocation]: '配货',
- [Agent.Report]: '报表'
- }
-
- // 会话信息(对应后端Session模型)
- export interface Session {
- id: string; // 会话ID
- project_id: string; // 项目ID
- title: string; // 标题
- agent_name: string; // 智能体名称
- description?: string; // 项目描述
- status: string; // 状态:requirement_document|technical_document|code|test|release
- user_id?: string; // 用户ID
- tenant_id?: string; // 租户ID
- created_at?: string; // 创建时间
- updated_at?: string; // 更新时间
-
- // 向后兼容字段
- parentID?: string;
- path?: { [key: string]: string };
- port?: number;
- baseURL?: string;
- }
-
- // 代码项(对应后端CodeItem模型)
- export interface CodeItem {
- order: number; // 执行次序
- title: string; // 步骤标题
- select_part: string; // select部分SQL代码
- from_part: string; // from部分代码
- where_part: string; // where部分
- group_by_part: string; // group by部分
- order_by_part: string; // order by部分
- temp_table_name: string; // 临时表名称
- parameters: Record<string, any>; // 参数集合
- return_columns: Record<string, string>; // 返回的列名称和对应的中文名称(映射)
- }
-
- // 会话明细(对应后端SessionDetail模型)
- export interface SessionDetail {
- id?: string; // MongoDB自动生成的ID
- session_id: string; // 关联的会话ID
- requirement_doc: string; // 需求文档
- technical_doc: string; // 技术文档
- code_items: CodeItem[]; // 代码数组
- history_sessions: string[]; // 历史会话ID数组
- created_at?: string; // 创建时间
- updated_at?: string; // 更新时间
- }
-
- // 包含主会话和明细的完整响应
- export interface SessionWithDetail {
- session: Session;
- detail?: SessionDetail;
- history_count?: number; // 历史消息数量
- }
-
- // 创建项目请求(对应后端SessionCreateRequest)
- export interface ProjectCreateRequest {
- title: string; // 标题
- agent_name: string; // 智能体名称
- project_id?: string; // 项目ID(前端生成proj_前缀UUID)
- description?: string; // 项目描述
- }
-
- // 创建项目响应
- export interface ProjectCreateResponse extends Session {
- // 继承Session所有字段
- }
-
- // 创建项目API响应
- export interface ProjectCreateApiResponse extends QueryResult<ProjectCreateResponse> {
- // data字段包含ProjectCreateResponse
- }
-
- // 项目列表响应
- export interface ProjectListResponse extends QueryResult<Session[]> {
- // data字段包含会话数组(按项目分组)
- }
-
- // 向后兼容:保留原有接口名称
- export interface SessionCreateRequest extends ProjectCreateRequest {
- // 保持兼容,实际使用ProjectCreateRequest
- }
-
- export interface SessionCreateResponse extends ProjectCreateResponse {
- // 保持兼容
- }
-
- export interface SessionCreateApiResponse extends ProjectCreateApiResponse {
- // 保持兼容
- }
-
- export interface SessionListResponse extends ProjectListResponse {
- // 保持兼容
- }
-
- // 从通用QueryResult导入
- import { QueryResult } from './auth.model';
|