// Code generated by ent, DO NOT EDIT. package ent import ( "context" "errors" "fmt" "mingyang-admin-app-rpc/ent/predicate" "mingyang-admin-app-rpc/ent/user" "time" "entgo.io/ent/dialect/sql" "entgo.io/ent/dialect/sql/sqlgraph" "entgo.io/ent/schema/field" ) // UserUpdate is the builder for updating User entities. type UserUpdate struct { config hooks []Hook mutation *UserMutation } // Where appends a list predicates to the UserUpdate builder. func (_u *UserUpdate) Where(ps ...predicate.User) *UserUpdate { _u.mutation.Where(ps...) return _u } // SetUpdatedAt sets the "updated_at" field. func (_u *UserUpdate) SetUpdatedAt(v time.Time) *UserUpdate { _u.mutation.SetUpdatedAt(v) return _u } // SetStatus sets the "status" field. func (_u *UserUpdate) SetStatus(v uint8) *UserUpdate { _u.mutation.ResetStatus() _u.mutation.SetStatus(v) return _u } // SetNillableStatus sets the "status" field if the given value is not nil. func (_u *UserUpdate) SetNillableStatus(v *uint8) *UserUpdate { if v != nil { _u.SetStatus(*v) } return _u } // AddStatus adds value to the "status" field. func (_u *UserUpdate) AddStatus(v int8) *UserUpdate { _u.mutation.AddStatus(v) return _u } // ClearStatus clears the value of the "status" field. func (_u *UserUpdate) ClearStatus() *UserUpdate { _u.mutation.ClearStatus() return _u } // SetDeletedAt sets the "deleted_at" field. func (_u *UserUpdate) SetDeletedAt(v time.Time) *UserUpdate { _u.mutation.SetDeletedAt(v) return _u } // SetNillableDeletedAt sets the "deleted_at" field if the given value is not nil. func (_u *UserUpdate) SetNillableDeletedAt(v *time.Time) *UserUpdate { if v != nil { _u.SetDeletedAt(*v) } return _u } // ClearDeletedAt clears the value of the "deleted_at" field. func (_u *UserUpdate) ClearDeletedAt() *UserUpdate { _u.mutation.ClearDeletedAt() return _u } // SetUsername sets the "username" field. func (_u *UserUpdate) SetUsername(v string) *UserUpdate { _u.mutation.SetUsername(v) return _u } // SetNillableUsername sets the "username" field if the given value is not nil. func (_u *UserUpdate) SetNillableUsername(v *string) *UserUpdate { if v != nil { _u.SetUsername(*v) } return _u } // SetEmail sets the "email" field. func (_u *UserUpdate) SetEmail(v string) *UserUpdate { _u.mutation.SetEmail(v) return _u } // SetNillableEmail sets the "email" field if the given value is not nil. func (_u *UserUpdate) SetNillableEmail(v *string) *UserUpdate { if v != nil { _u.SetEmail(*v) } return _u } // SetMobile sets the "mobile" field. func (_u *UserUpdate) SetMobile(v string) *UserUpdate { _u.mutation.SetMobile(v) return _u } // SetNillableMobile sets the "mobile" field if the given value is not nil. func (_u *UserUpdate) SetNillableMobile(v *string) *UserUpdate { if v != nil { _u.SetMobile(*v) } return _u } // ClearMobile clears the value of the "mobile" field. func (_u *UserUpdate) ClearMobile() *UserUpdate { _u.mutation.ClearMobile() return _u } // SetPasswordHash sets the "password_hash" field. func (_u *UserUpdate) SetPasswordHash(v string) *UserUpdate { _u.mutation.SetPasswordHash(v) return _u } // SetNillablePasswordHash sets the "password_hash" field if the given value is not nil. func (_u *UserUpdate) SetNillablePasswordHash(v *string) *UserUpdate { if v != nil { _u.SetPasswordHash(*v) } return _u } // SetSalt sets the "salt" field. func (_u *UserUpdate) SetSalt(v string) *UserUpdate { _u.mutation.SetSalt(v) return _u } // SetNillableSalt sets the "salt" field if the given value is not nil. func (_u *UserUpdate) SetNillableSalt(v *string) *UserUpdate { if v != nil { _u.SetSalt(*v) } return _u } // SetNickname sets the "nickname" field. func (_u *UserUpdate) SetNickname(v string) *UserUpdate { _u.mutation.SetNickname(v) return _u } // SetNillableNickname sets the "nickname" field if the given value is not nil. func (_u *UserUpdate) SetNillableNickname(v *string) *UserUpdate { if v != nil { _u.SetNickname(*v) } return _u } // SetAvatar sets the "avatar" field. func (_u *UserUpdate) SetAvatar(v string) *UserUpdate { _u.mutation.SetAvatar(v) return _u } // SetNillableAvatar sets the "avatar" field if the given value is not nil. func (_u *UserUpdate) SetNillableAvatar(v *string) *UserUpdate { if v != nil { _u.SetAvatar(*v) } return _u } // ClearAvatar clears the value of the "avatar" field. func (_u *UserUpdate) ClearAvatar() *UserUpdate { _u.mutation.ClearAvatar() return _u } // SetGender sets the "gender" field. func (_u *UserUpdate) SetGender(v user.Gender) *UserUpdate { _u.mutation.SetGender(v) return _u } // SetNillableGender sets the "gender" field if the given value is not nil. func (_u *UserUpdate) SetNillableGender(v *user.Gender) *UserUpdate { if v != nil { _u.SetGender(*v) } return _u } // SetBirthday sets the "birthday" field. func (_u *UserUpdate) SetBirthday(v time.Time) *UserUpdate { _u.mutation.SetBirthday(v) return _u } // SetNillableBirthday sets the "birthday" field if the given value is not nil. func (_u *UserUpdate) SetNillableBirthday(v *time.Time) *UserUpdate { if v != nil { _u.SetBirthday(*v) } return _u } // ClearBirthday clears the value of the "birthday" field. func (_u *UserUpdate) ClearBirthday() *UserUpdate { _u.mutation.ClearBirthday() return _u } // SetAccountStatus sets the "account_status" field. func (_u *UserUpdate) SetAccountStatus(v user.AccountStatus) *UserUpdate { _u.mutation.SetAccountStatus(v) return _u } // SetNillableAccountStatus sets the "account_status" field if the given value is not nil. func (_u *UserUpdate) SetNillableAccountStatus(v *user.AccountStatus) *UserUpdate { if v != nil { _u.SetAccountStatus(*v) } return _u } // SetIsVerified sets the "is_verified" field. func (_u *UserUpdate) SetIsVerified(v uint32) *UserUpdate { _u.mutation.ResetIsVerified() _u.mutation.SetIsVerified(v) return _u } // SetNillableIsVerified sets the "is_verified" field if the given value is not nil. func (_u *UserUpdate) SetNillableIsVerified(v *uint32) *UserUpdate { if v != nil { _u.SetIsVerified(*v) } return _u } // AddIsVerified adds value to the "is_verified" field. func (_u *UserUpdate) AddIsVerified(v int32) *UserUpdate { _u.mutation.AddIsVerified(v) return _u } // SetRegisteredLoginIP sets the "registered_login_ip" field. func (_u *UserUpdate) SetRegisteredLoginIP(v string) *UserUpdate { _u.mutation.SetRegisteredLoginIP(v) return _u } // SetNillableRegisteredLoginIP sets the "registered_login_ip" field if the given value is not nil. func (_u *UserUpdate) SetNillableRegisteredLoginIP(v *string) *UserUpdate { if v != nil { _u.SetRegisteredLoginIP(*v) } return _u } // ClearRegisteredLoginIP clears the value of the "registered_login_ip" field. func (_u *UserUpdate) ClearRegisteredLoginIP() *UserUpdate { _u.mutation.ClearRegisteredLoginIP() return _u } // SetLoginAttempts sets the "login_attempts" field. func (_u *UserUpdate) SetLoginAttempts(v int64) *UserUpdate { _u.mutation.ResetLoginAttempts() _u.mutation.SetLoginAttempts(v) return _u } // SetNillableLoginAttempts sets the "login_attempts" field if the given value is not nil. func (_u *UserUpdate) SetNillableLoginAttempts(v *int64) *UserUpdate { if v != nil { _u.SetLoginAttempts(*v) } return _u } // AddLoginAttempts adds value to the "login_attempts" field. func (_u *UserUpdate) AddLoginAttempts(v int64) *UserUpdate { _u.mutation.AddLoginAttempts(v) return _u } // SetMetadata sets the "metadata" field. func (_u *UserUpdate) SetMetadata(v map[string]interface{}) *UserUpdate { _u.mutation.SetMetadata(v) return _u } // ClearMetadata clears the value of the "metadata" field. func (_u *UserUpdate) ClearMetadata() *UserUpdate { _u.mutation.ClearMetadata() return _u } // SetRegistrationSource sets the "registration_source" field. func (_u *UserUpdate) SetRegistrationSource(v string) *UserUpdate { _u.mutation.SetRegistrationSource(v) return _u } // SetNillableRegistrationSource sets the "registration_source" field if the given value is not nil. func (_u *UserUpdate) SetNillableRegistrationSource(v *string) *UserUpdate { if v != nil { _u.SetRegistrationSource(*v) } return _u } // ClearRegistrationSource clears the value of the "registration_source" field. func (_u *UserUpdate) ClearRegistrationSource() *UserUpdate { _u.mutation.ClearRegistrationSource() return _u } // Mutation returns the UserMutation object of the builder. func (_u *UserUpdate) Mutation() *UserMutation { return _u.mutation } // Save executes the query and returns the number of nodes affected by the update operation. func (_u *UserUpdate) Save(ctx context.Context) (int, error) { _u.defaults() return withHooks(ctx, _u.sqlSave, _u.mutation, _u.hooks) } // SaveX is like Save, but panics if an error occurs. func (_u *UserUpdate) SaveX(ctx context.Context) int { affected, err := _u.Save(ctx) if err != nil { panic(err) } return affected } // Exec executes the query. func (_u *UserUpdate) Exec(ctx context.Context) error { _, err := _u.Save(ctx) return err } // ExecX is like Exec, but panics if an error occurs. func (_u *UserUpdate) ExecX(ctx context.Context) { if err := _u.Exec(ctx); err != nil { panic(err) } } // defaults sets the default values of the builder before save. func (_u *UserUpdate) defaults() { if _, ok := _u.mutation.UpdatedAt(); !ok { v := user.UpdateDefaultUpdatedAt() _u.mutation.SetUpdatedAt(v) } } // check runs all checks and user-defined validators on the builder. func (_u *UserUpdate) check() error { if v, ok := _u.mutation.Username(); ok { if err := user.UsernameValidator(v); err != nil { return &ValidationError{Name: "username", err: fmt.Errorf(`ent: validator failed for field "User.username": %w`, err)} } } if v, ok := _u.mutation.Email(); ok { if err := user.EmailValidator(v); err != nil { return &ValidationError{Name: "email", err: fmt.Errorf(`ent: validator failed for field "User.email": %w`, err)} } } if v, ok := _u.mutation.Mobile(); ok { if err := user.MobileValidator(v); err != nil { return &ValidationError{Name: "mobile", err: fmt.Errorf(`ent: validator failed for field "User.mobile": %w`, err)} } } if v, ok := _u.mutation.PasswordHash(); ok { if err := user.PasswordHashValidator(v); err != nil { return &ValidationError{Name: "password_hash", err: fmt.Errorf(`ent: validator failed for field "User.password_hash": %w`, err)} } } if v, ok := _u.mutation.Salt(); ok { if err := user.SaltValidator(v); err != nil { return &ValidationError{Name: "salt", err: fmt.Errorf(`ent: validator failed for field "User.salt": %w`, err)} } } if v, ok := _u.mutation.Nickname(); ok { if err := user.NicknameValidator(v); err != nil { return &ValidationError{Name: "nickname", err: fmt.Errorf(`ent: validator failed for field "User.nickname": %w`, err)} } } if v, ok := _u.mutation.Avatar(); ok { if err := user.AvatarValidator(v); err != nil { return &ValidationError{Name: "avatar", err: fmt.Errorf(`ent: validator failed for field "User.avatar": %w`, err)} } } if v, ok := _u.mutation.Gender(); ok { if err := user.GenderValidator(v); err != nil { return &ValidationError{Name: "gender", err: fmt.Errorf(`ent: validator failed for field "User.gender": %w`, err)} } } if v, ok := _u.mutation.AccountStatus(); ok { if err := user.AccountStatusValidator(v); err != nil { return &ValidationError{Name: "account_status", err: fmt.Errorf(`ent: validator failed for field "User.account_status": %w`, err)} } } if v, ok := _u.mutation.RegisteredLoginIP(); ok { if err := user.RegisteredLoginIPValidator(v); err != nil { return &ValidationError{Name: "registered_login_ip", err: fmt.Errorf(`ent: validator failed for field "User.registered_login_ip": %w`, err)} } } if v, ok := _u.mutation.RegistrationSource(); ok { if err := user.RegistrationSourceValidator(v); err != nil { return &ValidationError{Name: "registration_source", err: fmt.Errorf(`ent: validator failed for field "User.registration_source": %w`, err)} } } return nil } func (_u *UserUpdate) sqlSave(ctx context.Context) (_node int, err error) { if err := _u.check(); err != nil { return _node, err } _spec := sqlgraph.NewUpdateSpec(user.Table, user.Columns, sqlgraph.NewFieldSpec(user.FieldID, field.TypeUint64)) if ps := _u.mutation.predicates; len(ps) > 0 { _spec.Predicate = func(selector *sql.Selector) { for i := range ps { ps[i](selector) } } } if value, ok := _u.mutation.UpdatedAt(); ok { _spec.SetField(user.FieldUpdatedAt, field.TypeTime, value) } if value, ok := _u.mutation.Status(); ok { _spec.SetField(user.FieldStatus, field.TypeUint8, value) } if value, ok := _u.mutation.AddedStatus(); ok { _spec.AddField(user.FieldStatus, field.TypeUint8, value) } if _u.mutation.StatusCleared() { _spec.ClearField(user.FieldStatus, field.TypeUint8) } if value, ok := _u.mutation.DeletedAt(); ok { _spec.SetField(user.FieldDeletedAt, field.TypeTime, value) } if _u.mutation.DeletedAtCleared() { _spec.ClearField(user.FieldDeletedAt, field.TypeTime) } if value, ok := _u.mutation.Username(); ok { _spec.SetField(user.FieldUsername, field.TypeString, value) } if value, ok := _u.mutation.Email(); ok { _spec.SetField(user.FieldEmail, field.TypeString, value) } if value, ok := _u.mutation.Mobile(); ok { _spec.SetField(user.FieldMobile, field.TypeString, value) } if _u.mutation.MobileCleared() { _spec.ClearField(user.FieldMobile, field.TypeString) } if value, ok := _u.mutation.PasswordHash(); ok { _spec.SetField(user.FieldPasswordHash, field.TypeString, value) } if value, ok := _u.mutation.Salt(); ok { _spec.SetField(user.FieldSalt, field.TypeString, value) } if value, ok := _u.mutation.Nickname(); ok { _spec.SetField(user.FieldNickname, field.TypeString, value) } if value, ok := _u.mutation.Avatar(); ok { _spec.SetField(user.FieldAvatar, field.TypeString, value) } if _u.mutation.AvatarCleared() { _spec.ClearField(user.FieldAvatar, field.TypeString) } if value, ok := _u.mutation.Gender(); ok { _spec.SetField(user.FieldGender, field.TypeEnum, value) } if value, ok := _u.mutation.Birthday(); ok { _spec.SetField(user.FieldBirthday, field.TypeTime, value) } if _u.mutation.BirthdayCleared() { _spec.ClearField(user.FieldBirthday, field.TypeTime) } if value, ok := _u.mutation.AccountStatus(); ok { _spec.SetField(user.FieldAccountStatus, field.TypeEnum, value) } if value, ok := _u.mutation.IsVerified(); ok { _spec.SetField(user.FieldIsVerified, field.TypeUint32, value) } if value, ok := _u.mutation.AddedIsVerified(); ok { _spec.AddField(user.FieldIsVerified, field.TypeUint32, value) } if value, ok := _u.mutation.RegisteredLoginIP(); ok { _spec.SetField(user.FieldRegisteredLoginIP, field.TypeString, value) } if _u.mutation.RegisteredLoginIPCleared() { _spec.ClearField(user.FieldRegisteredLoginIP, field.TypeString) } if value, ok := _u.mutation.LoginAttempts(); ok { _spec.SetField(user.FieldLoginAttempts, field.TypeInt64, value) } if value, ok := _u.mutation.AddedLoginAttempts(); ok { _spec.AddField(user.FieldLoginAttempts, field.TypeInt64, value) } if value, ok := _u.mutation.Metadata(); ok { _spec.SetField(user.FieldMetadata, field.TypeJSON, value) } if _u.mutation.MetadataCleared() { _spec.ClearField(user.FieldMetadata, field.TypeJSON) } if value, ok := _u.mutation.RegistrationSource(); ok { _spec.SetField(user.FieldRegistrationSource, field.TypeString, value) } if _u.mutation.RegistrationSourceCleared() { _spec.ClearField(user.FieldRegistrationSource, field.TypeString) } if _node, err = sqlgraph.UpdateNodes(ctx, _u.driver, _spec); err != nil { if _, ok := err.(*sqlgraph.NotFoundError); ok { err = &NotFoundError{user.Label} } else if sqlgraph.IsConstraintError(err) { err = &ConstraintError{msg: err.Error(), wrap: err} } return 0, err } _u.mutation.done = true return _node, nil } // UserUpdateOne is the builder for updating a single User entity. type UserUpdateOne struct { config fields []string hooks []Hook mutation *UserMutation } // SetUpdatedAt sets the "updated_at" field. func (_u *UserUpdateOne) SetUpdatedAt(v time.Time) *UserUpdateOne { _u.mutation.SetUpdatedAt(v) return _u } // SetStatus sets the "status" field. func (_u *UserUpdateOne) SetStatus(v uint8) *UserUpdateOne { _u.mutation.ResetStatus() _u.mutation.SetStatus(v) return _u } // SetNillableStatus sets the "status" field if the given value is not nil. func (_u *UserUpdateOne) SetNillableStatus(v *uint8) *UserUpdateOne { if v != nil { _u.SetStatus(*v) } return _u } // AddStatus adds value to the "status" field. func (_u *UserUpdateOne) AddStatus(v int8) *UserUpdateOne { _u.mutation.AddStatus(v) return _u } // ClearStatus clears the value of the "status" field. func (_u *UserUpdateOne) ClearStatus() *UserUpdateOne { _u.mutation.ClearStatus() return _u } // SetDeletedAt sets the "deleted_at" field. func (_u *UserUpdateOne) SetDeletedAt(v time.Time) *UserUpdateOne { _u.mutation.SetDeletedAt(v) return _u } // SetNillableDeletedAt sets the "deleted_at" field if the given value is not nil. func (_u *UserUpdateOne) SetNillableDeletedAt(v *time.Time) *UserUpdateOne { if v != nil { _u.SetDeletedAt(*v) } return _u } // ClearDeletedAt clears the value of the "deleted_at" field. func (_u *UserUpdateOne) ClearDeletedAt() *UserUpdateOne { _u.mutation.ClearDeletedAt() return _u } // SetUsername sets the "username" field. func (_u *UserUpdateOne) SetUsername(v string) *UserUpdateOne { _u.mutation.SetUsername(v) return _u } // SetNillableUsername sets the "username" field if the given value is not nil. func (_u *UserUpdateOne) SetNillableUsername(v *string) *UserUpdateOne { if v != nil { _u.SetUsername(*v) } return _u } // SetEmail sets the "email" field. func (_u *UserUpdateOne) SetEmail(v string) *UserUpdateOne { _u.mutation.SetEmail(v) return _u } // SetNillableEmail sets the "email" field if the given value is not nil. func (_u *UserUpdateOne) SetNillableEmail(v *string) *UserUpdateOne { if v != nil { _u.SetEmail(*v) } return _u } // SetMobile sets the "mobile" field. func (_u *UserUpdateOne) SetMobile(v string) *UserUpdateOne { _u.mutation.SetMobile(v) return _u } // SetNillableMobile sets the "mobile" field if the given value is not nil. func (_u *UserUpdateOne) SetNillableMobile(v *string) *UserUpdateOne { if v != nil { _u.SetMobile(*v) } return _u } // ClearMobile clears the value of the "mobile" field. func (_u *UserUpdateOne) ClearMobile() *UserUpdateOne { _u.mutation.ClearMobile() return _u } // SetPasswordHash sets the "password_hash" field. func (_u *UserUpdateOne) SetPasswordHash(v string) *UserUpdateOne { _u.mutation.SetPasswordHash(v) return _u } // SetNillablePasswordHash sets the "password_hash" field if the given value is not nil. func (_u *UserUpdateOne) SetNillablePasswordHash(v *string) *UserUpdateOne { if v != nil { _u.SetPasswordHash(*v) } return _u } // SetSalt sets the "salt" field. func (_u *UserUpdateOne) SetSalt(v string) *UserUpdateOne { _u.mutation.SetSalt(v) return _u } // SetNillableSalt sets the "salt" field if the given value is not nil. func (_u *UserUpdateOne) SetNillableSalt(v *string) *UserUpdateOne { if v != nil { _u.SetSalt(*v) } return _u } // SetNickname sets the "nickname" field. func (_u *UserUpdateOne) SetNickname(v string) *UserUpdateOne { _u.mutation.SetNickname(v) return _u } // SetNillableNickname sets the "nickname" field if the given value is not nil. func (_u *UserUpdateOne) SetNillableNickname(v *string) *UserUpdateOne { if v != nil { _u.SetNickname(*v) } return _u } // SetAvatar sets the "avatar" field. func (_u *UserUpdateOne) SetAvatar(v string) *UserUpdateOne { _u.mutation.SetAvatar(v) return _u } // SetNillableAvatar sets the "avatar" field if the given value is not nil. func (_u *UserUpdateOne) SetNillableAvatar(v *string) *UserUpdateOne { if v != nil { _u.SetAvatar(*v) } return _u } // ClearAvatar clears the value of the "avatar" field. func (_u *UserUpdateOne) ClearAvatar() *UserUpdateOne { _u.mutation.ClearAvatar() return _u } // SetGender sets the "gender" field. func (_u *UserUpdateOne) SetGender(v user.Gender) *UserUpdateOne { _u.mutation.SetGender(v) return _u } // SetNillableGender sets the "gender" field if the given value is not nil. func (_u *UserUpdateOne) SetNillableGender(v *user.Gender) *UserUpdateOne { if v != nil { _u.SetGender(*v) } return _u } // SetBirthday sets the "birthday" field. func (_u *UserUpdateOne) SetBirthday(v time.Time) *UserUpdateOne { _u.mutation.SetBirthday(v) return _u } // SetNillableBirthday sets the "birthday" field if the given value is not nil. func (_u *UserUpdateOne) SetNillableBirthday(v *time.Time) *UserUpdateOne { if v != nil { _u.SetBirthday(*v) } return _u } // ClearBirthday clears the value of the "birthday" field. func (_u *UserUpdateOne) ClearBirthday() *UserUpdateOne { _u.mutation.ClearBirthday() return _u } // SetAccountStatus sets the "account_status" field. func (_u *UserUpdateOne) SetAccountStatus(v user.AccountStatus) *UserUpdateOne { _u.mutation.SetAccountStatus(v) return _u } // SetNillableAccountStatus sets the "account_status" field if the given value is not nil. func (_u *UserUpdateOne) SetNillableAccountStatus(v *user.AccountStatus) *UserUpdateOne { if v != nil { _u.SetAccountStatus(*v) } return _u } // SetIsVerified sets the "is_verified" field. func (_u *UserUpdateOne) SetIsVerified(v uint32) *UserUpdateOne { _u.mutation.ResetIsVerified() _u.mutation.SetIsVerified(v) return _u } // SetNillableIsVerified sets the "is_verified" field if the given value is not nil. func (_u *UserUpdateOne) SetNillableIsVerified(v *uint32) *UserUpdateOne { if v != nil { _u.SetIsVerified(*v) } return _u } // AddIsVerified adds value to the "is_verified" field. func (_u *UserUpdateOne) AddIsVerified(v int32) *UserUpdateOne { _u.mutation.AddIsVerified(v) return _u } // SetRegisteredLoginIP sets the "registered_login_ip" field. func (_u *UserUpdateOne) SetRegisteredLoginIP(v string) *UserUpdateOne { _u.mutation.SetRegisteredLoginIP(v) return _u } // SetNillableRegisteredLoginIP sets the "registered_login_ip" field if the given value is not nil. func (_u *UserUpdateOne) SetNillableRegisteredLoginIP(v *string) *UserUpdateOne { if v != nil { _u.SetRegisteredLoginIP(*v) } return _u } // ClearRegisteredLoginIP clears the value of the "registered_login_ip" field. func (_u *UserUpdateOne) ClearRegisteredLoginIP() *UserUpdateOne { _u.mutation.ClearRegisteredLoginIP() return _u } // SetLoginAttempts sets the "login_attempts" field. func (_u *UserUpdateOne) SetLoginAttempts(v int64) *UserUpdateOne { _u.mutation.ResetLoginAttempts() _u.mutation.SetLoginAttempts(v) return _u } // SetNillableLoginAttempts sets the "login_attempts" field if the given value is not nil. func (_u *UserUpdateOne) SetNillableLoginAttempts(v *int64) *UserUpdateOne { if v != nil { _u.SetLoginAttempts(*v) } return _u } // AddLoginAttempts adds value to the "login_attempts" field. func (_u *UserUpdateOne) AddLoginAttempts(v int64) *UserUpdateOne { _u.mutation.AddLoginAttempts(v) return _u } // SetMetadata sets the "metadata" field. func (_u *UserUpdateOne) SetMetadata(v map[string]interface{}) *UserUpdateOne { _u.mutation.SetMetadata(v) return _u } // ClearMetadata clears the value of the "metadata" field. func (_u *UserUpdateOne) ClearMetadata() *UserUpdateOne { _u.mutation.ClearMetadata() return _u } // SetRegistrationSource sets the "registration_source" field. func (_u *UserUpdateOne) SetRegistrationSource(v string) *UserUpdateOne { _u.mutation.SetRegistrationSource(v) return _u } // SetNillableRegistrationSource sets the "registration_source" field if the given value is not nil. func (_u *UserUpdateOne) SetNillableRegistrationSource(v *string) *UserUpdateOne { if v != nil { _u.SetRegistrationSource(*v) } return _u } // ClearRegistrationSource clears the value of the "registration_source" field. func (_u *UserUpdateOne) ClearRegistrationSource() *UserUpdateOne { _u.mutation.ClearRegistrationSource() return _u } // Mutation returns the UserMutation object of the builder. func (_u *UserUpdateOne) Mutation() *UserMutation { return _u.mutation } // Where appends a list predicates to the UserUpdate builder. func (_u *UserUpdateOne) Where(ps ...predicate.User) *UserUpdateOne { _u.mutation.Where(ps...) return _u } // Select allows selecting one or more fields (columns) of the returned entity. // The default is selecting all fields defined in the entity schema. func (_u *UserUpdateOne) Select(field string, fields ...string) *UserUpdateOne { _u.fields = append([]string{field}, fields...) return _u } // Save executes the query and returns the updated User entity. func (_u *UserUpdateOne) Save(ctx context.Context) (*User, error) { _u.defaults() return withHooks(ctx, _u.sqlSave, _u.mutation, _u.hooks) } // SaveX is like Save, but panics if an error occurs. func (_u *UserUpdateOne) SaveX(ctx context.Context) *User { node, err := _u.Save(ctx) if err != nil { panic(err) } return node } // Exec executes the query on the entity. func (_u *UserUpdateOne) Exec(ctx context.Context) error { _, err := _u.Save(ctx) return err } // ExecX is like Exec, but panics if an error occurs. func (_u *UserUpdateOne) ExecX(ctx context.Context) { if err := _u.Exec(ctx); err != nil { panic(err) } } // defaults sets the default values of the builder before save. func (_u *UserUpdateOne) defaults() { if _, ok := _u.mutation.UpdatedAt(); !ok { v := user.UpdateDefaultUpdatedAt() _u.mutation.SetUpdatedAt(v) } } // check runs all checks and user-defined validators on the builder. func (_u *UserUpdateOne) check() error { if v, ok := _u.mutation.Username(); ok { if err := user.UsernameValidator(v); err != nil { return &ValidationError{Name: "username", err: fmt.Errorf(`ent: validator failed for field "User.username": %w`, err)} } } if v, ok := _u.mutation.Email(); ok { if err := user.EmailValidator(v); err != nil { return &ValidationError{Name: "email", err: fmt.Errorf(`ent: validator failed for field "User.email": %w`, err)} } } if v, ok := _u.mutation.Mobile(); ok { if err := user.MobileValidator(v); err != nil { return &ValidationError{Name: "mobile", err: fmt.Errorf(`ent: validator failed for field "User.mobile": %w`, err)} } } if v, ok := _u.mutation.PasswordHash(); ok { if err := user.PasswordHashValidator(v); err != nil { return &ValidationError{Name: "password_hash", err: fmt.Errorf(`ent: validator failed for field "User.password_hash": %w`, err)} } } if v, ok := _u.mutation.Salt(); ok { if err := user.SaltValidator(v); err != nil { return &ValidationError{Name: "salt", err: fmt.Errorf(`ent: validator failed for field "User.salt": %w`, err)} } } if v, ok := _u.mutation.Nickname(); ok { if err := user.NicknameValidator(v); err != nil { return &ValidationError{Name: "nickname", err: fmt.Errorf(`ent: validator failed for field "User.nickname": %w`, err)} } } if v, ok := _u.mutation.Avatar(); ok { if err := user.AvatarValidator(v); err != nil { return &ValidationError{Name: "avatar", err: fmt.Errorf(`ent: validator failed for field "User.avatar": %w`, err)} } } if v, ok := _u.mutation.Gender(); ok { if err := user.GenderValidator(v); err != nil { return &ValidationError{Name: "gender", err: fmt.Errorf(`ent: validator failed for field "User.gender": %w`, err)} } } if v, ok := _u.mutation.AccountStatus(); ok { if err := user.AccountStatusValidator(v); err != nil { return &ValidationError{Name: "account_status", err: fmt.Errorf(`ent: validator failed for field "User.account_status": %w`, err)} } } if v, ok := _u.mutation.RegisteredLoginIP(); ok { if err := user.RegisteredLoginIPValidator(v); err != nil { return &ValidationError{Name: "registered_login_ip", err: fmt.Errorf(`ent: validator failed for field "User.registered_login_ip": %w`, err)} } } if v, ok := _u.mutation.RegistrationSource(); ok { if err := user.RegistrationSourceValidator(v); err != nil { return &ValidationError{Name: "registration_source", err: fmt.Errorf(`ent: validator failed for field "User.registration_source": %w`, err)} } } return nil } func (_u *UserUpdateOne) sqlSave(ctx context.Context) (_node *User, err error) { if err := _u.check(); err != nil { return _node, err } _spec := sqlgraph.NewUpdateSpec(user.Table, user.Columns, sqlgraph.NewFieldSpec(user.FieldID, field.TypeUint64)) id, ok := _u.mutation.ID() if !ok { return nil, &ValidationError{Name: "id", err: errors.New(`ent: missing "User.id" for update`)} } _spec.Node.ID.Value = id if fields := _u.fields; len(fields) > 0 { _spec.Node.Columns = make([]string, 0, len(fields)) _spec.Node.Columns = append(_spec.Node.Columns, user.FieldID) for _, f := range fields { if !user.ValidColumn(f) { return nil, &ValidationError{Name: f, err: fmt.Errorf("ent: invalid field %q for query", f)} } if f != user.FieldID { _spec.Node.Columns = append(_spec.Node.Columns, f) } } } if ps := _u.mutation.predicates; len(ps) > 0 { _spec.Predicate = func(selector *sql.Selector) { for i := range ps { ps[i](selector) } } } if value, ok := _u.mutation.UpdatedAt(); ok { _spec.SetField(user.FieldUpdatedAt, field.TypeTime, value) } if value, ok := _u.mutation.Status(); ok { _spec.SetField(user.FieldStatus, field.TypeUint8, value) } if value, ok := _u.mutation.AddedStatus(); ok { _spec.AddField(user.FieldStatus, field.TypeUint8, value) } if _u.mutation.StatusCleared() { _spec.ClearField(user.FieldStatus, field.TypeUint8) } if value, ok := _u.mutation.DeletedAt(); ok { _spec.SetField(user.FieldDeletedAt, field.TypeTime, value) } if _u.mutation.DeletedAtCleared() { _spec.ClearField(user.FieldDeletedAt, field.TypeTime) } if value, ok := _u.mutation.Username(); ok { _spec.SetField(user.FieldUsername, field.TypeString, value) } if value, ok := _u.mutation.Email(); ok { _spec.SetField(user.FieldEmail, field.TypeString, value) } if value, ok := _u.mutation.Mobile(); ok { _spec.SetField(user.FieldMobile, field.TypeString, value) } if _u.mutation.MobileCleared() { _spec.ClearField(user.FieldMobile, field.TypeString) } if value, ok := _u.mutation.PasswordHash(); ok { _spec.SetField(user.FieldPasswordHash, field.TypeString, value) } if value, ok := _u.mutation.Salt(); ok { _spec.SetField(user.FieldSalt, field.TypeString, value) } if value, ok := _u.mutation.Nickname(); ok { _spec.SetField(user.FieldNickname, field.TypeString, value) } if value, ok := _u.mutation.Avatar(); ok { _spec.SetField(user.FieldAvatar, field.TypeString, value) } if _u.mutation.AvatarCleared() { _spec.ClearField(user.FieldAvatar, field.TypeString) } if value, ok := _u.mutation.Gender(); ok { _spec.SetField(user.FieldGender, field.TypeEnum, value) } if value, ok := _u.mutation.Birthday(); ok { _spec.SetField(user.FieldBirthday, field.TypeTime, value) } if _u.mutation.BirthdayCleared() { _spec.ClearField(user.FieldBirthday, field.TypeTime) } if value, ok := _u.mutation.AccountStatus(); ok { _spec.SetField(user.FieldAccountStatus, field.TypeEnum, value) } if value, ok := _u.mutation.IsVerified(); ok { _spec.SetField(user.FieldIsVerified, field.TypeUint32, value) } if value, ok := _u.mutation.AddedIsVerified(); ok { _spec.AddField(user.FieldIsVerified, field.TypeUint32, value) } if value, ok := _u.mutation.RegisteredLoginIP(); ok { _spec.SetField(user.FieldRegisteredLoginIP, field.TypeString, value) } if _u.mutation.RegisteredLoginIPCleared() { _spec.ClearField(user.FieldRegisteredLoginIP, field.TypeString) } if value, ok := _u.mutation.LoginAttempts(); ok { _spec.SetField(user.FieldLoginAttempts, field.TypeInt64, value) } if value, ok := _u.mutation.AddedLoginAttempts(); ok { _spec.AddField(user.FieldLoginAttempts, field.TypeInt64, value) } if value, ok := _u.mutation.Metadata(); ok { _spec.SetField(user.FieldMetadata, field.TypeJSON, value) } if _u.mutation.MetadataCleared() { _spec.ClearField(user.FieldMetadata, field.TypeJSON) } if value, ok := _u.mutation.RegistrationSource(); ok { _spec.SetField(user.FieldRegistrationSource, field.TypeString, value) } if _u.mutation.RegistrationSourceCleared() { _spec.ClearField(user.FieldRegistrationSource, field.TypeString) } _node = &User{config: _u.config} _spec.Assign = _node.assignValues _spec.ScanValues = _node.scanValues if err = sqlgraph.UpdateNode(ctx, _u.driver, _spec); err != nil { if _, ok := err.(*sqlgraph.NotFoundError); ok { err = &NotFoundError{user.Label} } else if sqlgraph.IsConstraintError(err) { err = &ConstraintError{msg: err.Error(), wrap: err} } return nil, err } _u.mutation.done = true return _node, nil }