module JiraIssue::TriageTracker

Public Instance Methods

over_triage_sla?() click to toggle source
# File lib/jira_reporting/triage_tracker.rb, line 50
def over_triage_sla?
  case
  when over_triage_sla == API_OVER_TRIAGE_SLA_FIELD_NO
    false
  when triage_sla_target.nil?
    false
  when triaged.nil? && Time.now > triage_sla_target
    true
  when triaged.nil? && Time.now < triage_sla_target
    false
  when sla_triaged_at.nil? && triaged < triage_sla_target
    false
  when sla_triaged_at.nil? && triaged > triage_sla_target
    true
  when triaged && sla_triaged_at > triage_sla_target
    true
  end
end
set_over_triage_sla!(over_triage = nil) click to toggle source
# File lib/jira_reporting/triage_tracker.rb, line 11
def set_over_triage_sla!(over_triage = nil)
  over_triage ||= over_triage_sla?
  return if over_triage.nil? || over_triage == false
  jira_issue = jiralicious_issue
  jira_issue.fields.set_id(OVER_TRIAGE_SLA_FIELD, OVER_TRIAGE_SLA_FIELD_YES)
  jira_issue.save!
end
set_sla_triaged_at!(sla_triaged = nil) click to toggle source
# File lib/jira_reporting/triage_tracker.rb, line 3
def set_sla_triaged_at!(sla_triaged = nil)
  sla_triaged ||= triaged
  return if sla_triaged.nil?
  jira_issue = jiralicious_issue
  jira_issue.fields.set(SLA_TRIAGED_AT_FIELD, sla_triaged.iso8601)
  jira_issue.save!
end
time_to_triage() click to toggle source
# File lib/jira_reporting/triage_tracker.rb, line 19
def time_to_triage
  if triaged
    triaged - sla_base
  else
    nil
  end
end
triage_sla_remaining_time() click to toggle source
# File lib/jira_reporting/triage_tracker.rb, line 46
def triage_sla_remaining_time
  triage_sla_target - Time.now
end
triage_sla_target() click to toggle source
# File lib/jira_reporting/triage_tracker.rb, line 27
def triage_sla_target
  case priority
  when :p1
    sla_base + 0.5.hours
  when :p2
    sla_base + 1.hours
  when :p3
      2.business_hours.after(sla_base)
  when :p4
      1.business_day.after(sla_base)
  else
    nil
  end
end
triage_sla_total_available_time() click to toggle source
# File lib/jira_reporting/triage_tracker.rb, line 42
def triage_sla_total_available_time
  triage_sla_target - sla_base
end