{-# LANGUAGE DeriveGeneric #-} module Model.Json.Payment ( Payment(..) , fromPayment ) where import Data.Aeson import Data.Text (Text) import Data.Time.Calendar (Day) import GHC.Generics import Prelude hiding (id) import Model.Frequency import Model.Payment (PaymentId) import Model.User (UserId) import qualified Model.Payment as M data Payment = Payment { id :: PaymentId , date :: Day , name :: Text , cost :: Int , userId :: UserId , frequency :: Frequency } deriving (Show, Generic) instance FromJSON Payment instance ToJSON Payment fromPayment :: M.Payment -> Payment fromPayment payment = Payment { id = M.id payment , date = M.date payment , name = M.name payment , cost = M.cost payment , userId = M.userId payment , frequency = M.frequency payment }