task_anomaly.go 2.8 KB
package adapter

type TaskAnomalyItem struct {
	Id             int       `json:"id"`
	TaskId         int       `json:"taskId,string"` // 任务id
	Category       int       `json:"category"`      // 异常分类
	Leader         string    `json:"leader"`        // 任务负责人
	CurrentStage   TaskStage `json:"currentStage"`  // 计划进度的里程碑
	LastStage      TaskStage `json:"lastStage"`     // 实际进度完成的里程碑
	TaskStageCheck TaskStage `json:"taskStageCheck"`
	AssessFlag     int       `json:"anomaly"`     // 异常反馈的次数
	WarnFlag       int       `json:"warnFlag"`    // 里程碑异常次数
	AssistFlag     int       `json:"assistFlag"`  // 辅导异常次数
	TaskLevel      string    `json:"taskLevel"`   // 任务类型
	TaskName       string    `json:"taskName"`    // 任务名称
	TaskAlias      string    `json:"taskAlias"`   // 任务别名
	TaskEndTime    int64     `json:"taskEndTime"` // 任务截止的时间戳,单位:秒;等于0时表示未设置时间
	TaskSortBy     int       `json:"taskSortBy"`  // 优先级排序;值越小优先级越高
	RecordBegin    int64     `json:"recordBegin"` //
	MarkA          string    `json:"markA"`       // 去更新
	MarkB          string    `json:"markB"`       // 去反馈
	MarkC          string    `json:"markC"`       // 去求助
	MarkD          string    `json:"markD"`       // 去辅导
	AnomalyDesc    string    `json:"anomalyDesc"` // 异常状况描述
}

// func (t *TaskAnomalyItem) GenAnomalyDesc() {
// 	nowTime := time.Now()
// 	var str string
// 	switch t.Category {
// 	case 1:
// 		//里程碑异常
// 		{
// 			if t.TaskStageCheck.RealCompletedAt == 0 {
// 				//逾期未完成
// 				planCompletedAt := time.Unix(t.TaskStageCheck.PlanCompletedAt, 0)
// 				subDay := xtime.SubDayAbs(nowTime, planCompletedAt)
// 				str = fmt.Sprintf("里程碑%s已逾期%d天", t.TaskStageCheck.Name, subDay)
// 			} else {
// 				//逾期完成
// 				planCompletedAt := time.Unix(t.TaskStageCheck.PlanCompletedAt, 0)
// 				realCompletedAt := time.Unix(t.TaskStageCheck.RealCompletedAt, 0)
// 				subDay := xtime.SubDayAbs(realCompletedAt, planCompletedAt)
// 				str = fmt.Sprintf("里程碑%s逾期%d天完成", t.TaskStageCheck.Name, subDay)

// 			}
// 		}
// 	case 2:
// 		//反馈异常
// 		{
// 			recordBegin := time.Unix(t.RecordBegin, 0)
// 			subDay := xtime.SubDayAbs(nowTime, recordBegin)
// 			str = fmt.Sprintf(
// 				"本任务自%s未正常反馈项目进度,已异常%d天",
// 				recordBegin.Local().Format("2006-01-02"),
// 				subDay,
// 			)

// 		}
// 	case 3:
// 		// 辅导异常
// 		{
// 			recordBegin := time.Unix(t.RecordBegin, 0)
// 			subDay := xtime.SubDayAbs(nowTime, recordBegin)
// 			str = fmt.Sprintf(
// 				"本任务计划于%s完成辅导,已逾期%d天",
// 				recordBegin.Local().Format("2006-01-02"),
// 				subDay,
// 			)

// 		}
// 	}
// }