fix:超算概览 增加正在运行任务数逻辑

Former-commit-id: 66b2b2b936df959f338e9b718998b068b8fdfd76
This commit is contained in:
zhouqunjie 2023-05-18 10:08:22 +08:00
parent 10ed9b35e9
commit 0dea973bf9
5 changed files with 22 additions and 8 deletions

View File

@ -145,7 +145,7 @@ type (
type ( type (
getRegionResp { getRegionResp {
Code string `json:"code"` Code int32 `json:"code"`
Msg string `json:"msg"` Msg string `json:"msg"`
Data RegionNum `json:"data"` Data RegionNum `json:"data"`
} }
@ -157,7 +157,7 @@ type (
type ( type (
listRegionResp { listRegionResp {
Code string `json:"code"` Code int32 `json:"code"`
Msg string `json:"msg"` Msg string `json:"msg"`
Data []Region `json:"data"` Data []Region `json:"data"`
} }

View File

@ -30,7 +30,7 @@ func (l *GetRegionLogic) GetRegion() (resp *types.GetRegionResp, err error) {
regionNameDb := l.svcCtx.DbEngin.Find(&regionSlurmArray).Not("RegionName = ?", "") regionNameDb := l.svcCtx.DbEngin.Find(&regionSlurmArray).Not("RegionName = ?", "")
softStackDb := l.svcCtx.DbEngin.Find(&regionSlurmArray).Not("SoftStack = ?", "") softStackDb := l.svcCtx.DbEngin.Find(&regionSlurmArray).Not("SoftStack = ?", "")
resp = &types.GetRegionResp{ resp = &types.GetRegionResp{
Code: "200", Code: 200,
Msg: "Success", Msg: "Success",
Data: types.RegionNum{ Data: types.RegionNum{
RegionSum: regionNameDb.RowsAffected, RegionSum: regionNameDb.RowsAffected,

View File

@ -29,14 +29,28 @@ func (l *ListRegionLogic) ListRegion() (resp *types.ListRegionResp, err error) {
// todo: add your logic here and delete this line // todo: add your logic here and delete this line
var regionSlurmArray []model.RegionSlurm var regionSlurmArray []model.RegionSlurm
var regions []types.Region var regions []types.Region
var jobCount int64
var regionResult []types.Region
l.svcCtx.DbEngin.Find(&regionSlurmArray) l.svcCtx.DbEngin.Find(&regionSlurmArray)
tool.Convert(regionSlurmArray, &regions) tool.Convert(regionSlurmArray, &regions)
// 查询超算上的job todo // 查询超算上的job todo
for _, region := range regions {
if region.RegionName == "Changsha HPC Center" {
l.svcCtx.DbEngin.Raw("select count(*) from task t join hpc h on t.id = h.task_id and t.status != 'Completed' and h.service_name = 'th'").Scan(&jobCount)
region.RunningJobs = jobCount
}
if region.RegionName == "Zhijiang HPC Center" {
l.svcCtx.DbEngin.Raw("select count(*) from task t join hpc h on t.id = h.task_id and t.status != 'Completed' and h.service_name = 'ac'").Scan(&jobCount)
region.RunningJobs = jobCount
}
regionResult = append(regionResult, region)
}
resp = &types.ListRegionResp{ resp = &types.ListRegionResp{
Code: "200", Code: 200,
Msg: "Success", Msg: "Success",
Data: regions, Data: regionResult,
} }
return return
} }

View File

@ -51,7 +51,7 @@ func (l *ListJobLogic) ListJob(req *types.ListJobReq) (resp *types.ListJobResp,
SlurmVersion: task.SlurmVersion, SlurmVersion: task.SlurmVersion,
Name: task.Name, Name: task.Name,
JobStartTime: task.JobStartTime, JobStartTime: task.JobStartTime,
JobRunTime: task.JobRunTime, JobRunTime: task.JobRunTime + "s",
StateofJob: task.StateofJob, StateofJob: task.StateofJob,
}) })

View File

@ -128,7 +128,7 @@ type Environment struct {
} }
type GetRegionResp struct { type GetRegionResp struct {
Code string `json:"code"` Code int32 `json:"code"`
Msg string `json:"msg"` Msg string `json:"msg"`
Data RegionNum `json:"data"` Data RegionNum `json:"data"`
} }
@ -139,7 +139,7 @@ type RegionNum struct {
} }
type ListRegionResp struct { type ListRegionResp struct {
Code string `json:"code"` Code int32 `json:"code"`
Msg string `json:"msg"` Msg string `json:"msg"`
Data []Region `json:"data"` Data []Region `json:"data"`
} }