Skip to content
This repository was archived by the owner on Nov 8, 2022. It is now read-only.

Commit f4f669d

Browse files
committed
refactor(article-curd): make it elixir way by rm case
1 parent f5cc3ef commit f4f669d

File tree

1 file changed

+22
-26
lines changed

1 file changed

+22
-26
lines changed

lib/groupher_server/cms/delegates/article_curd.ex

Lines changed: 22 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -340,33 +340,29 @@ defmodule GroupherServer.CMS.Delegate.ArticleCURD do
340340

341341
defp should_add_pin?(_filter), do: {:error, :pass}
342342

343+
defp concat_contents(%{total_count: 0}, normal_contents), do: {:ok, normal_contents}
344+
343345
defp concat_contents(pined_content, normal_contents) do
344-
case pined_content |> Map.get(:total_count) do
345-
0 ->
346-
{:ok, normal_contents}
347-
348-
_ ->
349-
pind_entries =
350-
pined_content
351-
|> Map.get(:entries)
352-
|> Enum.map(&struct(&1, %{pin: true}))
353-
354-
normal_entries = normal_contents |> Map.get(:entries)
355-
356-
# pind_count = pined_content |> Map.get(:total_count)
357-
normal_count = normal_contents |> Map.get(:total_count)
358-
359-
# remote the pined content from normal_entries (if have)
360-
pind_ids = pick_by(pind_entries, :id)
361-
normal_entries = Enum.reject(normal_entries, &(&1.id in pind_ids))
362-
363-
normal_contents
364-
|> Map.put(:entries, pind_entries ++ normal_entries)
365-
# those two are equals
366-
# |> Map.put(:total_count, pind_count + normal_count - pind_count)
367-
|> Map.put(:total_count, normal_count)
368-
|> done
369-
end
346+
pind_entries =
347+
pined_content
348+
|> Map.get(:entries)
349+
|> Enum.map(&struct(&1, %{pin: true}))
350+
351+
normal_entries = normal_contents |> Map.get(:entries)
352+
353+
# pind_count = pined_content |> Map.get(:total_count)
354+
normal_count = normal_contents |> Map.get(:total_count)
355+
356+
# remote the pined content from normal_entries (if have)
357+
pind_ids = pick_by(pind_entries, :id)
358+
normal_entries = Enum.reject(normal_entries, &(&1.id in pind_ids))
359+
360+
normal_contents
361+
|> Map.put(:entries, pind_entries ++ normal_entries)
362+
# those two are equals
363+
# |> Map.put(:total_count, pind_count + normal_count - pind_count)
364+
|> Map.put(:total_count, normal_count)
365+
|> done
370366
end
371367

372368
defp create_content_result({:ok, %{create_content: result}}) do

0 commit comments

Comments
 (0)