Current section
Files
Jump to
Current section
Files
lib/models/response/orders/modify_client_extensions.ex
defmodule ExOanda.Response.OrderModifyClientExtensions do
@moduledoc """
Schema for Oanda modify client extensions response.
[Oanda Docs](https://developer.oanda.com/rest-live-v20/order-ep/)
"""
use TypedEctoSchema
import Ecto.Changeset
alias ExOanda.{
OrderClientExtensionsModifyRejectTransaction,
OrderClientExtensionsModifyTransaction
}
@primary_key false
typed_embedded_schema do
field(:related_transaction_ids, {:array, :string})
field(:last_transaction_id, :string)
embeds_one :order_client_extensions_modify_transaction, OrderClientExtensionsModifyTransaction
embeds_one :order_client_extensions_modify_reject_transaction, OrderClientExtensionsModifyRejectTransaction
end
@doc false
def changeset(struct, params) do
struct
|> cast(params, [:related_transaction_ids, :last_transaction_id])
|> cast_embed(:order_client_extensions_modify_transaction)
|> cast_embed(:order_client_extensions_modify_reject_transaction)
end
end