package entity

import (
	"backend/pkg/permission/domain/permission"

	"go.mongodb.org/mongo-driver/v2/bson"
)

// RolePermission 角色權限關聯實體 (MongoDB)
type RolePermission struct {
	ID           bson.ObjectID `bson:"_id,omitempty" json:"id"`
	RoleID       bson.ObjectID `bson:"role_id" json:"role_id"`
	PermissionID bson.ObjectID `bson:"permission_id" json:"permission_id"`

	permission.TimeStamp `bson:",inline"`
}

// CollectionName 集合名稱
func (rp *RolePermission) CollectionName() string {
	return "role_permission"
}

//// Validate 驗證資料
//func (rp *RolePermission) Validate() error {
//	if rp.RoleID.IsZero() {
//		return ErrInvalidData("role_id is required")
//	}
//	if rp.PermissionID.IsZero() {
//		return ErrInvalidData("permission_id is required")
//	}
//	return nil
//}
