package adapter import ( "gitlab.fjmaimaimai.com/allied-creation/performance/pkg/domain" ) type TaskItem struct { Id int `json:"id,string"` Name string `json:"name"` // 任务名称 Alias string `json:"alias"` // 任务别名 Leader string `json:"leader"` // 任务负责人 Status int `json:"status"` // 任务的状态 StatusDescript string `json:"statusDescript"` // 任务的整体状态描述 SortBy int `json:"level"` // 优先级,值越小优先级越高 LevelName string `json:"levelName"` // 任务分类名称 StageA TaskStage `json:"stageA"` // 里程碑1 StageB TaskStage `json:"stageB"` // 里程碑2 StageC TaskStage `json:"stageC"` // 里程碑3 StageD TaskStage `json:"stageD"` // 里程碑4 StageE TaskStage `json:"stageE"` // 里程碑5 LastStage TaskStage `json:"lastStage"` // CurrentStage TaskStage `json:"currentStage"` // UpdatedAt string `json:"updatedAt"` // Anomaly int `json:"anomaly"` // 异常反馈情况 WarnFlag int `json:"warnFlag"` // 里程碑完成时间异常标记 0:正常 1标记为异常 AnomalyDesc []string `json:"anomalyDesc"` // 异常状态 AnomalyDesc2 []map[string]string `json:"anomalyDesc2"` Marks map[string]string `json:"marks"` // 标记 } func (t *TaskItem) GenStatusDescript() { statusNamed := "" if domain.TaskState(t.Status) == domain.TaskRunning { statusNamed = "进行中" } if t.Anomaly > 0 { statusNamed = "反馈异常" } if t.WarnFlag > 0 { statusNamed = "里程碑异常" } if domain.TaskState(t.Status) == domain.TaskStop { statusNamed = "已停止" } if t.LastStage.Id > 0 && t.CurrentStage.Id == 0 && t.LastStage.PlanCompletedAt < t.LastStage.RealCompletedAt { statusNamed = "逾期完成" } if t.LastStage.Id > 0 && t.CurrentStage.Id == 0 && t.LastStage.PlanCompletedAt >= t.LastStage.RealCompletedAt { statusNamed = "如期完成" } t.StatusDescript = statusNamed }