packages feed

registry-hedgehog-0.3.0.0: test/Test/Tutorial/DataModel.hs

module Test.Tutorial.DataModel where

import Protolude

data Company = Company
  { companyName :: Text,
    departments :: [Department]
  }
  deriving (Eq, Show)

data Department = Department
  { departmentName :: Text,
    employees :: [Employee]
  }
  deriving (Eq, Show)

data Employee = Employee
  { employeeName :: Text,
    employeeStatus :: EmployeeStatus,
    salary :: Int,
    bonus :: Maybe Int
  }
  deriving (Eq, Show)

data EmployeeStatus
  = Permanent
  | Temporary Int -- number of days
  deriving (Eq, Show)