From 220eaf2a16d2efd5deff1fadd75724b0c368c525 Mon Sep 17 00:00:00 2001 From: liuzx Date: Thu, 24 Feb 2022 17:00:00 +0800 Subject: [PATCH] update --- models/cloudbrain.go | 4 ++-- routers/repo/modelarts.go | 47 +++++++++++++++++++++++++++------------ 2 files changed, 35 insertions(+), 16 deletions(-) diff --git a/models/cloudbrain.go b/models/cloudbrain.go index 9f5d018dd..4514ae43c 100755 --- a/models/cloudbrain.go +++ b/models/cloudbrain.go @@ -1327,9 +1327,9 @@ func GetCloudbrainsNeededStopByRepoID(repoID int64) ([]*Cloudbrain, error) { return cloudBrains, err } -func GetCloudbrainsByRepoIDAndJobName(repoID int64, jobType string, displayJobName string) ([]*Cloudbrain, error) { +func GetCloudbrainsByRepoIDAndDisplayName(repoID int64, jobType string, displayJobName string) ([]*Cloudbrain, error) { cloudBrains := make([]*Cloudbrain, 0) - err := x.Cols("job_id", "status", "type", "version_id").Where("repo_id=? AND job_type =? AND display_job_name=?", repoID, jobType, displayJobName.Find(&cloudBrains) + err := x.Cols("job_id", "job_name", "repo_id", "user_id", "job_type", "display_job_name").Where("repo_id=? AND job_type =? AND display_job_name LIKE ?", repoID, jobType, displayJobName+"%").Find(&cloudBrains) return cloudBrains, err } diff --git a/routers/repo/modelarts.go b/routers/repo/modelarts.go index 3521880a4..67ea9be4f 100755 --- a/routers/repo/modelarts.go +++ b/routers/repo/modelarts.go @@ -908,23 +908,11 @@ func TrainJobCreate(ctx *context.Context, form auth.CreateModelArtsTrainJobForm) ctx.RenderWithErr(err.Error(), tplModelArtsTrainJobNew, &form) return } - //判断项目内任务名称是否重复 - var jobTypes []string - jobTypes = append(jobTypes, string(models.JobTypeTrain)) - tasks, _, err := models.Cloudbrains(&models.CloudbrainsOptions{ - ListOptions: models.ListOptions{ - PageSize: setting.UI.IssuePagingNum, - }, - RepoID: repo.ID, - Type: models.TypeCloudBrainTwo, - JobTypeNot: false, - JobTypes: jobTypes, - IsLatestVersion: modelarts.IsLatestVersion, - }) + tasks, err := models.GetCloudbrainsByRepoIDAndDisplayName(repo.ID, string(models.JobTypeTrain), displayJobName) if err == nil { for _, task := range tasks { - if strings.EqualFold(task.JobName, displayJobName) { + if strings.EqualFold(task.DisplayJobName, displayJobName) { log.Error("the job name did already exist", ctx.Data["MsgID"]) trainJobErrorNewDataPrepare(ctx, form) ctx.RenderWithErr("任务名称已经被使用!", tplModelArtsTrainJobNew, &form) @@ -940,6 +928,37 @@ func TrainJobCreate(ctx *context.Context, form auth.CreateModelArtsTrainJobForm) } } + // //判断项目内任务名称是否重复 + // var jobTypes []string + // jobTypes = append(jobTypes, string(models.JobTypeTrain)) + // tasks, _, err := models.Cloudbrains(&models.CloudbrainsOptions{ + // ListOptions: models.ListOptions{ + // PageSize: setting.UI.IssuePagingNum, + // }, + // RepoID: repo.ID, + // Type: models.TypeCloudBrainTwo, + // JobTypeNot: false, + // JobTypes: jobTypes, + // IsLatestVersion: modelarts.IsLatestVersion, + // }) + // if err == nil { + // for _, task := range tasks { + // if strings.EqualFold(task.JobName, displayJobName) { + // log.Error("the job name did already exist", ctx.Data["MsgID"]) + // trainJobErrorNewDataPrepare(ctx, form) + // ctx.RenderWithErr("任务名称已经被使用!", tplModelArtsTrainJobNew, &form) + // return + // } + // } + // } else { + // if !models.IsErrJobNotExist(err) { + // log.Error("system error, %v", err, ctx.Data["MsgID"]) + // trainJobErrorNewDataPrepare(ctx, form) + // ctx.RenderWithErr("system error", tplModelArtsTrainJobNew, &form) + // return + // } + // } + count, err := models.GetCloudbrainTrainJobCountByUserID(ctx.User.ID) if err != nil { log.Error("GetCloudbrainTrainJobCountByUserID failed:%v", err, ctx.Data["MsgID"])