chore: code cleanup

This commit is contained in:
Muhsin Keloth
2024-05-02 16:45:57 +05:30
parent 68cb6b19b0
commit 0fafe37646
2 changed files with 28 additions and 5 deletions
@@ -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
View File
@@ -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