package gmodel

import (
	"gorm.io/gorm"
	"time"
)

// ldap_group 权限组表
type LdapGroup struct {
	Id       int64      `gorm:"primary_key;default:0;auto_increment;" json:"id"` //
	Type     *string    `gorm:"default:'';" json:"type"`                         //
	Name     *string    `gorm:"default:'';" json:"name"`                         //
	Keyword  *string    `gorm:"default:'';" json:"keyword"`                      //
	Remark   *string    `gorm:"default:'';" json:"remark"`                       //
	Status   *int64     `gorm:"default:1;" json:"status"`                        // 1正常, 2禁用
	Sort     *int64     `gorm:"default:999;" json:"sort"`                        // 分组排序(排序越大权限越低, 不能查看比自己序号小的角色, 不能编辑同序号用户权限, 排序为1表示超级管理员)
	Metadata *[]byte    `gorm:"default:'';" json:"metadata"`                     //
	Ctime    *time.Time `gorm:"default:'0000-00-00 00:00:00';" json:"ctime"`     //
	Utime    *time.Time `gorm:"default:'0000-00-00 00:00:00';" json:"utime"`     //
}
type LdapGroupModel struct {
	db   *gorm.DB
	name string
}

func NewLdapGroupModel(db *gorm.DB) *LdapGroupModel {
	return &LdapGroupModel{db: db, name: "ldap_group"}
}