优化: 工程实体化(description/stack/status)+ 概览工程列表

- project_modules 加 description/status 列(V40 迁移,stack V34 已有)+ models/repo/INSERT/UPDATE/SELECT 映射

- FileExplorer 工程 CRUD 弹窗加 description(textarea)/stack(input)/status(select)输入,工程有完整身份

- ProjectDetail 概览工程列表升级:name+status badge+path + description 段(2行省略)+ stack tag

- 老工程兼容(None=active),update 部分更新语义,status 归一(active/archived)
This commit is contained in:
lxy
2026-08-05 22:10:07 +08:00
parent 8e4c7c68cf
commit ec9f0bf1ea
9 changed files with 551 additions and 47 deletions
+12
View File
@@ -19,6 +19,10 @@ export interface ProjectModuleRecord {
sort_order: number
created_at: string
updated_at: string
/** 工程职责描述(如"前端 web 工程""后端 API 服务")。V40 加,老工程为 null。 */
description?: string | null
/** 工程状态 active/archived。V40 加,老工程为 null(应用层视 null 为 active)。 */
status?: string | null
}
/** 文件树单条目(单层;前端点击文件夹再懒加载下一层)。 */
@@ -98,6 +102,10 @@ export const moduleApi = {
path: string
gitUrl?: string | null
stack?: string | null
/** 工程职责描述(V40 加) */
description?: string | null
/** 工程状态 active/archived(V40 加,默认 active) */
status?: string | null
}): Promise<ProjectModuleRecord> {
return invoke('add_project_module', { input })
},
@@ -155,6 +163,10 @@ export const moduleApi = {
path?: string
gitUrl?: string | null
stack?: string | null
/** 工程职责描述(V40 加,部分更新:仅传入时覆盖) */
description?: string | null
/** 工程状态 active/archived(V40 加,部分更新:仅传入时覆盖) */
status?: string | null
}): Promise<ProjectModuleRecord> {
return invoke('update_project_module', { input })
},