module Common.Model.CreatePayment ( CreatePaymentError(..) , CreatePayment(..) ) where import Data.Aeson (FromJSON, ToJSON) import Data.Text (Text) import Data.Time.Calendar (Day) import GHC.Generics (Generic) import Common.Model.Category (CategoryId) import Common.Model.Frequency (Frequency) data CreatePaymentError = CreatePaymentError { _createPaymentError_name :: Maybe Text , _createPaymentError_cost :: Maybe Text , _createPaymentError_date :: Maybe Text , _createPaymentError_category :: Maybe Text , _createPaymentError_frequency :: Maybe Text } deriving (Show, Generic) instance FromJSON CreatePaymentError instance ToJSON CreatePaymentError data CreatePayment = CreatePayment { _createPayment_name :: Text , _createPayment_cost :: Int , _createPayment_date :: Day , _createPayment_category :: CategoryId , _createPayment_frequency :: Frequency } deriving (Show, Generic) instance FromJSON CreatePayment instance ToJSON CreatePayment