From 35a4017b8e4132e15cd27053f5b3c42582e0982b Mon Sep 17 00:00:00 2001 From: dailz Date: Fri, 10 Apr 2026 13:53:54 +0800 Subject: [PATCH] docs(model): add Chinese field comments to all model structs Add inline comments to SubmitJobRequest, JobListResponse, JobHistoryQuery, JobTemplate, CreateTemplateRequest, and UpdateTemplateRequest fields, consistent with existing cluster.go and JobResponse style. Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus --- internal/model/job.go | 60 +++++++++++++++++++------------------- internal/model/template.go | 54 +++++++++++++++++----------------- 2 files changed, 57 insertions(+), 57 deletions(-) diff --git a/internal/model/job.go b/internal/model/job.go index 0c14342..43a7261 100644 --- a/internal/model/job.go +++ b/internal/model/job.go @@ -2,14 +2,14 @@ package model // SubmitJobRequest is the API request for submitting a job. type SubmitJobRequest struct { - Script string `json:"script"` - Partition string `json:"partition,omitempty"` - QOS string `json:"qos,omitempty"` - CPUs int32 `json:"cpus,omitempty"` - Memory string `json:"memory,omitempty"` - TimeLimit string `json:"time_limit,omitempty"` - JobName string `json:"job_name,omitempty"` - Environment map[string]string `json:"environment,omitempty"` + Script string `json:"script"` // 作业脚本内容 + Partition string `json:"partition,omitempty"` // 提交到的分区 + QOS string `json:"qos,omitempty"` // 使用的 QOS 策略 + CPUs int32 `json:"cpus,omitempty"` // 请求的 CPU 核数 + Memory string `json:"memory,omitempty"` // 请求的内存大小 + TimeLimit string `json:"time_limit,omitempty"` // 运行时间限制 (分钟) + JobName string `json:"job_name,omitempty"` // 作业名称 + Environment map[string]string `json:"environment,omitempty"` // 环境变量键值对 } // JobResponse is the API response for a job. @@ -60,30 +60,30 @@ type JobResponse struct { // JobListResponse is the paginated response for job listings. type JobListResponse struct { - Jobs []JobResponse `json:"jobs"` - Total int `json:"total"` - Page int `json:"page"` - PageSize int `json:"page_size"` + Jobs []JobResponse `json:"jobs"` // 作业列表 + Total int `json:"total"` // 符合条件的作业总数 + Page int `json:"page"` // 当前页码 (从 1 开始) + PageSize int `json:"page_size"` // 每页条数 } // JobHistoryQuery contains query parameters for job history. type JobHistoryQuery struct { - Users string `form:"users" json:"users,omitempty"` - StartTime string `form:"start_time" json:"start_time,omitempty"` - EndTime string `form:"end_time" json:"end_time,omitempty"` - SubmitTime string `form:"submit_time" json:"submit_time,omitempty"` - Account string `form:"account" json:"account,omitempty"` - Partition string `form:"partition" json:"partition,omitempty"` - State string `form:"state" json:"state,omitempty"` - JobName string `form:"job_name" json:"job_name,omitempty"` - Cluster string `form:"cluster" json:"cluster,omitempty"` - Qos string `form:"qos" json:"qos,omitempty"` - Constraints string `form:"constraints" json:"constraints,omitempty"` - ExitCode string `form:"exit_code" json:"exit_code,omitempty"` - Node string `form:"node" json:"node,omitempty"` - Reservation string `form:"reservation" json:"reservation,omitempty"` - Groups string `form:"groups" json:"groups,omitempty"` - Wckey string `form:"wckey" json:"wckey,omitempty"` - Page int `form:"page,default=1" json:"page,omitempty"` - PageSize int `form:"page_size,default=20" json:"page_size,omitempty"` + Users string `form:"users" json:"users,omitempty"` // 按用户名过滤 (逗号分隔) + StartTime string `form:"start_time" json:"start_time,omitempty"` // 作业开始时间下限 (Unix 时间戳) + EndTime string `form:"end_time" json:"end_time,omitempty"` // 作业结束时间上限 (Unix 时间戳) + SubmitTime string `form:"submit_time" json:"submit_time,omitempty"` // 作业提交时间过滤 (Unix 时间戳) + Account string `form:"account" json:"account,omitempty"` // 按计费账户过滤 + Partition string `form:"partition" json:"partition,omitempty"` // 按分区过滤 + State string `form:"state" json:"state,omitempty"` // 按作业状态过滤 (e.g. "COMPLETED", "FAILED") + JobName string `form:"job_name" json:"job_name,omitempty"` // 按作业名称过滤 + Cluster string `form:"cluster" json:"cluster,omitempty"` // 按集群名称过滤 + Qos string `form:"qos" json:"qos,omitempty"` // 按 QOS 策略过滤 + Constraints string `form:"constraints" json:"constraints,omitempty"` // 按节点约束过滤 + ExitCode string `form:"exit_code" json:"exit_code,omitempty"` // 按退出码过滤 + Node string `form:"node" json:"node,omitempty"` // 按分配节点过滤 + Reservation string `form:"reservation" json:"reservation,omitempty"` // 按预约名称过滤 + Groups string `form:"groups" json:"groups,omitempty"` // 按用户组过滤 + Wckey string `form:"wckey" json:"wckey,omitempty"` // 按 WCKey (Workload Characterization Key) 过滤 + Page int `form:"page,default=1" json:"page,omitempty"` // 页码 (从 1 开始) + PageSize int `form:"page_size,default=20" json:"page_size,omitempty"` // 每页条数 } diff --git a/internal/model/template.go b/internal/model/template.go index f19dfb1..496fac0 100644 --- a/internal/model/template.go +++ b/internal/model/template.go @@ -4,17 +4,17 @@ import "time" // JobTemplate represents a saved job template. type JobTemplate struct { - ID int64 `json:"id" gorm:"primaryKey;autoIncrement"` - Name string `json:"name" gorm:"uniqueIndex;size:255;not null"` - Description string `json:"description,omitempty" gorm:"type:text"` - Script string `json:"script" gorm:"type:text;not null"` - Partition string `json:"partition,omitempty" gorm:"size:255"` - QOS string `json:"qos,omitempty" gorm:"column:qos;size:255"` - CPUs int `json:"cpus,omitempty" gorm:"column:cpus"` - Memory string `json:"memory,omitempty" gorm:"size:50"` - TimeLimit string `json:"time_limit,omitempty" gorm:"column:time_limit;size:50"` - CreatedAt time.Time `json:"created_at"` - UpdatedAt time.Time `json:"updated_at"` + ID int64 `json:"id" gorm:"primaryKey;autoIncrement"` // 模板 ID + Name string `json:"name" gorm:"uniqueIndex;size:255;not null"` // 模板名称 + Description string `json:"description,omitempty" gorm:"type:text"` // 模板描述 + Script string `json:"script" gorm:"type:text;not null"` // 作业脚本内容 + Partition string `json:"partition,omitempty" gorm:"size:255"` // 提交到的分区 + QOS string `json:"qos,omitempty" gorm:"column:qos;size:255"` // 使用的 QOS 策略 + CPUs int `json:"cpus,omitempty" gorm:"column:cpus"` // 请求的 CPU 核数 + Memory string `json:"memory,omitempty" gorm:"size:50"` // 请求的内存大小 + TimeLimit string `json:"time_limit,omitempty" gorm:"column:time_limit;size:50"` // 运行时间限制 + CreatedAt time.Time `json:"created_at"` // 创建时间 + UpdatedAt time.Time `json:"updated_at"` // 更新时间 } // TableName specifies the database table name for GORM. @@ -22,24 +22,24 @@ func (JobTemplate) TableName() string { return "job_templates" } // CreateTemplateRequest is the API request for creating a template. type CreateTemplateRequest struct { - Name string `json:"name"` - Description string `json:"description,omitempty"` - Script string `json:"script"` - Partition string `json:"partition,omitempty"` - QOS string `json:"qos,omitempty"` - CPUs int `json:"cpus,omitempty"` - Memory string `json:"memory,omitempty"` - TimeLimit string `json:"time_limit,omitempty"` + Name string `json:"name"` // 模板名称 (必填) + Description string `json:"description,omitempty"` // 模板描述 + Script string `json:"script"` // 作业脚本内容 (必填) + Partition string `json:"partition,omitempty"` // 提交到的分区 + QOS string `json:"qos,omitempty"` // 使用的 QOS 策略 + CPUs int `json:"cpus,omitempty"` // 请求的 CPU 核数 + Memory string `json:"memory,omitempty"` // 请求的内存大小 + TimeLimit string `json:"time_limit,omitempty"` // 运行时间限制 } // UpdateTemplateRequest is the API request for updating a template. type UpdateTemplateRequest struct { - Name string `json:"name,omitempty"` - Description string `json:"description,omitempty"` - Script string `json:"script,omitempty"` - Partition string `json:"partition,omitempty"` - QOS string `json:"qos,omitempty"` - CPUs int `json:"cpus,omitempty"` - Memory string `json:"memory,omitempty"` - TimeLimit string `json:"time_limit,omitempty"` + Name string `json:"name,omitempty"` // 模板名称 + Description string `json:"description,omitempty"` // 模板描述 + Script string `json:"script,omitempty"` // 作业脚本内容 + Partition string `json:"partition,omitempty"` // 提交到的分区 + QOS string `json:"qos,omitempty"` // 使用的 QOS 策略 + CPUs int `json:"cpus,omitempty"` // 请求的 CPU 核数 + Memory string `json:"memory,omitempty"` // 请求的内存大小 + TimeLimit string `json:"time_limit,omitempty"` // 运行时间限制 }