blob: a30d10477d979ea6cdcc1f2fcc70376a3ca440a0 (
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.User
( UserId
, User(..)
, findUser
) where
import Data.Aeson (FromJSON, ToJSON)
import Data.Int (Int64)
import qualified Data.List as L
import Data.Text (Text)
import Data.Time (UTCTime)
import GHC.Generics (Generic)
type UserId = Int64
data User = User
{ _user_id :: UserId
, _user_creation :: UTCTime
, _user_email :: Text
, _user_name :: Text
} deriving (Show, Generic)
instance FromJSON User
instance ToJSON User
findUser :: UserId -> [User] -> Maybe User
findUser userId users = L.find ((== userId) . _user_id) users
|