diff --git a/sdks/pcmscheduler/jobset.go b/sdks/pcmscheduler/jobset.go index 450be9a..e5b69b0 100644 --- a/sdks/pcmscheduler/jobset.go +++ b/sdks/pcmscheduler/jobset.go @@ -65,25 +65,25 @@ type DataDetail struct { } type DatasetDistribute struct { - DataName string `json:"dataName"` + //DataName string `json:"dataName"` PackageID cdssdk.PackageID `json:"packageID"` Clusters []DataDetail `json:"clusters"` } type CodeDistribute struct { - DataName string `json:"dataName"` + //DataName string `json:"dataName"` PackageID cdssdk.PackageID `json:"packageID"` Clusters []DataDetail `json:"clusters"` } type ImageDistribute struct { - DataName string `json:"dataName"` + //DataName string `json:"dataName"` PackageID cdssdk.PackageID `json:"packageID"` Clusters []DataDetail `json:"clusters"` } type ModelDistribute struct { - DataName string `json:"dataName"` + //DataName string `json:"dataName"` PackageID cdssdk.PackageID `json:"packageID"` Clusters []DataDetail `json:"clusters"` } diff --git a/sdks/pcmscheduler/models.go b/sdks/pcmscheduler/models.go index 466d560..3f7dc3e 100644 --- a/sdks/pcmscheduler/models.go +++ b/sdks/pcmscheduler/models.go @@ -3,6 +3,7 @@ package sch import ( "gitlink.org.cn/cloudream/common/pkgs/types" schsdk "gitlink.org.cn/cloudream/common/sdks/scheduler" + cdssdk "gitlink.org.cn/cloudream/common/sdks/storage" "gitlink.org.cn/cloudream/common/utils/serder" ) @@ -20,6 +21,10 @@ const ( DATASET = "dataset" IMAGE = "image" MODEL = "model" + + OrderByName = "name" + OrderBySize = "size" + OrderByTime = "time" ) type TaskID int64 @@ -191,7 +196,6 @@ type BiasPriority struct { type UploadParams struct { DataType string `json:"dataType"` - DataName string `json:"dataName"` UploadInfo UploadInfo `json:"uploadInfo"` UploadPriority UploadPriority `json:"uploadPriority"` } @@ -219,6 +223,7 @@ type RemoteUploadInfo struct { UploadInfoBase Type string `json:"type"` Url string `json:"url"` + DataName string `json:"dataName"` TargetClusters []schsdk.ClusterID `json:"targetClusters"` } @@ -254,3 +259,14 @@ type SpecifyCluster struct { type UploadPriorityBase struct{} func (d *UploadPriorityBase) Noop() {} + +type QueryData struct { + DataType string `json:"dataType" binding:"required"` + UserID cdssdk.UserID `json:"userID" binding:"required"` + //ClusterIDs []schsdk.ClusterID `json:"clusterIDs"` + Path string `json:"path"` + PackageID cdssdk.PackageID `json:"packageID" binding:"required"` + CurrentPage int `json:"currentPage" binding:"required"` + PageSize int `json:"pageSize" binding:"required"` + OrderBy string `json:"orderBy" binding:"required"` +} diff --git a/sdks/scheduler/models.go b/sdks/scheduler/models.go index f8bccf4..e37db88 100644 --- a/sdks/scheduler/models.go +++ b/sdks/scheduler/models.go @@ -18,6 +18,9 @@ const ( FileInfoTypeResource = "Resource" FileInfoTypeImage = "Image" + FILE = "file" + FOLDER = "folder" + MemoryUtilization = "MemoryUtilization" GPUUtilization = "GPUUtilization" CPUUtilization = "CPUUtilization" diff --git a/sdks/uploader/models.go b/sdks/uploader/models.go index 863cb1f..bc4f74d 100644 --- a/sdks/uploader/models.go +++ b/sdks/uploader/models.go @@ -1,15 +1,18 @@ package uploadersdk -import cdssdk "gitlink.org.cn/cloudream/common/sdks/storage" +import ( + cdssdk "gitlink.org.cn/cloudream/common/sdks/storage" + "time" +) type ClusterID string type BlockChain struct { - DataID DataID `gorm:"column:dataID" json:"dataID"` - BlockChainID string `gorm:"column:blockChainID" json:"blockChainID"` - FileName string `gorm:"column:fileName" json:"fileName"` - FileHash string `gorm:"column:fileHash" json:"fileHash"` - FileSize int64 `gorm:"column:fileSize" json:"fileSize"` + ObjectID cdssdk.ObjectID `gorm:"column:object_id" json:"objectID"` + BlockChainID string `gorm:"column:blockChain_id" json:"blockChainID"` + //FileName string `gorm:"column:file_name" json:"fileName"` + //FileHash string `gorm:"column:file_hash" json:"fileHash"` + //FileSize int64 `gorm:"column:file_size" json:"fileSize"` } func (BlockChain) TableName() string { @@ -26,3 +29,13 @@ type BindingData struct { func (BindingData) TableName() string { return "BindingData" // 确保和数据库中的表名一致 } + +type Folder struct { + PackageID cdssdk.PackageID `gorm:"column:package_id" json:"packageID"` + Path string `gorm:"column:path_name" json:"path"` + CreateTime time.Time `gorm:"column:create_time" json:"createTime"` +} + +func (Folder) TableName() string { + return "folders" +} diff --git a/sdks/uploader/uploader.go b/sdks/uploader/uploader.go index 8c607d4..254240d 100644 --- a/sdks/uploader/uploader.go +++ b/sdks/uploader/uploader.go @@ -10,32 +10,42 @@ import ( "gitlink.org.cn/cloudream/common/utils/serder" "net/url" "strings" - "time" ) type DataID int64 +type FolderID int64 type Cluster struct { - DataID DataID `gorm:"column:dataID" json:"dataID"` - ClusterID schsdk.ClusterID `gorm:"column:clusterID" json:"clusterID"` - StorageID cdssdk.StorageID `gorm:"column:storageID" json:"storageID"` + PackageID cdssdk.PackageID `gorm:"column:package_id" json:"dataID"` + ClusterID schsdk.ClusterID `gorm:"column:cluster_id" json:"clusterID"` + StorageID cdssdk.StorageID `gorm:"column:storage_id" json:"storageID"` } func (Cluster) TableName() string { - return "UploadedCluster" // 确保和数据库中的表名一致 + return "uploadedCluster" // 确保和数据库中的表名一致 } -type UploadedData struct { - ID DataID `gorm:"column:id;primaryKey" json:"id"` - UserID cdssdk.UserID `gorm:"column:userID" json:"userID"` - Name string `gorm:"column:name" json:"name"` - DataType string `gorm:"column:dataType" json:"dataType"` - PackageID cdssdk.PackageID `gorm:"column:packageID" json:"packageID"` - JsonData string `gorm:"column:jsonData" json:"jsonData"` // JSON 数据字段 - BindingID DataID `gorm:"column:bindingID" json:"bindingID"` - UploadTime time.Time `gorm:"column:uploadTime" json:"uploadTime"` - UploadedCluster []Cluster `gorm:"foreignKey:dataID;references:id" json:"clusters"` // 关联 Cluster 数据 - BlockChain []BlockChain `gorm:"foreignKey:dataID;references:id" json:"blockChains"` // 关联 BlockChain 数据 +type Package struct { + UserID cdssdk.UserID `gorm:"column:user_id" json:"userID"` + PackageID cdssdk.PackageID `gorm:"column:package_id" json:"packageID"` + PackageName string `gorm:"column:package_name" json:"packageName"` + DataType string `gorm:"column:data_type" json:"dataType"` + JsonData string `gorm:"column:json_data" json:"jsonData"` // JSON 数据字段 + BindingID DataID `gorm:"column:binding_id" json:"bindingID"` + Objects []cdssdk.Object `gorm:"column:objects" json:"objects"` + UploadedCluster []Cluster `gorm:"column:uploadedCluster" json:"uploadedCluster"` + //UploadedCluster []Cluster `gorm:"foreignKey:package_id;references:package_id" json:"clusters"` // 关联 Cluster 数据 + //BlockChain []BlockChain `gorm:"foreignKey:package_id;references:package_id" json:"blockChains"` // 关联 BlockChain 数据 +} + +type PackageDAO struct { + UserID cdssdk.UserID `gorm:"column:user_id" json:"userID"` + PackageID cdssdk.PackageID `gorm:"column:package_id" json:"packageID"` + PackageName string `gorm:"column:package_name" json:"packageName"` + DataType string `gorm:"column:data_type" json:"dataType"` + JsonData string `gorm:"column:json_data" json:"jsonData"` // JSON 数据字段 + BindingID DataID `gorm:"column:binding_id" json:"bindingID"` + UploadedCluster []Cluster `gorm:"foreignKey:package_id;references:package_id" json:"clusters"` // 关联 Cluster 数据 } type DataScheduleReq struct { @@ -147,8 +157,9 @@ type UploadTargetBase struct{} func (d *UploadTargetBase) Noop() {} type UploadResp struct { - PackageID cdssdk.PackageID `json:"packageID"` - JsonData string `json:"jsonData"` + PackageID cdssdk.PackageID `json:"packageID"` + ObjectIDs []cdssdk.ObjectID `json:"objectIDs"` + JsonData string `json:"jsonData"` } func (c *Client) Upload(req UploadReq) (*UploadResp, error) {