// Code generated by ent, DO NOT EDIT.

package agentbase

import (
	"wechat-api/ent/predicate"

	"entgo.io/ent/dialect/sql"
	"entgo.io/ent/dialect/sql/sqlgraph"
)

// ID filters vertices based on their ID field.
func ID(id string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldEQ(FieldID, id))
}

// IDEQ applies the EQ predicate on the ID field.
func IDEQ(id string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldEQ(FieldID, id))
}

// IDNEQ applies the NEQ predicate on the ID field.
func IDNEQ(id string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldNEQ(FieldID, id))
}

// IDIn applies the In predicate on the ID field.
func IDIn(ids ...string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldIn(FieldID, ids...))
}

// IDNotIn applies the NotIn predicate on the ID field.
func IDNotIn(ids ...string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldNotIn(FieldID, ids...))
}

// IDGT applies the GT predicate on the ID field.
func IDGT(id string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldGT(FieldID, id))
}

// IDGTE applies the GTE predicate on the ID field.
func IDGTE(id string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldGTE(FieldID, id))
}

// IDLT applies the LT predicate on the ID field.
func IDLT(id string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldLT(FieldID, id))
}

// IDLTE applies the LTE predicate on the ID field.
func IDLTE(id string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldLTE(FieldID, id))
}

// IDEqualFold applies the EqualFold predicate on the ID field.
func IDEqualFold(id string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldEqualFold(FieldID, id))
}

// IDContainsFold applies the ContainsFold predicate on the ID field.
func IDContainsFold(id string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldContainsFold(FieldID, id))
}

// Q applies equality check predicate on the "q" field. It's identical to QEQ.
func Q(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldEQ(FieldQ, v))
}

// A applies equality check predicate on the "a" field. It's identical to AEQ.
func A(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldEQ(FieldA, v))
}

// ChunkIndex applies equality check predicate on the "chunk_index" field. It's identical to ChunkIndexEQ.
func ChunkIndex(v uint64) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldEQ(FieldChunkIndex, v))
}

// DatasetID applies equality check predicate on the "dataset_id" field. It's identical to DatasetIDEQ.
func DatasetID(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldEQ(FieldDatasetID, v))
}

// CollectionID applies equality check predicate on the "collection_id" field. It's identical to CollectionIDEQ.
func CollectionID(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldEQ(FieldCollectionID, v))
}

// SourceName applies equality check predicate on the "source_name" field. It's identical to SourceNameEQ.
func SourceName(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldEQ(FieldSourceName, v))
}

// QEQ applies the EQ predicate on the "q" field.
func QEQ(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldEQ(FieldQ, v))
}

// QNEQ applies the NEQ predicate on the "q" field.
func QNEQ(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldNEQ(FieldQ, v))
}

// QIn applies the In predicate on the "q" field.
func QIn(vs ...string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldIn(FieldQ, vs...))
}

// QNotIn applies the NotIn predicate on the "q" field.
func QNotIn(vs ...string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldNotIn(FieldQ, vs...))
}

// QGT applies the GT predicate on the "q" field.
func QGT(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldGT(FieldQ, v))
}

// QGTE applies the GTE predicate on the "q" field.
func QGTE(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldGTE(FieldQ, v))
}

// QLT applies the LT predicate on the "q" field.
func QLT(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldLT(FieldQ, v))
}

// QLTE applies the LTE predicate on the "q" field.
func QLTE(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldLTE(FieldQ, v))
}

// QContains applies the Contains predicate on the "q" field.
func QContains(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldContains(FieldQ, v))
}

// QHasPrefix applies the HasPrefix predicate on the "q" field.
func QHasPrefix(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldHasPrefix(FieldQ, v))
}

// QHasSuffix applies the HasSuffix predicate on the "q" field.
func QHasSuffix(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldHasSuffix(FieldQ, v))
}

// QIsNil applies the IsNil predicate on the "q" field.
func QIsNil() predicate.AgentBase {
	return predicate.AgentBase(sql.FieldIsNull(FieldQ))
}

// QNotNil applies the NotNil predicate on the "q" field.
func QNotNil() predicate.AgentBase {
	return predicate.AgentBase(sql.FieldNotNull(FieldQ))
}

// QEqualFold applies the EqualFold predicate on the "q" field.
func QEqualFold(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldEqualFold(FieldQ, v))
}

// QContainsFold applies the ContainsFold predicate on the "q" field.
func QContainsFold(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldContainsFold(FieldQ, v))
}

// AEQ applies the EQ predicate on the "a" field.
func AEQ(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldEQ(FieldA, v))
}

// ANEQ applies the NEQ predicate on the "a" field.
func ANEQ(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldNEQ(FieldA, v))
}

// AIn applies the In predicate on the "a" field.
func AIn(vs ...string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldIn(FieldA, vs...))
}

// ANotIn applies the NotIn predicate on the "a" field.
func ANotIn(vs ...string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldNotIn(FieldA, vs...))
}

// AGT applies the GT predicate on the "a" field.
func AGT(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldGT(FieldA, v))
}

// AGTE applies the GTE predicate on the "a" field.
func AGTE(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldGTE(FieldA, v))
}

// ALT applies the LT predicate on the "a" field.
func ALT(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldLT(FieldA, v))
}

// ALTE applies the LTE predicate on the "a" field.
func ALTE(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldLTE(FieldA, v))
}

// AContains applies the Contains predicate on the "a" field.
func AContains(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldContains(FieldA, v))
}

// AHasPrefix applies the HasPrefix predicate on the "a" field.
func AHasPrefix(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldHasPrefix(FieldA, v))
}

// AHasSuffix applies the HasSuffix predicate on the "a" field.
func AHasSuffix(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldHasSuffix(FieldA, v))
}

// AIsNil applies the IsNil predicate on the "a" field.
func AIsNil() predicate.AgentBase {
	return predicate.AgentBase(sql.FieldIsNull(FieldA))
}

// ANotNil applies the NotNil predicate on the "a" field.
func ANotNil() predicate.AgentBase {
	return predicate.AgentBase(sql.FieldNotNull(FieldA))
}

// AEqualFold applies the EqualFold predicate on the "a" field.
func AEqualFold(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldEqualFold(FieldA, v))
}

// AContainsFold applies the ContainsFold predicate on the "a" field.
func AContainsFold(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldContainsFold(FieldA, v))
}

// ChunkIndexEQ applies the EQ predicate on the "chunk_index" field.
func ChunkIndexEQ(v uint64) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldEQ(FieldChunkIndex, v))
}

// ChunkIndexNEQ applies the NEQ predicate on the "chunk_index" field.
func ChunkIndexNEQ(v uint64) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldNEQ(FieldChunkIndex, v))
}

// ChunkIndexIn applies the In predicate on the "chunk_index" field.
func ChunkIndexIn(vs ...uint64) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldIn(FieldChunkIndex, vs...))
}

// ChunkIndexNotIn applies the NotIn predicate on the "chunk_index" field.
func ChunkIndexNotIn(vs ...uint64) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldNotIn(FieldChunkIndex, vs...))
}

// ChunkIndexGT applies the GT predicate on the "chunk_index" field.
func ChunkIndexGT(v uint64) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldGT(FieldChunkIndex, v))
}

// ChunkIndexGTE applies the GTE predicate on the "chunk_index" field.
func ChunkIndexGTE(v uint64) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldGTE(FieldChunkIndex, v))
}

// ChunkIndexLT applies the LT predicate on the "chunk_index" field.
func ChunkIndexLT(v uint64) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldLT(FieldChunkIndex, v))
}

// ChunkIndexLTE applies the LTE predicate on the "chunk_index" field.
func ChunkIndexLTE(v uint64) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldLTE(FieldChunkIndex, v))
}

// IndexesIsNil applies the IsNil predicate on the "indexes" field.
func IndexesIsNil() predicate.AgentBase {
	return predicate.AgentBase(sql.FieldIsNull(FieldIndexes))
}

// IndexesNotNil applies the NotNil predicate on the "indexes" field.
func IndexesNotNil() predicate.AgentBase {
	return predicate.AgentBase(sql.FieldNotNull(FieldIndexes))
}

// DatasetIDEQ applies the EQ predicate on the "dataset_id" field.
func DatasetIDEQ(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldEQ(FieldDatasetID, v))
}

// DatasetIDNEQ applies the NEQ predicate on the "dataset_id" field.
func DatasetIDNEQ(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldNEQ(FieldDatasetID, v))
}

// DatasetIDIn applies the In predicate on the "dataset_id" field.
func DatasetIDIn(vs ...string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldIn(FieldDatasetID, vs...))
}

// DatasetIDNotIn applies the NotIn predicate on the "dataset_id" field.
func DatasetIDNotIn(vs ...string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldNotIn(FieldDatasetID, vs...))
}

// DatasetIDGT applies the GT predicate on the "dataset_id" field.
func DatasetIDGT(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldGT(FieldDatasetID, v))
}

// DatasetIDGTE applies the GTE predicate on the "dataset_id" field.
func DatasetIDGTE(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldGTE(FieldDatasetID, v))
}

// DatasetIDLT applies the LT predicate on the "dataset_id" field.
func DatasetIDLT(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldLT(FieldDatasetID, v))
}

// DatasetIDLTE applies the LTE predicate on the "dataset_id" field.
func DatasetIDLTE(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldLTE(FieldDatasetID, v))
}

// DatasetIDContains applies the Contains predicate on the "dataset_id" field.
func DatasetIDContains(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldContains(FieldDatasetID, v))
}

// DatasetIDHasPrefix applies the HasPrefix predicate on the "dataset_id" field.
func DatasetIDHasPrefix(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldHasPrefix(FieldDatasetID, v))
}

// DatasetIDHasSuffix applies the HasSuffix predicate on the "dataset_id" field.
func DatasetIDHasSuffix(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldHasSuffix(FieldDatasetID, v))
}

// DatasetIDIsNil applies the IsNil predicate on the "dataset_id" field.
func DatasetIDIsNil() predicate.AgentBase {
	return predicate.AgentBase(sql.FieldIsNull(FieldDatasetID))
}

// DatasetIDNotNil applies the NotNil predicate on the "dataset_id" field.
func DatasetIDNotNil() predicate.AgentBase {
	return predicate.AgentBase(sql.FieldNotNull(FieldDatasetID))
}

// DatasetIDEqualFold applies the EqualFold predicate on the "dataset_id" field.
func DatasetIDEqualFold(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldEqualFold(FieldDatasetID, v))
}

// DatasetIDContainsFold applies the ContainsFold predicate on the "dataset_id" field.
func DatasetIDContainsFold(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldContainsFold(FieldDatasetID, v))
}

// CollectionIDEQ applies the EQ predicate on the "collection_id" field.
func CollectionIDEQ(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldEQ(FieldCollectionID, v))
}

// CollectionIDNEQ applies the NEQ predicate on the "collection_id" field.
func CollectionIDNEQ(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldNEQ(FieldCollectionID, v))
}

// CollectionIDIn applies the In predicate on the "collection_id" field.
func CollectionIDIn(vs ...string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldIn(FieldCollectionID, vs...))
}

// CollectionIDNotIn applies the NotIn predicate on the "collection_id" field.
func CollectionIDNotIn(vs ...string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldNotIn(FieldCollectionID, vs...))
}

// CollectionIDGT applies the GT predicate on the "collection_id" field.
func CollectionIDGT(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldGT(FieldCollectionID, v))
}

// CollectionIDGTE applies the GTE predicate on the "collection_id" field.
func CollectionIDGTE(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldGTE(FieldCollectionID, v))
}

// CollectionIDLT applies the LT predicate on the "collection_id" field.
func CollectionIDLT(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldLT(FieldCollectionID, v))
}

// CollectionIDLTE applies the LTE predicate on the "collection_id" field.
func CollectionIDLTE(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldLTE(FieldCollectionID, v))
}

// CollectionIDContains applies the Contains predicate on the "collection_id" field.
func CollectionIDContains(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldContains(FieldCollectionID, v))
}

// CollectionIDHasPrefix applies the HasPrefix predicate on the "collection_id" field.
func CollectionIDHasPrefix(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldHasPrefix(FieldCollectionID, v))
}

// CollectionIDHasSuffix applies the HasSuffix predicate on the "collection_id" field.
func CollectionIDHasSuffix(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldHasSuffix(FieldCollectionID, v))
}

// CollectionIDIsNil applies the IsNil predicate on the "collection_id" field.
func CollectionIDIsNil() predicate.AgentBase {
	return predicate.AgentBase(sql.FieldIsNull(FieldCollectionID))
}

// CollectionIDNotNil applies the NotNil predicate on the "collection_id" field.
func CollectionIDNotNil() predicate.AgentBase {
	return predicate.AgentBase(sql.FieldNotNull(FieldCollectionID))
}

// CollectionIDEqualFold applies the EqualFold predicate on the "collection_id" field.
func CollectionIDEqualFold(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldEqualFold(FieldCollectionID, v))
}

// CollectionIDContainsFold applies the ContainsFold predicate on the "collection_id" field.
func CollectionIDContainsFold(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldContainsFold(FieldCollectionID, v))
}

// SourceNameEQ applies the EQ predicate on the "source_name" field.
func SourceNameEQ(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldEQ(FieldSourceName, v))
}

// SourceNameNEQ applies the NEQ predicate on the "source_name" field.
func SourceNameNEQ(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldNEQ(FieldSourceName, v))
}

// SourceNameIn applies the In predicate on the "source_name" field.
func SourceNameIn(vs ...string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldIn(FieldSourceName, vs...))
}

// SourceNameNotIn applies the NotIn predicate on the "source_name" field.
func SourceNameNotIn(vs ...string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldNotIn(FieldSourceName, vs...))
}

// SourceNameGT applies the GT predicate on the "source_name" field.
func SourceNameGT(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldGT(FieldSourceName, v))
}

// SourceNameGTE applies the GTE predicate on the "source_name" field.
func SourceNameGTE(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldGTE(FieldSourceName, v))
}

// SourceNameLT applies the LT predicate on the "source_name" field.
func SourceNameLT(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldLT(FieldSourceName, v))
}

// SourceNameLTE applies the LTE predicate on the "source_name" field.
func SourceNameLTE(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldLTE(FieldSourceName, v))
}

// SourceNameContains applies the Contains predicate on the "source_name" field.
func SourceNameContains(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldContains(FieldSourceName, v))
}

// SourceNameHasPrefix applies the HasPrefix predicate on the "source_name" field.
func SourceNameHasPrefix(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldHasPrefix(FieldSourceName, v))
}

// SourceNameHasSuffix applies the HasSuffix predicate on the "source_name" field.
func SourceNameHasSuffix(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldHasSuffix(FieldSourceName, v))
}

// SourceNameIsNil applies the IsNil predicate on the "source_name" field.
func SourceNameIsNil() predicate.AgentBase {
	return predicate.AgentBase(sql.FieldIsNull(FieldSourceName))
}

// SourceNameNotNil applies the NotNil predicate on the "source_name" field.
func SourceNameNotNil() predicate.AgentBase {
	return predicate.AgentBase(sql.FieldNotNull(FieldSourceName))
}

// SourceNameEqualFold applies the EqualFold predicate on the "source_name" field.
func SourceNameEqualFold(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldEqualFold(FieldSourceName, v))
}

// SourceNameContainsFold applies the ContainsFold predicate on the "source_name" field.
func SourceNameContainsFold(v string) predicate.AgentBase {
	return predicate.AgentBase(sql.FieldContainsFold(FieldSourceName, v))
}

// CanWriteIsNil applies the IsNil predicate on the "can_write" field.
func CanWriteIsNil() predicate.AgentBase {
	return predicate.AgentBase(sql.FieldIsNull(FieldCanWrite))
}

// CanWriteNotNil applies the NotNil predicate on the "can_write" field.
func CanWriteNotNil() predicate.AgentBase {
	return predicate.AgentBase(sql.FieldNotNull(FieldCanWrite))
}

// IsOwnerIsNil applies the IsNil predicate on the "is_owner" field.
func IsOwnerIsNil() predicate.AgentBase {
	return predicate.AgentBase(sql.FieldIsNull(FieldIsOwner))
}

// IsOwnerNotNil applies the NotNil predicate on the "is_owner" field.
func IsOwnerNotNil() predicate.AgentBase {
	return predicate.AgentBase(sql.FieldNotNull(FieldIsOwner))
}

// HasWxAgent applies the HasEdge predicate on the "wx_agent" edge.
func HasWxAgent() predicate.AgentBase {
	return predicate.AgentBase(func(s *sql.Selector) {
		step := sqlgraph.NewStep(
			sqlgraph.From(Table, FieldID),
			sqlgraph.Edge(sqlgraph.O2M, false, WxAgentTable, WxAgentColumn),
		)
		sqlgraph.HasNeighbors(s, step)
	})
}

// HasWxAgentWith applies the HasEdge predicate on the "wx_agent" edge with a given conditions (other predicates).
func HasWxAgentWith(preds ...predicate.Wx) predicate.AgentBase {
	return predicate.AgentBase(func(s *sql.Selector) {
		step := newWxAgentStep()
		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.AgentBase) predicate.AgentBase {
	return predicate.AgentBase(sql.AndPredicates(predicates...))
}

// Or groups predicates with the OR operator between them.
func Or(predicates ...predicate.AgentBase) predicate.AgentBase {
	return predicate.AgentBase(sql.OrPredicates(predicates...))
}

// Not applies the not operator on the given predicate.
func Not(p predicate.AgentBase) predicate.AgentBase {
	return predicate.AgentBase(sql.NotPredicates(p))
}
