123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874 |
- // Code generated by ent, DO NOT EDIT.
- package ent
- import (
- "context"
- "fmt"
- "wechat-api/ent/contact"
- "wechat-api/ent/label"
- "wechat-api/ent/labelrelationship"
- "wechat-api/ent/message"
- "wechat-api/ent/messagerecords"
- "wechat-api/ent/server"
- "wechat-api/ent/sopnode"
- "wechat-api/ent/sopstage"
- "wechat-api/ent/soptask"
- "wechat-api/ent/wx"
- )
- const errInvalidPage = "INVALID_PAGE"
- const (
- listField = "list"
- pageNumField = "pageNum"
- pageSizeField = "pageSize"
- )
- type PageDetails struct {
- Page uint64 `json:"page"`
- Size uint64 `json:"size"`
- Total uint64 `json:"total"`
- }
- // OrderDirection defines the directions in which to order a list of items.
- type OrderDirection string
- const (
- // OrderDirectionAsc specifies an ascending order.
- OrderDirectionAsc OrderDirection = "ASC"
- // OrderDirectionDesc specifies a descending order.
- OrderDirectionDesc OrderDirection = "DESC"
- )
- // Validate the order direction value.
- func (o OrderDirection) Validate() error {
- if o != OrderDirectionAsc && o != OrderDirectionDesc {
- return fmt.Errorf("%s is not a valid OrderDirection", o)
- }
- return nil
- }
- // String implements fmt.Stringer interface.
- func (o OrderDirection) String() string {
- return string(o)
- }
- func (o OrderDirection) reverse() OrderDirection {
- if o == OrderDirectionDesc {
- return OrderDirectionAsc
- }
- return OrderDirectionDesc
- }
- const errInvalidPagination = "INVALID_PAGINATION"
- type ContactPager struct {
- Order contact.OrderOption
- Filter func(*ContactQuery) (*ContactQuery, error)
- }
- // ContactPaginateOption enables pagination customization.
- type ContactPaginateOption func(*ContactPager)
- // DefaultContactOrder is the default ordering of Contact.
- var DefaultContactOrder = Desc(contact.FieldID)
- func newContactPager(opts []ContactPaginateOption) (*ContactPager, error) {
- pager := &ContactPager{}
- for _, opt := range opts {
- opt(pager)
- }
- if pager.Order == nil {
- pager.Order = DefaultContactOrder
- }
- return pager, nil
- }
- func (p *ContactPager) ApplyFilter(query *ContactQuery) (*ContactQuery, error) {
- if p.Filter != nil {
- return p.Filter(query)
- }
- return query, nil
- }
- // ContactPageList is Contact PageList result.
- type ContactPageList struct {
- List []*Contact `json:"list"`
- PageDetails *PageDetails `json:"pageDetails"`
- }
- func (c *ContactQuery) Page(
- ctx context.Context, pageNum uint64, pageSize uint64, opts ...ContactPaginateOption,
- ) (*ContactPageList, error) {
- pager, err := newContactPager(opts)
- if err != nil {
- return nil, err
- }
- if c, err = pager.ApplyFilter(c); err != nil {
- return nil, err
- }
- ret := &ContactPageList{}
- ret.PageDetails = &PageDetails{
- Page: pageNum,
- Size: pageSize,
- }
- query := c.Clone()
- query.ctx.Fields = nil
- count, err := query.Count(ctx)
- if err != nil {
- return nil, err
- }
- ret.PageDetails.Total = uint64(count)
- if pager.Order != nil {
- c = c.Order(pager.Order)
- } else {
- c = c.Order(DefaultContactOrder)
- }
- c = c.Offset(int((pageNum - 1) * pageSize)).Limit(int(pageSize))
- list, err := c.All(ctx)
- if err != nil {
- return nil, err
- }
- ret.List = list
- return ret, nil
- }
- type LabelPager struct {
- Order label.OrderOption
- Filter func(*LabelQuery) (*LabelQuery, error)
- }
- // LabelPaginateOption enables pagination customization.
- type LabelPaginateOption func(*LabelPager)
- // DefaultLabelOrder is the default ordering of Label.
- var DefaultLabelOrder = Desc(label.FieldID)
- func newLabelPager(opts []LabelPaginateOption) (*LabelPager, error) {
- pager := &LabelPager{}
- for _, opt := range opts {
- opt(pager)
- }
- if pager.Order == nil {
- pager.Order = DefaultLabelOrder
- }
- return pager, nil
- }
- func (p *LabelPager) ApplyFilter(query *LabelQuery) (*LabelQuery, error) {
- if p.Filter != nil {
- return p.Filter(query)
- }
- return query, nil
- }
- // LabelPageList is Label PageList result.
- type LabelPageList struct {
- List []*Label `json:"list"`
- PageDetails *PageDetails `json:"pageDetails"`
- }
- func (l *LabelQuery) Page(
- ctx context.Context, pageNum uint64, pageSize uint64, opts ...LabelPaginateOption,
- ) (*LabelPageList, error) {
- pager, err := newLabelPager(opts)
- if err != nil {
- return nil, err
- }
- if l, err = pager.ApplyFilter(l); err != nil {
- return nil, err
- }
- ret := &LabelPageList{}
- ret.PageDetails = &PageDetails{
- Page: pageNum,
- Size: pageSize,
- }
- query := l.Clone()
- query.ctx.Fields = nil
- count, err := query.Count(ctx)
- if err != nil {
- return nil, err
- }
- ret.PageDetails.Total = uint64(count)
- if pager.Order != nil {
- l = l.Order(pager.Order)
- } else {
- l = l.Order(DefaultLabelOrder)
- }
- l = l.Offset(int((pageNum - 1) * pageSize)).Limit(int(pageSize))
- list, err := l.All(ctx)
- if err != nil {
- return nil, err
- }
- ret.List = list
- return ret, nil
- }
- type LabelRelationshipPager struct {
- Order labelrelationship.OrderOption
- Filter func(*LabelRelationshipQuery) (*LabelRelationshipQuery, error)
- }
- // LabelRelationshipPaginateOption enables pagination customization.
- type LabelRelationshipPaginateOption func(*LabelRelationshipPager)
- // DefaultLabelRelationshipOrder is the default ordering of LabelRelationship.
- var DefaultLabelRelationshipOrder = Desc(labelrelationship.FieldID)
- func newLabelRelationshipPager(opts []LabelRelationshipPaginateOption) (*LabelRelationshipPager, error) {
- pager := &LabelRelationshipPager{}
- for _, opt := range opts {
- opt(pager)
- }
- if pager.Order == nil {
- pager.Order = DefaultLabelRelationshipOrder
- }
- return pager, nil
- }
- func (p *LabelRelationshipPager) ApplyFilter(query *LabelRelationshipQuery) (*LabelRelationshipQuery, error) {
- if p.Filter != nil {
- return p.Filter(query)
- }
- return query, nil
- }
- // LabelRelationshipPageList is LabelRelationship PageList result.
- type LabelRelationshipPageList struct {
- List []*LabelRelationship `json:"list"`
- PageDetails *PageDetails `json:"pageDetails"`
- }
- func (lr *LabelRelationshipQuery) Page(
- ctx context.Context, pageNum uint64, pageSize uint64, opts ...LabelRelationshipPaginateOption,
- ) (*LabelRelationshipPageList, error) {
- pager, err := newLabelRelationshipPager(opts)
- if err != nil {
- return nil, err
- }
- if lr, err = pager.ApplyFilter(lr); err != nil {
- return nil, err
- }
- ret := &LabelRelationshipPageList{}
- ret.PageDetails = &PageDetails{
- Page: pageNum,
- Size: pageSize,
- }
- query := lr.Clone()
- query.ctx.Fields = nil
- count, err := query.Count(ctx)
- if err != nil {
- return nil, err
- }
- ret.PageDetails.Total = uint64(count)
- if pager.Order != nil {
- lr = lr.Order(pager.Order)
- } else {
- lr = lr.Order(DefaultLabelRelationshipOrder)
- }
- lr = lr.Offset(int((pageNum - 1) * pageSize)).Limit(int(pageSize))
- list, err := lr.All(ctx)
- if err != nil {
- return nil, err
- }
- ret.List = list
- return ret, nil
- }
- type MessagePager struct {
- Order message.OrderOption
- Filter func(*MessageQuery) (*MessageQuery, error)
- }
- // MessagePaginateOption enables pagination customization.
- type MessagePaginateOption func(*MessagePager)
- // DefaultMessageOrder is the default ordering of Message.
- var DefaultMessageOrder = Desc(message.FieldID)
- func newMessagePager(opts []MessagePaginateOption) (*MessagePager, error) {
- pager := &MessagePager{}
- for _, opt := range opts {
- opt(pager)
- }
- if pager.Order == nil {
- pager.Order = DefaultMessageOrder
- }
- return pager, nil
- }
- func (p *MessagePager) ApplyFilter(query *MessageQuery) (*MessageQuery, error) {
- if p.Filter != nil {
- return p.Filter(query)
- }
- return query, nil
- }
- // MessagePageList is Message PageList result.
- type MessagePageList struct {
- List []*Message `json:"list"`
- PageDetails *PageDetails `json:"pageDetails"`
- }
- func (m *MessageQuery) Page(
- ctx context.Context, pageNum uint64, pageSize uint64, opts ...MessagePaginateOption,
- ) (*MessagePageList, error) {
- pager, err := newMessagePager(opts)
- if err != nil {
- return nil, err
- }
- if m, err = pager.ApplyFilter(m); err != nil {
- return nil, err
- }
- ret := &MessagePageList{}
- ret.PageDetails = &PageDetails{
- Page: pageNum,
- Size: pageSize,
- }
- query := m.Clone()
- query.ctx.Fields = nil
- count, err := query.Count(ctx)
- if err != nil {
- return nil, err
- }
- ret.PageDetails.Total = uint64(count)
- if pager.Order != nil {
- m = m.Order(pager.Order)
- } else {
- m = m.Order(DefaultMessageOrder)
- }
- m = m.Offset(int((pageNum - 1) * pageSize)).Limit(int(pageSize))
- list, err := m.All(ctx)
- if err != nil {
- return nil, err
- }
- ret.List = list
- return ret, nil
- }
- type MessageRecordsPager struct {
- Order messagerecords.OrderOption
- Filter func(*MessageRecordsQuery) (*MessageRecordsQuery, error)
- }
- // MessageRecordsPaginateOption enables pagination customization.
- type MessageRecordsPaginateOption func(*MessageRecordsPager)
- // DefaultMessageRecordsOrder is the default ordering of MessageRecords.
- var DefaultMessageRecordsOrder = Desc(messagerecords.FieldID)
- func newMessageRecordsPager(opts []MessageRecordsPaginateOption) (*MessageRecordsPager, error) {
- pager := &MessageRecordsPager{}
- for _, opt := range opts {
- opt(pager)
- }
- if pager.Order == nil {
- pager.Order = DefaultMessageRecordsOrder
- }
- return pager, nil
- }
- func (p *MessageRecordsPager) ApplyFilter(query *MessageRecordsQuery) (*MessageRecordsQuery, error) {
- if p.Filter != nil {
- return p.Filter(query)
- }
- return query, nil
- }
- // MessageRecordsPageList is MessageRecords PageList result.
- type MessageRecordsPageList struct {
- List []*MessageRecords `json:"list"`
- PageDetails *PageDetails `json:"pageDetails"`
- }
- func (mr *MessageRecordsQuery) Page(
- ctx context.Context, pageNum uint64, pageSize uint64, opts ...MessageRecordsPaginateOption,
- ) (*MessageRecordsPageList, error) {
- pager, err := newMessageRecordsPager(opts)
- if err != nil {
- return nil, err
- }
- if mr, err = pager.ApplyFilter(mr); err != nil {
- return nil, err
- }
- ret := &MessageRecordsPageList{}
- ret.PageDetails = &PageDetails{
- Page: pageNum,
- Size: pageSize,
- }
- query := mr.Clone()
- query.ctx.Fields = nil
- count, err := query.Count(ctx)
- if err != nil {
- return nil, err
- }
- ret.PageDetails.Total = uint64(count)
- if pager.Order != nil {
- mr = mr.Order(pager.Order)
- } else {
- mr = mr.Order(DefaultMessageRecordsOrder)
- }
- mr = mr.Offset(int((pageNum - 1) * pageSize)).Limit(int(pageSize))
- list, err := mr.All(ctx)
- if err != nil {
- return nil, err
- }
- ret.List = list
- return ret, nil
- }
- type ServerPager struct {
- Order server.OrderOption
- Filter func(*ServerQuery) (*ServerQuery, error)
- }
- // ServerPaginateOption enables pagination customization.
- type ServerPaginateOption func(*ServerPager)
- // DefaultServerOrder is the default ordering of Server.
- var DefaultServerOrder = Desc(server.FieldID)
- func newServerPager(opts []ServerPaginateOption) (*ServerPager, error) {
- pager := &ServerPager{}
- for _, opt := range opts {
- opt(pager)
- }
- if pager.Order == nil {
- pager.Order = DefaultServerOrder
- }
- return pager, nil
- }
- func (p *ServerPager) ApplyFilter(query *ServerQuery) (*ServerQuery, error) {
- if p.Filter != nil {
- return p.Filter(query)
- }
- return query, nil
- }
- // ServerPageList is Server PageList result.
- type ServerPageList struct {
- List []*Server `json:"list"`
- PageDetails *PageDetails `json:"pageDetails"`
- }
- func (s *ServerQuery) Page(
- ctx context.Context, pageNum uint64, pageSize uint64, opts ...ServerPaginateOption,
- ) (*ServerPageList, error) {
- pager, err := newServerPager(opts)
- if err != nil {
- return nil, err
- }
- if s, err = pager.ApplyFilter(s); err != nil {
- return nil, err
- }
- ret := &ServerPageList{}
- ret.PageDetails = &PageDetails{
- Page: pageNum,
- Size: pageSize,
- }
- query := s.Clone()
- query.ctx.Fields = nil
- count, err := query.Count(ctx)
- if err != nil {
- return nil, err
- }
- ret.PageDetails.Total = uint64(count)
- if pager.Order != nil {
- s = s.Order(pager.Order)
- } else {
- s = s.Order(DefaultServerOrder)
- }
- s = s.Offset(int((pageNum - 1) * pageSize)).Limit(int(pageSize))
- list, err := s.All(ctx)
- if err != nil {
- return nil, err
- }
- ret.List = list
- return ret, nil
- }
- type SopNodePager struct {
- Order sopnode.OrderOption
- Filter func(*SopNodeQuery) (*SopNodeQuery, error)
- }
- // SopNodePaginateOption enables pagination customization.
- type SopNodePaginateOption func(*SopNodePager)
- // DefaultSopNodeOrder is the default ordering of SopNode.
- var DefaultSopNodeOrder = Desc(sopnode.FieldID)
- func newSopNodePager(opts []SopNodePaginateOption) (*SopNodePager, error) {
- pager := &SopNodePager{}
- for _, opt := range opts {
- opt(pager)
- }
- if pager.Order == nil {
- pager.Order = DefaultSopNodeOrder
- }
- return pager, nil
- }
- func (p *SopNodePager) ApplyFilter(query *SopNodeQuery) (*SopNodeQuery, error) {
- if p.Filter != nil {
- return p.Filter(query)
- }
- return query, nil
- }
- // SopNodePageList is SopNode PageList result.
- type SopNodePageList struct {
- List []*SopNode `json:"list"`
- PageDetails *PageDetails `json:"pageDetails"`
- }
- func (sn *SopNodeQuery) Page(
- ctx context.Context, pageNum uint64, pageSize uint64, opts ...SopNodePaginateOption,
- ) (*SopNodePageList, error) {
- pager, err := newSopNodePager(opts)
- if err != nil {
- return nil, err
- }
- if sn, err = pager.ApplyFilter(sn); err != nil {
- return nil, err
- }
- ret := &SopNodePageList{}
- ret.PageDetails = &PageDetails{
- Page: pageNum,
- Size: pageSize,
- }
- query := sn.Clone()
- query.ctx.Fields = nil
- count, err := query.Count(ctx)
- if err != nil {
- return nil, err
- }
- ret.PageDetails.Total = uint64(count)
- if pager.Order != nil {
- sn = sn.Order(pager.Order)
- } else {
- sn = sn.Order(DefaultSopNodeOrder)
- }
- sn = sn.Offset(int((pageNum - 1) * pageSize)).Limit(int(pageSize))
- list, err := sn.All(ctx)
- if err != nil {
- return nil, err
- }
- ret.List = list
- return ret, nil
- }
- type SopStagePager struct {
- Order sopstage.OrderOption
- Filter func(*SopStageQuery) (*SopStageQuery, error)
- }
- // SopStagePaginateOption enables pagination customization.
- type SopStagePaginateOption func(*SopStagePager)
- // DefaultSopStageOrder is the default ordering of SopStage.
- var DefaultSopStageOrder = Desc(sopstage.FieldID)
- func newSopStagePager(opts []SopStagePaginateOption) (*SopStagePager, error) {
- pager := &SopStagePager{}
- for _, opt := range opts {
- opt(pager)
- }
- if pager.Order == nil {
- pager.Order = DefaultSopStageOrder
- }
- return pager, nil
- }
- func (p *SopStagePager) ApplyFilter(query *SopStageQuery) (*SopStageQuery, error) {
- if p.Filter != nil {
- return p.Filter(query)
- }
- return query, nil
- }
- // SopStagePageList is SopStage PageList result.
- type SopStagePageList struct {
- List []*SopStage `json:"list"`
- PageDetails *PageDetails `json:"pageDetails"`
- }
- func (ss *SopStageQuery) Page(
- ctx context.Context, pageNum uint64, pageSize uint64, opts ...SopStagePaginateOption,
- ) (*SopStagePageList, error) {
- pager, err := newSopStagePager(opts)
- if err != nil {
- return nil, err
- }
- if ss, err = pager.ApplyFilter(ss); err != nil {
- return nil, err
- }
- ret := &SopStagePageList{}
- ret.PageDetails = &PageDetails{
- Page: pageNum,
- Size: pageSize,
- }
- query := ss.Clone()
- query.ctx.Fields = nil
- count, err := query.Count(ctx)
- if err != nil {
- return nil, err
- }
- ret.PageDetails.Total = uint64(count)
- if pager.Order != nil {
- ss = ss.Order(pager.Order)
- } else {
- ss = ss.Order(DefaultSopStageOrder)
- }
- ss = ss.Offset(int((pageNum - 1) * pageSize)).Limit(int(pageSize))
- list, err := ss.All(ctx)
- if err != nil {
- return nil, err
- }
- ret.List = list
- return ret, nil
- }
- type SopTaskPager struct {
- Order soptask.OrderOption
- Filter func(*SopTaskQuery) (*SopTaskQuery, error)
- }
- // SopTaskPaginateOption enables pagination customization.
- type SopTaskPaginateOption func(*SopTaskPager)
- // DefaultSopTaskOrder is the default ordering of SopTask.
- var DefaultSopTaskOrder = Desc(soptask.FieldID)
- func newSopTaskPager(opts []SopTaskPaginateOption) (*SopTaskPager, error) {
- pager := &SopTaskPager{}
- for _, opt := range opts {
- opt(pager)
- }
- if pager.Order == nil {
- pager.Order = DefaultSopTaskOrder
- }
- return pager, nil
- }
- func (p *SopTaskPager) ApplyFilter(query *SopTaskQuery) (*SopTaskQuery, error) {
- if p.Filter != nil {
- return p.Filter(query)
- }
- return query, nil
- }
- // SopTaskPageList is SopTask PageList result.
- type SopTaskPageList struct {
- List []*SopTask `json:"list"`
- PageDetails *PageDetails `json:"pageDetails"`
- }
- func (st *SopTaskQuery) Page(
- ctx context.Context, pageNum uint64, pageSize uint64, opts ...SopTaskPaginateOption,
- ) (*SopTaskPageList, error) {
- pager, err := newSopTaskPager(opts)
- if err != nil {
- return nil, err
- }
- if st, err = pager.ApplyFilter(st); err != nil {
- return nil, err
- }
- ret := &SopTaskPageList{}
- ret.PageDetails = &PageDetails{
- Page: pageNum,
- Size: pageSize,
- }
- query := st.Clone()
- query.ctx.Fields = nil
- count, err := query.Count(ctx)
- if err != nil {
- return nil, err
- }
- ret.PageDetails.Total = uint64(count)
- if pager.Order != nil {
- st = st.Order(pager.Order)
- } else {
- st = st.Order(DefaultSopTaskOrder)
- }
- st = st.Offset(int((pageNum - 1) * pageSize)).Limit(int(pageSize))
- list, err := st.All(ctx)
- if err != nil {
- return nil, err
- }
- ret.List = list
- return ret, nil
- }
- type WxPager struct {
- Order wx.OrderOption
- Filter func(*WxQuery) (*WxQuery, error)
- }
- // WxPaginateOption enables pagination customization.
- type WxPaginateOption func(*WxPager)
- // DefaultWxOrder is the default ordering of Wx.
- var DefaultWxOrder = Desc(wx.FieldID)
- func newWxPager(opts []WxPaginateOption) (*WxPager, error) {
- pager := &WxPager{}
- for _, opt := range opts {
- opt(pager)
- }
- if pager.Order == nil {
- pager.Order = DefaultWxOrder
- }
- return pager, nil
- }
- func (p *WxPager) ApplyFilter(query *WxQuery) (*WxQuery, error) {
- if p.Filter != nil {
- return p.Filter(query)
- }
- return query, nil
- }
- // WxPageList is Wx PageList result.
- type WxPageList struct {
- List []*Wx `json:"list"`
- PageDetails *PageDetails `json:"pageDetails"`
- }
- func (w *WxQuery) Page(
- ctx context.Context, pageNum uint64, pageSize uint64, opts ...WxPaginateOption,
- ) (*WxPageList, error) {
- pager, err := newWxPager(opts)
- if err != nil {
- return nil, err
- }
- if w, err = pager.ApplyFilter(w); err != nil {
- return nil, err
- }
- ret := &WxPageList{}
- ret.PageDetails = &PageDetails{
- Page: pageNum,
- Size: pageSize,
- }
- query := w.Clone()
- query.ctx.Fields = nil
- count, err := query.Count(ctx)
- if err != nil {
- return nil, err
- }
- ret.PageDetails.Total = uint64(count)
- if pager.Order != nil {
- w = w.Order(pager.Order)
- } else {
- w = w.Order(DefaultWxOrder)
- }
- w = w.Offset(int((pageNum - 1) * pageSize)).Limit(int(pageSize))
- list, err := w.All(ctx)
- if err != nil {
- return nil, err
- }
- ret.List = list
- return ret, nil
- }
|