package subscribe

import (
	"github.com/kamva/mgm/v3"
)

type ModuleSubscribe struct {
	Enabled bool `bson:"enabled" json:"enabled"`

	// 最近一次开启 / 关闭时间
	OpenAt  int64 `bson:"open_at,omitempty"  json:"open_at,omitempty"`
	CloseAt int64 `bson:"close_at,omitempty" json:"close_at,omitempty"`
}

type Subscribe struct {
	mgm.DefaultModel `bson:",inline"`

	// 用户标识
	OpenId   string `bson:"open_id"   json:"open_id"`
	DeviceId string `bson:"device_id" json:"device_id"`

	// 订阅状态集合：key = module, value = 订阅信息
	Modules map[string]*ModuleSubscribe `bson:"modules" json:"modules"`
}
