ldap-1-backend/model/group.go

39 lines
1.8 KiB
Go
Raw Normal View History

2022-05-18 17:57:03 +08:00
package model
import (
"gorm.io/gorm"
)
2022-05-18 17:57:03 +08:00
type Group struct {
gorm.Model
GroupName string `gorm:"type:varchar(128);comment:'分组名称'" json:"groupName"`
Remark string `gorm:"type:varchar(128);comment:'分组中文说明'" json:"remark"`
Creator string `gorm:"type:varchar(20);comment:'创建人'" json:"creator"`
GroupType string `gorm:"type:varchar(20);comment:'分组类型cn、ou'" json:"groupType"`
Users []*User `gorm:"many2many:group_users" json:"users"`
ParentId uint `gorm:"default:0;comment:'父组编号(编号为0时表示根组)'" json:"parentId"`
SourceDeptId string `gorm:"type:varchar(100);comment:'部门编号'" json:"sourceDeptId"`
Source string `gorm:"type:varchar(20);comment:'来源dingTalk、weCom、ldap、platform'" json:"source"`
SourceDeptParentId string `gorm:"type:varchar(100);comment:'父部门编号'" json:"sourceDeptParentId"`
SourceUserNum int `gorm:"default:0;comment:'部门下的用户数量,从第三方获取的数据'" json:"source_user_num"`
Children []*Group `gorm:"-" json:"children"`
GroupDN string `gorm:"type:varchar(255);not null;comment:'分组dn'" json:"groupDn"` // 分组在ldap的dn
SyncState uint `gorm:"type:tinyint(1);default:1;comment:'同步状态:1已同步, 2未同步'" json:"syncState"` // 数据到ldap的同步状态
2022-05-18 17:57:03 +08:00
}
func (g *Group) SetGroupName(groupName string) {
g.GroupName = groupName
}
func (g *Group) SetRemark(remark string) {
g.Remark = remark
}
func (g *Group) SetSourceDeptId(sourceDeptId string) {
g.SourceDeptId = sourceDeptId
}
func (g *Group) SetSourceDeptParentId(sourceDeptParentId string) {
g.SourceDeptParentId = sourceDeptParentId
}