Files
TaskPool/internal/models/vo/dep_vo.go
T
2026-02-13 17:27:55 +08:00

48 lines
1.2 KiB
Go

package vo
import (
"time"
"github.com/engigu/baihu-panel/internal/models"
)
// DependencyVO 依赖包视图对象
type DependencyVO struct {
ID int `json:"id"`
Name string `json:"name"`
Version string `json:"version"`
Language string `json:"language"`
LangVersion string `json:"lang_version"`
Remark string `json:"remark"`
Log string `json:"log,omitempty"` // 仅在需要时返回
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
// ToDependencyVO 将 Dependency 模型转换为 DependencyVO
func ToDependencyVO(dep *models.Dependency) *DependencyVO {
if dep == nil {
return nil
}
return &DependencyVO{
ID: dep.ID,
Name: dep.Name,
Version: dep.Version,
Language: dep.Language,
LangVersion: dep.LangVersion,
Remark: dep.Remark,
Log: dep.Log,
CreatedAt: dep.CreatedAt,
UpdatedAt: dep.UpdatedAt,
}
}
// ToDependencyVOListFromModels 将 Dependency 模型列表转换为 DependencyVO 列表
func ToDependencyVOListFromModels(deps []models.Dependency) []*DependencyVO {
vos := make([]*DependencyVO, len(deps))
for i := range deps {
vos[i] = ToDependencyVO(&deps[i])
}
return vos
}