package v1

type CCListRequest struct {
	Uid int64 `json:"uid" form:"uid" validate:"required"`
	HostId int64 `json:"hostId" form:"hostId" validate:"required"`
	WebId int64 `json:"webId" form:"webId" validate:"required"`
}


type CCList struct {
	Value string `json:"value" form:"value" gorm:"column:value"`
	Type string `json:"type" form:"type" gorm:"column:type"`
	Reason string `json:"reason" form:"reason" gorm:"column:reason"`
	SourceURL string `json:"sourceURL" form:"sourceURL" gorm:"column:sourceURL"`
	SourceUserAgent string `json:"sourceUserAgent" form:"sourceUserAgent" gorm:"column:sourceUserAgent"`
	CreatedAt int64 `json:"createdAt" form:"createdAt" gorm:"column:createdAt"`
	ExpiredAt int64 `json:"expiredAt" form:"expiredAt" gorm:"column:expiredAt"`
}

type CCListResponse struct {
	Value string `json:"value" form:"value"`
	Type string `json:"type" form:"type"`
	Reason string `json:"reason" form:"reason"`
	SourceURL string `json:"sourceURL" form:"sourceURL"`
	SourceUserAgent string `json:"sourceUserAgent" form:"sourceUserAgent"`
	CreatedAt string `json:"createdAt" form:"createdAt"`
	ExpiredAt string `json:"expiredAt" form:"expiredAt"`
}

type CCStateRequest struct {
	Uid int64 `json:"uid" form:"uid" validate:"required"`
	Ips []string `json:"ips" form:"ips" validate:"required"`
	HostId int64 `json:"hostId" form:"hostId" validate:"required"`
	WebId int64 `json:"webId" form:"webId" validate:"required"`
}