package model import ( "github.com/codinl/go-logger" "time" ) //go:generate goqueryset -in task.go // gen:qs //type Task struct { // Model // // Name string `json:"name" gorm:"comment:'任务名称'"` // NameKey string `json:"name_key" gorm:"comment:'任务名称key'"` // TaskType string `json:"task_type" gorm:"comment:'任务类型(1 活跃任务 2 日常任务 3 新手任务)'"` // 任务类型 // IsOnline bool `json:"is_online" gorm:"comment:'是否上线(1 上线 2 不上线)'"` // 是否上线 // Sort uint32 `json:"sort" gorm:"comment:'排序'"` // 排序 //} // gen:qs type UserAttendance struct { Model Uid uint32 `json:"uid" gorm:"index"` LatestTime time.Time `json:"latest_time" gorm:"index"` ConsecutiveDays uint32 `json:"consecutive_days" gorm:"index"` IndexDay uint32 `json:"index_day"` // user_attendance } // gen:qs type UserAttendanceRecord struct { Model Uid uint32 `json:"uid" gorm:"index"` AttendanceTime time.Time `json:"attendance_time"` Vm uint32 `json:"vm"` AttendanceDate string `json:"attendance_date" gorm:"index"` // user_attendance_record } func (m *UserAttendanceRecord) Add(event, describe string) error { err := UserVmUpdate(m.Uid, int(m.Vm), event, describe) if err != nil { logger.Error("update user vm err:", err) return err } err = DB.Create(m).Error if err != nil { logger.Error("create user attendance record err:", err) return err } return nil } type AttendanceInfo struct { IndexDay uint32 `json:"index_day"` Date string `json:"date"` State uint32 `json:"state"` // 1-未签到 2-签到 Vm uint32 `json:"vm"` } // 2 4 6 8 10 12 14