Files
gochat/internal/model/inbox_limit.go
T
2026-06-04 15:44:48 +08:00

21 lines
949 B
Go

package model
// InboxLimit represents a constraint/limit applied to an inbox (e.g. max conversation count).
// Reference: Chatwoot app/models/inbox_limit.rb + InboxLimitsController
// Inbox limits control operational constraints for specific inboxes — only create/update/destroy
// (no index or show endpoints in Chatwoot).
//
// Chatwoot compatibility notes:
// - Routes: POST/PATCH/DELETE under inbox scope
// - type field: e.g. "conversation_count", "message_count" — identifies which dimension is limited
// - value field: the numeric limit threshold
type InboxLimit struct {
Base
InboxID uint `gorm:"not null;index" json:"inbox_id"`
Type string `gorm:"size:100;not null" json:"type"`
Value int `gorm:"not null" json:"value"`
Inbox Inbox `gorm:"foreignKey:InboxID" json:"inbox,omitempty"`
}
// TableName returns the database table name for InboxLimit.
func (InboxLimit) TableName() string { return "inbox_limits" }