39 lines
701 B
Ruby
39 lines
701 B
Ruby
|
class Project < ActiveRecord::Base
|
||
|
|
||
|
def self.status_keys
|
||
|
{upcoming: 0, active: 1, backlog: 2, completed: 3}
|
||
|
end
|
||
|
enum status: self.status_keys
|
||
|
|
||
|
|
||
|
def requirements
|
||
|
check_date_overdue_output requirements_completed?, requirements_due
|
||
|
end
|
||
|
|
||
|
def design
|
||
|
check_date_overdue_output design_completed?, design_due
|
||
|
end
|
||
|
|
||
|
def devops
|
||
|
check_date_overdue_output devops_completed?, devops_due
|
||
|
end
|
||
|
|
||
|
def qalaunch
|
||
|
check_date_overdue_output qalaunch_completed?, qalaunch_due
|
||
|
end
|
||
|
|
||
|
|
||
|
private
|
||
|
|
||
|
def check_date_overdue_output completed, due
|
||
|
if completed
|
||
|
"Completed".html_safe
|
||
|
elsif Date.today > due
|
||
|
"Overdue"
|
||
|
else
|
||
|
due
|
||
|
end
|
||
|
end
|
||
|
|
||
|
end
|