...
This commit is contained in:
42
specs/models_old/projects/task.v
Normal file
42
specs/models_old/projects/task.v
Normal file
@@ -0,0 +1,42 @@
|
||||
module projects
|
||||
|
||||
import freeflowuniverse.herolib.hero.models.core
|
||||
|
||||
// TaskStatus defines the possible states of a task
|
||||
pub enum TaskStatus {
|
||||
todo
|
||||
in_progress
|
||||
in_review
|
||||
done
|
||||
blocked
|
||||
backlog
|
||||
}
|
||||
|
||||
// TaskPriority defines the priority levels for tasks
|
||||
pub enum TaskPriority {
|
||||
low
|
||||
medium
|
||||
high
|
||||
urgent
|
||||
}
|
||||
|
||||
// Task represents the most granular unit of work
|
||||
// Tasks can be linked to projects, epics, and sprints
|
||||
pub struct Task {
|
||||
core.Base
|
||||
pub mut:
|
||||
title string @[index] // Task title
|
||||
description string // Task description
|
||||
status TaskStatus @[index] // Current task status
|
||||
priority TaskPriority @[index] // Task priority level
|
||||
assignee_id u64 @[index] // User ID of task assignee
|
||||
reporter_id u64 @[index] // User ID of task reporter
|
||||
parent_task_id u64 // For subtasks - parent task ID
|
||||
epic_id u64 @[index] // Link to parent epic
|
||||
sprint_id u64 @[index] // Link to parent sprint
|
||||
project_id u64 @[index] // Link to parent project
|
||||
due_date u64 // Task due timestamp (Unix)
|
||||
estimated_time_hours f32 // Estimated hours to complete
|
||||
logged_time_hours f32 // Actual hours logged
|
||||
tags []string @[index] // Task tags for categorization
|
||||
}
|
Reference in New Issue
Block a user