12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- class Report::TicketMerged < Report::Base
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- def self.aggs(params_origin)
- params = params_origin.deep_dup
- Array.new(interval_length(params)) do |_counter|
- case params[:interval]
- when 'month'
- params[:range_end] = params[:range_start].next_month
- when 'week', 'day'
- params[:range_end] = params[:range_start].next_day
- when 'hour'
- params[:range_end] = params[:range_start] + 1.hour
- when 'minute'
- params[:range_end] = params[:range_start] + 1.minute
- end
- count = history_count(query_params(params))
- params[:range_start] = params[:range_end]
- count
- end
- end
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- def self.items(params)
- result = history(query_params(params))
- if params[:sheet].blank?
- result[:assets] = ApplicationModel::CanAssets
- .reduce(Ticket.where(id: result[:ticket_ids]), {})
- end
- result
- end
- def self.query_params(params)
- {
- object: 'Ticket',
- type: 'updated',
- attribute: 'state',
- start: params[:range_start],
- end: params[:range_end],
- selector: params[:selector],
- id_to: Ticket::State.lookup(name: 'merged').id,
- }
- end
- end
|