actualizaciones y logs
This commit is contained in:
@ -1,6 +1,7 @@
|
||||
defmodule Api.Studies do
|
||||
import Ecto.Query
|
||||
alias Api.Repo
|
||||
require Logger
|
||||
|
||||
def studies_sql_query(filters) do
|
||||
customfilter =
|
||||
@ -9,7 +10,8 @@ defmodule Api.Studies do
|
||||
"" -> dynamic([_], true)
|
||||
expr ->
|
||||
case ExpressionParser.parse(expr) do
|
||||
{:ok, ast} -> ExpressionToEcto.to_dynamic(ast)
|
||||
{:ok, ast} ->
|
||||
ExpressionToEcto.to_dynamic(ast)
|
||||
{:error, _reason} -> raise "Error al parsear customfilter"
|
||||
end
|
||||
end
|
||||
@ -18,7 +20,9 @@ defmodule Api.Studies do
|
||||
size = filters["size"] || 24
|
||||
|
||||
filter = filters["filter"] || []
|
||||
sort = filters["sort"] || [%{"dir" => "desc", "field" => "studydate"}]
|
||||
sort = filters["sort"] || [%{"dir" => "desc", "field" => "idstudy"}]
|
||||
|
||||
Logger.info("sort -> #{inspect(sort)}")
|
||||
|
||||
# Construcción de condiciones de filtro dinámicas
|
||||
filter_conditions =
|
||||
@ -91,6 +95,8 @@ defmodule Api.Studies do
|
||||
{direction, field}
|
||||
end)
|
||||
|
||||
Logger.info("sort_conditions --> #{inspect(sort_conditions)}")
|
||||
|
||||
combined_filter =
|
||||
dynamic([q], ^filter_conditions and ^customfilter)
|
||||
|
||||
|
Reference in New Issue
Block a user