Skip to content

Instantly share code, notes, and snippets.

@noelworden
Created July 17, 2020 23:45
Show Gist options
  • Select an option

  • Save noelworden/7db1f9e3686a7933715e74f6633546f5 to your computer and use it in GitHub Desktop.

Select an option

Save noelworden/7db1f9e3686a7933715e74f6633546f5 to your computer and use it in GitHub Desktop.
#blog_snippets
defp mathematical_validation(changeset) do
revenue = get_field(changeset, :revenue)
expense = get_field(changeset, :expense)
net_gain = get_field(changeset, :net_gain)
with true <- revenue != nil,
true <- expense != nil,
true <- net_gain != nil,
true <- Decimal.sub(revenue, expense) == Decimal.new(net_gain) do
changeset
else
_ -> add_error(changeset, :net_gain, "must equal revenue minus expense")
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment