cover/Elixir.DaProductApp.QRValidation.FXQuote.html

1 defmodule DaProductApp.QRValidation.FXQuote do
2 @moduledoc """
3 FX Quote associated with a QR validation.
4 """
5 use Ecto.Schema
6 import Ecto.Changeset
7
8
:-(
schema "fx_quotes" do
9 field :base_currency, :string
10 field :base_amount, :decimal
11 field :fx_rate, :decimal
12 field :markup_pct, :decimal
13 field :active, :boolean, default: true
14 field :last_modified_ts, :utc_datetime
15 belongs_to :qr_validation, DaProductApp.QRValidation.QRValidation
16 field :inserted_at, :utc_datetime
17 end
18
19 @required ~w(base_currency fx_rate active qr_validation_id)a
20 @optional ~w(base_amount markup_pct last_modified_ts)a
21
22 def changeset(struct, attrs) do
23 struct
24 |> cast(attrs, @required ++ @optional)
25 |> validate_required(@required)
26
:-(
|> validate_length(:base_currency, is: 3)
27 end
28 end
Line Hits Source