ticket_by_id.rb 579 B

123456789101112131415161718192021
  1. # Copyright (C) 2012-2022 Zammad Foundation, https://zammad-foundation.org/
  2. module Gql::Queries
  3. class TicketById < BaseQuery
  4. description 'Fetch a ticket by ID'
  5. def self.authorize(_obj, ctx)
  6. # Pundit authorization will be done via TicketType.
  7. ctx.current_user
  8. end
  9. argument :ticket_id, GraphQL::Types::ID, required: true, description: 'Ticket ID'
  10. type Gql::Types::TicketType, null: false
  11. def resolve(ticket_id: nil)
  12. Gql::ZammadSchema.object_from_id(ticket_id, context) || raise("Cannot find ticket #{ticket_id}")
  13. end
  14. end
  15. end