diff --git a/go.mod b/go.mod index d0814ae..a30f942 100644 --- a/go.mod +++ b/go.mod @@ -10,6 +10,7 @@ require ( require ( github.com/golang-jwt/jwt v3.2.2+incompatible // indirect + github.com/google/uuid v1.3.0 // indirect github.com/jackc/pgpassfile v1.0.0 // indirect github.com/jackc/pgservicefile v0.0.0-20221227161230-091c0ba34f0a // indirect github.com/jackc/pgx/v5 v5.3.1 // indirect diff --git a/go.sum b/go.sum index cb25674..fe68b29 100644 --- a/go.sum +++ b/go.sum @@ -3,6 +3,8 @@ github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/golang-jwt/jwt v3.2.2+incompatible h1:IfV12K8xAKAnZqdXVzCZ+TOjboZ2keLg81eXfW3O+oY= github.com/golang-jwt/jwt v3.2.2+incompatible/go.mod h1:8pz2t5EyA70fFQQSrl6XZXzqecmYZeUEB8OUGHkxJ+I= +github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= +github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/jackc/pgpassfile v1.0.0 h1:/6Hmqy13Ss2zCq62VdNG8tM1wchn8zjSGOBJ6icpsIM= github.com/jackc/pgpassfile v1.0.0/go.mod h1:CEx0iS5ambNFdcRtxPj5JhEz+xB6uRky5eyVu/W2HEg= github.com/jackc/pgservicefile v0.0.0-20221227161230-091c0ba34f0a h1:bbPeKD0xmW/Y25WS6cokEszi5g+S0QxI/d45PkRi7Nk= diff --git a/model/organization.go b/model/organization.go index 9f3b9f9..7e53592 100644 --- a/model/organization.go +++ b/model/organization.go @@ -1,8 +1,12 @@ package model -import "gorm.io/gorm" +import ( + "github.com/google/uuid" + "gorm.io/gorm" +) type Organization struct { + ID uuid.UUID `gorm:"type:uuid;default:gen_random_uuid();primarykey"` gorm.Model Name string `json:"name" gorm:"unique;index"` ParentID uint `json:"parent_id"` diff --git a/model/position.go b/model/position.go index 248ee0b..5e26bbc 100644 --- a/model/position.go +++ b/model/position.go @@ -1,8 +1,12 @@ package model -import "gorm.io/gorm" +import ( + "github.com/google/uuid" + "gorm.io/gorm" +) type Position struct { + ID uuid.UUID `gorm:"type:uuid;default:gen_random_uuid();primarykey"` gorm.Model Name string `json:"name" gorm:"unique;index"` RightMask int `json:"right_mask"` diff --git a/model/user.go b/model/user.go index 77ad261..274974d 100644 --- a/model/user.go +++ b/model/user.go @@ -1,9 +1,13 @@ package model -import "gorm.io/gorm" +import ( + "github.com/google/uuid" + "gorm.io/gorm" +) type ( User struct { + ID uuid.UUID `gorm:"type:uuid;default:gen_random_uuid();primarykey"` gorm.Model APIUser Position Position `gorm:"-:migration"`