defmodule ProviderService.Projections.Provider do use Ecto.Schema @derive { Flop.Schema, filterable: [:active, :search], sortable: [:name, :inserted_at], default_limit: 20, max_limit: 100, custom_fields: [ search: [ filter: {ProviderService.Projections.ProviderFilters, :search, []}, ecto_type: :string, operators: [:==] ] ] } @primary_key {:provider_id, :string, autogenerate: false} schema "providers" do field(:name, :string) field(:email, :string) field(:phone, :string) field(:contact_name, :string) field(:ruc, :string) field(:address, :string) field(:active, :boolean, default: true) field(:templates, :map, default: %{}) field(:default_templates, :map, default: %{}) timestamps(type: :utc_datetime_usec) end end