// Code generated by ent, DO NOT EDIT. package ent import ( "context" "errors" "fmt" "sync" "time" "entgo.io/ent" "entgo.io/ent/dialect/sql" "github.com/suyuan32/simple-admin-job/ent/messagerecords" "github.com/suyuan32/simple-admin-job/ent/predicate" "github.com/suyuan32/simple-admin-job/ent/task" "github.com/suyuan32/simple-admin-job/ent/tasklog" ) const ( // Operation types. OpCreate = ent.OpCreate OpDelete = ent.OpDelete OpDeleteOne = ent.OpDeleteOne OpUpdate = ent.OpUpdate OpUpdateOne = ent.OpUpdateOne // Node types. TypeMessageRecords = "MessageRecords" TypeTask = "Task" TypeTaskLog = "TaskLog" ) // MessageRecordsMutation represents an operation that mutates the MessageRecords nodes in the graph. type MessageRecordsMutation struct { config op Op typ string id *uint64 created_at *time.Time updated_at *time.Time status *uint8 addstatus *int8 bot_wxid *string contact_id *uint64 addcontact_id *int64 contact_type *int addcontact_type *int contact_wxid *string content_type *int addcontent_type *int content *string error_detail *string send_time *time.Time source_type *int addsource_type *int source_id *uint64 addsource_id *int64 sub_source_id *uint64 addsub_source_id *int64 clearedFields map[string]struct{} done bool oldValue func(context.Context) (*MessageRecords, error) predicates []predicate.MessageRecords } var _ ent.Mutation = (*MessageRecordsMutation)(nil) // messagerecordsOption allows management of the mutation configuration using functional options. type messagerecordsOption func(*MessageRecordsMutation) // newMessageRecordsMutation creates new mutation for the MessageRecords entity. func newMessageRecordsMutation(c config, op Op, opts ...messagerecordsOption) *MessageRecordsMutation { m := &MessageRecordsMutation{ config: c, op: op, typ: TypeMessageRecords, clearedFields: make(map[string]struct{}), } for _, opt := range opts { opt(m) } return m } // withMessageRecordsID sets the ID field of the mutation. func withMessageRecordsID(id uint64) messagerecordsOption { return func(m *MessageRecordsMutation) { var ( err error once sync.Once value *MessageRecords ) m.oldValue = func(ctx context.Context) (*MessageRecords, error) { once.Do(func() { if m.done { err = errors.New("querying old values post mutation is not allowed") } else { value, err = m.Client().MessageRecords.Get(ctx, id) } }) return value, err } m.id = &id } } // withMessageRecords sets the old MessageRecords of the mutation. func withMessageRecords(node *MessageRecords) messagerecordsOption { return func(m *MessageRecordsMutation) { m.oldValue = func(context.Context) (*MessageRecords, error) { return node, nil } m.id = &node.ID } } // Client returns a new `ent.Client` from the mutation. If the mutation was // executed in a transaction (ent.Tx), a transactional client is returned. func (m MessageRecordsMutation) Client() *Client { client := &Client{config: m.config} client.init() return client } // Tx returns an `ent.Tx` for mutations that were executed in transactions; // it returns an error otherwise. func (m MessageRecordsMutation) Tx() (*Tx, error) { if _, ok := m.driver.(*txDriver); !ok { return nil, errors.New("ent: mutation is not running in a transaction") } tx := &Tx{config: m.config} tx.init() return tx, nil } // SetID sets the value of the id field. Note that this // operation is only accepted on creation of MessageRecords entities. func (m *MessageRecordsMutation) SetID(id uint64) { m.id = &id } // ID returns the ID value in the mutation. Note that the ID is only available // if it was provided to the builder or after it was returned from the database. func (m *MessageRecordsMutation) ID() (id uint64, exists bool) { if m.id == nil { return } return *m.id, true } // IDs queries the database and returns the entity ids that match the mutation's predicate. // That means, if the mutation is applied within a transaction with an isolation level such // as sql.LevelSerializable, the returned ids match the ids of the rows that will be updated // or updated by the mutation. func (m *MessageRecordsMutation) IDs(ctx context.Context) ([]uint64, error) { switch { case m.op.Is(OpUpdateOne | OpDeleteOne): id, exists := m.ID() if exists { return []uint64{id}, nil } fallthrough case m.op.Is(OpUpdate | OpDelete): return m.Client().MessageRecords.Query().Where(m.predicates...).IDs(ctx) default: return nil, fmt.Errorf("IDs is not allowed on %s operations", m.op) } } // SetCreatedAt sets the "created_at" field. func (m *MessageRecordsMutation) SetCreatedAt(t time.Time) { m.created_at = &t } // CreatedAt returns the value of the "created_at" field in the mutation. func (m *MessageRecordsMutation) CreatedAt() (r time.Time, exists bool) { v := m.created_at if v == nil { return } return *v, true } // OldCreatedAt returns the old "created_at" field's value of the MessageRecords entity. // If the MessageRecords object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *MessageRecordsMutation) OldCreatedAt(ctx context.Context) (v time.Time, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldCreatedAt is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldCreatedAt requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldCreatedAt: %w", err) } return oldValue.CreatedAt, nil } // ResetCreatedAt resets all changes to the "created_at" field. func (m *MessageRecordsMutation) ResetCreatedAt() { m.created_at = nil } // SetUpdatedAt sets the "updated_at" field. func (m *MessageRecordsMutation) SetUpdatedAt(t time.Time) { m.updated_at = &t } // UpdatedAt returns the value of the "updated_at" field in the mutation. func (m *MessageRecordsMutation) UpdatedAt() (r time.Time, exists bool) { v := m.updated_at if v == nil { return } return *v, true } // OldUpdatedAt returns the old "updated_at" field's value of the MessageRecords entity. // If the MessageRecords object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *MessageRecordsMutation) OldUpdatedAt(ctx context.Context) (v time.Time, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldUpdatedAt is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldUpdatedAt requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldUpdatedAt: %w", err) } return oldValue.UpdatedAt, nil } // ResetUpdatedAt resets all changes to the "updated_at" field. func (m *MessageRecordsMutation) ResetUpdatedAt() { m.updated_at = nil } // SetStatus sets the "status" field. func (m *MessageRecordsMutation) SetStatus(u uint8) { m.status = &u m.addstatus = nil } // Status returns the value of the "status" field in the mutation. func (m *MessageRecordsMutation) Status() (r uint8, exists bool) { v := m.status if v == nil { return } return *v, true } // OldStatus returns the old "status" field's value of the MessageRecords entity. // If the MessageRecords object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *MessageRecordsMutation) OldStatus(ctx context.Context) (v uint8, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldStatus is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldStatus requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldStatus: %w", err) } return oldValue.Status, nil } // AddStatus adds u to the "status" field. func (m *MessageRecordsMutation) AddStatus(u int8) { if m.addstatus != nil { *m.addstatus += u } else { m.addstatus = &u } } // AddedStatus returns the value that was added to the "status" field in this mutation. func (m *MessageRecordsMutation) AddedStatus() (r int8, exists bool) { v := m.addstatus if v == nil { return } return *v, true } // ClearStatus clears the value of the "status" field. func (m *MessageRecordsMutation) ClearStatus() { m.status = nil m.addstatus = nil m.clearedFields[messagerecords.FieldStatus] = struct{}{} } // StatusCleared returns if the "status" field was cleared in this mutation. func (m *MessageRecordsMutation) StatusCleared() bool { _, ok := m.clearedFields[messagerecords.FieldStatus] return ok } // ResetStatus resets all changes to the "status" field. func (m *MessageRecordsMutation) ResetStatus() { m.status = nil m.addstatus = nil delete(m.clearedFields, messagerecords.FieldStatus) } // SetBotWxid sets the "bot_wxid" field. func (m *MessageRecordsMutation) SetBotWxid(s string) { m.bot_wxid = &s } // BotWxid returns the value of the "bot_wxid" field in the mutation. func (m *MessageRecordsMutation) BotWxid() (r string, exists bool) { v := m.bot_wxid if v == nil { return } return *v, true } // OldBotWxid returns the old "bot_wxid" field's value of the MessageRecords entity. // If the MessageRecords object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *MessageRecordsMutation) OldBotWxid(ctx context.Context) (v string, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldBotWxid is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldBotWxid requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldBotWxid: %w", err) } return oldValue.BotWxid, nil } // ResetBotWxid resets all changes to the "bot_wxid" field. func (m *MessageRecordsMutation) ResetBotWxid() { m.bot_wxid = nil } // SetContactID sets the "contact_id" field. func (m *MessageRecordsMutation) SetContactID(u uint64) { m.contact_id = &u m.addcontact_id = nil } // ContactID returns the value of the "contact_id" field in the mutation. func (m *MessageRecordsMutation) ContactID() (r uint64, exists bool) { v := m.contact_id if v == nil { return } return *v, true } // OldContactID returns the old "contact_id" field's value of the MessageRecords entity. // If the MessageRecords object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *MessageRecordsMutation) OldContactID(ctx context.Context) (v uint64, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldContactID is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldContactID requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldContactID: %w", err) } return oldValue.ContactID, nil } // AddContactID adds u to the "contact_id" field. func (m *MessageRecordsMutation) AddContactID(u int64) { if m.addcontact_id != nil { *m.addcontact_id += u } else { m.addcontact_id = &u } } // AddedContactID returns the value that was added to the "contact_id" field in this mutation. func (m *MessageRecordsMutation) AddedContactID() (r int64, exists bool) { v := m.addcontact_id if v == nil { return } return *v, true } // ClearContactID clears the value of the "contact_id" field. func (m *MessageRecordsMutation) ClearContactID() { m.contact_id = nil m.addcontact_id = nil m.clearedFields[messagerecords.FieldContactID] = struct{}{} } // ContactIDCleared returns if the "contact_id" field was cleared in this mutation. func (m *MessageRecordsMutation) ContactIDCleared() bool { _, ok := m.clearedFields[messagerecords.FieldContactID] return ok } // ResetContactID resets all changes to the "contact_id" field. func (m *MessageRecordsMutation) ResetContactID() { m.contact_id = nil m.addcontact_id = nil delete(m.clearedFields, messagerecords.FieldContactID) } // SetContactType sets the "contact_type" field. func (m *MessageRecordsMutation) SetContactType(i int) { m.contact_type = &i m.addcontact_type = nil } // ContactType returns the value of the "contact_type" field in the mutation. func (m *MessageRecordsMutation) ContactType() (r int, exists bool) { v := m.contact_type if v == nil { return } return *v, true } // OldContactType returns the old "contact_type" field's value of the MessageRecords entity. // If the MessageRecords object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *MessageRecordsMutation) OldContactType(ctx context.Context) (v int, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldContactType is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldContactType requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldContactType: %w", err) } return oldValue.ContactType, nil } // AddContactType adds i to the "contact_type" field. func (m *MessageRecordsMutation) AddContactType(i int) { if m.addcontact_type != nil { *m.addcontact_type += i } else { m.addcontact_type = &i } } // AddedContactType returns the value that was added to the "contact_type" field in this mutation. func (m *MessageRecordsMutation) AddedContactType() (r int, exists bool) { v := m.addcontact_type if v == nil { return } return *v, true } // ResetContactType resets all changes to the "contact_type" field. func (m *MessageRecordsMutation) ResetContactType() { m.contact_type = nil m.addcontact_type = nil } // SetContactWxid sets the "contact_wxid" field. func (m *MessageRecordsMutation) SetContactWxid(s string) { m.contact_wxid = &s } // ContactWxid returns the value of the "contact_wxid" field in the mutation. func (m *MessageRecordsMutation) ContactWxid() (r string, exists bool) { v := m.contact_wxid if v == nil { return } return *v, true } // OldContactWxid returns the old "contact_wxid" field's value of the MessageRecords entity. // If the MessageRecords object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *MessageRecordsMutation) OldContactWxid(ctx context.Context) (v string, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldContactWxid is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldContactWxid requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldContactWxid: %w", err) } return oldValue.ContactWxid, nil } // ResetContactWxid resets all changes to the "contact_wxid" field. func (m *MessageRecordsMutation) ResetContactWxid() { m.contact_wxid = nil } // SetContentType sets the "content_type" field. func (m *MessageRecordsMutation) SetContentType(i int) { m.content_type = &i m.addcontent_type = nil } // ContentType returns the value of the "content_type" field in the mutation. func (m *MessageRecordsMutation) ContentType() (r int, exists bool) { v := m.content_type if v == nil { return } return *v, true } // OldContentType returns the old "content_type" field's value of the MessageRecords entity. // If the MessageRecords object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *MessageRecordsMutation) OldContentType(ctx context.Context) (v int, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldContentType is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldContentType requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldContentType: %w", err) } return oldValue.ContentType, nil } // AddContentType adds i to the "content_type" field. func (m *MessageRecordsMutation) AddContentType(i int) { if m.addcontent_type != nil { *m.addcontent_type += i } else { m.addcontent_type = &i } } // AddedContentType returns the value that was added to the "content_type" field in this mutation. func (m *MessageRecordsMutation) AddedContentType() (r int, exists bool) { v := m.addcontent_type if v == nil { return } return *v, true } // ResetContentType resets all changes to the "content_type" field. func (m *MessageRecordsMutation) ResetContentType() { m.content_type = nil m.addcontent_type = nil } // SetContent sets the "content" field. func (m *MessageRecordsMutation) SetContent(s string) { m.content = &s } // Content returns the value of the "content" field in the mutation. func (m *MessageRecordsMutation) Content() (r string, exists bool) { v := m.content if v == nil { return } return *v, true } // OldContent returns the old "content" field's value of the MessageRecords entity. // If the MessageRecords object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *MessageRecordsMutation) OldContent(ctx context.Context) (v string, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldContent is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldContent requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldContent: %w", err) } return oldValue.Content, nil } // ResetContent resets all changes to the "content" field. func (m *MessageRecordsMutation) ResetContent() { m.content = nil } // SetErrorDetail sets the "error_detail" field. func (m *MessageRecordsMutation) SetErrorDetail(s string) { m.error_detail = &s } // ErrorDetail returns the value of the "error_detail" field in the mutation. func (m *MessageRecordsMutation) ErrorDetail() (r string, exists bool) { v := m.error_detail if v == nil { return } return *v, true } // OldErrorDetail returns the old "error_detail" field's value of the MessageRecords entity. // If the MessageRecords object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *MessageRecordsMutation) OldErrorDetail(ctx context.Context) (v string, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldErrorDetail is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldErrorDetail requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldErrorDetail: %w", err) } return oldValue.ErrorDetail, nil } // ResetErrorDetail resets all changes to the "error_detail" field. func (m *MessageRecordsMutation) ResetErrorDetail() { m.error_detail = nil } // SetSendTime sets the "send_time" field. func (m *MessageRecordsMutation) SetSendTime(t time.Time) { m.send_time = &t } // SendTime returns the value of the "send_time" field in the mutation. func (m *MessageRecordsMutation) SendTime() (r time.Time, exists bool) { v := m.send_time if v == nil { return } return *v, true } // OldSendTime returns the old "send_time" field's value of the MessageRecords entity. // If the MessageRecords object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *MessageRecordsMutation) OldSendTime(ctx context.Context) (v time.Time, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldSendTime is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldSendTime requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldSendTime: %w", err) } return oldValue.SendTime, nil } // ClearSendTime clears the value of the "send_time" field. func (m *MessageRecordsMutation) ClearSendTime() { m.send_time = nil m.clearedFields[messagerecords.FieldSendTime] = struct{}{} } // SendTimeCleared returns if the "send_time" field was cleared in this mutation. func (m *MessageRecordsMutation) SendTimeCleared() bool { _, ok := m.clearedFields[messagerecords.FieldSendTime] return ok } // ResetSendTime resets all changes to the "send_time" field. func (m *MessageRecordsMutation) ResetSendTime() { m.send_time = nil delete(m.clearedFields, messagerecords.FieldSendTime) } // SetSourceType sets the "source_type" field. func (m *MessageRecordsMutation) SetSourceType(i int) { m.source_type = &i m.addsource_type = nil } // SourceType returns the value of the "source_type" field in the mutation. func (m *MessageRecordsMutation) SourceType() (r int, exists bool) { v := m.source_type if v == nil { return } return *v, true } // OldSourceType returns the old "source_type" field's value of the MessageRecords entity. // If the MessageRecords object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *MessageRecordsMutation) OldSourceType(ctx context.Context) (v int, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldSourceType is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldSourceType requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldSourceType: %w", err) } return oldValue.SourceType, nil } // AddSourceType adds i to the "source_type" field. func (m *MessageRecordsMutation) AddSourceType(i int) { if m.addsource_type != nil { *m.addsource_type += i } else { m.addsource_type = &i } } // AddedSourceType returns the value that was added to the "source_type" field in this mutation. func (m *MessageRecordsMutation) AddedSourceType() (r int, exists bool) { v := m.addsource_type if v == nil { return } return *v, true } // ResetSourceType resets all changes to the "source_type" field. func (m *MessageRecordsMutation) ResetSourceType() { m.source_type = nil m.addsource_type = nil } // SetSourceID sets the "source_id" field. func (m *MessageRecordsMutation) SetSourceID(u uint64) { m.source_id = &u m.addsource_id = nil } // SourceID returns the value of the "source_id" field in the mutation. func (m *MessageRecordsMutation) SourceID() (r uint64, exists bool) { v := m.source_id if v == nil { return } return *v, true } // OldSourceID returns the old "source_id" field's value of the MessageRecords entity. // If the MessageRecords object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *MessageRecordsMutation) OldSourceID(ctx context.Context) (v uint64, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldSourceID is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldSourceID requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldSourceID: %w", err) } return oldValue.SourceID, nil } // AddSourceID adds u to the "source_id" field. func (m *MessageRecordsMutation) AddSourceID(u int64) { if m.addsource_id != nil { *m.addsource_id += u } else { m.addsource_id = &u } } // AddedSourceID returns the value that was added to the "source_id" field in this mutation. func (m *MessageRecordsMutation) AddedSourceID() (r int64, exists bool) { v := m.addsource_id if v == nil { return } return *v, true } // ClearSourceID clears the value of the "source_id" field. func (m *MessageRecordsMutation) ClearSourceID() { m.source_id = nil m.addsource_id = nil m.clearedFields[messagerecords.FieldSourceID] = struct{}{} } // SourceIDCleared returns if the "source_id" field was cleared in this mutation. func (m *MessageRecordsMutation) SourceIDCleared() bool { _, ok := m.clearedFields[messagerecords.FieldSourceID] return ok } // ResetSourceID resets all changes to the "source_id" field. func (m *MessageRecordsMutation) ResetSourceID() { m.source_id = nil m.addsource_id = nil delete(m.clearedFields, messagerecords.FieldSourceID) } // SetSubSourceID sets the "sub_source_id" field. func (m *MessageRecordsMutation) SetSubSourceID(u uint64) { m.sub_source_id = &u m.addsub_source_id = nil } // SubSourceID returns the value of the "sub_source_id" field in the mutation. func (m *MessageRecordsMutation) SubSourceID() (r uint64, exists bool) { v := m.sub_source_id if v == nil { return } return *v, true } // OldSubSourceID returns the old "sub_source_id" field's value of the MessageRecords entity. // If the MessageRecords object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *MessageRecordsMutation) OldSubSourceID(ctx context.Context) (v uint64, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldSubSourceID is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldSubSourceID requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldSubSourceID: %w", err) } return oldValue.SubSourceID, nil } // AddSubSourceID adds u to the "sub_source_id" field. func (m *MessageRecordsMutation) AddSubSourceID(u int64) { if m.addsub_source_id != nil { *m.addsub_source_id += u } else { m.addsub_source_id = &u } } // AddedSubSourceID returns the value that was added to the "sub_source_id" field in this mutation. func (m *MessageRecordsMutation) AddedSubSourceID() (r int64, exists bool) { v := m.addsub_source_id if v == nil { return } return *v, true } // ClearSubSourceID clears the value of the "sub_source_id" field. func (m *MessageRecordsMutation) ClearSubSourceID() { m.sub_source_id = nil m.addsub_source_id = nil m.clearedFields[messagerecords.FieldSubSourceID] = struct{}{} } // SubSourceIDCleared returns if the "sub_source_id" field was cleared in this mutation. func (m *MessageRecordsMutation) SubSourceIDCleared() bool { _, ok := m.clearedFields[messagerecords.FieldSubSourceID] return ok } // ResetSubSourceID resets all changes to the "sub_source_id" field. func (m *MessageRecordsMutation) ResetSubSourceID() { m.sub_source_id = nil m.addsub_source_id = nil delete(m.clearedFields, messagerecords.FieldSubSourceID) } // Where appends a list predicates to the MessageRecordsMutation builder. func (m *MessageRecordsMutation) Where(ps ...predicate.MessageRecords) { m.predicates = append(m.predicates, ps...) } // WhereP appends storage-level predicates to the MessageRecordsMutation builder. Using this method, // users can use type-assertion to append predicates that do not depend on any generated package. func (m *MessageRecordsMutation) WhereP(ps ...func(*sql.Selector)) { p := make([]predicate.MessageRecords, len(ps)) for i := range ps { p[i] = ps[i] } m.Where(p...) } // Op returns the operation name. func (m *MessageRecordsMutation) Op() Op { return m.op } // SetOp allows setting the mutation operation. func (m *MessageRecordsMutation) SetOp(op Op) { m.op = op } // Type returns the node type of this mutation (MessageRecords). func (m *MessageRecordsMutation) Type() string { return m.typ } // Fields returns all fields that were changed during this mutation. Note that in // order to get all numeric fields that were incremented/decremented, call // AddedFields(). func (m *MessageRecordsMutation) Fields() []string { fields := make([]string, 0, 14) if m.created_at != nil { fields = append(fields, messagerecords.FieldCreatedAt) } if m.updated_at != nil { fields = append(fields, messagerecords.FieldUpdatedAt) } if m.status != nil { fields = append(fields, messagerecords.FieldStatus) } if m.bot_wxid != nil { fields = append(fields, messagerecords.FieldBotWxid) } if m.contact_id != nil { fields = append(fields, messagerecords.FieldContactID) } if m.contact_type != nil { fields = append(fields, messagerecords.FieldContactType) } if m.contact_wxid != nil { fields = append(fields, messagerecords.FieldContactWxid) } if m.content_type != nil { fields = append(fields, messagerecords.FieldContentType) } if m.content != nil { fields = append(fields, messagerecords.FieldContent) } if m.error_detail != nil { fields = append(fields, messagerecords.FieldErrorDetail) } if m.send_time != nil { fields = append(fields, messagerecords.FieldSendTime) } if m.source_type != nil { fields = append(fields, messagerecords.FieldSourceType) } if m.source_id != nil { fields = append(fields, messagerecords.FieldSourceID) } if m.sub_source_id != nil { fields = append(fields, messagerecords.FieldSubSourceID) } return fields } // Field returns the value of a field with the given name. The second boolean // return value indicates that this field was not set, or was not defined in the // schema. func (m *MessageRecordsMutation) Field(name string) (ent.Value, bool) { switch name { case messagerecords.FieldCreatedAt: return m.CreatedAt() case messagerecords.FieldUpdatedAt: return m.UpdatedAt() case messagerecords.FieldStatus: return m.Status() case messagerecords.FieldBotWxid: return m.BotWxid() case messagerecords.FieldContactID: return m.ContactID() case messagerecords.FieldContactType: return m.ContactType() case messagerecords.FieldContactWxid: return m.ContactWxid() case messagerecords.FieldContentType: return m.ContentType() case messagerecords.FieldContent: return m.Content() case messagerecords.FieldErrorDetail: return m.ErrorDetail() case messagerecords.FieldSendTime: return m.SendTime() case messagerecords.FieldSourceType: return m.SourceType() case messagerecords.FieldSourceID: return m.SourceID() case messagerecords.FieldSubSourceID: return m.SubSourceID() } return nil, false } // OldField returns the old value of the field from the database. An error is // returned if the mutation operation is not UpdateOne, or the query to the // database failed. func (m *MessageRecordsMutation) OldField(ctx context.Context, name string) (ent.Value, error) { switch name { case messagerecords.FieldCreatedAt: return m.OldCreatedAt(ctx) case messagerecords.FieldUpdatedAt: return m.OldUpdatedAt(ctx) case messagerecords.FieldStatus: return m.OldStatus(ctx) case messagerecords.FieldBotWxid: return m.OldBotWxid(ctx) case messagerecords.FieldContactID: return m.OldContactID(ctx) case messagerecords.FieldContactType: return m.OldContactType(ctx) case messagerecords.FieldContactWxid: return m.OldContactWxid(ctx) case messagerecords.FieldContentType: return m.OldContentType(ctx) case messagerecords.FieldContent: return m.OldContent(ctx) case messagerecords.FieldErrorDetail: return m.OldErrorDetail(ctx) case messagerecords.FieldSendTime: return m.OldSendTime(ctx) case messagerecords.FieldSourceType: return m.OldSourceType(ctx) case messagerecords.FieldSourceID: return m.OldSourceID(ctx) case messagerecords.FieldSubSourceID: return m.OldSubSourceID(ctx) } return nil, fmt.Errorf("unknown MessageRecords field %s", name) } // SetField sets the value of a field with the given name. It returns an error if // the field is not defined in the schema, or if the type mismatched the field // type. func (m *MessageRecordsMutation) SetField(name string, value ent.Value) error { switch name { case messagerecords.FieldCreatedAt: v, ok := value.(time.Time) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetCreatedAt(v) return nil case messagerecords.FieldUpdatedAt: v, ok := value.(time.Time) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetUpdatedAt(v) return nil case messagerecords.FieldStatus: v, ok := value.(uint8) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetStatus(v) return nil case messagerecords.FieldBotWxid: v, ok := value.(string) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetBotWxid(v) return nil case messagerecords.FieldContactID: v, ok := value.(uint64) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetContactID(v) return nil case messagerecords.FieldContactType: v, ok := value.(int) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetContactType(v) return nil case messagerecords.FieldContactWxid: v, ok := value.(string) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetContactWxid(v) return nil case messagerecords.FieldContentType: v, ok := value.(int) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetContentType(v) return nil case messagerecords.FieldContent: v, ok := value.(string) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetContent(v) return nil case messagerecords.FieldErrorDetail: v, ok := value.(string) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetErrorDetail(v) return nil case messagerecords.FieldSendTime: v, ok := value.(time.Time) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetSendTime(v) return nil case messagerecords.FieldSourceType: v, ok := value.(int) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetSourceType(v) return nil case messagerecords.FieldSourceID: v, ok := value.(uint64) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetSourceID(v) return nil case messagerecords.FieldSubSourceID: v, ok := value.(uint64) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetSubSourceID(v) return nil } return fmt.Errorf("unknown MessageRecords field %s", name) } // AddedFields returns all numeric fields that were incremented/decremented during // this mutation. func (m *MessageRecordsMutation) AddedFields() []string { var fields []string if m.addstatus != nil { fields = append(fields, messagerecords.FieldStatus) } if m.addcontact_id != nil { fields = append(fields, messagerecords.FieldContactID) } if m.addcontact_type != nil { fields = append(fields, messagerecords.FieldContactType) } if m.addcontent_type != nil { fields = append(fields, messagerecords.FieldContentType) } if m.addsource_type != nil { fields = append(fields, messagerecords.FieldSourceType) } if m.addsource_id != nil { fields = append(fields, messagerecords.FieldSourceID) } if m.addsub_source_id != nil { fields = append(fields, messagerecords.FieldSubSourceID) } return fields } // AddedField returns the numeric value that was incremented/decremented on a field // with the given name. The second boolean return value indicates that this field // was not set, or was not defined in the schema. func (m *MessageRecordsMutation) AddedField(name string) (ent.Value, bool) { switch name { case messagerecords.FieldStatus: return m.AddedStatus() case messagerecords.FieldContactID: return m.AddedContactID() case messagerecords.FieldContactType: return m.AddedContactType() case messagerecords.FieldContentType: return m.AddedContentType() case messagerecords.FieldSourceType: return m.AddedSourceType() case messagerecords.FieldSourceID: return m.AddedSourceID() case messagerecords.FieldSubSourceID: return m.AddedSubSourceID() } return nil, false } // AddField adds the value to the field with the given name. It returns an error if // the field is not defined in the schema, or if the type mismatched the field // type. func (m *MessageRecordsMutation) AddField(name string, value ent.Value) error { switch name { case messagerecords.FieldStatus: v, ok := value.(int8) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.AddStatus(v) return nil case messagerecords.FieldContactID: v, ok := value.(int64) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.AddContactID(v) return nil case messagerecords.FieldContactType: v, ok := value.(int) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.AddContactType(v) return nil case messagerecords.FieldContentType: v, ok := value.(int) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.AddContentType(v) return nil case messagerecords.FieldSourceType: v, ok := value.(int) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.AddSourceType(v) return nil case messagerecords.FieldSourceID: v, ok := value.(int64) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.AddSourceID(v) return nil case messagerecords.FieldSubSourceID: v, ok := value.(int64) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.AddSubSourceID(v) return nil } return fmt.Errorf("unknown MessageRecords numeric field %s", name) } // ClearedFields returns all nullable fields that were cleared during this // mutation. func (m *MessageRecordsMutation) ClearedFields() []string { var fields []string if m.FieldCleared(messagerecords.FieldStatus) { fields = append(fields, messagerecords.FieldStatus) } if m.FieldCleared(messagerecords.FieldContactID) { fields = append(fields, messagerecords.FieldContactID) } if m.FieldCleared(messagerecords.FieldSendTime) { fields = append(fields, messagerecords.FieldSendTime) } if m.FieldCleared(messagerecords.FieldSourceID) { fields = append(fields, messagerecords.FieldSourceID) } if m.FieldCleared(messagerecords.FieldSubSourceID) { fields = append(fields, messagerecords.FieldSubSourceID) } return fields } // FieldCleared returns a boolean indicating if a field with the given name was // cleared in this mutation. func (m *MessageRecordsMutation) FieldCleared(name string) bool { _, ok := m.clearedFields[name] return ok } // ClearField clears the value of the field with the given name. It returns an // error if the field is not defined in the schema. func (m *MessageRecordsMutation) ClearField(name string) error { switch name { case messagerecords.FieldStatus: m.ClearStatus() return nil case messagerecords.FieldContactID: m.ClearContactID() return nil case messagerecords.FieldSendTime: m.ClearSendTime() return nil case messagerecords.FieldSourceID: m.ClearSourceID() return nil case messagerecords.FieldSubSourceID: m.ClearSubSourceID() return nil } return fmt.Errorf("unknown MessageRecords nullable field %s", name) } // ResetField resets all changes in the mutation for the field with the given name. // It returns an error if the field is not defined in the schema. func (m *MessageRecordsMutation) ResetField(name string) error { switch name { case messagerecords.FieldCreatedAt: m.ResetCreatedAt() return nil case messagerecords.FieldUpdatedAt: m.ResetUpdatedAt() return nil case messagerecords.FieldStatus: m.ResetStatus() return nil case messagerecords.FieldBotWxid: m.ResetBotWxid() return nil case messagerecords.FieldContactID: m.ResetContactID() return nil case messagerecords.FieldContactType: m.ResetContactType() return nil case messagerecords.FieldContactWxid: m.ResetContactWxid() return nil case messagerecords.FieldContentType: m.ResetContentType() return nil case messagerecords.FieldContent: m.ResetContent() return nil case messagerecords.FieldErrorDetail: m.ResetErrorDetail() return nil case messagerecords.FieldSendTime: m.ResetSendTime() return nil case messagerecords.FieldSourceType: m.ResetSourceType() return nil case messagerecords.FieldSourceID: m.ResetSourceID() return nil case messagerecords.FieldSubSourceID: m.ResetSubSourceID() return nil } return fmt.Errorf("unknown MessageRecords field %s", name) } // AddedEdges returns all edge names that were set/added in this mutation. func (m *MessageRecordsMutation) AddedEdges() []string { edges := make([]string, 0, 0) return edges } // AddedIDs returns all IDs (to other nodes) that were added for the given edge // name in this mutation. func (m *MessageRecordsMutation) AddedIDs(name string) []ent.Value { return nil } // RemovedEdges returns all edge names that were removed in this mutation. func (m *MessageRecordsMutation) RemovedEdges() []string { edges := make([]string, 0, 0) return edges } // RemovedIDs returns all IDs (to other nodes) that were removed for the edge with // the given name in this mutation. func (m *MessageRecordsMutation) RemovedIDs(name string) []ent.Value { return nil } // ClearedEdges returns all edge names that were cleared in this mutation. func (m *MessageRecordsMutation) ClearedEdges() []string { edges := make([]string, 0, 0) return edges } // EdgeCleared returns a boolean which indicates if the edge with the given name // was cleared in this mutation. func (m *MessageRecordsMutation) EdgeCleared(name string) bool { return false } // ClearEdge clears the value of the edge with the given name. It returns an error // if that edge is not defined in the schema. func (m *MessageRecordsMutation) ClearEdge(name string) error { return fmt.Errorf("unknown MessageRecords unique edge %s", name) } // ResetEdge resets all changes to the edge with the given name in this mutation. // It returns an error if the edge is not defined in the schema. func (m *MessageRecordsMutation) ResetEdge(name string) error { return fmt.Errorf("unknown MessageRecords edge %s", name) } // TaskMutation represents an operation that mutates the Task nodes in the graph. type TaskMutation struct { config op Op typ string id *uint64 created_at *time.Time updated_at *time.Time status *uint8 addstatus *int8 name *string task_group *string cron_expression *string pattern *string payload *string clearedFields map[string]struct{} task_logs map[uint64]struct{} removedtask_logs map[uint64]struct{} clearedtask_logs bool done bool oldValue func(context.Context) (*Task, error) predicates []predicate.Task } var _ ent.Mutation = (*TaskMutation)(nil) // taskOption allows management of the mutation configuration using functional options. type taskOption func(*TaskMutation) // newTaskMutation creates new mutation for the Task entity. func newTaskMutation(c config, op Op, opts ...taskOption) *TaskMutation { m := &TaskMutation{ config: c, op: op, typ: TypeTask, clearedFields: make(map[string]struct{}), } for _, opt := range opts { opt(m) } return m } // withTaskID sets the ID field of the mutation. func withTaskID(id uint64) taskOption { return func(m *TaskMutation) { var ( err error once sync.Once value *Task ) m.oldValue = func(ctx context.Context) (*Task, error) { once.Do(func() { if m.done { err = errors.New("querying old values post mutation is not allowed") } else { value, err = m.Client().Task.Get(ctx, id) } }) return value, err } m.id = &id } } // withTask sets the old Task of the mutation. func withTask(node *Task) taskOption { return func(m *TaskMutation) { m.oldValue = func(context.Context) (*Task, error) { return node, nil } m.id = &node.ID } } // Client returns a new `ent.Client` from the mutation. If the mutation was // executed in a transaction (ent.Tx), a transactional client is returned. func (m TaskMutation) Client() *Client { client := &Client{config: m.config} client.init() return client } // Tx returns an `ent.Tx` for mutations that were executed in transactions; // it returns an error otherwise. func (m TaskMutation) Tx() (*Tx, error) { if _, ok := m.driver.(*txDriver); !ok { return nil, errors.New("ent: mutation is not running in a transaction") } tx := &Tx{config: m.config} tx.init() return tx, nil } // SetID sets the value of the id field. Note that this // operation is only accepted on creation of Task entities. func (m *TaskMutation) SetID(id uint64) { m.id = &id } // ID returns the ID value in the mutation. Note that the ID is only available // if it was provided to the builder or after it was returned from the database. func (m *TaskMutation) ID() (id uint64, exists bool) { if m.id == nil { return } return *m.id, true } // IDs queries the database and returns the entity ids that match the mutation's predicate. // That means, if the mutation is applied within a transaction with an isolation level such // as sql.LevelSerializable, the returned ids match the ids of the rows that will be updated // or updated by the mutation. func (m *TaskMutation) IDs(ctx context.Context) ([]uint64, error) { switch { case m.op.Is(OpUpdateOne | OpDeleteOne): id, exists := m.ID() if exists { return []uint64{id}, nil } fallthrough case m.op.Is(OpUpdate | OpDelete): return m.Client().Task.Query().Where(m.predicates...).IDs(ctx) default: return nil, fmt.Errorf("IDs is not allowed on %s operations", m.op) } } // SetCreatedAt sets the "created_at" field. func (m *TaskMutation) SetCreatedAt(t time.Time) { m.created_at = &t } // CreatedAt returns the value of the "created_at" field in the mutation. func (m *TaskMutation) CreatedAt() (r time.Time, exists bool) { v := m.created_at if v == nil { return } return *v, true } // OldCreatedAt returns the old "created_at" field's value of the Task entity. // If the Task object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *TaskMutation) OldCreatedAt(ctx context.Context) (v time.Time, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldCreatedAt is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldCreatedAt requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldCreatedAt: %w", err) } return oldValue.CreatedAt, nil } // ResetCreatedAt resets all changes to the "created_at" field. func (m *TaskMutation) ResetCreatedAt() { m.created_at = nil } // SetUpdatedAt sets the "updated_at" field. func (m *TaskMutation) SetUpdatedAt(t time.Time) { m.updated_at = &t } // UpdatedAt returns the value of the "updated_at" field in the mutation. func (m *TaskMutation) UpdatedAt() (r time.Time, exists bool) { v := m.updated_at if v == nil { return } return *v, true } // OldUpdatedAt returns the old "updated_at" field's value of the Task entity. // If the Task object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *TaskMutation) OldUpdatedAt(ctx context.Context) (v time.Time, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldUpdatedAt is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldUpdatedAt requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldUpdatedAt: %w", err) } return oldValue.UpdatedAt, nil } // ResetUpdatedAt resets all changes to the "updated_at" field. func (m *TaskMutation) ResetUpdatedAt() { m.updated_at = nil } // SetStatus sets the "status" field. func (m *TaskMutation) SetStatus(u uint8) { m.status = &u m.addstatus = nil } // Status returns the value of the "status" field in the mutation. func (m *TaskMutation) Status() (r uint8, exists bool) { v := m.status if v == nil { return } return *v, true } // OldStatus returns the old "status" field's value of the Task entity. // If the Task object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *TaskMutation) OldStatus(ctx context.Context) (v uint8, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldStatus is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldStatus requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldStatus: %w", err) } return oldValue.Status, nil } // AddStatus adds u to the "status" field. func (m *TaskMutation) AddStatus(u int8) { if m.addstatus != nil { *m.addstatus += u } else { m.addstatus = &u } } // AddedStatus returns the value that was added to the "status" field in this mutation. func (m *TaskMutation) AddedStatus() (r int8, exists bool) { v := m.addstatus if v == nil { return } return *v, true } // ClearStatus clears the value of the "status" field. func (m *TaskMutation) ClearStatus() { m.status = nil m.addstatus = nil m.clearedFields[task.FieldStatus] = struct{}{} } // StatusCleared returns if the "status" field was cleared in this mutation. func (m *TaskMutation) StatusCleared() bool { _, ok := m.clearedFields[task.FieldStatus] return ok } // ResetStatus resets all changes to the "status" field. func (m *TaskMutation) ResetStatus() { m.status = nil m.addstatus = nil delete(m.clearedFields, task.FieldStatus) } // SetName sets the "name" field. func (m *TaskMutation) SetName(s string) { m.name = &s } // Name returns the value of the "name" field in the mutation. func (m *TaskMutation) Name() (r string, exists bool) { v := m.name if v == nil { return } return *v, true } // OldName returns the old "name" field's value of the Task entity. // If the Task object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *TaskMutation) OldName(ctx context.Context) (v string, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldName is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldName requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldName: %w", err) } return oldValue.Name, nil } // ResetName resets all changes to the "name" field. func (m *TaskMutation) ResetName() { m.name = nil } // SetTaskGroup sets the "task_group" field. func (m *TaskMutation) SetTaskGroup(s string) { m.task_group = &s } // TaskGroup returns the value of the "task_group" field in the mutation. func (m *TaskMutation) TaskGroup() (r string, exists bool) { v := m.task_group if v == nil { return } return *v, true } // OldTaskGroup returns the old "task_group" field's value of the Task entity. // If the Task object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *TaskMutation) OldTaskGroup(ctx context.Context) (v string, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldTaskGroup is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldTaskGroup requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldTaskGroup: %w", err) } return oldValue.TaskGroup, nil } // ResetTaskGroup resets all changes to the "task_group" field. func (m *TaskMutation) ResetTaskGroup() { m.task_group = nil } // SetCronExpression sets the "cron_expression" field. func (m *TaskMutation) SetCronExpression(s string) { m.cron_expression = &s } // CronExpression returns the value of the "cron_expression" field in the mutation. func (m *TaskMutation) CronExpression() (r string, exists bool) { v := m.cron_expression if v == nil { return } return *v, true } // OldCronExpression returns the old "cron_expression" field's value of the Task entity. // If the Task object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *TaskMutation) OldCronExpression(ctx context.Context) (v string, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldCronExpression is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldCronExpression requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldCronExpression: %w", err) } return oldValue.CronExpression, nil } // ResetCronExpression resets all changes to the "cron_expression" field. func (m *TaskMutation) ResetCronExpression() { m.cron_expression = nil } // SetPattern sets the "pattern" field. func (m *TaskMutation) SetPattern(s string) { m.pattern = &s } // Pattern returns the value of the "pattern" field in the mutation. func (m *TaskMutation) Pattern() (r string, exists bool) { v := m.pattern if v == nil { return } return *v, true } // OldPattern returns the old "pattern" field's value of the Task entity. // If the Task object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *TaskMutation) OldPattern(ctx context.Context) (v string, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldPattern is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldPattern requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldPattern: %w", err) } return oldValue.Pattern, nil } // ResetPattern resets all changes to the "pattern" field. func (m *TaskMutation) ResetPattern() { m.pattern = nil } // SetPayload sets the "payload" field. func (m *TaskMutation) SetPayload(s string) { m.payload = &s } // Payload returns the value of the "payload" field in the mutation. func (m *TaskMutation) Payload() (r string, exists bool) { v := m.payload if v == nil { return } return *v, true } // OldPayload returns the old "payload" field's value of the Task entity. // If the Task object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *TaskMutation) OldPayload(ctx context.Context) (v string, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldPayload is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldPayload requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldPayload: %w", err) } return oldValue.Payload, nil } // ResetPayload resets all changes to the "payload" field. func (m *TaskMutation) ResetPayload() { m.payload = nil } // AddTaskLogIDs adds the "task_logs" edge to the TaskLog entity by ids. func (m *TaskMutation) AddTaskLogIDs(ids ...uint64) { if m.task_logs == nil { m.task_logs = make(map[uint64]struct{}) } for i := range ids { m.task_logs[ids[i]] = struct{}{} } } // ClearTaskLogs clears the "task_logs" edge to the TaskLog entity. func (m *TaskMutation) ClearTaskLogs() { m.clearedtask_logs = true } // TaskLogsCleared reports if the "task_logs" edge to the TaskLog entity was cleared. func (m *TaskMutation) TaskLogsCleared() bool { return m.clearedtask_logs } // RemoveTaskLogIDs removes the "task_logs" edge to the TaskLog entity by IDs. func (m *TaskMutation) RemoveTaskLogIDs(ids ...uint64) { if m.removedtask_logs == nil { m.removedtask_logs = make(map[uint64]struct{}) } for i := range ids { delete(m.task_logs, ids[i]) m.removedtask_logs[ids[i]] = struct{}{} } } // RemovedTaskLogs returns the removed IDs of the "task_logs" edge to the TaskLog entity. func (m *TaskMutation) RemovedTaskLogsIDs() (ids []uint64) { for id := range m.removedtask_logs { ids = append(ids, id) } return } // TaskLogsIDs returns the "task_logs" edge IDs in the mutation. func (m *TaskMutation) TaskLogsIDs() (ids []uint64) { for id := range m.task_logs { ids = append(ids, id) } return } // ResetTaskLogs resets all changes to the "task_logs" edge. func (m *TaskMutation) ResetTaskLogs() { m.task_logs = nil m.clearedtask_logs = false m.removedtask_logs = nil } // Where appends a list predicates to the TaskMutation builder. func (m *TaskMutation) Where(ps ...predicate.Task) { m.predicates = append(m.predicates, ps...) } // WhereP appends storage-level predicates to the TaskMutation builder. Using this method, // users can use type-assertion to append predicates that do not depend on any generated package. func (m *TaskMutation) WhereP(ps ...func(*sql.Selector)) { p := make([]predicate.Task, len(ps)) for i := range ps { p[i] = ps[i] } m.Where(p...) } // Op returns the operation name. func (m *TaskMutation) Op() Op { return m.op } // SetOp allows setting the mutation operation. func (m *TaskMutation) SetOp(op Op) { m.op = op } // Type returns the node type of this mutation (Task). func (m *TaskMutation) Type() string { return m.typ } // Fields returns all fields that were changed during this mutation. Note that in // order to get all numeric fields that were incremented/decremented, call // AddedFields(). func (m *TaskMutation) Fields() []string { fields := make([]string, 0, 8) if m.created_at != nil { fields = append(fields, task.FieldCreatedAt) } if m.updated_at != nil { fields = append(fields, task.FieldUpdatedAt) } if m.status != nil { fields = append(fields, task.FieldStatus) } if m.name != nil { fields = append(fields, task.FieldName) } if m.task_group != nil { fields = append(fields, task.FieldTaskGroup) } if m.cron_expression != nil { fields = append(fields, task.FieldCronExpression) } if m.pattern != nil { fields = append(fields, task.FieldPattern) } if m.payload != nil { fields = append(fields, task.FieldPayload) } return fields } // Field returns the value of a field with the given name. The second boolean // return value indicates that this field was not set, or was not defined in the // schema. func (m *TaskMutation) Field(name string) (ent.Value, bool) { switch name { case task.FieldCreatedAt: return m.CreatedAt() case task.FieldUpdatedAt: return m.UpdatedAt() case task.FieldStatus: return m.Status() case task.FieldName: return m.Name() case task.FieldTaskGroup: return m.TaskGroup() case task.FieldCronExpression: return m.CronExpression() case task.FieldPattern: return m.Pattern() case task.FieldPayload: return m.Payload() } return nil, false } // OldField returns the old value of the field from the database. An error is // returned if the mutation operation is not UpdateOne, or the query to the // database failed. func (m *TaskMutation) OldField(ctx context.Context, name string) (ent.Value, error) { switch name { case task.FieldCreatedAt: return m.OldCreatedAt(ctx) case task.FieldUpdatedAt: return m.OldUpdatedAt(ctx) case task.FieldStatus: return m.OldStatus(ctx) case task.FieldName: return m.OldName(ctx) case task.FieldTaskGroup: return m.OldTaskGroup(ctx) case task.FieldCronExpression: return m.OldCronExpression(ctx) case task.FieldPattern: return m.OldPattern(ctx) case task.FieldPayload: return m.OldPayload(ctx) } return nil, fmt.Errorf("unknown Task field %s", name) } // SetField sets the value of a field with the given name. It returns an error if // the field is not defined in the schema, or if the type mismatched the field // type. func (m *TaskMutation) SetField(name string, value ent.Value) error { switch name { case task.FieldCreatedAt: v, ok := value.(time.Time) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetCreatedAt(v) return nil case task.FieldUpdatedAt: v, ok := value.(time.Time) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetUpdatedAt(v) return nil case task.FieldStatus: v, ok := value.(uint8) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetStatus(v) return nil case task.FieldName: v, ok := value.(string) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetName(v) return nil case task.FieldTaskGroup: v, ok := value.(string) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetTaskGroup(v) return nil case task.FieldCronExpression: v, ok := value.(string) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetCronExpression(v) return nil case task.FieldPattern: v, ok := value.(string) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetPattern(v) return nil case task.FieldPayload: v, ok := value.(string) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetPayload(v) return nil } return fmt.Errorf("unknown Task field %s", name) } // AddedFields returns all numeric fields that were incremented/decremented during // this mutation. func (m *TaskMutation) AddedFields() []string { var fields []string if m.addstatus != nil { fields = append(fields, task.FieldStatus) } return fields } // AddedField returns the numeric value that was incremented/decremented on a field // with the given name. The second boolean return value indicates that this field // was not set, or was not defined in the schema. func (m *TaskMutation) AddedField(name string) (ent.Value, bool) { switch name { case task.FieldStatus: return m.AddedStatus() } return nil, false } // AddField adds the value to the field with the given name. It returns an error if // the field is not defined in the schema, or if the type mismatched the field // type. func (m *TaskMutation) AddField(name string, value ent.Value) error { switch name { case task.FieldStatus: v, ok := value.(int8) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.AddStatus(v) return nil } return fmt.Errorf("unknown Task numeric field %s", name) } // ClearedFields returns all nullable fields that were cleared during this // mutation. func (m *TaskMutation) ClearedFields() []string { var fields []string if m.FieldCleared(task.FieldStatus) { fields = append(fields, task.FieldStatus) } return fields } // FieldCleared returns a boolean indicating if a field with the given name was // cleared in this mutation. func (m *TaskMutation) FieldCleared(name string) bool { _, ok := m.clearedFields[name] return ok } // ClearField clears the value of the field with the given name. It returns an // error if the field is not defined in the schema. func (m *TaskMutation) ClearField(name string) error { switch name { case task.FieldStatus: m.ClearStatus() return nil } return fmt.Errorf("unknown Task nullable field %s", name) } // ResetField resets all changes in the mutation for the field with the given name. // It returns an error if the field is not defined in the schema. func (m *TaskMutation) ResetField(name string) error { switch name { case task.FieldCreatedAt: m.ResetCreatedAt() return nil case task.FieldUpdatedAt: m.ResetUpdatedAt() return nil case task.FieldStatus: m.ResetStatus() return nil case task.FieldName: m.ResetName() return nil case task.FieldTaskGroup: m.ResetTaskGroup() return nil case task.FieldCronExpression: m.ResetCronExpression() return nil case task.FieldPattern: m.ResetPattern() return nil case task.FieldPayload: m.ResetPayload() return nil } return fmt.Errorf("unknown Task field %s", name) } // AddedEdges returns all edge names that were set/added in this mutation. func (m *TaskMutation) AddedEdges() []string { edges := make([]string, 0, 1) if m.task_logs != nil { edges = append(edges, task.EdgeTaskLogs) } return edges } // AddedIDs returns all IDs (to other nodes) that were added for the given edge // name in this mutation. func (m *TaskMutation) AddedIDs(name string) []ent.Value { switch name { case task.EdgeTaskLogs: ids := make([]ent.Value, 0, len(m.task_logs)) for id := range m.task_logs { ids = append(ids, id) } return ids } return nil } // RemovedEdges returns all edge names that were removed in this mutation. func (m *TaskMutation) RemovedEdges() []string { edges := make([]string, 0, 1) if m.removedtask_logs != nil { edges = append(edges, task.EdgeTaskLogs) } return edges } // RemovedIDs returns all IDs (to other nodes) that were removed for the edge with // the given name in this mutation. func (m *TaskMutation) RemovedIDs(name string) []ent.Value { switch name { case task.EdgeTaskLogs: ids := make([]ent.Value, 0, len(m.removedtask_logs)) for id := range m.removedtask_logs { ids = append(ids, id) } return ids } return nil } // ClearedEdges returns all edge names that were cleared in this mutation. func (m *TaskMutation) ClearedEdges() []string { edges := make([]string, 0, 1) if m.clearedtask_logs { edges = append(edges, task.EdgeTaskLogs) } return edges } // EdgeCleared returns a boolean which indicates if the edge with the given name // was cleared in this mutation. func (m *TaskMutation) EdgeCleared(name string) bool { switch name { case task.EdgeTaskLogs: return m.clearedtask_logs } return false } // ClearEdge clears the value of the edge with the given name. It returns an error // if that edge is not defined in the schema. func (m *TaskMutation) ClearEdge(name string) error { switch name { } return fmt.Errorf("unknown Task unique edge %s", name) } // ResetEdge resets all changes to the edge with the given name in this mutation. // It returns an error if the edge is not defined in the schema. func (m *TaskMutation) ResetEdge(name string) error { switch name { case task.EdgeTaskLogs: m.ResetTaskLogs() return nil } return fmt.Errorf("unknown Task edge %s", name) } // TaskLogMutation represents an operation that mutates the TaskLog nodes in the graph. type TaskLogMutation struct { config op Op typ string id *uint64 started_at *time.Time finished_at *time.Time result *uint8 addresult *int8 clearedFields map[string]struct{} tasks *uint64 clearedtasks bool done bool oldValue func(context.Context) (*TaskLog, error) predicates []predicate.TaskLog } var _ ent.Mutation = (*TaskLogMutation)(nil) // tasklogOption allows management of the mutation configuration using functional options. type tasklogOption func(*TaskLogMutation) // newTaskLogMutation creates new mutation for the TaskLog entity. func newTaskLogMutation(c config, op Op, opts ...tasklogOption) *TaskLogMutation { m := &TaskLogMutation{ config: c, op: op, typ: TypeTaskLog, clearedFields: make(map[string]struct{}), } for _, opt := range opts { opt(m) } return m } // withTaskLogID sets the ID field of the mutation. func withTaskLogID(id uint64) tasklogOption { return func(m *TaskLogMutation) { var ( err error once sync.Once value *TaskLog ) m.oldValue = func(ctx context.Context) (*TaskLog, error) { once.Do(func() { if m.done { err = errors.New("querying old values post mutation is not allowed") } else { value, err = m.Client().TaskLog.Get(ctx, id) } }) return value, err } m.id = &id } } // withTaskLog sets the old TaskLog of the mutation. func withTaskLog(node *TaskLog) tasklogOption { return func(m *TaskLogMutation) { m.oldValue = func(context.Context) (*TaskLog, error) { return node, nil } m.id = &node.ID } } // Client returns a new `ent.Client` from the mutation. If the mutation was // executed in a transaction (ent.Tx), a transactional client is returned. func (m TaskLogMutation) Client() *Client { client := &Client{config: m.config} client.init() return client } // Tx returns an `ent.Tx` for mutations that were executed in transactions; // it returns an error otherwise. func (m TaskLogMutation) Tx() (*Tx, error) { if _, ok := m.driver.(*txDriver); !ok { return nil, errors.New("ent: mutation is not running in a transaction") } tx := &Tx{config: m.config} tx.init() return tx, nil } // SetID sets the value of the id field. Note that this // operation is only accepted on creation of TaskLog entities. func (m *TaskLogMutation) SetID(id uint64) { m.id = &id } // ID returns the ID value in the mutation. Note that the ID is only available // if it was provided to the builder or after it was returned from the database. func (m *TaskLogMutation) ID() (id uint64, exists bool) { if m.id == nil { return } return *m.id, true } // IDs queries the database and returns the entity ids that match the mutation's predicate. // That means, if the mutation is applied within a transaction with an isolation level such // as sql.LevelSerializable, the returned ids match the ids of the rows that will be updated // or updated by the mutation. func (m *TaskLogMutation) IDs(ctx context.Context) ([]uint64, error) { switch { case m.op.Is(OpUpdateOne | OpDeleteOne): id, exists := m.ID() if exists { return []uint64{id}, nil } fallthrough case m.op.Is(OpUpdate | OpDelete): return m.Client().TaskLog.Query().Where(m.predicates...).IDs(ctx) default: return nil, fmt.Errorf("IDs is not allowed on %s operations", m.op) } } // SetStartedAt sets the "started_at" field. func (m *TaskLogMutation) SetStartedAt(t time.Time) { m.started_at = &t } // StartedAt returns the value of the "started_at" field in the mutation. func (m *TaskLogMutation) StartedAt() (r time.Time, exists bool) { v := m.started_at if v == nil { return } return *v, true } // OldStartedAt returns the old "started_at" field's value of the TaskLog entity. // If the TaskLog object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *TaskLogMutation) OldStartedAt(ctx context.Context) (v time.Time, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldStartedAt is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldStartedAt requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldStartedAt: %w", err) } return oldValue.StartedAt, nil } // ResetStartedAt resets all changes to the "started_at" field. func (m *TaskLogMutation) ResetStartedAt() { m.started_at = nil } // SetFinishedAt sets the "finished_at" field. func (m *TaskLogMutation) SetFinishedAt(t time.Time) { m.finished_at = &t } // FinishedAt returns the value of the "finished_at" field in the mutation. func (m *TaskLogMutation) FinishedAt() (r time.Time, exists bool) { v := m.finished_at if v == nil { return } return *v, true } // OldFinishedAt returns the old "finished_at" field's value of the TaskLog entity. // If the TaskLog object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *TaskLogMutation) OldFinishedAt(ctx context.Context) (v time.Time, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldFinishedAt is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldFinishedAt requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldFinishedAt: %w", err) } return oldValue.FinishedAt, nil } // ResetFinishedAt resets all changes to the "finished_at" field. func (m *TaskLogMutation) ResetFinishedAt() { m.finished_at = nil } // SetResult sets the "result" field. func (m *TaskLogMutation) SetResult(u uint8) { m.result = &u m.addresult = nil } // Result returns the value of the "result" field in the mutation. func (m *TaskLogMutation) Result() (r uint8, exists bool) { v := m.result if v == nil { return } return *v, true } // OldResult returns the old "result" field's value of the TaskLog entity. // If the TaskLog object wasn't provided to the builder, the object is fetched from the database. // An error is returned if the mutation operation is not UpdateOne, or the database query fails. func (m *TaskLogMutation) OldResult(ctx context.Context) (v uint8, err error) { if !m.op.Is(OpUpdateOne) { return v, errors.New("OldResult is only allowed on UpdateOne operations") } if m.id == nil || m.oldValue == nil { return v, errors.New("OldResult requires an ID field in the mutation") } oldValue, err := m.oldValue(ctx) if err != nil { return v, fmt.Errorf("querying old value for OldResult: %w", err) } return oldValue.Result, nil } // AddResult adds u to the "result" field. func (m *TaskLogMutation) AddResult(u int8) { if m.addresult != nil { *m.addresult += u } else { m.addresult = &u } } // AddedResult returns the value that was added to the "result" field in this mutation. func (m *TaskLogMutation) AddedResult() (r int8, exists bool) { v := m.addresult if v == nil { return } return *v, true } // ResetResult resets all changes to the "result" field. func (m *TaskLogMutation) ResetResult() { m.result = nil m.addresult = nil } // SetTasksID sets the "tasks" edge to the Task entity by id. func (m *TaskLogMutation) SetTasksID(id uint64) { m.tasks = &id } // ClearTasks clears the "tasks" edge to the Task entity. func (m *TaskLogMutation) ClearTasks() { m.clearedtasks = true } // TasksCleared reports if the "tasks" edge to the Task entity was cleared. func (m *TaskLogMutation) TasksCleared() bool { return m.clearedtasks } // TasksID returns the "tasks" edge ID in the mutation. func (m *TaskLogMutation) TasksID() (id uint64, exists bool) { if m.tasks != nil { return *m.tasks, true } return } // TasksIDs returns the "tasks" edge IDs in the mutation. // Note that IDs always returns len(IDs) <= 1 for unique edges, and you should use // TasksID instead. It exists only for internal usage by the builders. func (m *TaskLogMutation) TasksIDs() (ids []uint64) { if id := m.tasks; id != nil { ids = append(ids, *id) } return } // ResetTasks resets all changes to the "tasks" edge. func (m *TaskLogMutation) ResetTasks() { m.tasks = nil m.clearedtasks = false } // Where appends a list predicates to the TaskLogMutation builder. func (m *TaskLogMutation) Where(ps ...predicate.TaskLog) { m.predicates = append(m.predicates, ps...) } // WhereP appends storage-level predicates to the TaskLogMutation builder. Using this method, // users can use type-assertion to append predicates that do not depend on any generated package. func (m *TaskLogMutation) WhereP(ps ...func(*sql.Selector)) { p := make([]predicate.TaskLog, len(ps)) for i := range ps { p[i] = ps[i] } m.Where(p...) } // Op returns the operation name. func (m *TaskLogMutation) Op() Op { return m.op } // SetOp allows setting the mutation operation. func (m *TaskLogMutation) SetOp(op Op) { m.op = op } // Type returns the node type of this mutation (TaskLog). func (m *TaskLogMutation) Type() string { return m.typ } // Fields returns all fields that were changed during this mutation. Note that in // order to get all numeric fields that were incremented/decremented, call // AddedFields(). func (m *TaskLogMutation) Fields() []string { fields := make([]string, 0, 3) if m.started_at != nil { fields = append(fields, tasklog.FieldStartedAt) } if m.finished_at != nil { fields = append(fields, tasklog.FieldFinishedAt) } if m.result != nil { fields = append(fields, tasklog.FieldResult) } return fields } // Field returns the value of a field with the given name. The second boolean // return value indicates that this field was not set, or was not defined in the // schema. func (m *TaskLogMutation) Field(name string) (ent.Value, bool) { switch name { case tasklog.FieldStartedAt: return m.StartedAt() case tasklog.FieldFinishedAt: return m.FinishedAt() case tasklog.FieldResult: return m.Result() } return nil, false } // OldField returns the old value of the field from the database. An error is // returned if the mutation operation is not UpdateOne, or the query to the // database failed. func (m *TaskLogMutation) OldField(ctx context.Context, name string) (ent.Value, error) { switch name { case tasklog.FieldStartedAt: return m.OldStartedAt(ctx) case tasklog.FieldFinishedAt: return m.OldFinishedAt(ctx) case tasklog.FieldResult: return m.OldResult(ctx) } return nil, fmt.Errorf("unknown TaskLog field %s", name) } // SetField sets the value of a field with the given name. It returns an error if // the field is not defined in the schema, or if the type mismatched the field // type. func (m *TaskLogMutation) SetField(name string, value ent.Value) error { switch name { case tasklog.FieldStartedAt: v, ok := value.(time.Time) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetStartedAt(v) return nil case tasklog.FieldFinishedAt: v, ok := value.(time.Time) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetFinishedAt(v) return nil case tasklog.FieldResult: v, ok := value.(uint8) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.SetResult(v) return nil } return fmt.Errorf("unknown TaskLog field %s", name) } // AddedFields returns all numeric fields that were incremented/decremented during // this mutation. func (m *TaskLogMutation) AddedFields() []string { var fields []string if m.addresult != nil { fields = append(fields, tasklog.FieldResult) } return fields } // AddedField returns the numeric value that was incremented/decremented on a field // with the given name. The second boolean return value indicates that this field // was not set, or was not defined in the schema. func (m *TaskLogMutation) AddedField(name string) (ent.Value, bool) { switch name { case tasklog.FieldResult: return m.AddedResult() } return nil, false } // AddField adds the value to the field with the given name. It returns an error if // the field is not defined in the schema, or if the type mismatched the field // type. func (m *TaskLogMutation) AddField(name string, value ent.Value) error { switch name { case tasklog.FieldResult: v, ok := value.(int8) if !ok { return fmt.Errorf("unexpected type %T for field %s", value, name) } m.AddResult(v) return nil } return fmt.Errorf("unknown TaskLog numeric field %s", name) } // ClearedFields returns all nullable fields that were cleared during this // mutation. func (m *TaskLogMutation) ClearedFields() []string { return nil } // FieldCleared returns a boolean indicating if a field with the given name was // cleared in this mutation. func (m *TaskLogMutation) FieldCleared(name string) bool { _, ok := m.clearedFields[name] return ok } // ClearField clears the value of the field with the given name. It returns an // error if the field is not defined in the schema. func (m *TaskLogMutation) ClearField(name string) error { return fmt.Errorf("unknown TaskLog nullable field %s", name) } // ResetField resets all changes in the mutation for the field with the given name. // It returns an error if the field is not defined in the schema. func (m *TaskLogMutation) ResetField(name string) error { switch name { case tasklog.FieldStartedAt: m.ResetStartedAt() return nil case tasklog.FieldFinishedAt: m.ResetFinishedAt() return nil case tasklog.FieldResult: m.ResetResult() return nil } return fmt.Errorf("unknown TaskLog field %s", name) } // AddedEdges returns all edge names that were set/added in this mutation. func (m *TaskLogMutation) AddedEdges() []string { edges := make([]string, 0, 1) if m.tasks != nil { edges = append(edges, tasklog.EdgeTasks) } return edges } // AddedIDs returns all IDs (to other nodes) that were added for the given edge // name in this mutation. func (m *TaskLogMutation) AddedIDs(name string) []ent.Value { switch name { case tasklog.EdgeTasks: if id := m.tasks; id != nil { return []ent.Value{*id} } } return nil } // RemovedEdges returns all edge names that were removed in this mutation. func (m *TaskLogMutation) RemovedEdges() []string { edges := make([]string, 0, 1) return edges } // RemovedIDs returns all IDs (to other nodes) that were removed for the edge with // the given name in this mutation. func (m *TaskLogMutation) RemovedIDs(name string) []ent.Value { return nil } // ClearedEdges returns all edge names that were cleared in this mutation. func (m *TaskLogMutation) ClearedEdges() []string { edges := make([]string, 0, 1) if m.clearedtasks { edges = append(edges, tasklog.EdgeTasks) } return edges } // EdgeCleared returns a boolean which indicates if the edge with the given name // was cleared in this mutation. func (m *TaskLogMutation) EdgeCleared(name string) bool { switch name { case tasklog.EdgeTasks: return m.clearedtasks } return false } // ClearEdge clears the value of the edge with the given name. It returns an error // if that edge is not defined in the schema. func (m *TaskLogMutation) ClearEdge(name string) error { switch name { case tasklog.EdgeTasks: m.ClearTasks() return nil } return fmt.Errorf("unknown TaskLog unique edge %s", name) } // ResetEdge resets all changes to the edge with the given name in this mutation. // It returns an error if the edge is not defined in the schema. func (m *TaskLogMutation) ResetEdge(name string) error { switch name { case tasklog.EdgeTasks: m.ResetTasks() return nil } return fmt.Errorf("unknown TaskLog edge %s", name) }