chore: code cleanup
This commit is contained in:
@@ -1,9 +1,23 @@
|
||||
class Api::V1::Accounts::Integrations::LinearController < Api::V1::Accounts::BaseController
|
||||
before_action :fetch_conversation, only: [:list]
|
||||
# before_action :fetch_conversation, only: [:list]
|
||||
|
||||
def list
|
||||
issues = linear_processor_service.list_issues
|
||||
render json: issues, status: :ok
|
||||
def teams
|
||||
teams = linear_processor_service.teams
|
||||
if teams.is_a?(Hash) && teams[:error]
|
||||
render json: { error: teams[:error] }, status: :unprocessable_entity
|
||||
else
|
||||
render json: teams, status: :ok
|
||||
end
|
||||
end
|
||||
|
||||
def labels
|
||||
team_id = params[:team_id]
|
||||
labels = linear_processor_service.labels(team_id)
|
||||
if labels.is_a?(Hash) && labels[:error]
|
||||
render json: { error: labels[:error] }, status: :unprocessable_entity
|
||||
else
|
||||
render json: labels, status: :ok
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
+10
-1
@@ -31,6 +31,8 @@ class Linear
|
||||
end
|
||||
|
||||
def labels(team_id)
|
||||
raise ArgumentError, 'Missing team id' if team_id.blank?
|
||||
|
||||
query = <<~GRAPHQL
|
||||
query {
|
||||
team(id: "#{team_id}") {
|
||||
@@ -49,7 +51,14 @@ class Linear
|
||||
private
|
||||
|
||||
def execute_query(query)
|
||||
@client.query(query).data.to_h
|
||||
response = @client.query(query)
|
||||
Rails.logger.debug { "GraphQL Response: #{response.inspect}" }
|
||||
unless response.data
|
||||
raise StandardError, "Error retrieving data: #{response.errors.messages}" if response.errors.any?
|
||||
|
||||
return { error: 'No data returned' }
|
||||
end
|
||||
response.data.to_h
|
||||
rescue Graphlient::Errors::GraphQLError => e
|
||||
{ error: "GraphQL Error: #{e.message}" }
|
||||
rescue Graphlient::Errors::ServerError => e
|
||||
|
||||
Reference in New Issue
Block a user