From d3a14f8d5db71d85ee1345acea0a991155c9e24c Mon Sep 17 00:00:00 2001 From: Tsvetozar Penov Date: Tue, 21 Nov 2023 15:27:54 +0100 Subject: [PATCH] Add dashboard url first promoter --- lib/sanbase_web/graphql/resolvers/promoter_resolver.ex | 9 +++++++++ lib/sanbase_web/graphql/schema/types/promoter_types.ex | 1 + test/sanbase_web/graphql/promoter/promoter_api_test.exs | 6 ++++++ 3 files changed, 16 insertions(+) diff --git a/lib/sanbase_web/graphql/resolvers/promoter_resolver.ex b/lib/sanbase_web/graphql/resolvers/promoter_resolver.ex index c3f5930049..bef2305092 100644 --- a/lib/sanbase_web/graphql/resolvers/promoter_resolver.ex +++ b/lib/sanbase_web/graphql/resolvers/promoter_resolver.ex @@ -19,6 +19,8 @@ defmodule SanbaseWeb.Graphql.Resolvers.PromoterResolver do # Note: Adding new field to extract should be also reflected by adding it in promoter_types.ex defp extract_and_atomize_needed_fields({:ok, promoter}) do + auth_token = promoter["auth_token"] + promoter = promoter |> Map.take([ @@ -47,6 +49,13 @@ defmodule SanbaseWeb.Graphql.Resolvers.PromoterResolver do end) |> Sanbase.MapUtils.atomize_keys() + promoter = + promoter + |> Map.put( + :dashboard_url, + "https://santiment.firstpromoter.com/view_dashboard_as?at=#{auth_token}" + ) + {:ok, promoter} end end diff --git a/lib/sanbase_web/graphql/schema/types/promoter_types.ex b/lib/sanbase_web/graphql/schema/types/promoter_types.ex index 33c048bc67..a91a1f5102 100644 --- a/lib/sanbase_web/graphql/schema/types/promoter_types.ex +++ b/lib/sanbase_web/graphql/schema/types/promoter_types.ex @@ -7,6 +7,7 @@ defmodule SanbaseWeb.Graphql.Schema.PromoterTypes do field(:current_balance, :integer) field(:paid_balance, :integer) field(:promotions, list_of(:promotion)) + field(:dashboard_url, :string) end object :promotion do diff --git a/test/sanbase_web/graphql/promoter/promoter_api_test.exs b/test/sanbase_web/graphql/promoter/promoter_api_test.exs index ecb91a9e9b..d1391a6f40 100644 --- a/test/sanbase_web/graphql/promoter/promoter_api_test.exs +++ b/test/sanbase_web/graphql/promoter/promoter_api_test.exs @@ -58,6 +58,10 @@ defmodule SanbaseWeb.Graphql.PromoterApiTest do promotion = promoter["promotions"] |> hd assert promoter["email"] == resp["email"] + + assert promoter["dashboardUrl"] == + "https://santiment.firstpromoter.com/view_dashboard_as?at=#{resp["auth_token"]}" + assert promotion["visitorsCount"] == resp["promotions"] |> hd |> Map.get("visitors_count") end) end @@ -86,6 +90,7 @@ defmodule SanbaseWeb.Graphql.PromoterApiTest do currentBalance earningsBalance paidBalance + dashboardUrl promotions { refId referralLink @@ -112,6 +117,7 @@ defmodule SanbaseWeb.Graphql.PromoterApiTest do currentBalance earningsBalance paidBalance + dashboardUrl promotions { refId referralLink