require "json"
|
|
require "uuid"
|
|
require "uuid/json"
|
|
require "crypto/bcrypt/password"
|
|
require "./invoice"
|
|
|
|
enum UserType
|
|
Normal=0,
|
|
Administrator=1,
|
|
end
|
|
|
|
class User
|
|
JSON.mapping(
|
|
addresses: {type: Array(Address), nilable: true},
|
|
invoices: {type: Array(Invoice), nilable: true},
|
|
tokens: {type: Array(UUID), nilable: true},
|
|
email: String,
|
|
password_hash: {type: String, nilable: true},
|
|
type: {type: UserType, default: UserType::Normal},
|
|
)
|
|
end
|