aboutsummaryrefslogtreecommitdiff
path: root/common/src/Common/Model/Income.hs
blob: 57d07f1ba3af9df37222a7d10c40e08f7e95ea78 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
module Common.Model.Income
  ( IncomeId
  , Income(..)
  ) where

import           Data.Aeson         (FromJSON, ToJSON)
import           Data.Int           (Int64)
import           Data.Time          (UTCTime)
import           Data.Time.Calendar (Day)
import           GHC.Generics       (Generic)

import           Common.Model.User  (UserId)

type IncomeId = Int64

data Income = Income
  { _income_id        :: IncomeId
  , _income_userId    :: UserId
  , _income_date      :: Day
  , _income_amount    :: Int
  , _income_createdAt :: UTCTime
  , _income_editedAt  :: Maybe UTCTime
  , _income_deletedAt :: Maybe UTCTime
  } deriving (Eq, Show, Generic)

instance FromJSON Income
instance ToJSON Income