28 lines
747 B
Go
28 lines
747 B
Go
|
package model
|
||
|
|
||
|
import (
|
||
|
"time"
|
||
|
|
||
|
"gitea.dwysokinski.me/twhelp/dcbot/internal/domain"
|
||
|
"github.com/google/uuid"
|
||
|
"github.com/uptrace/bun"
|
||
|
)
|
||
|
|
||
|
type Monitor struct {
|
||
|
bun.BaseModel `bun:"base_model,table:monitors,alias:monitor"`
|
||
|
|
||
|
ID uuid.UUID `bun:"id,type:uuid,pk,default:gen_random_uuid()"`
|
||
|
GroupID uuid.UUID `bun:"group_id,type:uuid,notnull,unique:monitors_group_id_tribe_id_key"`
|
||
|
TribeID int64 `bun:"tribe_id,notnull,unique:monitors_group_id_tribe_id_key"`
|
||
|
CreatedAt time.Time `bun:"created_at,nullzero,notnull,default:current_timestamp"`
|
||
|
}
|
||
|
|
||
|
func (m Monitor) ToDomain() domain.Monitor {
|
||
|
return domain.Monitor{
|
||
|
ID: m.ID.String(),
|
||
|
GroupID: m.GroupID.String(),
|
||
|
TribeID: m.TribeID,
|
||
|
CreatedAt: m.CreatedAt,
|
||
|
}
|
||
|
}
|