package v1

import (
	"time"
)

type PCHPermission struct {
	ID         uint64    `json:"id" gorm:"primary_key;AUTO_INCREMENT;column:id"`
	CreatedAt  time.Time `json:"createdAt" gorm:"column:createdAt"`
	UserLarkID string    `json:"userLarkID" gorm:"column:userLarkID;not null"`
	Type       int       `json:"type" gorm:"column:type;not null"`
	// if type is 1, domain is empty
	// if type is 2, domain is for resource management id
	// if type is 3, domain is for lark department id
	Domain string `json:"domain" gorm:"column:domain"`
}

func (r *PCHPermission) TableName() string {
	return "pch_permission"
}

const (
	PCHPermissionTypeAdmin = iota + 1
	PCHPermissionTypeResource
	PCHPermissionTypeDepartment
)
