Problem:
Upstream channels can reject monitor probes based on client fingerprint
(e.g. "only Claude Code clients allowed"). The monitor had no way to
customize the outgoing request to bypass such restrictions.
Solution:
Introduce reusable request templates that carry extra_headers plus an
optional body override; monitors reference a template and receive a
snapshot copy on apply. Template edits do NOT auto-propagate — users
must click "apply to associated monitors" to refresh snapshots, so a
bad template edit cannot instantly break all production monitors.
Data model (migration 112):
- channel_monitor_request_templates: id, name, provider, description,
extra_headers jsonb, body_override_mode ('off'|'merge'|'replace'),
body_override jsonb. Unique (provider, name).
- channel_monitors: +template_id (FK, ON DELETE SET NULL), +extra_headers,
+body_override_mode, +body_override (the three runtime snapshot fields).
Checker (channel_monitor_checker.go):
- callProvider + runCheckForModel accept a CheckOptions carrying the
snapshot fields. mergeHeaders applies user headers on top of adapter
defaults (forbidden list: Host / Content-Length / Transfer-Encoding /
Connection / Content-Encoding).
- buildRequestBody:
off -> adapter default body
merge -> shallow-merge over default; per-provider deny list
(model/messages/contents) protects the challenge contract
replace -> user body verbatim
- Replace mode skips challenge validation; instead HTTP 2xx + non-empty
extracted response text = operational, empty = failed.
- 4 new unit tests cover all three modes + replace/empty-response case.
Admin API:
- /admin/channel-monitor-templates CRUD + /:id/apply (overwrite snapshot
on all template_id=id monitors, returns affected count).
- channel_monitor request/response DTOs gain the 4 new fields.
Frontend:
- channelMonitorTemplate.ts API client.
- MonitorAdvancedRequestConfig.vue shared component for headers textarea
+ body mode radio + body JSON editor; used by both template and monitor
forms.
- MonitorTemplateManagerDialog.vue: provider tabs, list/create/edit/
delete/apply, live "associated monitors" count per row.
- MonitorFiltersBar: new 模板管理 button next to 新增监控.
- MonitorFormDialog: collapsible 高级 section with template dropdown
(filtered by form.provider, clears on provider change) + embedded
AdvancedRequestConfig. Picking a template copies its fields into the
form (snapshot semantics mirrored on the client).
- i18n zh/en entries for all new copy.
chore: bump version to 0.1.114.32
886 lines
35 KiB
Go
886 lines
35 KiB
Go
// Code generated by ent, DO NOT EDIT.
|
|
|
|
package channelmonitor
|
|
|
|
import (
|
|
"time"
|
|
|
|
"entgo.io/ent/dialect/sql"
|
|
"entgo.io/ent/dialect/sql/sqlgraph"
|
|
"github.com/Wei-Shaw/sub2api/ent/predicate"
|
|
)
|
|
|
|
// ID filters vertices based on their ID field.
|
|
func ID(id int64) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldID, id))
|
|
}
|
|
|
|
// IDEQ applies the EQ predicate on the ID field.
|
|
func IDEQ(id int64) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldID, id))
|
|
}
|
|
|
|
// IDNEQ applies the NEQ predicate on the ID field.
|
|
func IDNEQ(id int64) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNEQ(FieldID, id))
|
|
}
|
|
|
|
// IDIn applies the In predicate on the ID field.
|
|
func IDIn(ids ...int64) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldIn(FieldID, ids...))
|
|
}
|
|
|
|
// IDNotIn applies the NotIn predicate on the ID field.
|
|
func IDNotIn(ids ...int64) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNotIn(FieldID, ids...))
|
|
}
|
|
|
|
// IDGT applies the GT predicate on the ID field.
|
|
func IDGT(id int64) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGT(FieldID, id))
|
|
}
|
|
|
|
// IDGTE applies the GTE predicate on the ID field.
|
|
func IDGTE(id int64) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGTE(FieldID, id))
|
|
}
|
|
|
|
// IDLT applies the LT predicate on the ID field.
|
|
func IDLT(id int64) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLT(FieldID, id))
|
|
}
|
|
|
|
// IDLTE applies the LTE predicate on the ID field.
|
|
func IDLTE(id int64) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLTE(FieldID, id))
|
|
}
|
|
|
|
// CreatedAt applies equality check predicate on the "created_at" field. It's identical to CreatedAtEQ.
|
|
func CreatedAt(v time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldCreatedAt, v))
|
|
}
|
|
|
|
// UpdatedAt applies equality check predicate on the "updated_at" field. It's identical to UpdatedAtEQ.
|
|
func UpdatedAt(v time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldUpdatedAt, v))
|
|
}
|
|
|
|
// Name applies equality check predicate on the "name" field. It's identical to NameEQ.
|
|
func Name(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldName, v))
|
|
}
|
|
|
|
// Endpoint applies equality check predicate on the "endpoint" field. It's identical to EndpointEQ.
|
|
func Endpoint(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldEndpoint, v))
|
|
}
|
|
|
|
// APIKeyEncrypted applies equality check predicate on the "api_key_encrypted" field. It's identical to APIKeyEncryptedEQ.
|
|
func APIKeyEncrypted(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldAPIKeyEncrypted, v))
|
|
}
|
|
|
|
// PrimaryModel applies equality check predicate on the "primary_model" field. It's identical to PrimaryModelEQ.
|
|
func PrimaryModel(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldPrimaryModel, v))
|
|
}
|
|
|
|
// GroupName applies equality check predicate on the "group_name" field. It's identical to GroupNameEQ.
|
|
func GroupName(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldGroupName, v))
|
|
}
|
|
|
|
// Enabled applies equality check predicate on the "enabled" field. It's identical to EnabledEQ.
|
|
func Enabled(v bool) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldEnabled, v))
|
|
}
|
|
|
|
// IntervalSeconds applies equality check predicate on the "interval_seconds" field. It's identical to IntervalSecondsEQ.
|
|
func IntervalSeconds(v int) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldIntervalSeconds, v))
|
|
}
|
|
|
|
// LastCheckedAt applies equality check predicate on the "last_checked_at" field. It's identical to LastCheckedAtEQ.
|
|
func LastCheckedAt(v time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldLastCheckedAt, v))
|
|
}
|
|
|
|
// CreatedBy applies equality check predicate on the "created_by" field. It's identical to CreatedByEQ.
|
|
func CreatedBy(v int64) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldCreatedBy, v))
|
|
}
|
|
|
|
// TemplateID applies equality check predicate on the "template_id" field. It's identical to TemplateIDEQ.
|
|
func TemplateID(v int64) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldTemplateID, v))
|
|
}
|
|
|
|
// BodyOverrideMode applies equality check predicate on the "body_override_mode" field. It's identical to BodyOverrideModeEQ.
|
|
func BodyOverrideMode(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldBodyOverrideMode, v))
|
|
}
|
|
|
|
// CreatedAtEQ applies the EQ predicate on the "created_at" field.
|
|
func CreatedAtEQ(v time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldCreatedAt, v))
|
|
}
|
|
|
|
// CreatedAtNEQ applies the NEQ predicate on the "created_at" field.
|
|
func CreatedAtNEQ(v time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNEQ(FieldCreatedAt, v))
|
|
}
|
|
|
|
// CreatedAtIn applies the In predicate on the "created_at" field.
|
|
func CreatedAtIn(vs ...time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldIn(FieldCreatedAt, vs...))
|
|
}
|
|
|
|
// CreatedAtNotIn applies the NotIn predicate on the "created_at" field.
|
|
func CreatedAtNotIn(vs ...time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNotIn(FieldCreatedAt, vs...))
|
|
}
|
|
|
|
// CreatedAtGT applies the GT predicate on the "created_at" field.
|
|
func CreatedAtGT(v time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGT(FieldCreatedAt, v))
|
|
}
|
|
|
|
// CreatedAtGTE applies the GTE predicate on the "created_at" field.
|
|
func CreatedAtGTE(v time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGTE(FieldCreatedAt, v))
|
|
}
|
|
|
|
// CreatedAtLT applies the LT predicate on the "created_at" field.
|
|
func CreatedAtLT(v time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLT(FieldCreatedAt, v))
|
|
}
|
|
|
|
// CreatedAtLTE applies the LTE predicate on the "created_at" field.
|
|
func CreatedAtLTE(v time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLTE(FieldCreatedAt, v))
|
|
}
|
|
|
|
// UpdatedAtEQ applies the EQ predicate on the "updated_at" field.
|
|
func UpdatedAtEQ(v time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldUpdatedAt, v))
|
|
}
|
|
|
|
// UpdatedAtNEQ applies the NEQ predicate on the "updated_at" field.
|
|
func UpdatedAtNEQ(v time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNEQ(FieldUpdatedAt, v))
|
|
}
|
|
|
|
// UpdatedAtIn applies the In predicate on the "updated_at" field.
|
|
func UpdatedAtIn(vs ...time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldIn(FieldUpdatedAt, vs...))
|
|
}
|
|
|
|
// UpdatedAtNotIn applies the NotIn predicate on the "updated_at" field.
|
|
func UpdatedAtNotIn(vs ...time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNotIn(FieldUpdatedAt, vs...))
|
|
}
|
|
|
|
// UpdatedAtGT applies the GT predicate on the "updated_at" field.
|
|
func UpdatedAtGT(v time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGT(FieldUpdatedAt, v))
|
|
}
|
|
|
|
// UpdatedAtGTE applies the GTE predicate on the "updated_at" field.
|
|
func UpdatedAtGTE(v time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGTE(FieldUpdatedAt, v))
|
|
}
|
|
|
|
// UpdatedAtLT applies the LT predicate on the "updated_at" field.
|
|
func UpdatedAtLT(v time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLT(FieldUpdatedAt, v))
|
|
}
|
|
|
|
// UpdatedAtLTE applies the LTE predicate on the "updated_at" field.
|
|
func UpdatedAtLTE(v time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLTE(FieldUpdatedAt, v))
|
|
}
|
|
|
|
// NameEQ applies the EQ predicate on the "name" field.
|
|
func NameEQ(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldName, v))
|
|
}
|
|
|
|
// NameNEQ applies the NEQ predicate on the "name" field.
|
|
func NameNEQ(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNEQ(FieldName, v))
|
|
}
|
|
|
|
// NameIn applies the In predicate on the "name" field.
|
|
func NameIn(vs ...string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldIn(FieldName, vs...))
|
|
}
|
|
|
|
// NameNotIn applies the NotIn predicate on the "name" field.
|
|
func NameNotIn(vs ...string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNotIn(FieldName, vs...))
|
|
}
|
|
|
|
// NameGT applies the GT predicate on the "name" field.
|
|
func NameGT(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGT(FieldName, v))
|
|
}
|
|
|
|
// NameGTE applies the GTE predicate on the "name" field.
|
|
func NameGTE(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGTE(FieldName, v))
|
|
}
|
|
|
|
// NameLT applies the LT predicate on the "name" field.
|
|
func NameLT(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLT(FieldName, v))
|
|
}
|
|
|
|
// NameLTE applies the LTE predicate on the "name" field.
|
|
func NameLTE(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLTE(FieldName, v))
|
|
}
|
|
|
|
// NameContains applies the Contains predicate on the "name" field.
|
|
func NameContains(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldContains(FieldName, v))
|
|
}
|
|
|
|
// NameHasPrefix applies the HasPrefix predicate on the "name" field.
|
|
func NameHasPrefix(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldHasPrefix(FieldName, v))
|
|
}
|
|
|
|
// NameHasSuffix applies the HasSuffix predicate on the "name" field.
|
|
func NameHasSuffix(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldHasSuffix(FieldName, v))
|
|
}
|
|
|
|
// NameEqualFold applies the EqualFold predicate on the "name" field.
|
|
func NameEqualFold(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEqualFold(FieldName, v))
|
|
}
|
|
|
|
// NameContainsFold applies the ContainsFold predicate on the "name" field.
|
|
func NameContainsFold(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldContainsFold(FieldName, v))
|
|
}
|
|
|
|
// ProviderEQ applies the EQ predicate on the "provider" field.
|
|
func ProviderEQ(v Provider) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldProvider, v))
|
|
}
|
|
|
|
// ProviderNEQ applies the NEQ predicate on the "provider" field.
|
|
func ProviderNEQ(v Provider) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNEQ(FieldProvider, v))
|
|
}
|
|
|
|
// ProviderIn applies the In predicate on the "provider" field.
|
|
func ProviderIn(vs ...Provider) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldIn(FieldProvider, vs...))
|
|
}
|
|
|
|
// ProviderNotIn applies the NotIn predicate on the "provider" field.
|
|
func ProviderNotIn(vs ...Provider) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNotIn(FieldProvider, vs...))
|
|
}
|
|
|
|
// EndpointEQ applies the EQ predicate on the "endpoint" field.
|
|
func EndpointEQ(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldEndpoint, v))
|
|
}
|
|
|
|
// EndpointNEQ applies the NEQ predicate on the "endpoint" field.
|
|
func EndpointNEQ(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNEQ(FieldEndpoint, v))
|
|
}
|
|
|
|
// EndpointIn applies the In predicate on the "endpoint" field.
|
|
func EndpointIn(vs ...string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldIn(FieldEndpoint, vs...))
|
|
}
|
|
|
|
// EndpointNotIn applies the NotIn predicate on the "endpoint" field.
|
|
func EndpointNotIn(vs ...string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNotIn(FieldEndpoint, vs...))
|
|
}
|
|
|
|
// EndpointGT applies the GT predicate on the "endpoint" field.
|
|
func EndpointGT(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGT(FieldEndpoint, v))
|
|
}
|
|
|
|
// EndpointGTE applies the GTE predicate on the "endpoint" field.
|
|
func EndpointGTE(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGTE(FieldEndpoint, v))
|
|
}
|
|
|
|
// EndpointLT applies the LT predicate on the "endpoint" field.
|
|
func EndpointLT(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLT(FieldEndpoint, v))
|
|
}
|
|
|
|
// EndpointLTE applies the LTE predicate on the "endpoint" field.
|
|
func EndpointLTE(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLTE(FieldEndpoint, v))
|
|
}
|
|
|
|
// EndpointContains applies the Contains predicate on the "endpoint" field.
|
|
func EndpointContains(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldContains(FieldEndpoint, v))
|
|
}
|
|
|
|
// EndpointHasPrefix applies the HasPrefix predicate on the "endpoint" field.
|
|
func EndpointHasPrefix(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldHasPrefix(FieldEndpoint, v))
|
|
}
|
|
|
|
// EndpointHasSuffix applies the HasSuffix predicate on the "endpoint" field.
|
|
func EndpointHasSuffix(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldHasSuffix(FieldEndpoint, v))
|
|
}
|
|
|
|
// EndpointEqualFold applies the EqualFold predicate on the "endpoint" field.
|
|
func EndpointEqualFold(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEqualFold(FieldEndpoint, v))
|
|
}
|
|
|
|
// EndpointContainsFold applies the ContainsFold predicate on the "endpoint" field.
|
|
func EndpointContainsFold(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldContainsFold(FieldEndpoint, v))
|
|
}
|
|
|
|
// APIKeyEncryptedEQ applies the EQ predicate on the "api_key_encrypted" field.
|
|
func APIKeyEncryptedEQ(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldAPIKeyEncrypted, v))
|
|
}
|
|
|
|
// APIKeyEncryptedNEQ applies the NEQ predicate on the "api_key_encrypted" field.
|
|
func APIKeyEncryptedNEQ(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNEQ(FieldAPIKeyEncrypted, v))
|
|
}
|
|
|
|
// APIKeyEncryptedIn applies the In predicate on the "api_key_encrypted" field.
|
|
func APIKeyEncryptedIn(vs ...string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldIn(FieldAPIKeyEncrypted, vs...))
|
|
}
|
|
|
|
// APIKeyEncryptedNotIn applies the NotIn predicate on the "api_key_encrypted" field.
|
|
func APIKeyEncryptedNotIn(vs ...string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNotIn(FieldAPIKeyEncrypted, vs...))
|
|
}
|
|
|
|
// APIKeyEncryptedGT applies the GT predicate on the "api_key_encrypted" field.
|
|
func APIKeyEncryptedGT(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGT(FieldAPIKeyEncrypted, v))
|
|
}
|
|
|
|
// APIKeyEncryptedGTE applies the GTE predicate on the "api_key_encrypted" field.
|
|
func APIKeyEncryptedGTE(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGTE(FieldAPIKeyEncrypted, v))
|
|
}
|
|
|
|
// APIKeyEncryptedLT applies the LT predicate on the "api_key_encrypted" field.
|
|
func APIKeyEncryptedLT(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLT(FieldAPIKeyEncrypted, v))
|
|
}
|
|
|
|
// APIKeyEncryptedLTE applies the LTE predicate on the "api_key_encrypted" field.
|
|
func APIKeyEncryptedLTE(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLTE(FieldAPIKeyEncrypted, v))
|
|
}
|
|
|
|
// APIKeyEncryptedContains applies the Contains predicate on the "api_key_encrypted" field.
|
|
func APIKeyEncryptedContains(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldContains(FieldAPIKeyEncrypted, v))
|
|
}
|
|
|
|
// APIKeyEncryptedHasPrefix applies the HasPrefix predicate on the "api_key_encrypted" field.
|
|
func APIKeyEncryptedHasPrefix(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldHasPrefix(FieldAPIKeyEncrypted, v))
|
|
}
|
|
|
|
// APIKeyEncryptedHasSuffix applies the HasSuffix predicate on the "api_key_encrypted" field.
|
|
func APIKeyEncryptedHasSuffix(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldHasSuffix(FieldAPIKeyEncrypted, v))
|
|
}
|
|
|
|
// APIKeyEncryptedEqualFold applies the EqualFold predicate on the "api_key_encrypted" field.
|
|
func APIKeyEncryptedEqualFold(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEqualFold(FieldAPIKeyEncrypted, v))
|
|
}
|
|
|
|
// APIKeyEncryptedContainsFold applies the ContainsFold predicate on the "api_key_encrypted" field.
|
|
func APIKeyEncryptedContainsFold(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldContainsFold(FieldAPIKeyEncrypted, v))
|
|
}
|
|
|
|
// PrimaryModelEQ applies the EQ predicate on the "primary_model" field.
|
|
func PrimaryModelEQ(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldPrimaryModel, v))
|
|
}
|
|
|
|
// PrimaryModelNEQ applies the NEQ predicate on the "primary_model" field.
|
|
func PrimaryModelNEQ(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNEQ(FieldPrimaryModel, v))
|
|
}
|
|
|
|
// PrimaryModelIn applies the In predicate on the "primary_model" field.
|
|
func PrimaryModelIn(vs ...string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldIn(FieldPrimaryModel, vs...))
|
|
}
|
|
|
|
// PrimaryModelNotIn applies the NotIn predicate on the "primary_model" field.
|
|
func PrimaryModelNotIn(vs ...string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNotIn(FieldPrimaryModel, vs...))
|
|
}
|
|
|
|
// PrimaryModelGT applies the GT predicate on the "primary_model" field.
|
|
func PrimaryModelGT(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGT(FieldPrimaryModel, v))
|
|
}
|
|
|
|
// PrimaryModelGTE applies the GTE predicate on the "primary_model" field.
|
|
func PrimaryModelGTE(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGTE(FieldPrimaryModel, v))
|
|
}
|
|
|
|
// PrimaryModelLT applies the LT predicate on the "primary_model" field.
|
|
func PrimaryModelLT(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLT(FieldPrimaryModel, v))
|
|
}
|
|
|
|
// PrimaryModelLTE applies the LTE predicate on the "primary_model" field.
|
|
func PrimaryModelLTE(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLTE(FieldPrimaryModel, v))
|
|
}
|
|
|
|
// PrimaryModelContains applies the Contains predicate on the "primary_model" field.
|
|
func PrimaryModelContains(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldContains(FieldPrimaryModel, v))
|
|
}
|
|
|
|
// PrimaryModelHasPrefix applies the HasPrefix predicate on the "primary_model" field.
|
|
func PrimaryModelHasPrefix(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldHasPrefix(FieldPrimaryModel, v))
|
|
}
|
|
|
|
// PrimaryModelHasSuffix applies the HasSuffix predicate on the "primary_model" field.
|
|
func PrimaryModelHasSuffix(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldHasSuffix(FieldPrimaryModel, v))
|
|
}
|
|
|
|
// PrimaryModelEqualFold applies the EqualFold predicate on the "primary_model" field.
|
|
func PrimaryModelEqualFold(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEqualFold(FieldPrimaryModel, v))
|
|
}
|
|
|
|
// PrimaryModelContainsFold applies the ContainsFold predicate on the "primary_model" field.
|
|
func PrimaryModelContainsFold(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldContainsFold(FieldPrimaryModel, v))
|
|
}
|
|
|
|
// GroupNameEQ applies the EQ predicate on the "group_name" field.
|
|
func GroupNameEQ(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldGroupName, v))
|
|
}
|
|
|
|
// GroupNameNEQ applies the NEQ predicate on the "group_name" field.
|
|
func GroupNameNEQ(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNEQ(FieldGroupName, v))
|
|
}
|
|
|
|
// GroupNameIn applies the In predicate on the "group_name" field.
|
|
func GroupNameIn(vs ...string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldIn(FieldGroupName, vs...))
|
|
}
|
|
|
|
// GroupNameNotIn applies the NotIn predicate on the "group_name" field.
|
|
func GroupNameNotIn(vs ...string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNotIn(FieldGroupName, vs...))
|
|
}
|
|
|
|
// GroupNameGT applies the GT predicate on the "group_name" field.
|
|
func GroupNameGT(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGT(FieldGroupName, v))
|
|
}
|
|
|
|
// GroupNameGTE applies the GTE predicate on the "group_name" field.
|
|
func GroupNameGTE(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGTE(FieldGroupName, v))
|
|
}
|
|
|
|
// GroupNameLT applies the LT predicate on the "group_name" field.
|
|
func GroupNameLT(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLT(FieldGroupName, v))
|
|
}
|
|
|
|
// GroupNameLTE applies the LTE predicate on the "group_name" field.
|
|
func GroupNameLTE(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLTE(FieldGroupName, v))
|
|
}
|
|
|
|
// GroupNameContains applies the Contains predicate on the "group_name" field.
|
|
func GroupNameContains(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldContains(FieldGroupName, v))
|
|
}
|
|
|
|
// GroupNameHasPrefix applies the HasPrefix predicate on the "group_name" field.
|
|
func GroupNameHasPrefix(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldHasPrefix(FieldGroupName, v))
|
|
}
|
|
|
|
// GroupNameHasSuffix applies the HasSuffix predicate on the "group_name" field.
|
|
func GroupNameHasSuffix(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldHasSuffix(FieldGroupName, v))
|
|
}
|
|
|
|
// GroupNameIsNil applies the IsNil predicate on the "group_name" field.
|
|
func GroupNameIsNil() predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldIsNull(FieldGroupName))
|
|
}
|
|
|
|
// GroupNameNotNil applies the NotNil predicate on the "group_name" field.
|
|
func GroupNameNotNil() predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNotNull(FieldGroupName))
|
|
}
|
|
|
|
// GroupNameEqualFold applies the EqualFold predicate on the "group_name" field.
|
|
func GroupNameEqualFold(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEqualFold(FieldGroupName, v))
|
|
}
|
|
|
|
// GroupNameContainsFold applies the ContainsFold predicate on the "group_name" field.
|
|
func GroupNameContainsFold(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldContainsFold(FieldGroupName, v))
|
|
}
|
|
|
|
// EnabledEQ applies the EQ predicate on the "enabled" field.
|
|
func EnabledEQ(v bool) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldEnabled, v))
|
|
}
|
|
|
|
// EnabledNEQ applies the NEQ predicate on the "enabled" field.
|
|
func EnabledNEQ(v bool) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNEQ(FieldEnabled, v))
|
|
}
|
|
|
|
// IntervalSecondsEQ applies the EQ predicate on the "interval_seconds" field.
|
|
func IntervalSecondsEQ(v int) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldIntervalSeconds, v))
|
|
}
|
|
|
|
// IntervalSecondsNEQ applies the NEQ predicate on the "interval_seconds" field.
|
|
func IntervalSecondsNEQ(v int) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNEQ(FieldIntervalSeconds, v))
|
|
}
|
|
|
|
// IntervalSecondsIn applies the In predicate on the "interval_seconds" field.
|
|
func IntervalSecondsIn(vs ...int) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldIn(FieldIntervalSeconds, vs...))
|
|
}
|
|
|
|
// IntervalSecondsNotIn applies the NotIn predicate on the "interval_seconds" field.
|
|
func IntervalSecondsNotIn(vs ...int) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNotIn(FieldIntervalSeconds, vs...))
|
|
}
|
|
|
|
// IntervalSecondsGT applies the GT predicate on the "interval_seconds" field.
|
|
func IntervalSecondsGT(v int) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGT(FieldIntervalSeconds, v))
|
|
}
|
|
|
|
// IntervalSecondsGTE applies the GTE predicate on the "interval_seconds" field.
|
|
func IntervalSecondsGTE(v int) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGTE(FieldIntervalSeconds, v))
|
|
}
|
|
|
|
// IntervalSecondsLT applies the LT predicate on the "interval_seconds" field.
|
|
func IntervalSecondsLT(v int) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLT(FieldIntervalSeconds, v))
|
|
}
|
|
|
|
// IntervalSecondsLTE applies the LTE predicate on the "interval_seconds" field.
|
|
func IntervalSecondsLTE(v int) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLTE(FieldIntervalSeconds, v))
|
|
}
|
|
|
|
// LastCheckedAtEQ applies the EQ predicate on the "last_checked_at" field.
|
|
func LastCheckedAtEQ(v time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldLastCheckedAt, v))
|
|
}
|
|
|
|
// LastCheckedAtNEQ applies the NEQ predicate on the "last_checked_at" field.
|
|
func LastCheckedAtNEQ(v time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNEQ(FieldLastCheckedAt, v))
|
|
}
|
|
|
|
// LastCheckedAtIn applies the In predicate on the "last_checked_at" field.
|
|
func LastCheckedAtIn(vs ...time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldIn(FieldLastCheckedAt, vs...))
|
|
}
|
|
|
|
// LastCheckedAtNotIn applies the NotIn predicate on the "last_checked_at" field.
|
|
func LastCheckedAtNotIn(vs ...time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNotIn(FieldLastCheckedAt, vs...))
|
|
}
|
|
|
|
// LastCheckedAtGT applies the GT predicate on the "last_checked_at" field.
|
|
func LastCheckedAtGT(v time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGT(FieldLastCheckedAt, v))
|
|
}
|
|
|
|
// LastCheckedAtGTE applies the GTE predicate on the "last_checked_at" field.
|
|
func LastCheckedAtGTE(v time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGTE(FieldLastCheckedAt, v))
|
|
}
|
|
|
|
// LastCheckedAtLT applies the LT predicate on the "last_checked_at" field.
|
|
func LastCheckedAtLT(v time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLT(FieldLastCheckedAt, v))
|
|
}
|
|
|
|
// LastCheckedAtLTE applies the LTE predicate on the "last_checked_at" field.
|
|
func LastCheckedAtLTE(v time.Time) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLTE(FieldLastCheckedAt, v))
|
|
}
|
|
|
|
// LastCheckedAtIsNil applies the IsNil predicate on the "last_checked_at" field.
|
|
func LastCheckedAtIsNil() predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldIsNull(FieldLastCheckedAt))
|
|
}
|
|
|
|
// LastCheckedAtNotNil applies the NotNil predicate on the "last_checked_at" field.
|
|
func LastCheckedAtNotNil() predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNotNull(FieldLastCheckedAt))
|
|
}
|
|
|
|
// CreatedByEQ applies the EQ predicate on the "created_by" field.
|
|
func CreatedByEQ(v int64) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldCreatedBy, v))
|
|
}
|
|
|
|
// CreatedByNEQ applies the NEQ predicate on the "created_by" field.
|
|
func CreatedByNEQ(v int64) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNEQ(FieldCreatedBy, v))
|
|
}
|
|
|
|
// CreatedByIn applies the In predicate on the "created_by" field.
|
|
func CreatedByIn(vs ...int64) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldIn(FieldCreatedBy, vs...))
|
|
}
|
|
|
|
// CreatedByNotIn applies the NotIn predicate on the "created_by" field.
|
|
func CreatedByNotIn(vs ...int64) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNotIn(FieldCreatedBy, vs...))
|
|
}
|
|
|
|
// CreatedByGT applies the GT predicate on the "created_by" field.
|
|
func CreatedByGT(v int64) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGT(FieldCreatedBy, v))
|
|
}
|
|
|
|
// CreatedByGTE applies the GTE predicate on the "created_by" field.
|
|
func CreatedByGTE(v int64) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGTE(FieldCreatedBy, v))
|
|
}
|
|
|
|
// CreatedByLT applies the LT predicate on the "created_by" field.
|
|
func CreatedByLT(v int64) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLT(FieldCreatedBy, v))
|
|
}
|
|
|
|
// CreatedByLTE applies the LTE predicate on the "created_by" field.
|
|
func CreatedByLTE(v int64) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLTE(FieldCreatedBy, v))
|
|
}
|
|
|
|
// TemplateIDEQ applies the EQ predicate on the "template_id" field.
|
|
func TemplateIDEQ(v int64) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldTemplateID, v))
|
|
}
|
|
|
|
// TemplateIDNEQ applies the NEQ predicate on the "template_id" field.
|
|
func TemplateIDNEQ(v int64) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNEQ(FieldTemplateID, v))
|
|
}
|
|
|
|
// TemplateIDIn applies the In predicate on the "template_id" field.
|
|
func TemplateIDIn(vs ...int64) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldIn(FieldTemplateID, vs...))
|
|
}
|
|
|
|
// TemplateIDNotIn applies the NotIn predicate on the "template_id" field.
|
|
func TemplateIDNotIn(vs ...int64) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNotIn(FieldTemplateID, vs...))
|
|
}
|
|
|
|
// TemplateIDIsNil applies the IsNil predicate on the "template_id" field.
|
|
func TemplateIDIsNil() predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldIsNull(FieldTemplateID))
|
|
}
|
|
|
|
// TemplateIDNotNil applies the NotNil predicate on the "template_id" field.
|
|
func TemplateIDNotNil() predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNotNull(FieldTemplateID))
|
|
}
|
|
|
|
// BodyOverrideModeEQ applies the EQ predicate on the "body_override_mode" field.
|
|
func BodyOverrideModeEQ(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEQ(FieldBodyOverrideMode, v))
|
|
}
|
|
|
|
// BodyOverrideModeNEQ applies the NEQ predicate on the "body_override_mode" field.
|
|
func BodyOverrideModeNEQ(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNEQ(FieldBodyOverrideMode, v))
|
|
}
|
|
|
|
// BodyOverrideModeIn applies the In predicate on the "body_override_mode" field.
|
|
func BodyOverrideModeIn(vs ...string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldIn(FieldBodyOverrideMode, vs...))
|
|
}
|
|
|
|
// BodyOverrideModeNotIn applies the NotIn predicate on the "body_override_mode" field.
|
|
func BodyOverrideModeNotIn(vs ...string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNotIn(FieldBodyOverrideMode, vs...))
|
|
}
|
|
|
|
// BodyOverrideModeGT applies the GT predicate on the "body_override_mode" field.
|
|
func BodyOverrideModeGT(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGT(FieldBodyOverrideMode, v))
|
|
}
|
|
|
|
// BodyOverrideModeGTE applies the GTE predicate on the "body_override_mode" field.
|
|
func BodyOverrideModeGTE(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldGTE(FieldBodyOverrideMode, v))
|
|
}
|
|
|
|
// BodyOverrideModeLT applies the LT predicate on the "body_override_mode" field.
|
|
func BodyOverrideModeLT(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLT(FieldBodyOverrideMode, v))
|
|
}
|
|
|
|
// BodyOverrideModeLTE applies the LTE predicate on the "body_override_mode" field.
|
|
func BodyOverrideModeLTE(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldLTE(FieldBodyOverrideMode, v))
|
|
}
|
|
|
|
// BodyOverrideModeContains applies the Contains predicate on the "body_override_mode" field.
|
|
func BodyOverrideModeContains(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldContains(FieldBodyOverrideMode, v))
|
|
}
|
|
|
|
// BodyOverrideModeHasPrefix applies the HasPrefix predicate on the "body_override_mode" field.
|
|
func BodyOverrideModeHasPrefix(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldHasPrefix(FieldBodyOverrideMode, v))
|
|
}
|
|
|
|
// BodyOverrideModeHasSuffix applies the HasSuffix predicate on the "body_override_mode" field.
|
|
func BodyOverrideModeHasSuffix(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldHasSuffix(FieldBodyOverrideMode, v))
|
|
}
|
|
|
|
// BodyOverrideModeEqualFold applies the EqualFold predicate on the "body_override_mode" field.
|
|
func BodyOverrideModeEqualFold(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldEqualFold(FieldBodyOverrideMode, v))
|
|
}
|
|
|
|
// BodyOverrideModeContainsFold applies the ContainsFold predicate on the "body_override_mode" field.
|
|
func BodyOverrideModeContainsFold(v string) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldContainsFold(FieldBodyOverrideMode, v))
|
|
}
|
|
|
|
// BodyOverrideIsNil applies the IsNil predicate on the "body_override" field.
|
|
func BodyOverrideIsNil() predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldIsNull(FieldBodyOverride))
|
|
}
|
|
|
|
// BodyOverrideNotNil applies the NotNil predicate on the "body_override" field.
|
|
func BodyOverrideNotNil() predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.FieldNotNull(FieldBodyOverride))
|
|
}
|
|
|
|
// HasHistory applies the HasEdge predicate on the "history" edge.
|
|
func HasHistory() predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(func(s *sql.Selector) {
|
|
step := sqlgraph.NewStep(
|
|
sqlgraph.From(Table, FieldID),
|
|
sqlgraph.Edge(sqlgraph.O2M, false, HistoryTable, HistoryColumn),
|
|
)
|
|
sqlgraph.HasNeighbors(s, step)
|
|
})
|
|
}
|
|
|
|
// HasHistoryWith applies the HasEdge predicate on the "history" edge with a given conditions (other predicates).
|
|
func HasHistoryWith(preds ...predicate.ChannelMonitorHistory) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(func(s *sql.Selector) {
|
|
step := newHistoryStep()
|
|
sqlgraph.HasNeighborsWith(s, step, func(s *sql.Selector) {
|
|
for _, p := range preds {
|
|
p(s)
|
|
}
|
|
})
|
|
})
|
|
}
|
|
|
|
// HasDailyRollups applies the HasEdge predicate on the "daily_rollups" edge.
|
|
func HasDailyRollups() predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(func(s *sql.Selector) {
|
|
step := sqlgraph.NewStep(
|
|
sqlgraph.From(Table, FieldID),
|
|
sqlgraph.Edge(sqlgraph.O2M, false, DailyRollupsTable, DailyRollupsColumn),
|
|
)
|
|
sqlgraph.HasNeighbors(s, step)
|
|
})
|
|
}
|
|
|
|
// HasDailyRollupsWith applies the HasEdge predicate on the "daily_rollups" edge with a given conditions (other predicates).
|
|
func HasDailyRollupsWith(preds ...predicate.ChannelMonitorDailyRollup) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(func(s *sql.Selector) {
|
|
step := newDailyRollupsStep()
|
|
sqlgraph.HasNeighborsWith(s, step, func(s *sql.Selector) {
|
|
for _, p := range preds {
|
|
p(s)
|
|
}
|
|
})
|
|
})
|
|
}
|
|
|
|
// HasRequestTemplate applies the HasEdge predicate on the "request_template" edge.
|
|
func HasRequestTemplate() predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(func(s *sql.Selector) {
|
|
step := sqlgraph.NewStep(
|
|
sqlgraph.From(Table, FieldID),
|
|
sqlgraph.Edge(sqlgraph.M2O, false, RequestTemplateTable, RequestTemplateColumn),
|
|
)
|
|
sqlgraph.HasNeighbors(s, step)
|
|
})
|
|
}
|
|
|
|
// HasRequestTemplateWith applies the HasEdge predicate on the "request_template" edge with a given conditions (other predicates).
|
|
func HasRequestTemplateWith(preds ...predicate.ChannelMonitorRequestTemplate) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(func(s *sql.Selector) {
|
|
step := newRequestTemplateStep()
|
|
sqlgraph.HasNeighborsWith(s, step, func(s *sql.Selector) {
|
|
for _, p := range preds {
|
|
p(s)
|
|
}
|
|
})
|
|
})
|
|
}
|
|
|
|
// And groups predicates with the AND operator between them.
|
|
func And(predicates ...predicate.ChannelMonitor) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.AndPredicates(predicates...))
|
|
}
|
|
|
|
// Or groups predicates with the OR operator between them.
|
|
func Or(predicates ...predicate.ChannelMonitor) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.OrPredicates(predicates...))
|
|
}
|
|
|
|
// Not applies the not operator on the given predicate.
|
|
func Not(p predicate.ChannelMonitor) predicate.ChannelMonitor {
|
|
return predicate.ChannelMonitor(sql.NotPredicates(p))
|
|
}
|