Class: TicketReport

Inherits:
Object
  • Object
show all
Defined in:
app/interactors/ticket_report.rb

Defined Under Namespace

Classes: ViewTicket

Instance Method Summary collapse

Constructor Details

#initialize(tickets) ⇒ TicketReport

Returns a new instance of TicketReport.



42
43
44
45
46
47
# File 'app/interactors/ticket_report.rb', line 42

def initialize(tickets)
  @tickets = tickets
    .joins("LEFT OUTER JOIN users ON tickets.reporter_id=users.id")
    .joins("LEFT OUTER JOIN milestones ON tickets.milestone_id=milestones.id")
    .order(Ticket.arel_table[:created_at].desc)
end

Instance Method Details

#to_aObject



49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
# File 'app/interactors/ticket_report.rb', line 49

def to_a
  @tickets.pluck(
      :id,
      :number,
      :type,
      :summary,
      "users.email",
      "users.first_name",
      "users.last_name",
      :antecedents,
      :created_at,
      :closed_at,
      "milestones.id",
      "milestones.name"
    ).map { |args| ViewTicket.new(*args) }
end