module Validation.Income ( createIncome , editIncome ) where import Data.Text (Text) import Data.Validation (Validation) import qualified Data.Validation as V import Common.Model (CreateIncomeForm (..), EditIncomeForm (..)) import qualified Common.Validation.Income as IncomeValidation import Model.CreateIncome (CreateIncome (..)) import Model.EditIncome (EditIncome (..)) createIncome :: CreateIncomeForm -> Validation Text CreateIncome createIncome form = CreateIncome <$> IncomeValidation.amount (_createIncomeForm_amount form) <*> IncomeValidation.date (_createIncomeForm_date form) editIncome :: EditIncomeForm -> Validation Text EditIncome editIncome form = EditIncome <$> V.Success (_editIncomeForm_id form) <*> IncomeValidation.amount (_editIncomeForm_amount form) <*> IncomeValidation.date (_editIncomeForm_date form)