|
|
|
@@ -32,18 +32,22 @@ func (l *TaskDetailsLogic) TaskDetails(req *types.FId) (resp *types.TaskDetailsR |
|
|
|
if errors.Is(l.svcCtx.DbEngin.Where("id", req.Id).First(&task).Error, gorm.ErrRecordNotFound) { |
|
|
|
return nil, errors.New("记录不存在") |
|
|
|
} |
|
|
|
clusterIds := make([]int64, 0) |
|
|
|
clusterIds := make([]string, 0) |
|
|
|
var cList []*types.ClusterInfo |
|
|
|
var subList []*types.SubTaskInfo |
|
|
|
switch task.AdapterTypeDict { |
|
|
|
case 0: |
|
|
|
l.svcCtx.DbEngin.Table("task_cloud").Select("cluster_id").Where("task_id", task.Id).Scan(&clusterIds) |
|
|
|
if len(clusterIds) <= 0 { |
|
|
|
l.svcCtx.DbEngin.Table("task_vm").Select("cluster_id").Where("task_id", task.Id).Find(&clusterIds) |
|
|
|
l.svcCtx.DbEngin.Table("task_cloud").Where("task_id", task.Id).Scan(&subList) |
|
|
|
if len(subList) <= 0 { |
|
|
|
l.svcCtx.DbEngin.Table("task_vm").Where("task_id", task.Id).Find(&subList) |
|
|
|
} |
|
|
|
case 1: |
|
|
|
l.svcCtx.DbEngin.Table("task_ai").Select("cluster_id").Where("task_id", task.Id).Scan(&clusterIds) |
|
|
|
l.svcCtx.DbEngin.Table("task_ai").Where("task_id", task.Id).Scan(&subList) |
|
|
|
case 2: |
|
|
|
l.svcCtx.DbEngin.Table("task_hpc").Select("cluster_id").Where("task_id", task.Id).Scan(&clusterIds) |
|
|
|
l.svcCtx.DbEngin.Table("task_hpc").Where("task_id", task.Id).Scan(&subList) |
|
|
|
} |
|
|
|
for _, sub := range subList { |
|
|
|
clusterIds = append(clusterIds, sub.ClusterId) |
|
|
|
} |
|
|
|
err = l.svcCtx.DbEngin.Table("t_cluster").Where("id in ?", clusterIds).Scan(&cList).Error |
|
|
|
if err != nil { |
|
|
|
@@ -51,5 +55,6 @@ func (l *TaskDetailsLogic) TaskDetails(req *types.FId) (resp *types.TaskDetailsR |
|
|
|
} |
|
|
|
utils.Convert(&task, &resp) |
|
|
|
resp.ClusterInfos = cList |
|
|
|
resp.SubTaskInfos = subList |
|
|
|
return |
|
|
|
} |