fix: merge calculations when merging loads

closes #309
This commit is contained in:
Zach Daniel 2022-05-09 17:46:17 -04:00
parent a39ebd5646
commit 92609b33ea

View file

@ -2136,10 +2136,14 @@ defmodule Ash.Query do
defp merge_load(left, []), do: sanitize_loads(left) defp merge_load(left, []), do: sanitize_loads(left)
defp merge_load( defp merge_load(
%__MODULE__{load: left_loads, tenant: left_tenant}, %__MODULE__{load: left_loads, calculations: left_calculations, tenant: left_tenant},
%__MODULE__{load: right_loads} = query %__MODULE__{load: right_loads, calculations: right_calculations} = query
) do ) do
%{query | load: merge_load(left_loads, right_loads)} %{
query
| load: merge_load(left_loads, right_loads),
calculations: Map.merge(left_calculations, right_calculations)
}
|> set_tenant(query.tenant || left_tenant) |> set_tenant(query.tenant || left_tenant)
end end