Current section

Files

Jump to
mt940 lib model creation_date.ex
Raw

lib/model/creation_date.ex

defmodule MT940.CreationDate do
@moduledoc ~S"""
## Date Time Indication
Date and time at which a message arrives or is created at the bank.
"""
defstruct [
:modifier,
:content,
:date
]
@type t :: %__MODULE__{}
use MT940.Field
use Timex
defp parse_content(result = %__MODULE__{content: content}) do
res = with {:ok, dateTime} <- content |> Timex.parse("%y%m%d%H%M%z", :strftime),
do: dateTime
date = with {:error, _} <- res,
{:ok, dateTime} <- content |> Timex.parse("%y%m%d%H%M", :strftime),
do: dateTime
%__MODULE__{result | date: date}
end
end