package task import ( "brainbuffer/pkg/brainbuffer/scheduling" "time" ) type CreationModel struct { Patterns []string `json:"patterns"` Name string `json:"name"` Description string `json:"description"` Duration int64 `json:"duration"` } type ResourceModel struct { ID int64 `json:"id"` UserID string `json:"userId"` Patterns []string `json:"patterns"` Name string `json:"name"` Description string `json:"description"` Duration int64 `json:"duration"` CreationTime int64 `json:"creationTime"` } func (model *CreationModel) MapModelToEntity(userId string) Task { patterns := make([]scheduling.Pattern, len(model.Patterns)) for i, v := range model.Patterns { patterns[i] = scheduling.Pattern(v) } return Task{ ID: 0, UserID: userId, SchedulingPatterns: patterns, Name: model.Name, Description: model.Description, Duration: time.Duration(model.Duration), CreationTime: time.Time{}, } } func MapEntityToModel(task *Task) ResourceModel { patterns := make([]string, len(task.SchedulingPatterns)) for i, v := range task.SchedulingPatterns { patterns[i] = string(v) } return ResourceModel{ ID: task.ID, UserID: task.UserID, Patterns: patterns, Name: task.Name, Description: task.Description, Duration: int64(task.Duration), CreationTime: task.CreationTime.Unix(), } }